Hacker News new | ask | show | jobs
by VMG 4938 days ago
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.

3 comments

>> 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.