What if I want a simpler IDE for Julia?

Not sure what you mean about pointing atom at the julia executable, but sorry that Juno caused you issues. I wonder if whatever setup you had prior to installing Juno caused the problem. I’ve now installed julia, atom, and Juno on a number of different systems with students on Windows and Mac, and can’t recall major issues.

Well, not necessarily. But defaults have a lot of power. Anything shipped with Julia is going to get the most attention. And in any case, I’d rather the Julia folks focus on the language rather than making a dedicated IDE.

Or, think of the REPL (maybe plus OhMyREPL), as the simple, built in IDE.

1 Like

This is not about wishing; someone has to write and maintain it.

Also, having that IDE “included” in any meaningful sense would tie it to Julia’s release cycle. If you think about it, this is almost certainly not what you want.

1 Like

cf “Microsoft is Dead” from 2007, Microsoft is Dead . Pretty much all of this is was either spot on in 2007, or eerily predictive with hindsight 12 years later.

2 Likes

So you say basically, “Yes, but…”

Well, then what does that matter, that that standard IDE shipped with Julia has power (if true)? That doesn’t stop you or anyone else from developing plugins for editors like it has been all this time. I still don’t see the problem, because there is none. (Edit… And it would be a simple basic effective IDE; once it’s in place and stable, it doesn’t require much anymore.)

In fact… Even if it would have power, then it should be properly used. Maybe it would (probably) have the power to more easily attract new users. And if they want more, then there are all the nice plugins to choose from.

And saying that you’d rather like the Julia folks (you probably mean the main developers) focus on the language isn’t very convincing.

Please, like I said to someone else in this thread, if you are going to argue, then at least make it a good argument. One that cannot be pierced.

Obviously it would have to be made. That is how things work. See the relevant edit in my previous post and the post itself.

@Usor, I think your tone in this thread is inappropriate. I see your responses here as being pretty rude and condescending, especially when you’re criticizing others for offering ‘weak arguments’. Those living in glass houses would do well to not throw around stones like that.

7 Likes

@Usor I don’t think this approach is going to be very effective. And this thread has gone a bit off the rails. Maybe you should start a new thread where you invite people who are interested in building a new editor to participate, and then you can start planning the work.

This thread could have been used for that, but it’s too late now, I think.

6 Likes

@Tamas_Papp pointed out I should endevour to contribute and I whole heartedly agree. This morning I was on sand hill road and asked for my friend’s opinion on this topic. The result is as follows:
install ubuntu 18.04 lts vanilla
install julia latest version
install juliainterpreter.jl
install tmux

so this is my current approach. I would like to use emacs but for right now the above is just fine.

The point was discussed at great length in this thread among others. To summarize - the point is not that shipping an IDE with julia prevents others from developing alternatives, it’s that

  1. it would take substantial development energy to produce, development energy that many feel is better directed at core language features
  2. Once shipped, it would require continued developer time and attention
  3. There are already lots of other super usable alternatives, including the default julia REPL
  4. Since many people are apt to use / work on the default, any built-in editor could take outside developer attention away from other efforts

Well, there’s at least one problem. It doesn’t exist, and no one is working towards this goal as far as I know. “Simple basic effective IDE” is, I think, not quite as simple as you seem to believe. Then again, you’re free to open an issue or better yet, a pull request with such a feature.

I’m not actually trying to convince you of anything there. I’m stating my preference.

You seem to think this is more antagonistic than it’s intended. I’m not arguing with you - I’m stating a different opinion, and telling you why I hold that opinion. My “cannot be pierced” argument is that the folks in a position to contribute to such a project have better things to do with their time.

7 Likes

Funny how this kind of topic does a revival every once and then :wink: I cannot resist and would like to comment on it, although I think everything has been said already (many times).

To me it boils down to a war of worlds between

  • purists: do everything with a single editor and be a master of it (the one I prefer)
  • IDElers: Juno, PyCharm, Visual Studio, Eclipse, the “best of the best, gimme more features”
  • mixed users: à la “whatever works”…
  • and those who (once) spent a lot of time working with a specific setup (like an IDE), really got used to it and want to have the exact same behaviour when they start to use another, new language.

I think that these are really different philosophies, the discussion always goes in circle and branches out in convincing people that other workflows are better or worse.

For Julia, I think every group except maybe the “hardcore IDElers” are well served with a bunch of alternatives.

I don’t understand though (referring to the original complaint) why the Julia REPL with a second terminal could not compete with Python’s IDLE (which I find is a total crap; I only write this to prove my statement above).

The statement that IDLE just works (out of the box) is btw. not true. I just tried it out of curiosity and it hangs occasionally under macOS Catalina and none of the menu bar items are clickable most probably due to the deprecation of Tk. That’s just the tip of the iceberg.

Regarding Juno: I would not say that Juno is the way to start off with Julia. I also have it installed and I tend to agree that it sometimes needs some hardcore treatment to get it working again (this should be much better with the latest versions).
However, I personally think that every language which provides a REPL, should be explored using the same. I also did not hear yet that people say Juno is the “latest and greatest of Julia”. I do not use Juno and I am writing Julia code successfully and use the REPL for my daily work and analyses.

In the end it’s all about your own preference. Obviously there are plenty of tools and it’s up to you to compose them into a (for you) productive working environment.

As said: the REPL of Julia is in my honest opinion a (the) great start to use and explore the (a) language. It’s still one of my main tools, after like 3 years of Julia.

To round it up: I personally use vim with julia-vim and all my other general plugins and occasionally Jupyter for prototyping, sharing and documenting analysis stages.
Why? Because I mastered vim in the last 20 years, I use many of its features and I am more productive with it than with any other editor (even if I enable vim mode in them). For me, getting in touch with a new language is just installing the corresponding popular vim plugin and that’s it, every other functionality is mostly generic and language independent.

…and yes, finally my personal recommendation which I came up with after reading all your comments above and figuring out what could make you happy:

  • install Ubuntu (or Debian if you prefer even more “vanilla”)
  • get the latest Julia release from JuliaLang.org
  • install OhMyREPL and Revise (both with Pkg) and set them up so they run on each Julia REPL session (*startup.jl)
  • install tmux
  • use the editor which you are comfortable with (preferably one where you know more shortcuts than deleting a line or replacing text in double quotes)

But I don’t want to hold you back from contributing to the whole tooling environment. It just feels like there is so much out there, which you first should try before you really see what’s missing. Maybe it’s just your workflow which is flawed…

8 Likes

ty. So, asking for a friend… linux platform, fresh slate, willing to learn, happy with mechanical keyboard and using mouse a bit less, wants to settle into a mode that will work for the next 5-10 yrs: should my friend go the vim or emacs route?
Objectives: ability to produce literate blogs (Julia primarily for active code), data science and research, work on a zettelkasten for personal notes (Org-Mode really pulling toward emacs for this, but friend thinks that emacs is just for Mac bash users), full LaTeX capability, …
Now I’m quite curious as well. Am using zsh and Sublime Text 3, but also early in the game so fine to switch approach. Recommendations? :face_with_thermometer:

Auctex (emacs) is probably the best LaTeX editor out there. But really I’d encourage both of you to try both vim and emacs to see which (if either) suits you. The vimtutor only takes a few minutes to get you up and running, and there’s probably something equivalent for emacs.

3 Likes

Isn’t this one of the longest standing internet wars? Why would you bring the battle here?!? :joy:

12 Likes

Your friend is weird. :wink:

IMO with Emacs/AUCTeX, that pretty much decides the question. Nothing compares.

That said, I would recommend that you just give both some time, eg 2 months. People are different and some mesh better with vim, some with Emacs. Even if you pick the other one, time spent using one of the world’s two most powerful editors is not wasted.

9 Likes

One thing I’d be quite interested in is: What constitutes a “simple basic effective IDE”? That phrase came up a couple of times in this thread, but no-one really cared to define it.

8 Likes

IMO, something that doesn’t need any adjustment and hard installation, and works out of the box.

I think Juno could be the simple effective IDE if there was a single command/installer to install Julia + Atom + Juno.

IMO, VSCode is better in this case, as they have merged all the features into a single Julia extension.

One of my critiques about Juno is that why we should have language-julia, julia-client, ink, uber-juno, indent detective, latex-completions, language-weave, juno-toolbar-plus, linter-julia, jude, etc

Also, I don’t consider things like emac, sublime, etc as basic and effective, because you should spend some good effort and time (that are not easy for beginners) to just integrate REPL and some basic features.

2 Likes

“Whatever I used before for programming language X. And it should look the same, too. With the buttons in the same place.” :wink:

16 Likes

IMO Juno and VSCode are a bit too heavy. I am currently using Atom - without Juno - with platformio-ide-terminal. It is lightweight and it looks good. Hydrogen also works well if you want to use Jupyter notebooks within Atom.

Prefer an editor written in Julia?
https://github.com/lancebeet/Joy.jl

5 Likes

As the Julie REPL is already half an editor, it would probably not take much to transform it into an editor: it might not need more than the ability to open “full screen” (i.e. get out of the REPL prompt), to open a file and save it. Would that qualify as a simple basic IDE? The advantage is that editing commands are the same in REPL mode and in editor mode.