When I wrote Why Go? in 2012, I was struggling to get a Ruby on Rails web app to handle more than 3 concurrent requests. 😅 Go was a revelation! And it continues to be one of the top choices in that space. Today I’m retired from web development, and pursuing a childhood dream to make video games. I want to get back to the low-level programming I did in my teens.
A year ago I took a career break after 28 years of web development . My goal was to study a variety of topics, and pursue hobbies like game development and technical writing. Runway 🛫 To accomplish this, my aim was to live a very frugal lifestyle, to stretch out my savings – some call this Lean FIRE . Despite the chaos abroad and some at home (e.g. furnace repairs), my portfolio did rather…
As part of my long-term goal of becoming a solo game dev, I decided to learn how to write music. This is a rather ambitious goal, as I have no prior music experience, other than playing the recorder in elementary/primary school. Game Music Though game music is called background music (BGM) and is usually instrumental (no lyrics), it’s an incredibly important part of video games. Take for…
To provide some context, I have a long-term goal of becoming a solo game dev, but I’m new to animation. I haven’t even read The Animator’s Survival Kit yet! 🙀 Still, I’m interested in the tools that are available. Moho ❤️ So what attracted me to Moho in particular? Was it the fact that Cartoon Saloon used it for films like The Secret of Kells and Wolfwalkers? Or maybe the…
Art is an interest that I’ve long held but never truly pursued. For the longest time, I didn’t believe I had the talent . Then a few years ago, I surprised myself with a painting that didn’t suck. It was at a paint party, with the initial sketch, reference image, paint supplies, and instructor all provided. Boe, a steer from the animal sanctuary FARRM (traditional acrylic on…
It all began with a potluck. In 2007 I accepted a summer job with the Human Resources department at Power to Change (then Campus Crusade for Christ). This required moving to British Columbia. For accommodations, I rented a room in a big house with several other young men as flat mates. One of the guys was mostly vegetarian. He was against factory farming, but wasn’t against hunting and…
Two months ago I took a career break with many ambitious plans . Initially I spent some time experimenting with Rust, Vulkan and Claude , updated my blog design, and wrote a few posts. But I quickly realized that I would rather spend my summer out and about, rather than in front of a computer. I’ve often longed for a summer holiday like I had back in High School, even a staycation. Sitting…
I’ve been exploring graphics programming once again, with Claude Sonnet 4 doing the heavy-lifting. This post is an exploration of what I’ve learned about: 🌋 Vulkan and ☢️ DirectX 🤖 Claude and the intersection between AI and graphics programming 🦀 the Rust language and ecosystem The goal: build a Bunny Mark benchmark while exploring various graphics APIs and 🦀 Rust crates. Bunny…
For the past 5½ years, I’ve been saving towards retirement, but I recently decided to take a career break. This is the second post in a two-part series: Career Break: How I Got Here Career Break: What Will I Do “Tell me, what is it you plan to do with your one wild and precious life?” - Mary Oliver, The Summer Day What will I do North star If you’re familiar with my journey…
For the past 5½ years, I’ve been saving aggressively towards retirement, but I recently decided to take a career break. This is the first post in a two-part series: Career Break: How I Got Here Career Break: What Will I Do Let’s start with some terminology: A career break is a broad term for stepping away from a career for any reason at all. It doesn’t require permission. A…
Hop in Your DeLorean and rewind the clock to the summer of 1997. I had just landed my first job as a web developer. HTML and images, nothing more. A few years pass. As the turn of the century approaches, we’re utilizing JavaScript and ColdFusion to make websites dynamic! But there were no automated tests and no “cloud” to deploy to. We didn’t have version control, and the…
Four Thousand Weeks is a book written by Oliver Burkeman on the topic of time management . The premise is that the average human lifespan is about 4,000 weeks – so let’s make the most of our time. “Missing out… isn’t actually a problem… because ‘missing out’ is what makes our choices meaningful.” – Four Thousand Weeks, Oliver Burkeman After…
Hi, I’m Nathan 👋 A self-taught developer from Canada 🇨🇦 and author ✍️ of Get Programming with Go (Manning Publications, 2018). What follows is a personal account of becoming a programmer and my career as a web developer. Childhood I grew up on Lego, Dr. Seuss, and Berenstain Bears in a tiny Canadian 🇨🇦 village. After my parents’ divorce, an Atari Computer found its way into our…
Go has types and values rather than classes and objects. So can a language without classes or objects be object-oriented? While Go may not fit the typical mold of an OOP language, it does provide many of the same features, albeit in a slightly different way: methods on any type we define, with no boxing or unboxing automatic message delegation via embedding polymorphism via interfaces namespacing…
Object-oriented programming is like a comfortable old hat. Classes, inheritance, polymorphism – I learned all that 20 years ago – with C++. What more is there to know about OO? As it turns out, quite a lot. Practical Object-Oriented Design is a must read for any Rubyist. My copy is full of highlights, but I’ll focus on a few key takeaways. Change Who hasn’t experienced the…
Getting into the swing of it. Go was introduced on November 10th, 2009 as a new system programming language with quick build times. Go’s excellent tooling, elegant concurrency model and unique approach to object-orientation has captivated the attention of developers from compiled and scripting languages alike. “Go will be the server language of the future.” - Tobias Lütke,…