Thanks for weighing in. I'll stick to your lingo: solid and usable, but not with a guarantee of long term support until v1.0. That's what I've been meaning by alpha (I mean I use Julia everyday because it's solid and usable), but I won't continue to use that term because it seems to carry a worse connotation than what I meant it to have.
Though I will say that when I talk of "Julia", I also am referring to the package ecosystem (like how Python means Python + NumPy etc.). FWIW, most of the issues I run into tend to be due to packages rather than base. On Tuesday, September 13, 2016 at 1:00:10 PM UTC-7, Stefan Karpinski wrote: > > +1 to everything David said. And yes, we should put out an official > statement on this subject. Julia has absolutely been released on four and > very nearly five occasions: 0.1, 0.2, 0.3, 0.4 and any day now, 0.5. These > are not alpha releases, nor are they unstable. They are very solid and > usable. The pre-1.0 numbering of these releases (see, that's the word) are > simply an indication that we *will* change APIs and break code in the > relatively near future – before 1.0 is out. We could have numbered these > releases 1.0, 2.0, 3.0 and 4.0, but (to me at least), there's an > expectation that a 1.0 release will be supported for *years* into the > future, which would leave us supporting four-five releases concurrently, > which simply isn't realistic at this point in time. Once Julia 1.0 is > released we *will* support it for the long term, while we continue work > towards 2.0 and beyond. But at that point the Julia community will be > larger, we will have more resources, and releases will be further apart. > > Aside: Swift seems to have taken the let's release major versions very > often since they are already on a prerelease of major version 3.0 (and > maybe that's better marketing), but to me having three major releases in > two years seems a bit crazy. Of course, Swift has a very large, effectively > captive audience. Julia is likely to follow the Rust approach, albeit with > a *lot* less breakage between pre-1.0 versions. > > Issues you may have had with Juno don't really have anything to do with > Julia, although there's an argument to be made that pre-1.0 numbering of > the language is a good indicator that the ecosystem may be a little rough > around the edges. Once Julia 0.5 is out, there will be a stable version of > Juno released to go with it. > > On Tue, Sep 13, 2016 at 1:19 PM, Chris Rackauckas <rack...@gmail.com > <javascript:>> wrote: > >> I agree that there are some qualifiers that have to go with it in order >> to get the connotation right, but the term "unstable but usable >> pre-release" is just a phrase for alpha. It's not misleading to >> characterize Julia as not having been released since the core dev group is >> calling v1.0 the release, and so saying pre-1.0 is just a synonym for >> "pre-release". Being alpha doesn't mean it's buggy, it just means that it's >> alpha, as in not the final version and can change. You can rename it to >> another synonym, but it's still true. >> >> Whether it's in a state to be used in production, that's a call for an >> experienced Julia user who knows the specifics of the application they are >> looking to build. But throwing it in with the more stable languages so that >> way someone in a meeting is like a stand-in ("hey guys, we can try Julia. >> It should be faster than those other options, and should be hard to learn, >> what do you think?"), that has a decent change of leading to trouble. >> >> And I think not being honest with people is a good way to put a bad taste >> in people's mouths. Even if lots of Julia were stable, the package >> ecosystem isn't. Just the other day I was doing damage control since there >> was a version of Juno that was tagged which broke "most users'" systems, by >> most users I mean there was an "obvious" fix: look at the error message, >> manually clone this random new repository, maybe check out master on a few >> packages >> <http://stackoverflow.com/questions/39419502/cannot-start-julia-in-atom-loaderror-argumenterror-juno-not-found-in-path/39420874#39420874>. >> >> You want to use the plot pane? Oh just checkout master, no biggie. >> <http://discuss.junolab.org/t/plots-jl-in-atom/714/11> If someone is >> trying to use Julia without knowing any Git/Github, it's possible, but >> we're still at a point where it could lead to some trouble, or it's >> confusing since some basic features are seemingly missing (though just not >> tagged). >> >> When you're talking about a drop-in replacement for MATLAB/Python/R, >> we're talking about people less familiar with all of this software >> development stuff who have a tendency to confuse warnings (like deprecation >> warnings) as errors, not realize their install is Julia v0.3 that they >> played with one day from along time ago which is why the documentation >> isn't working, trying to use a feature they see mentioned on a Github issue >> which requires checking out a development branch but still on the release, >> wondering where the documentation is for things like threads (and being >> told to just check the source code), accidentally using deprecated / no >> longer developed packages because they were pointed to it by an old >> StackOverflow post. These aren't hypothetical, these are all things I >> encountered in teaching a Julia workshop and beginning to spread it around >> my lab / department. None of these problems are difficult to overcome, but >> if you say Julia is as easy to use right now as those other languages, >> non-software-development-oriented users will quickly encounter these simple >> problems and it may leave a bad taste in their mouths. >> >> "I tried Julia but I couldn't get Juno to install" >> "Did you set the julia path either as an environment variable or inside >> the julia-client package?" >> "No, I don't know what the julia path is. Anyways, let me know when it >> actually has an 'auto-install' since I want to be able to use an IDE, but >> have it simple to setup" >> >> That's too common right now. People think a "developed" language means a >> 1-click installed IDE to a language where they can use the same script a >> year from now without any errors or warnings, and right now that's not >> offered. Don't get me wrong, I love Julia and use it for everything now >> because it is high quality, not buggy, and works well. But I would not say >> it's not alpha. >> >> I too would like to hear the core devs weigh in. I presented my side, but >> am willing to toe the party line if there is one. >> >> On Tuesday, September 13, 2016 at 9:39:09 AM UTC-7, David Anthoff wrote: >>> >>> I find this characterization of julia as “not released” and “alpha” >>> really not helpful. To the casual reader these terms signal low quality and >>> lots of bugs, and in my experience (after 2.5 years of heavy use) those are >>> the last two things that come to mind with respect to julia. On the >>> contrary, I think the quality of the julia builds at this point can easily >>> compete with things like Python or R (in terms of bugs). >>> >>> >>> >>> I think the correct characterization of the pre-1.0 builds is that julia >>> hasn’t reached a stable API, i.e. you need to be willing to live with >>> breaking changes coming your way. That is a VERY different thing than a >>> buggy alpha release! >>> >>> >>> >>> There is a large group of julia users out there that use julia for “real >>> world” work. It is really not helpful for us if julia gets an undeserved >>> reputation of being a pre-release, buggy thing that shouldn’t be used for >>> “real work”. Such a reputation would question the validity of our results, >>> whereas a reputation as “hasn’t reached a stable API” is completely >>> harmless. >>> >>> >>> >>> Also, keep in mind that there is julia computing out there, which is >>> feeding the core dev group. They have customers that pay them (I hope) for >>> supported versions of julia, so it seems highly misleading to characterize >>> julia as not released and not ready for production. Heck, you can buy a >>> support contract for the current released version, so in my mind that seems >>> very much released! >>> >>> >>> >>> I think it would be a good idea if the core julia group would actually >>> put a definitive statement out on the website for this topic. There are a >>> couple of devs that at least from the outside seem close to the core group >>> that have made statements like the one below, that to any sloppy reader >>> will just sound like “stay away from julia if you don’t want a bug riddled >>> system”, and I think that really doesn’t square with the message that e.g. >>> julia computing needs to put out there or with the state of the language. I >>> think a good official position would be: “Current julia releases are of >>> high quality and are ready to be used for ‘real world’ work. Pre-1.0 >>> releases will introduce breaking API changes between 0.x versions, which >>> might require extra work on the users part when updating to new julia >>> versions.” Or something like that. >>> >>> >>> >>> Cheers, >>> >>> David >>> >>> >>> >>> -- >>> >>> David Anthoff >>> >>> University of California, Berkeley >>> >>> >>> >>> http://www.david-anthoff.com >>> >>> >>> >>> >>> >>> *From:* julia...@googlegroups.com [mailto:julia...@googlegroups.com] *On >>> Behalf Of *Chris Rackauckas >>> *Sent:* Tuesday, September 13, 2016 9:05 AM >>> *To:* julia-users <julia...@googlegroups.com> >>> *Subject:* [julia-users] Re: Julia Users and First Customers >>> >>> >>> >>> 1. Jeff Bezanson and Stefan Karpinski. I kid (though that's true). It's >>> the group of MIT students who made it. You can track the early issues >>> and kind of see who's involved. >>> <https://github.com/JuliaLang/julia/issues?page=348&q=is%3Aissue+is%3Aclosed> >>> Very >>> early on that's probably a good indicator of who's joining in when, but >>> that only makes sense for very early Julia when using means also >>> contributing to some extent. >>> >>> >>> >>> 2. Julia hasn't been released. Putting it in large scale production and >>> treating it like it has been released is a bad idea. >>> >>> >>> >>> 3. The results advertise for itself. You go learn Julia and come back to >>> your lab with faster code that was quicker to write than their >>> MATLAB/Python/R code, and then everyone wants you to teach a workshop. Also >>> packages seem to play a big role: a lot of people come to these forums for >>> the first time to use things like JuMP. >>> >>> >>> >>> 4. Julia hasn't had its first release. >>> >>> >>> >>> Keep in mind Julia is still in its alpha. It doesn't even have a beta >>> for v1.0 yet. That doesn't mean it's not generally usable yet, quite the >>> contrary: any hacker willing to play with it will find that you can get >>> some extraordinary productivity and performance gains at this point. But >>> just because Julia is doing well does not mean that it has suddenly been >>> released. This misconception can lead to issues like this blog post >>> <https://blog.staffjoy.com/retro-on-the-julia-programming-language-7655121ea341#.w1bggaw78>. >>> >>> Of course they had issues with Julia updating and breaking syntax: it's >>> explicitly stated that Base syntax may change and many things may break >>> because Julia is still in its alpha, and so there's no reason to slow down >>> / stifle development for the few who jumped the gun and wanted a stable >>> release yesterday. It always ends up like people complaining that the >>> alpha/beta for a video game is buggy: of course it is, that's what you >>> signed up for. Remember that? >>> >>> >>> >>> Making sure people are aware of this fact is a good thing for Julia. If >>> someone's not really a programmer and doesn't want to read Github issues / >>> deal with changing documentation (a lot of mathematicians / scientists), >>> there's still no reason to push Julia onto them because Julia, as an >>> unreleased alpha program, will change and so you will need to keep >>> up-to-date with the changes. Disregarding that fact will only lead to >>> misconceptions about Julia when people inevitably run into problems here. >>> >>> >>> On Tuesday, September 13, 2016 at 7:55:51 AM UTC-7, Adeel Malik wrote: >>> >>> I would Like to ask few questions about Julia that I could not find it >>> on the internet. >>> >>> >>> >>> 1) Who were the very first few users of Julia ? >>> >>> >>> >>> 2) Who were the industrial customers of Julia when it was first >>> released? Who are those industrial customers now? >>> >>> >>> >>> 3) How Julia found more users? >>> >>> >>> >>> 4) How Julia survived against Python and R at first release? >>> >>> >>> >>> It's not a homework. Anyone can answer these questions or put me at the >>> right direction that would be perfect. >>> >>> >>> >>> Thanks in advance >>> >>> >>> >>> Regards, >>> >>> Adeel >>> >>> >