Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

IPython is extremely useful.

I like the qtconsole feature but i find it less than perfect to install:

1. pip install ipython 2. <system package manager> install qt4 3. pip install pyside / qt4 bindings

The better feature, for me anyway, is the notebook interface (it starts a local web server and gives you a rich web guy, somewhat like a Mathematica idea of interactive notebook editing with inline charting etc.)

But, that's a whole other bunch of dependencies that aren't in scope when installing ipython.

Not sure of the best fix, offer ipython and ipython-full-stack on PyPI?



If you want qt, I would say your best bet is one of the full python distribution for scientific python, e.g. winPython, python(x, y), EPD, Anaconda. Everybody working on one of this is a user of ipython, and care about the notebook, and most of them have a free version available (free as no cost, not necessarily open source)

(disclaimer, I work for Enthought, which sells EPD)


The free version of Enthought solved a bunch of problems for me on OSX. It bundles a lot of the binary libraries that are a bitch to compile yourself.


I've had a Mac at home since 2007 and had a go at doing some python programming on it a few years ago and gave up. I got 2.7 installed, virtualenv, even Qt but eventually a few things broke and I ended up switching to programming in a Linux VM.

I might have another go now I've got a shiny new Mini with ML on it. If i have problems I'll give Enthought a try.

Given the popularity of OSX with developers it's shocking how few Python libraries have good OSX binary packages. A few times I've found the easiest platform to work on is actually Windows. For example with PySide for a long time the binaries in all the Linux repos were out of date, OSX support was intermittently flaky, but the Windows installer was complete and up to date.

Yes I know you can compile from source, but I am a Python programmer. I develop software in Python, not C. I wonder if the poor state of binary packages for OSX is actually because it's a Unix variant. i.e. module developers deliberately choose not to do binary OSX builds because hey, the users can just compile from source. No, we can't all compile from source. We're not all C hackers, that's why many of us use Python in the first place. </entitled rant>


(disclaimer: I work for Continum Analytics)

Anaconda Community Edition installs very easily on windows, linux, and OS X, and is very easy to uninstall without breaking your system.

> No, we can't all compile from source. We're not all C hackers, that's why many of us use Python in the first place.

EXACTLY!

This is the whole idea behind Anaconda and the idea behind our beta cloud product Wakari. Wakari gives you multiple python versions, multiple numpy versions, interactive plotting in your browser, and the wonderful ipython notebook built-in. It's still in a closed beta, but people usually get approved for access the same day.


Glad it is working for you. I have now just started working on it, so let me know if there are things you'd like to see improved.


That's why for apps like this (not for projects that I create with virtualenv) I much more prefer using OS package manager. Could it be any nicer than on Gentoo? ;]

  CDEPEND="dev-python/decorator
  	dev-python/pexpect
  	dev-python/pyparsing
  	dev-python/simplegeneric
  	virtual/python-argparse
  	emacs? ( app-emacs/python-mode virtual/emacs )
  	matplotlib? ( dev-python/matplotlib )
  	mongodb? ( dev-python/pymongo )
  	octave? ( dev-python/oct2py )
  	smp? ( dev-python/pyzmq )
  	wxwidgets? ( dev-python/wxpython )"
  RDEPEND="${CDEPEND}
  	notebook? ( >=www-servers/tornado-2.1
  			dev-python/pygments
  			dev-python/pyzmq )
  	qt4? ( || ( dev-python/PyQt4 dev-python/pyside )
  			dev-python/pygments
  			dev-python/pyzmq )"
  DEPEND="${CDEPEND}
  	test? ( dev-python/nose )"


For OSX, I've used http://fonnesbeck.github.com/ScipySuperpack/ with no issues.


I'm sure it's useful, but is it extremely useful? I can imagine living without it, even when programming Python.

I'm surprised to be honest but maybe I'm missing something.


>> I'm surprised to be honest but maybe I'm missing something.

Give it a proper whirl, you'll never go back.

Proper python REPL history across sessions (not hacking up a substitute using a $PYTHONSTARTUP file to load readline history and register an at exit handler to dump history). History becomes as useful as a large shell history (i'm sure i did something similar last year, what was it?...)

In line charting, makes visualising any random thing (runtime of function, memory usage etc.) so easy you'll start doing it all the time.

The webserver notebook can stream line collaboration with co-workers. I like the ability to make "interactive documentation", although truth be told i haven't used this as much as i could yet.


My first shell was csh. I put off switching to tcsh, but eventually did. After a while I grew used to the new features of tcsh, with tab completion being the most obvious. I then went back to csh on some machine and realized just how dependent on was on tab completion. It became frustrating to type all of the filename again, rather than just the first few characters<tab> follows perhaps by some another character+<tab> for disambiguation.

I don't want to go back to a shell without tab completion. Is tab completion extremely useful? Functionally, no. I can live without it. But I will avoid that if at all possible, and that's not something I felt before I used tab-completion.

I get the sense that IPython is the same way. It's not essential, but after many have used it they have the sense that they don't ever want to be without again.


REPL history? Tab completion? Syntax highlighting? Unix shell integration? And that's just the tip of the iceberg useful for general Python programming, nevermind the exploratory scientific environment with numpy/scipy/matplotlib/pandas.

I can imagine living without it in the same way I can imagine writing code in Notepad. Technically feasible but unacceptably painful.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: