

Emacs for Data Science - re_jena
http://www.insightdatascience.com/blog/emacs_for_data_science.html

======
lindbergh
I recently discovered org-mode. Honestly, it is by far the best note-taking
application I've ever used, especially in any math-heavy field, since it
supports cross-references and most math symbols. And unlike LaTeX which ends
up filled with markup, org stays very clean. However the basic export (to HTML
and pdf) is not that good.

There's also support for basic spreadsheeting, but it gets very slow as soon
as you have more than a couple hundred rows with auto-computed column values.

Sample look and feel of one of my notebooks:
[http://i.imgur.com/SZTxQ6v.png](http://i.imgur.com/SZTxQ6v.png)

~~~
hsitz
"However the basic export (to HTML and pdf) is not that good."

What are you referring to here? It's easy enough to customize the export
formatting to whatever you want it to be, e.g., change LaTeX document class,
switch to xetex for better font support, etc.

~~~
lindbergh
My biggest gripe is that it won't recognize that a block of text is math,
unless I enclose it with $, which would then clutter the org file.

------
diminish
As a recent Emacs convert I was able to develop happily for Android/Java,
Ruby, Rails, Web, WordPress and ChucK, Octave music language, a lot of
CSV/Data import tasks, and minor C/C++ edits. For each one I had used a lot of
IDEs earlier.

~~~
metaobject
As a long time emacs user, it's great to know that it can grow to support new
languages and environments. I wasn't aware that it supports Octave (the music
language). Welcome to emacs, we hope you enjoy your stay!

~~~
jordigh
Huh? Which Octave music language?

Do you mean this?

[http://wiki.octave.org/FAQ#Why_.22Octave.22.3F](http://wiki.octave.org/FAQ#Why_.22Octave.22.3F)

~~~
coldtea
I bet he probably meant "Overtone" the music programming language /
environment based on Clojure.

Though octave was originally a music term too.

~~~
jordigh
The people named Octave are not named after music. It's just a variation of
Octavius.

~~~
coldtea
Actually Octavius itself derives from the latin for "eight" (octavus, which is
were the music term also got it name).

~~~
jordigh
Yes, of course, but the number eight means more than just music.

Sorry, it's a pet peeve of mine that people keep thinking that GNU Octave has
something to do with music.

------
fizixer
Yeah emacs is a very useful tool as part of your data science workflow.

So is IPython notebook.

So is vim along with tmux, a good tiling window manager, and shell-tools.

However none of them are without flaws. None of them are free from requiring
you to peek under the hood, and start a path towards becoming a hacker of your
own tools, be it vim-scripting using python, or emacs scripting using elisp or
guile. And once you have a turing-complete language under your tools,
everything a programming language can do your tool can. But if there's a
missing feature set requiring non trivial amount of code and no one on the
internet has developed that code, you have to either take a long detour from
your main project to develop that feature, or keep working the hard way,
without that feature.

And most importantly, none of them should get you under the impression that
yours is the final tool you'll ever need and it'll solve all your problems!

------
alexott
Besides ready to use packages, main advantage of Emacs - its extensibility -
I'm writing a lot of custom code in ELisp that helps me analyze files with
results, interactively work with data in multiple databases (using some
Clojure code executing via CIDER), etc.

~~~
ska
That, and it's really good as an editor.

A lot of commercial IDEs are very well integrated with language and toolset,
but often they're really not very good text editors (Visual Studio, I'm
looking at you)

~~~
nkassis
Talking about VS, I haven't done a lot of research but has anyone had some
luck using emacs on windows for C#?

~~~
alexott
I don't program C#, but there is OmniSharp for Emacs:
[https://github.com/OmniSharp/omnisharp-
emacs](https://github.com/OmniSharp/omnisharp-emacs) & you can look to csharp-
mode page on emacswiki:
[http://www.emacswiki.org/emacs/CSharpMode](http://www.emacswiki.org/emacs/CSharpMode)
(and this post:
[https://bbbscarter.wordpress.com/2013/08/17/c-autocompletion...](https://bbbscarter.wordpress.com/2013/08/17/c-autocompletion-
in-emacs/))

P.S. There were C# parser for CEDET (in contrib), but it wasn't updated for a
long time

------
rndn
This SciPy presentation (Kitchin, John Carnegie Mellon University) on Emacs +
org-mode + python in reproducible research is worth a watch:
[https://www.youtube.com/watch?v=1-dUkyn_fZA](https://www.youtube.com/watch?v=1-dUkyn_fZA)

------
ninebrows
I have been using Sublimetext since few years. Its extremely productive.

Could anyone explain the advantage of Emacs over Sublime?

~~~
acomjean
1) Available on most platforms (editing a file on the server.. emacs) 2) Its
programable. You can store and replay key commands. I use this frequently to
reformat data.. 3) Steep Learning curve, but its fast once learned. Its hard
to learn and takes a while. The basics are pretty straight forward, but not
entirely intuitive. 4) Its extensible. Though I find it hard to manage add
ons. I use Org mode, but sometime have trouble remembering all the key
commands. 5)Dired. Look up files and open.

For large projects I end up using the JetBrains IDEs. I think the "knowledge"
of the project provides good insight. I think there are add ons to Emacs that
will do the same thing. I haven't tried them. If I have to just open a file
and edit, I'm happier in Emacs. I wish the IDE's would let you "bring your own
editor"

If your happy with sublime keep using it.

------
Tistel
I have been using emacs for over 15 years. I still discover new things. I am
working on a distributed project and found tramp mode about a year ago. Its
amazing for multi-hop remote editing. Worth the price of admission alone.

------
spot
I love emacs but for mixing languages you are better off with a UI made for
exactly that: the Beaker Notebook
[http://BeakerNotebook.com](http://BeakerNotebook.com)

note: we are hiring!

~~~
wodenokoto
What does beaker offer in terms of text editing?

------
mrdrozdov
org-mode is great. I really like deft
([http://jblevins.org/projects/deft/](http://jblevins.org/projects/deft/)) in
tandem with Notational Velocity and SimpleNote.

------
TheGrassyKnoll
Not written by the 'real' Robert Vesco...
[https://en.wikipedia.org/wiki/Robert_Vesco](https://en.wikipedia.org/wiki/Robert_Vesco)

I've used Emacs for years, but never delved into org-mode.

