Midi GPT custom BPE - Theremin Midi

     

🕶️ Quick jump if you are just looking for the code, or just looking for the weights. I wouldn’t call myself a musician, but I’ve been playing and recording music since I was a teenager. It’s a hobby of mine that I’ve dabbled with for a long time. One technique I sometimes use when I am looking for musical ideas is to roll some dice to inspire chord progressions or melodies.


The Simplest Spider

     

In these the days of training models and analysing random things off the internet, sometimes you just need to spider some content off a web site. If you are going to be doing this for real, some good tools I recommend are: Colly (golang) Scrappy (python) Beautiful Soup (not a spider but useful for doing html magic) Use a specialised service (there are several) However, sometimes you just need something quick, dirty and scrappy.


Doing Map Selections Using a Quadtree

     

My methodology to building products is: Build an MVP (Minium Viable Product) quickly Get a few early-adopter customers to try it Get feedback Adjust I find the faster you can get feedback the faster you can figure out if your hypothesis is correct. The hypothesis being, “my solution solves the problem, and it’s worth building”. It’s often better not to work on a doomed idea for years and years. Even if the MVP idea doesn’t work out, there will always be some lessons you can learn from them.


50k Ultramarathon Retrospective

     

I love trail running. I love to hike and tramp; to be in the middle of nowhere with almost no one around. Just me and the planet. Running in the woods is just… it’s just perfect. I’ve done several smaller trail runs (33k, 24k, and my original love the GutBuster in the Blue Mountains Australia), but I hadn’t broken into the Ultramarathon distance officially until last weekend. The Taupō Ultramarathon - I’ve been trying to do this race for about 3 years now.


What Vision Pro Acutally Is (I think)

     

I’ve had some fun conversations with people about Apple’s Vision Pro in the last few days, and a few people sound suspiciously like what Steve Ballmer sounded like when the iPhone first launched. If you weren’t around back then, there was no AppStore on the phone, you couldn’t send images over text messages, the screen was 9cm (3.5 inches), it only worked on AT&T Edge networks, you had to plug it in to iTunes to transfer contacts and music, it had a 4GB disk, it had a 5 hour battery life, and it cost $500 on top of having to buy a cell phone plan only from AT&T (unheard of at the time).


WASM Raycaster in C with Clang no stdlib

     

I’ve been building software for profit for 25 years now - for fun since I was about 12. For the past year and a bit, I was focused on helping build out and fix some infrastructure. While there was some coding involved, I wasn’t doing much new software development. I had an urge to shake off a bit of cruft, and do a little “code 5k”. I felt like digging back into some lower level code to stretch my legs - and, of course, throw in some games programming.


SVG as a UI

     

SVG as a UI Did you know you can put JavaScript into SVG files? You can use this little technique to make little embeddable Flash like applications that also work as standalone applications. Here is a small example (lightly tested in Firefox and Chrome): Try clicking around in that image above (or use w,a,s,d to move the circle around). If you view that SVG directly => https://robrohan.com/wp-content/uploads/2023/01/test.svg you’ll notice it works just like it does when it’s embedded.


Mastodon; Machine Learning; Mandarin

     

Mastodon; Machine Learning; Mandarin TL;DR I made a Mastodon bot that uses Tensorflow, Stable Diffusion and Text to Speech to create flashcard like posts to study for the HSK Mandarin Test. Here is an example: => https://botsin.space/@hsk_words/109408750566290159 苹果 Introduction I’ve been studying Mandarin Chinese for quite a while now. Far longer than my ability would dictate. In the past I’ve studied in waves. I’d study for 3 or 4 months, and then I wouldn’t study for a long while - sometimes years.


Narrative Programming

     

Treating computer programming as literature I’ve been playing around with the idea of mixing code and documentation. It’s not an original idea, but I think my implementation may be somewhat unique. The idea is combining a cup of Literate Programming (an idea created by Donald Knuth), with a sprinkle of javadoc / Doxygen. I’ll start with an example output first. The following link is the output from a small example program to teach how to use C to compile to WASM:


NFT Blockchain

     

I’ve been getting a lot of people asking me questions about NFTs, Blockchain, and Bitcoin. I generally give the unhelpful advice: Never invest in a business you cannot understand — Warren Buffett It’s great advice, but, in technology, I think it’s becoming less useful over time. In 2022, it is difficult to fully understand a lot of what is out there. I mean, I am very interested in quantum computing and machine learning, but I wouldn’t say I fully understand it - and I’ve already invested quite a bit of my time in those subjects.