Get it together, guys!

Having watched this thread unfold, I realize that I had conflated two things that I now perceive as somewhat distinct after seeing the dialog here – this community, as opposed to the for-profit Julia Computing.

The Julia Pro website certainly seems to imply all the things I was expecting when I installed it – a debugger, benchmarking tools, and screen shots and narrative about a beautiful Juno IDE.

To the uninformed visitor, it appears to promise a Redhat-like experience for Julia. It even features a LTS build. Red Hat just works out of the box, but then you can pay for support as well. The Julia Pro experience was not what I was expecting given the polish and presentation of the website, and the statement on their About Us page that “Julia Computing’s mission is to develop products that make Julia easy to use, easy to deploy and easy to scale.” I thought I could download and install a slick and polished tool, and then would have the option to pay for annual support, much like one does with Matlab. That’s a cost I might find worthwhile, if the support were similar to (or hopefully better than) one gets from Mathworks.

But now I get that Julia Computing isn’t necessarily the same people behind the language itself and this message board. It’s Julia Computing that is stumbling to fulfill its mission, not you all.

I finally appear to have a workable environment going. I figured out how to use Revise so I don’t get that “symbol conflict error” when I make changes, and the debugger is working as well, with Julia 1.2.0 and Atom 1.40.1. Now that it’s starting to work a little better, it is proving to be somewhat pleasant. The language has always been a joy. Now that I’ve got a passable chassis built around that engine, it seems to be going better.

19 Likes

TLDR:

8 Likes

I’m glad you’re discovering that it can be a joy to work with now. I kind of hate that a lot of people’s experience with Julia probably starts with JuliaPro when I think you get a much better experience by just taking the time to learn what packages you need to get work done instead of having a somewhat unpolished “kitchen sink” bundle of stuff automatically installed.

6 Likes

I also found the first impression of using Julia far from smooth. Typically a new user would just download JuliaPro which is very large. The default Atom editor feels very slow and the plotting is even slower.

For new users, I highly recommend the combination of VSCode + Julia + Gaston to get a feel of Julia’s basic functionalities.

2 Likes

Maybe you should document your experience in a blog. Going from downloading Julia to having a smoother working environment is interesting for a lot of non-technical people. There are probably a lot of people like you out there, that get curious, find it frustrating and give up quickly, so a blog from someone who shared that pain is always welcomed and can help improve Julia’s adoption.

8 Likes

Or a detailed post like this one: Package Manager Documentation. Doesn’t need to be so detailed, but the first time experience is helpful.

7 Likes

Until you try to do it cross-platform… tsfresh just refused to install on Windows for me…

1 Like

This is the image I can find that best summarises it. Basically, we early and late majority people jumping into Julia when it’s only ready for Early Adopters (or Innovators).

3 Likes

I am not sure I agree with this. I think at this point Julia is robust enough for production, and has been since v1.1. It was for early adopters around v0.5.

While feedback from frustrated individuals can be informative, we should be cautious about selection bias: the people who just downloaded Julia, read the manual, and are happily using it (with or without occasional questions here) are can easily be underrepresented because they are less vocal.

15 Likes

Talking about general usability “How to install in a corporate environment?”

I’m sitting here with the company laptop (Win10) in our office network - which is firewalled and proxied (for HTTP flavors) to the outside world (and that’s a ‘normal’ setup, for some customer projects we have systems that are actually air gapped …).

Withing 15 minutes i was not able to find information how to setup julia/Pkg/LibGit2 so i can install packages.
This is a real world usability problem.

To be fair: For me this is actually a solvable problem, as there is some magic available to make the proxy transparent, or to use a computer on a different network, and julia is not the only candidate to have problems here. I know, it’s a hard problem (especially on Win) and i never had to solve it in SW for a bigger user group.

But still; i remember discussions in the pre 1.0 era about git config and LibGit2 and so on, but that years after this, still the user/installer is left alone without a sentence in the documentation or a ‘How to’ document someplace, or someone trying to do automatic setting - which seems to exist in other SW is an indication to me, that usability is not understood.

1 Like

This would be a great opportunity for your company to sponsor someone (either one of their own employees, or a member of the community) to figure this out and add to the docs.

4 Likes

Spot on. I have been financing myself for all dev work done in julia, for more than 2years. My simple advice, sell it to management ifyoudare :slight_smile: or, just and take the money and hope.

1 Like

That would be one option.

But learned that there is already another company whose mission is " … to make Julia easy to use, easy to deploy and easy to scale. " - i will contact them.

There is another barrier for newcomers - when they want to do basic functions and then face a time-to-first-plot problem, they may come to a false conclusion, that Julia is just not a mature language, if even such a simple thing is not working properly.

On the opposite, in Matlab many problems are “delayed” - it can be very friendly at the beginning, but the deeper you learn it, the more architectural problems you face.

4 Likes

True! Glad I don’t work in a big corporate now.

R used to be like that 10 years, but somehow it figured out how to use the Internet Explorer proxy! Hope now people realise how big a problem this is in the corporate world…

Just to get some concrete timings, I took the time it took for first plot in Matlab and it took 26 seconds. Using e.g. PGFPlotsX.jl, the time to first plot is 7 seconds. So, while we should definitely be faster, I don’t understand the notion that Matlab is somehow snappy and quick. My guess is that people just have a Matlab session going for a long time.

5 Likes

That’s not really fair though; Matlab is designed to never stop running, while Julia needs Revise (which is not at all obvious to beginners), and even that still has significant limitations.

1 Like

Are you counting Matlab application start?

>> x = randn(100000,1);
>> tic; plot(x); toc;
Elapsed time is 0.458398 seconds.
>> tic; plot(x); toc;
Elapsed time is 0.021320 seconds.

Of course… that’s always the complaint in Julia: “I want to write a script that’s run every five minutes and creates a plot,and it’s taking forever! And no I don’t want to keep a julia session running, I want to start over each time.”

3 Likes