I’m a complete Julia beginner. I just downloaded Julia 1.6.1 and I’d like to move my first steps with the language. My first task will be integrating the heat equation in a simple 2D domain (I’ll write a separate question for that). Which IDE do you suggest me to use with Julia? Personally I like VSCode and JupyterLab, thus if either of them support Julia that would be good. But if there’s a better IDE for Julia (for example, in the case of R the best IDE is clearly RStudio) I’m open to suggestions. Thanks!
Last years survey (page 16) show that 35% of users use VSCode, but since that survey development for Juno (40%) have stopped and I think most of those users have moved to VSCode. I would thus guess >50% use VSCode.
Attention : We have decided to join forces with the Julia extension for VSCode. As such, this Atom-based plugin is effectively in “maintenance-only mode” and we expect to only work on bug fixes in the future.
But of course you should really use Vim.
not in a thousand years! I still bear the emotional scars from when I had to develop CFD codes on vector supercomputers using Vim…I had enough, thanks
Personally I find it convenient to have multiple IDEs, for different projects, environments, versions of Julia or even if you switch OS. Using multiple IDES regularly means that you’re used to switching and won’t suffer every time a problem renders your current IDE temporarily unusable (which is quite often). In addition to Visual Studio Code, which is / going to be the main IDE for Julia, I can recommend Atom and IntelliJ which work “out of the box” after you install the Julia extension. (just ignore deprecation warnings and such). You can even run Julia from RStudio. Half the time I simply copy-paste code into the Julia terminal. After you’ve changed the background color and font, it’s not bad either. I run code I find on discourse this way:
It’s still the most developed and polished IDE for Julia though. I would recommend VS Code at this point for someone just starting because it has more movement, but its still not at the level of Juno and so I think that’s a rather harsh comment for something that is still very useful.
I didn’t know IntelliJ supported Julia! Thanks for the tip. I will have a look if I VSCode starts acting weird.
Interesting. I used to be a big fan of RStudio back in the days when I programmed in R. Are you sure that RStudio supports Julia, though? It’s well-known that it supports Python, but I couldn’t find any such sources for Julia. I’d rather not download it if I have to struggle in order to make it connect to my Julia installation. Do you have any references? My OS: I use MacOS and Linux, but I’d rather limit myself to MacOS for now (the Linux machine is a shared server, so I don’t want to install Julia there for now, I’d rather get some practice on my local machine).
I’d rather have the full power of an actual IDE (interactive debugging, code completion, function documentation and jumping to function definition, variables explorer, etc.) than just using the REPL, but thanks for the suggestion anyway!
So, thanks for all the people who contributed to this thread! It’s been very informative for me, and y’all been very kind and helpful with a newbie like me. I’ll install VS Code (and maybe give a chance to Juno, since @ChrisRackauckas put his weight on this one) and then start bothering you with the coding questions thanks again!
Not just RStudio, it’s an R package called JuliaCall, which follows a principle similar to pyCall (not to be confused with PyCall.jl).
I’ve used them once out of curiosity. They work well, but having to wrap every command is not terribly convenient.
I’d rather have the full power of an actual IDE
For me that depends: In my office with two screens, I love to use Visual Studio Code (aka vscode), Atom (aka Juno, yes confusing), IntelliJ (and for that matter RStudio), because I can see a bunch of things at once. But on my 15’ laptop I can’t be bothered and prefer to use a simple editor and dump code in the Julia console. But to test how different components of a package are connected, you really appreciate all the gimmicks (or most of them anyways) that come with a proper IDE. There was a Julia extension for Eclipse at some point, but I haven’t heard it mentioned so it must be discontinued.
For reference, this is what these IDEs look like pretty much out of the box.
For me, an environment with interactive debugging is essential. The one that SGI publishes (published?) is probably the best environment I’ve ever worked in. Use debugging during develop, change one flag, and send the executable to the ones that wanted it. Graphics, delving into structures during program execution, easy breakpoint setups, and etc. were the cat’s pajamas.