Syntə RSS repo @m 🎶 say hi!
back

09/06/2025

My Journey Into Coding

Recently Fetle aka (go buy the entire backcatalog - now! 🤭) asked me:

“how did you develop your coding skills to the level of making your own language/thing?”

I realised that the reply would become something of a blogpost in length, then I thought - maybe I should make it an actual blog post and here we are…

This is what worked for me but different approaches can work for different people. Some might like to do something more structured like a course for example. The single biggest takeaway is probably that - in the words of Look Mum No Computer - don’t be scared to try it :)

My journey

baby steps

When I was 13 I was lucky enough that our family bought a PC - yes one with the bleepy bloopy modem :) I had a book with a program listed in an appendix, so I typed it into QBASIC (horrible MS programming language) and hey presto I was making fractals! This gave me my first taste, but the idea of a job behind a desk never appealed to me so it was forgotten about.

Fast forward to 2007 and my friend Ed kindly lent me a desktop PC to use for recording my electronic hardware (Akai MPC, various synths). I also installed Pure Data and began trying to figure it out. I messed around with it on and off for a few years, eventually making a rudimentary auto-leveller (essentially a slow compressor) that kind of worked. In the end I got too frustrated with it to do much, but much later on I used it to make a sound installation for my (one and only) photography exhibition. I even performed with it as part of an EulerRoom.

Probably the biggest step forward for me was when I got sick of using Windows and decided to install an alternative operating system. Instead of what any sensible person would do and use Linux, I went mental and installed FreeBSD. This really dropped me in the deep end and I was forced to use a mysterious thing known as the command line (also known as a terminal or shell, which all mean subtly different things confusingly lol).
So that was around 2018, and after several months it occurred to me that I could just type in python and I would be programming! (you could call this scripting). This led me down the rabbit hole and soon I went beyond 2 + 3 and was reading and writing to files, converting numbers from csv to floats and generally making some really messy cobbled together code hehe.
I decided that I would write an algorithm to automatically trade and make loads of money £_£. Well, suffice to say that never materialised ha! But I did get the bug and I also did enough to get annoyed about how slow python was. There are ways to speed it up using libraries like numpy but that seemed complicated. I had seen this thing online called Rust that people were banging on about in youtube videos, however my friend (Ed again) suggested Go (or golang - a search friendly alternative name). I looked into it and it was noted as being relatively easy to learn so I installed it and started hacking away. I noticed straightway that things that had been taking 30 minutes now took 3! I was quite astonished at first. My coding efforts were still very dodgy but I ploughed on and eventually had the idea of making an automation thingy to spurt out invoices for my customers. This took a long time, but I learnt a lot and this is another key takeaway:

Having a project that will produce a useful result is a great way to learn

This is because you have a light at the end of the tunnel, a purpose, a destination to strive for. It could be something like a personal website, a to-do list app tailored to your needs, anything that you will actually use.
This project of mine worked surprisingly well and is still something that comes in handy all the time. You don’t need to write a full graphical user interface (although web-apps have made that a lot easier, like React) - I was still happily typing away in the terminal - text input and output was enough.
Then it gradually dawned on me that I could make sound too! I began badgering away and after a couple of weeks I had made sound on my laptop from a program I had written (and some very harsh noises along the way haha). This gradually spiralled out of control over a few months, playing beautiful pure sine waves, making it easier to change the code and eventually I had ended up making my own live coding language! The joy of playing back samples and slowing them down etc! I’m still on this journey and it has been truly wonderful.

well there’s slightly more to it than that

I missed out the part where I accidentally taught myself electronics - between 2007 and 2017 - and while this has largely been shelved as a passion for now - audio circuits are almost directly analogous to their digital counterparts so that helped a lot.

I should also add that there is value to learning things the ‘proper’ way - something I have been adept at avoiding lol. It can save time and I still struggle with things like what the hell is a Go interface really?
Mu code has become a lot cleaner and better structured though and I’m slowing paring down the more ‘frankenstein’s monster’ parts of my code 🤭

One thing Ed said to me years ago in a pub beer garden when I asked how to get good at computers (I hadn’t even thought about writing software at this point) was -

“immerse yourself”

Meaning just dive in and start thrashing about installing and breaking things, feeling your way around and letting the knowledge seep in over time. Definitely great advice.

Time

This took me years. About 7 really and I’m still learning all the time (which should always be the case). If you’re planning to get a job in tech you might want to do a bootcamp like boot.dev to speed things up. But for a hobbyist with an unhealthy passion for live coding, spare weekends evenings and any time off is doable. From 2017 I started taking off at least a month a year to work on these projects - for me there was really no other way. If you don’t have the time you will need to make it somehow.

so, in summary:

I can’t stress this enough and this has held me back the most of anything - don’t be afraid, jump in. (easier said than done!) Or alternatively, learn in tiny steps and surprise yourself by letting it creep up on you over time until you turn round and say, hey wait a minute - I can actually do this! Cool!

I can distinctly remember the first time I found myself gazing at a schematic (electronic circuit diagram) and realising that I was actually reading it - wait, I actually understand most of this! That was unexpected, as I can also remember a time when it seemed like an impossible strange art that I would never know!

Anyway, hope that is helpful. Reach out if you want some pointers1 or something seems impossible (it isn’t)


  1. when you understand this as a silly pun you have made it. And by made it I mean in a state of continual learning alongside making things that do things x ↩︎


 updated on: 24 / 6 / 2025

↑ top