This blog is retired. I’ll keep it up here as a record and resource, but any new posts will be on https://bit-101.com/blog
If you want the original blog that existed here from 2003 to 2017, you can find that here: https://bit-101.com/2003
Read more...Another year, another look back at another year.
Last year about this time I made some goals. Let’s see how I did on those…
I want to talk a bit more about music, as this was the biggest, most interesting thing I got into in 2023. I learned so much – about music, but also about myself and what I want to be doing. For ages I felt bad that I knew nothing about music and had no abilities in the area. This exploration got me over that feeling. I have created some music now and I have enough tools and knowledge to do more if I want to. But as I got more into it, I started questioning what exactly my goal was with it. I realized that I have no goal at all of becoming an electronic (or any other kind of) musician. I don’t want to create traditional “songs” per se, or “drop tracks and albums”. I don’t want to sell music or in any way support myself through that.
Read more...Day 7 of 30 Days of SuperCollider
I guess by now it’s obvious that this whole 30 day plan isn’t going well. It’s not that I’m not into SuperCollider anymore. On the contrary, I’m super deep into it, as well as a lot of other related topics – synths, music theory, midi hardware, etc. I’m learning a whole lot and really enjoying it. But writing about it is the last thing on my mind. So I’m sure there will be more posts about SuperCollider, but I think this will be the last numbered one.
Read more...Day Six of 30 Days of Supercollider.
Envelopes control how a single aspect of a sound changes over time. Traditionally, this meant the volume of a sound. When you strike a bell, for example, there’s an initial fast peak of volume, which then slowly fades over a potentially long period, as the bell continues to resonate. If you graphed out that volume level, it might look like this:
Read more...
Day Five of 30 Days of Supercollider.
I could write hundreds of pages about UGens. Other people have. I’ll let you read their stuff instead and just give some of the basics.
Unit Generators, or UGens for short, are one of the key building blocks for creating sound in Supercollider. If I understand it correctly, UGens create the signals that are used within Synths to describe sounds that get created in the server. Even if you create a UGen without a Synth, a default Synth is used behind the scenes to wrap that UGen and create the sound. That’s what the function play
message does.
Day Four of 30 Days of Supercollider
Variables in Supercollider, not surprisingly, are rather special, compared to many other languages. I can count four rather distinct types of things that will hold a value:
Let’s start with regular variables. These aren’t much different than variables you’d find in most other languages. You declare them with the var
keyword and the name of the variable, which should really be more than one character long and has about what you’d expect for legal identifier names, as far as I know. They should also start with a lowercase letter, as identifiers starting with capital letters indicate a class name.
Day Three of 30 Days of Supercollider
This will be a short one.
There is some more weirdness with functions in SC that I didn’t think of yesterday. This one is actually a pretty cool language feature. Just something you don’t see in most languages. It has to do with the way methods are called, or I guess I should say the way messages are sent to objects.
Yesterday I was using syntax like this to play a unit generator:
Read more...This will be an index of the articles I post about Supercollider.
Warning: I don’t know a lot about Supercollider yet. This will be a journal of my discoveries as much as anything else. I probably know less about music in general. Trying to learn something before my last trip around the sun. Anyway, this shouldn’t be taken as a step-by-step tutorial on learning Supercollider. Just a random collection of stuff.
Read more...Day Two of 30 Days of Supercollider
A word of warning about this series as a whole: this should not be taken as a comprehensive, step-by-step tutorial on how to use Supercollider. There are better resources out there for that. This will be a loose collection of deep, or not-so-deep, dives into different topics. A lot of it is just documenting stuff for myself. Teaching is the best way to learn.
Read more...Day One of 30 Days of Supercollider
Years ago when Flash was on its way out, I started looking more and more into JavaScript and HTML’s Canvas as a replacement. I started a series on my earlier blog called 30 days of JavaScript. It was popular and moreover I learned a lot, needing to learn some new aspect of the language and graphics api each day.
Now that I’m taking a deep dive into Supercollider, I decided to try that same trick again. So, I plan to make 30 posts in the next 30 days (bear with me if I miss a few days here and there) tackling some aspect of Supercollider.
Read more...