The last three months are starting to feel veerrryyyy hazy, so I thought it was about time to write a post and get a summary down for the sake of sanity.
I’ll try to keep it short and concise!
This is the screen I’ve been watching and caressing for the last few months (about 40-60hrs a week according to Rescue Time):
In a way, this picture represents quite a decent portion of what I’ve learned over the past three months. A big fat Terminal window, multiplexed by Tmux with two instances of Jen in Vim (Rust version on the left, C++ on the right), my home-made Python To-Do list in the top right corner and Mozilla’s Rust IRC channel in the bottom right.
Here is a vague chronological order of events:
Jen’s making melodies! You can download and listen to a bunch of them here. This is probably the most exciting breakthrough with Jen so far! Still, lots to be done.
I took a short break from Jen to learn Vim and Python! I’m about 5 million (2) times more productive in Vim than I was in Xcode. I now use Vim every day for every language! I’ve made about 5 little programs in Python since, but this is my favourite - I use it every day!
I began my Rust obsession! Rust is amazing. I’m currently ~75% through porting all of Jen from C++ to Rust. I’m also actively contributing a DSP suite to the Piston game engine (yes, in Rust). Also, 5 minutes ago I had my first code merged into Rust’s standard library! Super exciting.
Sometimes it can be easy to forget how much you are learning on the journey when your mind is so set on the goal.
Jen is closer to being ready to share with the world than ever and that is incredibly exciting!
Equally as exciting, is what I’m learning about myself and the digital universe along the way…
The more that I learn about programming computers, the more that I realise the phenomenal potential that lies within them. I’m also constantly learning (through both days of debugging and one-line breakthroughs) that even the tiniest changes (a single ‘yes’ or ‘no’) within huge systems can make the difference between something profoundly beautiful and something that’s completely useless. Hands down the most exciting thing that i’ve been learning however, is that (now, more than ever) these things actually have a phenomenal potential to learn themselves.(more…)
Its been a long time coming, but I’m finally getting happy with the rhythm/beat generation. Here’e a link to DL a few mp3s that Jen threw together tonight.
Jen’s Demo Beats
She now has a strong idea of how to write fills, compose kit work / beats for any rational time signature, structure songs and pick instruments all by herself!
It features Reza Ali‘s UI widget system (sliders, number dialers, text input boxes, buttons, toggles, etc) that I’ve been integrating for the past couple of weeks, as well as the Envelope Editor widget I’m contributing to Rez’s collection.
“In 2013 I moved into a castle, finished uni, released a soundtrack, dived into c++, scored grants for Jen, became obsessed with AI, played Burning Man, met beautiful people, spent the festive season with friends and fam and did all of the other things I have forgotten that were awesome things!
This year I’ll take Jen public, explore Japan, learn to talk to computers better, dive deeper into AI, play a generative set, release Limit Theory with Josh Parnell, meet beautiful people, spend the festive season with friends and fam and do all of the other things that I have no idea are coming that are awesome things!”Anyway, here is the latest glance at Jen,
“CodeMapper” is an alpha / work in progress of a program I started working on about a week back. I’m developing it in the openFrameworks library for C++ with the aim of making coding in C & C++ a more visual experience.
Simply drag your source code folder onto codeMapper and it will generate a neat, coherent map from your header files. Rather than trying to consistently keep a mental map of your complex code or trying to keep track with notes and commenting alone, codeMapper can assist you in getting your head around large multi-file projects. It will also display hints for making your header inheritance neater and more efficient.