What steps should the Julia community take to bring Julia to the next level of popularity?

PackageCompiler.jl functionality should just be part of the main julia install. We need juliac out of the box for wider adoption in other industries.

8 Likes

There should be a command line switch that disallows dynamic typing. If something is not type inferred at compile time it should stop the execution.

14 Likes

There is a work on the static sub language already.

3 Likes

Interesting, do you have a link?

Yes, I am claiming that theyā€™re roughly equalā€“or at least, all of them are within a factor of 2 of each other. This can be measured with a census of Github repositories, in which case you get this:

(Other metrics besides pushes look broadly similar.) We can also look at the number of programmers for each by counting responses to the 2023 StackOverflow survey, in which case Matlab is about 3x as popular as Julia, while R is about 4x as popular. Both of these have some flaws, but they point to roughly the same thingā€“Julia is about half an order of magnitude less popular (i.e. 3-4x), not several orders of magnitude less popular, despite substantially less corporate support.

It isnā€™t zero, which was my point. You can check the Github orgs for Meta, Google, and Microsoft, all of which include decent amounts of code in R, Matlab, and/or Fortran, but not a single Julia package theyā€™re maintaining. And Microsoft contributed a huge chunk of code to base R back in 2020 when they merged MRO into R, the same way Meta is promising to rewrite large chunks of Python.

Yes, much like how Julia has had 10 years of being backed by MIT now. Still, Kotlin saw very limited adoption before being taken in by Google.

I have talked to some PyTorch devs. Very few of their answers seemed to make sense; the only thing I managed to get out of those conversations was that Google and Meta both seem to have projects in Julia but none that are open source.

1 Like

Have you actually checked?

ASML, one of Europeā€™s biggest companies, have plenty of Julia programmers and have also started to open source some of their packages

7 Likes

The first project is archived, and the second is some utility code for exporting minimal powerpoint slides. Somehow neither makes a compelling case for corporate engineering resources rallying behind Julia projects. (I donā€™t mean to sound snarky)

2 Likes

I cannot speak for outside of Academics as I am a Physicist/Astronomer but I think Astronomy packages could be a great use case for Julia. Python as the great Astropy package but itā€™s interoperability is lacking. I am currently working on Astrodynamics which include Alot of Number crunching which is done by packages like poliastro by utilizing some dark numbat magic. And more often than not I have wished for the extensibility of Julia because every package for Astrodynamics implements their own way to deal with coordinate systems. And then you always have to figure out how to make them interopt with each other which they donā€™t do out of the box.

So Astronomy would be a nice target considering it needs Alot of computational power and Alot of custom data structures that other libraries can then implement for their functions.

The first approach here I would go is try to overhaul the SkyCoords.jl package which currently only implements on celestial sphere coordinates but not 3D coordinates usable to deal with locating things in the Sol System. From this on then can be built much more implementations of Astronomy.

4 Likes

Indeed, an archived project may just suggest an internal trial.

But for the second, I wouldnā€™t say so. First, because itā€™s quite recent. And most importantly, it hints toward an internal use of e.g. notebooks or scripts, likely in R&D, from which you may want to extract a presentation (*). To be realistic, at the very least Iā€™d say it could be for a service or a team.
This is far from being the level of activity we are hoping for (yet), but Iā€™m glad that itā€™s considered very seriously. The recent v1.9 and the soon-to-be v1.10 could help that even more (being much closer to a python-like scripting language).

(*) thatā€™s the most realistic / conservative assumption I can get.

Edit: After a look at their release, the very first comment is: ā€œPackage start by migrating from internal repoā€
ā€¦ thus, thereā€™s an active internal repo :slight_smile:

1 Like

Last time I checked ASML is up to about [140 packages internally)(Matthijs Cox on LinkedIn: #julialanguage #softwaredevelopment | 11 comments) as of a few months ago.

From the perspectuve of being the Financial Chair for JuliaCon 2023, the language is seeing the most corporate interest from two areas:

  1. Applied technical engineering (e.g. ASML, Boeing, Quera)
  2. Processor hardware manufacturers (e.g. Intel, AMD, Nvidia)

The first category needs Julia for scientists to do complex mathematics for routines like optimization. The second category supports Julia because the language allows others to use their hardware. The latter catgeory had some financial issues in the last year and was not able to contribute much financially. Tbe former category has contributed in a very big way to the conference.

As for corporate adoption by large software companies, I would only expect some adoption by their research divisions in the near term. For the most part they are highly committed to making the most of their existing code bases and are willing to invest large sums to making it continue to work for them. You can see how Google Video tried to stick with C++ before getting outmanuvered by YouTube. Also Meta famously still uses Hack, a version of PHP they developed themselves.

26 Likes

I think you are overlooking some cultural differences.
While Julia is mostly popular in Academic / Research groups, which means you see almost all its operation out in the open (GitHub / GitLab / etcā€¦), Iā€™d argue that MATLABā€™s most lucrative markets are defense and automotive / heavy industries. You wonā€™t see their code in the open.

You can estimate those by looking at jobs metric.
I think last time someone have compared MATLAB has 1-2 orders of magnitude more jobs.
So probably out of the research market, MATLAB is much more popular.

2 Likes

We have had only a couple of examples on using GTM for astronomy (most recent example here Star map for location of astroimages - Showcase - GMT Community Forum) but I would say that extending GMT.jl for astronomy usage should not be very difficult.

1 Like

I haveā€“OpticSim.jl is no longer maintained by Microsoft, unfortunately.

Iā€™m very happy ASML is starting to do this, but itā€™s not exactly what I had in mind when talking about ā€œBig tech.ā€

I thought that might be the case as well, which is why I looked for multiple sourcesā€“I wanted to exclude that as a possible bias. Besides GitHub/Gitlab, we have the StackOverflow developer survey showing Julia within 4x, and this month we also have TIOBE showing Julia is only about 20% less popular than Matlab. (And I think the SO survey is a bit of an undercount because Julia users are much more likely to use the Discourse than SO.)

itā€™s larger by mcap than Pepsi, Bank of America, Alibaba, Toyota, Shell, McDonald, Netflix, SalesForce, Disney, and moreā€¦

ASML is about as ā€œbig techā€ as it gets, unless you are referring to exclusively the (Apple, Microsoft, Google, Amazon, and Meta)s of the world

3 Likes

Yes, thatā€™s basically what Iā€™m referring to, since Iā€™m talking about software. I guess by the literal meaning of ā€œBig techā€ you could say ASML counts, but ASML is a hardware manufacturer; most of their money isnā€™t going into developing software or writing code, so theyā€™re not the kind of company that would contribute substantially to the Julia ecosystem the way Google bankrolled Go, Dart, Kotlin, and now Mojo; or the way Apple pretty much built Swift.

1 Like

Apple is a hardware manufacturer
Google is an advertising business

Have you worked at ASML? How do you know what most of their money is going towards

1 Like

MATLAB has its own community: https://www.mathworks.com/matlabcentral/answers.
You may try to compare the number of questions: SO + Discourse for Julia and SO + MATLAB Central for MATLAB.

On top of that, remember the MATLAB help system and that in defense industry much of the work is done in air gap computers. They rely mostly on MATLABā€™s documentation and professional support.

3 Likes

Did the topic of how to promote Julia more effectively come up during Julia Con? For example, whether submitting more content (videos, blog posts, github repos) to Hacker News or similar websites could help Julia promotion, whether the Julia lang website should promote Julia adoption success stories in industry and academia, or whether the next Julia Con should have a talk on how to promote Julia.

2 Likes

It was dicusssed that Slashdot still generates more traffic than HackerNews.

JuliaHub does have case studies:

1 Like