I released this remix with Strudel last year: https://strudel.cc/?mTeJt_ICoPrw
https://open.spotify.com/track/39K9sFCNCv7H5kyQAfcePr?si=8a1...
Strudel is neat! A friend sent me a video recently of someone using it to make breakbeat music, which got me looking into it. I've known about live coding music for a long time but never actually investigated how it works.
I find the fluent API plus "display-oriented REPL" a very cool way to do things. The docs need a lot of work, though… The only API reference is in a sidebar of the REPL (i.e. not in the docs site), and discoverability depends entirely on guessing the name of the function. There's multiple ways to do things and all of them are explained with reference to each other, so it's very difficult to track down an authoritative, explicit overview of how something works.
The https://strudel.cc/learn/visual-feedback/ section is a great demo.
The editor is really cool, how it highlights what parts of the file are active as the song plays.
This is so cool. Years ago I was at a maker conference and there was a tent hosting an Algorave (https://algorave.com/) which introduced me to the whole scene of live coded music. Really niche subject but very interesting.
Emfcamp?
Note: if you’re on iOS and want to listen to the example, disable silent mode. At least that’s what I had to do to hear the sound.
Thanks for the tip
Even if you’re not interested in making your own music with Strudel, this site is worth a visit for the showcase. A lot of folks are making a lot of interesting music with it!
I wish there was a LLM you could sing and beatbox too- that would translate that into strudel code.
Current LLMs are multimodal -- you could record yourself singing + beatboxing, upload it to an LLM and ask it to translate it to Strudel code.
My best guess is that it won't work well, but we'll never know until someone tries it.
tangential: just two days ago, Strudel has moved from Github to Codeberg (sparse discussion on their Discord homebase as to the motivations).
For anyone having done a migration from Github to another platform (Codeberg, gitlab.org, selfhosted etc.): was it worth it? What went well, what went wrong?
Speaking as a member of the Strudel project in the OP, it went really well, everything migrated across (issues, PRs etc) pretty much seamlessly. We have to self-host the ci actions, but as a bonus now they run much faster.
It really is a no-brainer for any free/open source project to be hosted on a free/open source platform. It's pretty nuts that so many stay on Microsoft github who are busy IP-stripping everything via AI, even without considering all the other terrible stuff MS get up to that it's best not to support or be associated with.
Quite a few live coding platforms are making the move to codeberg too. It's a bit trickier for desktop apps like supercollider who depend on cross-platform ci builds though.
I moved most of my projects from Github to Codeberg, and as anticipated got much less interactions, contributions, visibility etc. on them. Also Codeberg had quite some big issues with their underlying infrastructure during the last 2 years, but they seem to have done a lot of work to make it more reliable.
Now, I publish projects on Github only if they are worth sharing/being discovered, but most of my code is done on private (and sometimes public) Codeberg repositories.
Do you mind sharing why you left github? Were you unhappy or/and did Codeberg offer something that no other vendor had so far?
Just as they were getting really popular on Twitter and X - it's such a shame. I like the idea of these alternative platforms, I'm saddened that this will likely make any kind of grassroots developer efforts DOA
Don't see why moving from the closed source Microsoft Github to free/open source codeberg would turn away any grassroots developer. It's like two extra characters to type and live coders can usually type quite fast.
the move was partly in response to that unwanted popularity
That's going to make it a bit more annoying for me to contribute further… Oh well.
In what way? It only involves typing a different url in the git clone or when browsing issues or whatever.
I'm currently signed up to ten or so different source code web services hosting FLOSS (e.g. KDE, FreeDesktop, Debian each have their own instances).
Attrition has held me back to participate in discussions or reporting issues. For that you need an account, and some source code web services make 2FA mandatory, and often I need to reauthenticate and go through that flow. If I'm exhausted, my brain makes the decision that it's not worth the effort.
A couple of other other reasons come to mind as well: setting up your account properly (adding SSH public key), setting up yet another entry in one's own password manager, acknowledging that their will be additional mails going to my mailbox (transactional e-mails, maybe important informational e-mails such as data leaks, TOS changes, etc.).
Neat, this is the first project I've seen in the wild that uses astro.
someone watches theprimagen
was thinking the same thing lol
Cool, this feels like OpenSCAD, but for music. I'm very visually oriented, so I don't think this would work for me (neither does OpenSCAD), but I really like the concept.
It is a very interesting way of making music.
That being said I think something needs to be highlighted. For some reason, it sees itself as "low barrier to entry" relative to traditional ways of making music (ie partiture or an actual music instrument). How is possessing a phone, ability to read English and knowing how to program lower barrier to entry than picking an instrument like a piano and playing some music?
Clearly, Strudel assumes some knowledge of basic music theory (melody, rhythm and harmony) so having that, what is it exactly that makes Strudel lower barrier to entry.
Is Strudel assuming that learning to program is inherently easier than learning to play any instrument?
It would be nice if whatever assumptions it has could be made explicit as it's not the first time that I see [insert here software tool to make music] claim that it's a lower barrier to entry to make music without saying why.
Obviously, this being HN people will likely prefer software and algorithmic approaches to making music in your room as opposed to the traditional and more social way of learning with a teacher and a cohort of students.
Really, you don't need to know how to program to do Strudel. Like, yeah, it's a programming language - but it's not like you need to know the fundamentals of software engineering to write something with Strudel. You just start typing and keep what sounds good. There is no difference between figuring out the melody and harmony and all the other parts of the song - you just type and edit until it sounds good. You get immediate feedback since it's constantly looping and trivial to work in your changes.
Compare that to piano: sure, you can walk up to a piano and plunk out a melody easy enough - but once you start venturing towards harmony and song the skill required ramps up exponentially. Suddenly you need to have both hands doing independent things, know where to place your fingers so that you can comfortably play the notes for the current beat and future beats (there's a ton of technique here and it's not the most intuitive thing ever - entire books are written to drill it), the list goes on.
The lowest barrier to entry in music is something like GarageBand or FL Studio, not picking a piano.
Lowest barrier for who? Younger folks sure, older people not sure. Unless we assume we are all tech literate
[dead]
Love this for you, but I think we have to be more careful. People want to make music with instruments, orthodox or otherwise. The optics are crazy here.
what does this even mean?
A bot I expect
Can you elaborate? Your comment is vague enough to both pique my interest and also to require a ton of assumptions to mean anything.
Your mind hasn't adjusted yet to this common type of X vague-posting
Yeah, guess I need to take a refresher in mind reading just so I can keep up.
Probably some derivation of "music is art, not code", "music is not math", "the human touch", ...
That's what I assumed, but since assumption is the mother of all fuck-ups...