Shutting down Julia Observer… [posted 4/1/20]

…slowly.

And switching over to:

Hope you enjoy it!



// the julia backbone of the project can be found here

28 Likes

Firefox is reporting an potential security risk for JuliaPackages.com, preventing access from my corporate environment. Just wanted to make sure someone knew.

3 Likes

Pretty neat!

I’m curious… I know of some packages… how do I find which category they are in? [E.g., ControlSystems, etc.]

@BLI, the categories are lifted from svaksha’s Julia.jl

However, the file this website reads from is:

https://github.com/djsegal/JuliaPackages.jl/blob/master/data/decibans.csv

2 Likes

Thanks. I’d say that ProgrammingParadigms is a rather vague category.

It’s looking really nice!

Do ensure that the license for Julia.jl is followed with the notices in the right places: Julia.jl/LICENSE-AGPLv3.md at master · svaksha/Julia.jl · GitHub

-viral

2 Likes

Can you elaborate on the difference between

and

https://pkg.julialang.org/docs/

?

1 Like

Guess it’s probably more of a coke and pepsi thing? The difference is about as much as JuliaObserver and pkg.julialang.

The difference between JuliaObserver and JuliaPackages, though, is that the data is now generated using Julia and the website has a more minimal interface.

2 Likes

pkg.julialang.org is also going to have a major refresh in the near future. I think both projects share many common features, and I think coke and pepsi is the right analogy.

-viral

1 Like

When it’s appropriate to do so, maybe submit a PR to the julialang site (namely this file) which links to the Julia observer :slight_smile:

1 Like

It looks really good, definitely cleaner than Observer.
Is it possible to have a filtering intersection between stargazers and updated? Sometimes there are packages that got a lot of github stars in the early days but aren’t updates anymore, and sometimes there are packages that in the beginning seem to be updated every minute but after a year or so get abandoned. I think that having the option to combine both filters would help the users a lot.

2 Likes

Kudos! I like how it shows a (deep) dependency list.

Feature wish: display a dependency graph for each package.

4 Likes

A lot to like about Julia Packages.

Playing around with it. I found an edge case that Julia Observer currently handles better. I was looking for a library to interact with a Git repository. Observer gives helpful results. Julia packages less so… I think it just lists every package ?hosted on?/?mentioning? Git. :thinking:

1 Like

@4aHxKzD and @NicholasWMRitchie, I resolved what both of you asked for with a filter modal:



A: Kind of, you can now restrict on:

  • Minimum Stars
  • Last Updated

A: If you change the Search Depth to “Shallow” this restricts search to repo names and descriptions

// it also orders the search results a little better (than “Deep” search, which also looks at readmes)

3 Likes

Sweet!

1 Like

To that I’d say I agree. Does this look any better?



As you can see in the image below, it now appears in the Control Flow subcategory!

// if you click on the button, you can view all the subcategory’s packages!

(same goes for the author button…)

I don’t understand. To me, Control Flow seems to be related to if statements, etc. in programming languages, see, e.g., Control flow - Wikipedia .

Package ControlSystems.jl has nothing to do with this! Instead, ControlSystems.jl deals with (Mathematical) Systems Theory. Norbert Wiener, professor of mathematics at MIT, proposed the scientific field of Cybernetics in his 1948 book “Cybernetics, or control and communication in the animal and the machine”, http://www.allen-riley.com/utopia/cybernetics.pdf . Initially, the word “cybernetics” related mainly to feedback control systems, but is also found in words such as cyborg, cyberspace, cyber-physical systems, etc. Important contributions used in the field stems from people like Nyquist (stability theory), Lyapunov (stability theory), Bellman and Pontryagin (optimal control theory), Rudolf Kalman (state estimators, linear control, etc., etc.), game theory, and since the 1970s many mathematicians in fields such as Differential Algebra and Differential Geometry, etc.

So the theoretical content of the field is mathematics, but it is a field with engineering applications in most fields. (The ideas are even used in family therapy…).

Anyway, “Control Flow” sounds wrong. Essentially, the field deals with “Dynamic Systems” where the systems have external inputs that can be manipulated to change the behavior of the systems to what is desired.

Package “ControlSystems.jl” in its current version deals with analysis of linear dynamic systems with inputs and outputs (e.g., stability, concepts such as controllability and observability) and synthesis (how to design stabilizing feedback controllers, etc.).

To successfully work with “ControlSystems”, one needs tools such as:

  • Tools for modeling dynamic systems (including neural networks),
  • Differential equation solvers,
  • Optimization code,
  • Symbolic computing,
  • Automatic differentiation (a la Forward/Reverse Differentiation, Zygote, etc., etc.)
  • Plotting
  • etc.

Perhaps a subgroup named “Dynamic Systems” could be ok…

I also reacted to the label “control flow”, but it appears that providing a suggestion to change a label is not available?

Hm. I think it would be best if the package managers could choose an appropriate (sub) category. At the same time, the community is probably best served with a limited number of categories; the question is who is best qualified to make the final list of such categories.

I think good (sub) categories is important. I had a serious look into Python some years ago, but was disappointed because of the lack of control packages. In my view, Julia is already much richer wrt. control packages than Python (at least, Python of that time).

A package system where it is difficult to search for relevant packages is problematic. A person who looked into Julia in search for control system packages, would definitely not think of looking into categories such as “Programming Paradigms” or “Control Flow”.