The Living Thing / Notebooks :


numerical computation hipster's answer to security hipster's Rust

Julia: A jit compiled language that aims for high performance scientific computation.

It makes ambitious claims about being the fastest and best thing ever. The community process is problematic, however, and I prefer the proven method of using python and optimizing the performance sensitive code with one of the many tools to do that.

That said, the idea of a science-users-first JIT language is timely, and Julia is that. Python does have clunky legacy issues in the numeric code. Matlab is expensive and nasty for non-numerics. Lua has some good science libraries and could likely have filled this niche but for AFAICT sociological reasons has not acquired the hipness or critical mass of Julia.

And there are some things specific to Julia which are serious selling points, aside from the language-feature one-upmanship. For example, Laplacians.jl by Dan Spielman and co-workers is an advanced matrix factorisation toolkit. Julia also has tidy-looking autodiff, in the form of juliadiff. However, its deep learning toolkits are, for the moment, notably unimpressive.

The aspirational ggplot clone is gadfly.

Dataframes are called, unsurprisingly, dataframes.jl, and are part of the juliastats organisation

A better IDE

The default experience is crappy on a Mac, since it doesn’t install itself on the path, but also runs in a terminal. Foolishness. Put it on your path.

Also There is a reasonable IDE called juno, built on atom. There is jupyter integration through IJulia.

ENV["JUPYTER"] = "/usr/local/bin/jupyter"

Now IJulia appears as a normal kernel in your jupyter setup.

UIs and servers

HttpServer does bassic http protocol serving; this is made modular and composable by Mux.jl. Fancy caching and templating etc come from Genie.jl.

Escher.jl goes further, redenring HTML UI widgets etc.