HN Theater @HNTheaterMonth

The best talks and videos of Hacker News.

Hacker News Comments on
Quick Intro to Live Programming with Overtone

Sam Aaron · Vimeo · 23 HN points · 12 HN comments
HN Theater has aggregated all Hacker News stories and comments that mention Sam Aaron's video "Quick Intro to Live Programming with Overtone".
Vimeo Summary
In this video Sam Aaron gives a fast-paced introduction to a number of key live programming techniques such as triggering instruments, scheduling future events and synth design. Finally, the viewer is shown how a simple musical sequence may be composed and then converted into an intricate Reich phase. The main body of the video was recorded in one take and features an Emacs buffer (using Emacs Live http://overtone.github.io/emacs-live/) for editing text and communicating with Overtone (http://overtone.github.io/), an expressive Clojure front-end to SuperCollider. Clojure is a state-of-the-art functional lisp emphasising immutability and concurrency (http://clojure.org).

Check out Meta-eX the Overtone-powered live coding band: http://meta-ex.com
For the easiest way to get started live coding check out Sonic Pi: http://sonic-pi.net
HN Theater Rankings

Hacker News Stories and Comments

All the comments and stories posted to Hacker News that reference this video.
Aug 11, 2015 · yjgyhj on Clojure to MiniZinc
There is just so much interesting stuff going on in Clojureland. I haven't seen anything like it in a long time.

From pushing the state of the art in web clients and servers (Reagent, Rum, Om, Ring, Compojure & friends), to go-style concurrency (in browsers, Node, .net & JVM), to logic programming (this, core.logic), to Overtone (a synthesizer https://vimeo.com/22798433), I saw a library for controlling light shows at concerts. Just so much.

I'm programming clojure in my free time, and when I'm done with my current contract (web servers/clients in JS), few things could make me as happy as to work in Clojure in my day job.

  (= (amazed-by? clojure (me!))
     true)
lkrubner
What does (me!) mutate?
red_hare
I imagine me! is a multi-arity function which updates and returns his current state given some input.

He's simply saying that even without external influences, he's amazed by clojure.

retrogradeorbit
If you bring Clojure to a work environment, be gracious and go slowly. The truth will not bring you laurels. When you land in your alien spaceship, and they're all riding horse and cart, they're more likely to stone you than hail you a saviour.

Recently I experienced this by proposing a talk at a conference for a more popular Object Oriented language. The talk was on using functional techniques and Phil Bagwell's persistent data structures to improve programming in that language. I got strong rejections from every reviewer and some comments that made me realise that some people may feel threatened by this "new kid on the block".

This is OK. It's not for everyone. Some programmers are never going to try it, as a matter of principal! Seek out those excited by the language, and work with them. I've had success introducing it, both in and out of work, by going slowly and carefully, finding those developers who are interested and using it with them, and introducing it where it fits the best and solves a big problem more elegantly.

Keep coding in Clojure. It's a beautiful thing.

Jun 18, 2014 · 3 points, 0 comments · submitted by JacksonGariety
I don't see the point. I was anticipating something more like Overtone: http://vimeo.com/22798433
Jul 17, 2013 · laumars on Logic Pro X
I was thinking more text based ones like Overtone[1], but I'd completely forgotten about DAWs like the ones you've mentioned. Nice spot :)

[1] http://vimeo.com/22798433

Have you ever played with Overtone? It's pretty awesome http://vimeo.com/22798433
Bret Victor is annoyed at his ideas being labelled live coding, but that's what they are.

Live coding environments are pretty diverse, and there is plenty of prior art for code timeline scrubbing, tangible values, auto-completion, the manipulation of history, and many of the other features that Bret argues for.

Some examples: Field - http://vimeo.com/3001412 SchemeBricks - http://blip.tv/nebogeo/dave-griffiths-chmod-x-art-3349411 Overtone - http://vimeo.com/22798433

Live coding isn't just about automatic code interpretation.

That said, other than his strawman beating, I otherwise agree with his thesis, and enjoy his examples. To advance programming, we can change who programs, how they do it and what they do it for. All of this is up for grabs. However, I do think that social interaction in programming environments is an important piece which he seems to be missing.

None
None
The author talked to the Cathode developer and even opened a feature request for iTerm2[1]. There seems to be some interest in this. Cathode is mostly about emulating old, slow hardware, this would be about the opposite (code wouldn't look too differently, though). A "movie hacker" terminal or editor for live coding would be pretty interesting. Hmm, maybe in addition to Xt/Gtk/OSX one could add an OpenGL interface to Emacs for maximum scriptability.

1: https://vimeo.com/22798433

Jul 06, 2012 · 1 points, 0 comments · submitted by yazmeya
And there is an awesome Clojure interface for it called Overtone. http://vimeo.com/22798433
is there a good emacs-mode for python that gives interactive development of the same level as inferior-lisp[1]? the python-modes i've seen only let you re-execute a file, but not a buffer or expression.

inferior-lisp makes all the problems bpython is trying to solve, irrelevant.

[1] example: http://vimeo.com/22798433 (4 mins)

RBerenguel
Standard python mode has also region evaluation and definition evaluation, which mostly account for that. Maybe I'm missing something here? What do you want from inferior-lisp that you don't have in python?
ramanujan
I patched python-mode to do this (also did something similar for node and a few other interpreters). Main thing is to add a "py-execute-line" routine and a few others as wrappers around the file execution code. If there's interest, might post as open source.

EDIT: here is a snippet

  (defun py-execute-line (&optional async)
    "Send the current line to the inferior python process using py-execute-region."
    (interactive "P")
    (save-excursion
      (end-of-line)
      (let ((end (point)))
        (beginning-of-line)
        (py-execute-region (point) end async)))
  )
That's the py-execute-line function, which is sending code to py-execute-region defined in python-mode (http://bazaar.launchpad.net/~python-mode-devs/python-mode/py...).

For some reason the default python mode in emacs is python.el rather than python-mode.el. So you probably want to start by using python-mode.

better video, 4 minutes, no crappy foreplay, just some guy live-coding with overtone

http://vimeo.com/22798433

icandoitbetter
It's not "crappy foreplay" - it's a presentation.
samaaron
That's the same guy - me :-)
bwanab
Very nice video. I've played with Overtone and it's a lot of fun. This reminds me to get back into it more.
icarus_drowning
Love the minimalist phasing at the end.
ot
Awesome talk! I see you are located in Cambridge, are you going to give a talk/demo there anytime soon?
Mar 23, 2012 · dustingetz on [Missing Story]
if you just wanna get a feel for clojure without getting too serious - here's a demo of livecoding in overtone - http://vimeo.com/22798433

overtone comes with a stock emacs config that will get you livecoding in no time.

after that, Joy of Clojure by Fogus. (edit: fwiw i have had no trouble with this book even as my first lisp, but i've been coding in a functional style for about 6 months before clojure)

jemeshsu
I find Practical Clojure and Clojure in Action easier for beginners. The Joy of Clojure is a little advanced suitable if you already know Lisp. All 3 are good books.
Jun 08, 2011 · 2 points, 0 comments · submitted by zyfo
Apr 24, 2011 · 17 points, 1 comments · submitted by swannodette
ghostmachine
awesome intro to live coding audio. thanks for making it
HN Theater is an independent project and is not operated by Y Combinator or any of the video hosting platforms linked to on this site.
~ yaj@
;laksdfhjdhksalkfj more things
yahnd.com ~ Privacy Policy ~
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.