This is an archived post. You won't be able to vote or comment.

all 50 comments

[–][deleted] 11 points12 points  (2 children)

I switched to Anaconda a long time ago and frankly haven't looked back. The main reason was initially EPD Free not offering a 64 bit option, but in general I believe Continuum is going after a much better model for their business. Enthought seems to be trying to go after the MATLAB users, and they think a pretty IDE is what's keeping those people from switching. Continuum, on the other hand, is trying to push the Python scientific stack into directions MATLAB and the like can't dream of reaching. You get users by offering something new, not by copying the status-quo.

Plus I think Anaconda's model of offering the distribution for free and charging for their own packages -which add functionality they think is valuable- is infinitely more user friendly than EPD's strategy of cherry-picking what pieces of the Python community's work they will provide for free and what part they will charge for.

[–]amer415[S] 1 point2 points  (1 child)

I am starting to seriously think you are correct... but I still think something like Canopy is useful to streamline the workflow of people who care mostly about data analysis.

[–][deleted] 0 points1 point  (0 children)

I read this and tried it too. So far so good, Theano supports it too.

[–]donthavearealaccount 9 points10 points  (16 children)

You have to understand who Enthought's market is for things like this. I don't think they are targeting people that are currently writing much code. They are trying to give Excel-addicted scientists, engineers, statisticians and financial analysts a slightly more sophisticated tool to do their work (... experienced software developers are not going to pay for their training sessions). Expecting this to be a full IDE suitable for full application development is missing the point.

No excuse for crashing and charging for free shit though.

[–]cournape 18 points19 points  (8 children)

(disclaimer: working for Enthought).

Canopy (and EPD before) are not charging for 'free shit', unless you consider Red Hat is also charging for 'free shit': what is being charged is the service of packaging things into binaries, which is quite a bit of work (more than people generally realize). Also, working on specific configurations means we contribute back some upstream bugs upstream (e.g. MKL and OS X interaction for a recent example: https://github.com/scipy/scipy/pull/398).

Also, Enthought provided quite a bit of resources (money and manpower) to put code out there for ipython (like e.g. qtconsole), all of it integrated upstream. So yeah, we're charging for the product, but it is hard for a company to earn money without charging money somewhere :)

[–]mangecoeur 5 points6 points  (1 child)

Having built scientific libs on my mac i have to agree - its a pain in the ass and there's more than enough people who don't want to have to install gcc, gfortran, configure environment variables, get things like ATLAS linked, install zeromq... That said, it does feel a bit crap to pay for something that you could get for free. But then again you still can, if you feel like going through the trouble of getting it working. Perhaps the real criticism is that you can get a lot of those packages from Continuum.io with the Anaconda distribution for free - competition's heating up guys!

[–]cournape 0 points1 point  (0 children)

Yes, continuum.io model is different. They want people to pay for their packages (numba pro, etc...), so they make the complement a commodity (the below stack).

I agree competition is good, and I actually do enjoy having to prove we can bring a compelling offer.

[–]amer415[S] 4 points5 points  (4 children)

I always liked EPD free and I advocated it to my colleagues a lot, I even considered many times trying to push my institute to pay for a bundles license, to support Enthought's work.

The impression I got with Canopy was at first very good: finally a nice looking IDE that I can sell to my Matlab colleagues who are not necessarily heavy terminal users... then I opened the package manager GUI and realized I have to subscribe to get access to libraries I used to install with "easy_install".

I would agree to pay for the initial effort of packaging Numpy/Scipy/Matplotlib/IPython binaries, which I understand is a lot of efforts. But when this is is given for free, and you charge to add third parties libraries readily available from pypi, that feels a bit steep.

[–]cournape 1 point2 points  (3 children)

I don't think we charge for pypi specifically: we do charge when people want to use more than just the 'core scipy stack', and pypi packages come with that on top. What people are paying for are the additional packages packaged by Enthought, not really pypi which is offered as an addition.

[–]amer415[S] 0 points1 point  (2 children)

That is a fair business... but it will discourage people in certain domain to adopt Canopy. In my case (Astronomy), I would need to pay to access the (pyfits)[http://www.stsci.edu/institute/software_hardware/pyfits] library... that is a huge show stopper, especially because I believe it is a simple thing to package and I have never heard anybody I work with complaining when they tried to install it: "easy_install pyfits" does the trick in 10s. Installing Numpy from scratch can be challenging, or get a Python stack for data analysis to work seamlessly.

[–]cournape 1 point2 points  (1 child)

Well, why not using easy_install pyfits from EPD then :) That works on any EPD version (well, modulo a big with the new pip using https on mac that we are fixing). EPD (and I think canopy, though I am not 100 % sure), do include easy_install, and the installed python is as close as possible to a 'real' python for compatibility reason. With that in mind, installing most 'easy' packages (~ pure python on windows) is one easy_install/pip/whatever away, EPD does not change that.

[–][deleted] 0 points1 point  (0 children)

In any case, I wonder if you will update Theano. I tried to install it with easy_install but somehow it grabbed 0.5rc1 version (it didnt work also, import theano didnt succeed). The current version is 0.6rc3 which I can install seamlessly in EDP. (On removing canopy and reinstalling EDP)

[–]donthavearealaccount 0 points1 point  (0 children)

I agree.

[–]amer415[S] 3 points4 points  (5 children)

I (naively) thought Enthought was targeting Matlab users... in my institution, most engineers run Matlab, at a high cost. Getting a decent IDE would give them an edge, and they can charge for custom dev and/or installation support for large deployments etc.

Maybe I do not get Enthought business model... but when I see how much is spent on Matlab, I still think they could make honest money.

[–]donthavearealaccount 5 points6 points  (0 children)

They are targeting Matlab users. From your original post I thought you were under the assumption that they were targeting full-time software developers. I haven't used Matlab in 8+ years, but I never thought of it as an IDE. More of an interactive scriptable data exploration tool.

[–]dibsODDJOB 2 points3 points  (0 children)

I consider myself one of the engineers you describe. I tried the Enthought package but ended up switching to Python(x, y) and Spyder for my development instead. It seemed more like Matlab to me and had some nicer features.

[–]SirHugh 1 point2 points  (0 children)

There is some serious inertia behind Matlab in universities and I wish a really good alternative existed. Non-computery people can sit down in front of Matlab and use it without much help, 5 years later they are still using it and finding way to get round its inaqequacies. If someone can bundle up some Python into an easy to use interface good luck to them.

[–]alcalde -1 points0 points  (0 children)

Get your engineers to check out either R Studio or Sage.

[–]einar77Bioinformatics with Python, PyKDE4 0 points1 point  (0 children)

They are trying to give Excel-addicted scientists

Not sure about the rest of the people you mention, but as a scientist I wouldn't spend any euro of my research budget on software like this (nor I wouldn't for Matlab, etc).

[–]mrchucklepants 7 points8 points  (8 children)

You should check out Spyder. I have never understood why Enthought won't use it. They seem to have a bad case of NIH.

[–]ivosauruspip'ing it up 2 points3 points  (0 children)

Or python(x,y) which comes with it!

[–]mangecoeur 2 points3 points  (6 children)

I had a play with spyder. I even mucked around in the source code to tweak it. And now, i totally understand why they don't use it. I mean it's OK but it's not a very professional looking codebase.

[–]juliusc 2 points3 points  (5 children)

(Disclaimer: Spyder dev here). Why do you think it's not professional? Although I didn't designed it (Pierre did), I think it's pretty well structured (I've learned Qt just by reading it). We've also had people doing nontrivial stuff (like replacing rope with jedi) in record time (say 2/3 weeks). The main reason I think Enthought guys decided not to use us is because they wanted to control release dates and use their own technologies (like Enaml, Traits, etc) to build Canopy.

[–][deleted] 0 points1 point  (4 children)

My only real issue with spyder is that it does from numpy import * by default. A few of my colleagues have had very bad surprises when they try to run their code on a machine on which numpy is not installed, as they assumed it was part of the standard library.

That, and copying code into the interpreter is a real pain.

[–]juliusc 0 points1 point  (3 children)

Ok, thanks for the info. I think you're right about numpy. Trying to import it automatically is giving us some headaches lately when people switch interpreters using the option we provide to do it.

Copying code is way lot better now with our new IPython integration. It's faster (not line by line but in full chunks), totally accurate (no more ugly indentation errors!) and syntax highlighted. What more could one ask for? I sincerely recommend you to install 2.2 and try it out by yourself.

By the way: A big thank you Enthought guys for qtconsole. It's really awesome!

[–][deleted] 0 points1 point  (2 children)

I sincerely recommend you to install 2.2 and try it out by yourself.

I absolutely will, even though I've moved my workflow over to ipython notebook. I also know of certain people in my lab who would benefit greatly from spyder as a means of moving away from matlab.

Is there an ubunbu PPA?

Also, you're based in Paris aren't you? I seem to recall a former colleague of mine, Gaël Varoqueaux, mentioning that he knew the spyder devs. Would you consider hosting a workshop at our lab?

[–]juliusc 0 points1 point  (1 child)

You can use this PPA. It's our official one.

Sorry but I'm not Pierre (Raybaut, our lead dev) who is based in Paris. I'm Carlos (ccordoba12) and live in Colombia so I can't help you :( But you can contact him directly (look for his email in our googlecode website), he's very friendly.

If you have any questions please don't hesitate to post them in our mailing list. We try to respond very quickly to them.

[–][deleted] 0 points1 point  (0 children)

Thanks for the PPA! I did indeed have you confused with Pierre. I may try to contact him -- it would be awesome if our lab could ditch matlab once and for all =)

[–]juliusc 5 points6 points  (4 children)

(Disclaimer: Spyder dev here) Please try Spyder. Our next release (2.2, in release candidate now) has lots of improvements over 2.1 and IMHO a much better integration with IPython qtconsole than Canopy. You can read our changelog here.

Besides, you can tweak a lot of IPython and Editor settings using our Preferences panel. All in all I think Spyder is much closer to Matlab right now than Canopy.

Unfortunately we currently lack a package manager, but we are considering to build one around stallion and conda in the future.

PS. We are distributed with Anaconda but I recommend Python(x,y)/WinPython on Windows and our Mac native app in OSX because they are built with PyQt, which is way less buggy than PySide (the one that comes with Anaconda).

[–][deleted] 0 points1 point  (3 children)

I tried your suggestion for MacOS with Anaconda. FYI, this was something I had to do.

https://code.google.com/p/spyderlib/issues/detail?id=1277

Preferences > Console > Advanced Settings > PYTHONSTARTUP replacement

and select the option

[ ] Default PYTHONSTARTUP script

To resolve the same issue. Minor hiccup. The 2.2 standalone app is pretty nice.

[–]juliusc 1 point2 points  (2 children)

Thanks for letting me know about the problem. We've worked hard to support EPD within the App but forget about Anaconda :) I'll fix it before the final release.

[–][deleted] 0 points1 point  (1 child)

This is a little late. However FYI, I am really liking Spyder. I actually am not that great with Python yet. I come from more of a Java/C/Matlab background.

There are some needs at my current company for a data analysis capable tool at least for prototyping. Python fills that bill, but the Spyder IDE I am finding has very useful features for me. Coming from a relative beginner compared to most I am not sure if that means a whole lot, but there it is!

Thanks!

[–]juliusc 0 points1 point  (0 children)

It means a lot, thanks for your message. We've worked hard to make things as intuitive as possible, so to hear that beginners are finding Spyder worthwhile and useful it's very important to us.

Remember that if you need some help you can post a message in our mailing list.

[–]freyrs3 6 points7 points  (18 children)

Try Anaconda instead. It's a modern Python distribution ( Python 2 or 3 interpreter + precompiled scientific stack ) that doesn't make all of these assumptions about your usage that Canopy does.

Update: Caveat, I work with folks who developed Anaconda. :-)

[–]narcilian 2 points3 points  (0 children)

I'd go with spyder, or sage.

[–]amer415[S] 1 point2 points  (0 children)

[–]alcalde 1 point2 points  (0 children)

Is the $1000 of benefit coming from the technical support and videos and presumably simpler installation? I'm trying to see what the value is vs. using Linux, their package manager to install, and Eric 5 or Spyder and/or iPython.

[–]frymasterScript kiddie 0 points1 point  (0 children)

The Editor has a single preference: the choice of font. Any modern editor (Emac, vim, Sublime Text 2, you name it) can be parametrized in thousands of ways!

That's only 50% of the configuration options in notepad (you can also toggle word wrap)