Very basic juno+julia portable installation(an idea)

Have you thought about a docker based solution for this?

1 Like

Sorry , but it is not matter of the way of deployment it much more due to atom’s, julia’s and juno’s instability. So the basic idea behind was to assemble of most fresh versions of atom, juno, julia on the enduser’s computer. At some cases it would be quite appropriate…The reason for it - most productive way of updating for me is still wiping out all installation taking and setting up the fresh ones step by step.

The promise of using a docker solution for a users computer is that you can control a tight image, preinstall packages, precompile them, get jupyter and dependencies up and running, etc. And if you want to update that image, docker can handle that well to get the latest and greatest.

Since jupyter is probably the easiest for beginners, it would support that without any client installation. Atom/Juno is another issue, but I don’t think downloading and reinstalling Atom is a good idea and dislike the JuliaPro replication of an atom environment.

My experience is that students may find Juno tough to work with at this point, and tend to prefer jupyter. That said, as they get more advanced, users can setup Atom and connect to the docker as a “remote” repl.

1 Like

I second @jlperla’s suggestion, if not for Docker (which is what I would use, too) then a thin client using whatever your IT prefers. You maintain a single image, users get it on demand, log in to some network drive with their home directory… this is a robust setup.

Then perhaps also consider Jupyter, which is really just a service, nothing to install. It can provide a very smooth experience and may be sufficient for introductory material. I have used it in a classroom setting and it was really hassle-free (except for IT, of course, who had to set it up).

1 Like

Yes, for sure. The local docker based solution is if you really need users to have local stuff running, but depending on the type of class, that is often unnecessary. Ask your university if they have a jupyterhub installation anywhere, where they could install the Julia kernel. It is your best bet. Alternatively, juliabox is an option in some places but the limitations of the free version will be off putting to users (at least it was in the spring).

Thank you for the advice but i have tryed the other possibilities (and put them into my mind) and I plan to use Julia in an electives as soon as got an opportunity. In my mind Julia and its ecosystem are still not ready for the usage in regular courses.

Go easy with the bold! But I agree. On the current Julia Pro you can’t install the recent DifferentialEquations, meaning it’s basically useless to me and I guess a good proportion of users.

I had hoped it would be a simple solution for say, setting it up for my supervisor to run my packages on windows with atom and everything set up automatically. But its worse than having nothing, because we would have just set it all up manually by now.

hehe yet we come to the starting position (to do everything manually), once more… :wink: Friends, it seems to me that everybody percieves the current situation quite adequately, whatches upon, and hopes for advances. so there is no reason to pour water in this topic.

For Windows it would be great to use PortableApps template for a Portable Julia distribution.

I actually asked for it more than a year ago:

1 Like

Well Julia v0.7 makes each package use its own environment, so if JuliaPro fixes a few package versions (on very core packages) then you don’t have to have the rest of your packages all have the same restriction since they can use another version of those dependencies.

1 Like

as an example, Winpython for python is quite popular, it includes the “starter” data science packages (numpy, pandas…). It is very easy to just copy/paste the winypthon folder on student’s computers and then directly do things using jupyer, spyder, the shell or whatever.

You can also easily modify it to create your own flavour with specific packages installed.

It would definitely be a nice addition / feature for julia.

2 Likes

I agree with @DominiqueMakowski re: Winpython.

For perspective: When I first started learning Python and using Scipy (~2010), there was a PortableApps version of Python with Numpy, Scipy, and Matplotlib. This was incredibly useful for me as it allowed me to avoid Matlab licensing AND have others in my organization run my code. I didn’t have to use Matlab. Others could run my code. Things were good.

In contrast, I’m really enjoying Julia, but what I’m finding is that it’s hard to scale because some people have older machines (i.e. Win7) and there are some issues with that. Some solveable, some not. I’ve found myself translating important bits of my Julia code back to Matlab so others can test, evaluate, etc. with the Julia code that I’ve written. I’m currently looking at PackageCompiler.jl to pre-compile packages for my users. I can mostly avoid Matlab. Others can run sometimes run my code, and sometimes I have to translate functions to Matlab. Life could improve.

I think these are growing pains that will become a thing of the past, but that implies that the present is a bit painful.

1 Like

Julia should fully support Windows 7. I’ve seen in other threads, that old computers can be an issue, at least for JuliaPro, because they don’t support newer instructions. Even in that case, it’s solvable for Julia (there’s an option for older). As JuliaPro is prebuilt for you, it may not bother with very old computer, understandable, but it should also at least fully support Windows 7 (even XP, while no longer officially supported, would work to a large degree I believe).

I find it curious that some people find it easier to obtain a working setup for running Matlab on Windows (both of which are closed source, cost money, and come with usage restrictions, even if Windows is installed “for free” on most OEM computers) than, say, Julia on Ubuntu, which takes about half an hour to setup from scratch with a reasonable internet connection, requiring skills far less advanced than programming.

On Windows machine, I now usually install a Linux distro in a virtualbox environment, then install Julia. Works well for prototyping, etc… Of course, not a setup for calculations.

I prefer this setup than installing Julia on Windows (or any software on windows actually!).

I find such a solution absurd. To install Virtualbox + Linux only to run Julia?

I use JuliaPro’s distribution on Windows (1 click) plus the nightly build of Julia (1 click) plus
have changed in Atom the setting of JuliaPath to Julia-1.1.0-DEV\bin\julia.exe.

Works like charm and up-to-date!

Well, I do love Linux :slight_smile:

Happens only when I can’t choose the native OS and need to do some work for a substantial amount of time. Windows is just not productive at all imho!

1 Like

Maybe we can limit ourselves here to how to use Julia simply and productively on Windows? That was the question.

1 Like

Well… the Windows part came further down the thread, not in the original post. But sure, sorry for disrupting the thread. :slight_smile:

I wholeheartedly agree with you, but my organization has an IT group that manages everyone’s machines. That’s one reason that…

  • With minimal effort: I can get peers to install new software on their machines to run my code.
  • WIth much more effort: I can get peers to start using a new machine just to run my code.
    • These are people who generally like Windows and Matlab, despite my protestations. :wink:

I’m an avid fan of Julia and lately I’ve been thinking a lot more about strategies to have others easily run my Julia code.