Learning code + music

I’m a programmer myself and I don’t work in audio programming which seems to be your interest, but here’s some general advice based on my own experience learning:

  • You can spend a lot of time finding the best path to learn. That time is better spent following a tutorial that looks fun and will keep you motivated
  • Stick to one resource at fist, there’s a million options out there and it’s easy to get distracted
  • Find something with a community behind where you can ask for help. For example one of the technologies discussed in the lines community
  • Even if you are somebody who likes to understand things from first principles start with the practical aspects first and the dive into theoretical concepts
6 Likes

I think that it’s important in audio programming to be aware whether one is more into/proficient at the “audio” part or the “programming” part.

Due to my background in electrical engineering I would say I know quite a bit of DSP theory. I wouldn’t say I’m terrible at coding, but it isn’t an activity I particularly enjoy either.

Thus for me, the higher level approaches mentioned in this thread are more appealing and fun, although I don’t consider them to be viable options for anything outside prototyping and experimentation. If one wants to make a proper softsynth/effect, C++ is the way to go - with all the overhead that comes along with it.

Therefore I think that, as a beginner, it is important to decide whether one wants to learn DSP concepts in general or build a plugin as quickly as possible.

As a side note: IMO, many tutorials can seem daunting to beginners because they mix up algorithm design and implementation. For instance, explaining how to implement different filter types while explaining what a digital filter is in the first place, at the same time.

6 Likes

Have you thought about live coding?
Something like Sonic Pi is not even too ‘live’, more like a coding Daw. I’m self taught in C# as my interest was making my own small games in Unity and when I tried Sonic Pi I noticed it was much easier.
And frankly it didn’t feel that much different than programming a Digitakt/OT.

2 Likes

I can empathize, attention span requires that I engage through fixations that go hard and deep, and involves a bunch of failure along the way.

It also may involve knowing a little about a lot, it helps to commit to a stronger understanding of a topic to cement my knowledge, I’m very bad at rote regular practice and impatient with self-progress.

3 Likes

Yeah that’s about how I feel in my head with the OT. I found this channel on YT of this competitive programmer explaining learning concepts to a intuitive level. Teaching your mind to think of something difficult as important and basically as your hyper focused on a problem by having kept regularly focusing on it, thinking about it, you create a gap that your mind will subconsciously begin to fill with the solution.

And as I slowly learned more concepts of the functionality of the DT and now the OT that my mind has developed to this point where my mind has pieced together the various setup’s I’ve been wanting with certain goals in mind since I bought it. Initially I learned to set up the OT like the DT or how I had the workflow on it.

Then I figured out a template for linear recording with the 8 Tracks, and in the background as I’ve learned more features my mind has pieced together some concepts of a Dj setup and I would say that’s been my main goal for the full live ‘performance sampling’ aspect. So just getting aquatinted with a few more features and it will just be getting settled in the controls.

For now I’m learning HTML & CAD. And once I finish the projects I have with that I’ll have to decide from there.

I second/third Sonic Pi. It is programming, but in a high level language not dissimilar to Ruby.

I think it is a good place to start for a novice programmer. Think it was designed as a teaching tool to get kids/novices into programming through sound/audio.

Once you are comfortable with that (and still interested!) you can go on to more technical and low level stuff.

2 Likes