Live data from Hacker News

Live Coding in CoffeeScript

bryanenglish.com

11–20 of 35 posts

Re: Live Coding in CoffeeScript

#11

Great stuff! If only I could find a way of doing this the other way around... (audio to sheet music)

There's plenty of libraries for this, provided you can export your audio to MIDI. Here's one:

midisheetmusic.sourceforge.net

Hell, just upload your MIDI to hamie.net and they'll do it for you (albeit horrendously).

Re: Live Coding in CoffeeScript

#12
I don't mean to criticize, I'd simply like to clarify something.

What exactly makes this "live" coding? As far as I can see, you have to press Esc to run the code. If this is considered live, what would be a non-live equivalent?

My understanding of live was that you see/hear changes as soon as you change the code, but I didn't find that to be the case here.

Re: Live Coding in CoffeeScript

#13

Great stuff! If only I could find a way of doing this the other way around... (audio to sheet music)

There's plenty of libraries for this, provided you can export your audio to MIDI. Here's one: midisheetmusic.sourceforge.net Hell, just upload your MIDI to hamie.net and they'll do it for you (albeit horrendously).

Ah, I should have been clearer. MIDI to sheet music conversion is trivial. What I want to do is take real audio as input and convert that, which is according to my readings really hard because MIDI and audio formats (FLAC/WAV/MP3 etc) are very different.

There are some tools that I could find but so far none has come up with good conversion from FLAC or MP3.

I'm mainly interested in classical music and that kind of complicates things. As the number of voices in your audio increase, it gets that much harder to export it to MIDI. I've been thinking about emphasising the melody line and exporting that to MIDI but so far nothing :P

Perhaps a different approach would work better.

But thanks a lot for the help :)

Re: Live Coding in CoffeeScript

#14

I don't mean to criticize, I'd simply like to clarify something. What exactly makes this "live" coding? As far as I can see, you have to press Esc to run the code. If this is considered live, what would be a non-live equivalent? My understanding of live was that you see/hear changes as soon as you change the code, but I didn't find that to be the case here.

As far as I can tell, live coding is not about programming with "live" feedback, it is about programming "live" in front of an audience, or otherwise using programming as a musical instrument. Think performance and not development.

Very confusing, I feel like I'm fighting a losing battle since live coding sounds so similar to live programming, but the terms mean completely different things and arose in different contexts (live programming arose in a pedagogic context, live coding arose in a performance context) at about roughly the same time.

Re: Live Coding in CoffeeScript

#15

Earlier quoted context omitted.

There's plenty of libraries for this, provided you can export your audio to MIDI. Here's one: midisheetmusic.sourceforge.net Hell, just upload your MIDI to hamie.net and they'll do it for you (albeit horrendously).

Ah, I should have been clearer. MIDI to sheet music conversion is trivial. What I want to do is take real audio as input and convert that, which is according to my readings really hard because MIDI and audio formats (FLAC/WAV/MP3 etc) are very different. There are some tools that I could find but so far none has come up with good conversion from FLAC or MP3. I'm mainly interested in classical music and that kind of c…

Hve you seen Capo?

http://supermegaultragroovy.com/products/Capo/

Re: Live Coding in CoffeeScript

#16

I don't mean to criticize, I'd simply like to clarify something. What exactly makes this "live" coding? As far as I can see, you have to press Esc to run the code. If this is considered live, what would be a non-live equivalent? My understanding of live was that you see/hear changes as soon as you change the code, but I didn't find that to be the case here.

As far as I can tell, live coding is not about programming with "live" feedback, it is about programming "live" in front of an audience, or otherwise using programming as a musical instrument. Think performance and not development. Very confusing, I feel like I'm fighting a losing battle since live coding sounds so similar to live programming, but the terms mean completely different things and arose in different cont…

Ah, I see now. It's not related to "live programming," but rather the live performance as you said. It's the first time I hear of it in that context, but I understand now. Thanks!

Re: Live Coding in CoffeeScript

#18
I'd recommend using Timbre.js http://mohayonao.github.com/timbre.js/ As much as I love audiolet, Timbre.js knocks the socks off of it. It's very much based off of supercollider, which is really THE language to live-code in.

Also, it's way more fully developed than audiolet, and seems to work way faster.

Re: Live Coding in CoffeeScript

#19

I don't mean to criticize, I'd simply like to clarify something. What exactly makes this "live" coding? As far as I can see, you have to press Esc to run the code. If this is considered live, what would be a non-live equivalent? My understanding of live was that you see/hear changes as soon as you change the code, but I didn't find that to be the case here.

As far as I can tell, live coding is not about programming with "live" feedback, it is about programming "live" in front of an audience, or otherwise using programming as a musical instrument. Think performance and not development. Very confusing, I feel like I'm fighting a losing battle since live coding sounds so similar to live programming, but the terms mean completely different things and arose in different cont…

Both meanings are equally repulsive and are activities without merit. The fact that this is about coffeescript doesn't surprise me at all.

"and just starting to learn CoffeeScript, because it seemed rather cool"

This thought pattern is wholly flawed. "Seems cool" is not a reason to learn coffeescript, in fact there is no good reason except syntax fetishism, which is also not a good reason.

Re: Live Coding in CoffeeScript

#20

I don't mean to criticize, I'd simply like to clarify something. What exactly makes this "live" coding? As far as I can see, you have to press Esc to run the code. If this is considered live, what would be a non-live equivalent? My understanding of live was that you see/hear changes as soon as you change the code, but I didn't find that to be the case here.

As far as I can tell, live coding is not about programming with "live" feedback, it is about programming "live" in front of an audience, or otherwise using programming as a musical instrument. Think performance and not development. Very confusing, I feel like I'm fighting a losing battle since live coding sounds so similar to live programming, but the terms mean completely different things and arose in different cont…

Sean, I wish you'd take a closer look at live coding before saying this kind of thing, you've very much got the wrong idea about live coding. I'm just off to work but I'll send you some references later.

Live coding is absolutely everything about live feedback. This gives you access to performing in front of a live audience, but that is only part of it. It also allows new styles of collaborative programming, and exploring of ideas in composition.

Live coding is about using programming languages to manipulate running code, maintaining state (if there is any).

Check out the code in the "hacking perl in nightclubs" article that this one links to. The software it discusses takes on live updates without restarts or losing state (in fact, the code in the editor is part of the state). It also has an option to take on edits every keypress, but it's off by default, because it's impractical. Sometimes you just don't want 1 and 10 to be interpreted on the way to 100.

Live coding arose in an interdisciplinary context of music performance, pedagogy, media theory, psychology and computer science.

The thesis you link to is really excellent, but has shared roots with live coding and is referenced in the live coding literature.

Post reply on HN