What Should I Do with my Life?

I have a very optimized routine. I wake up at 05:45, and by 05:50, I have my gym clothes on. If I had a dream before waking up, I might record it on my voice notes app. Groggy and still drunk on sleep, I wearily descend the cramped stairway of my flat to find a hot pot of coffee greeting me. The previous night, I would have set it to automatically switch on before waking. Grateful for this automated treat, I gulp down two small cups of hot coffee. I then brush my teeth, ridding my mouth of any remotely brown flavor, and head to the car park downstairs to un-rack my bike. I ride to the gym to join other morning people who are disciplined enough to start their day this way.

The Gay Bar Paradox

Last Saturday night, I was walking home from a movie with friends, followed by dinner with them. It was a perfect outing. It is ideal to have dinner after a movie. You can talk about what you saw while literally chewing the fat. I took the bus home, and after getting on the wrong one, desperately concluded the journey to my street with an Uber. I live on Karangahape Road, or K’ Rd, one of the busiest bar and nightclub streets in Auckland. While stopping at a pedestrian light, I overheard a conversation from a group of four twenty-somethings.

Play the Game

I once had a boyfriend. We used to talk about work a lot. We worked in the same department at the same workplace, so there was a lot to discuss. Working together could be a bit overbearing at times (see also: the break up). But I loved his observations and wry musings on professional life. After each day we would wind down outside on his patio and talk about the day. His words in the gentle glow of the weekday dusk still echo in my head:

Postmodern Programming Today

I recently read a paper called Notes on Postmodern Programming by James Noble and Robert Biddle. This is a striking title. Postmodern makes you think of English literature students clicking their fingers to slam poetry at smoky jazz clubs. Not dorky software developers. But the paper is in fact a real gem to read. It was written 20 years ago but its ideas still ring true today. So I thought it would be worth reflecting on postmodern programming with a, well, modern lens!

Book Report - Straw Dogs

I recently read Straw Dogs by John Gray. It was part of my summer reading and I finished it on a boiling hot beach in Northland. When I returned to my home of Wellington I visited a friend’s place for tea. We talked animatedly about what we had done, seen, and read on holiday. As the caffeine urged on our conversation I told her what I had read in Straw Dogs. I tried my best to explain it as her eyes gradually glazed over (which is normal when I talk for more than a minute). But I could tell she was not comfortable with the ideas I was telling her. The tea in my cup had dried up and we changed the topic.

The Database Streamy Weamy Pattern

A few years ago I was introduced to an interesting ebook called Designing Event Driven Systems. In it the author Ben Stopford outlines how to build business systems using Apache Kafka. I was a young impressionable developer and the book turned my understanding of system design on its head.

At the time I was working at a small software monitoring company. Our system took in hundreds, sometimes thousands, of requests per second. We stored terabytes of error payloads and user events. The company was growing and scale was an issue. As I read the book on the way to and from work I got excited. I sketched out a few proposals for us. We could use Kafka to scale up our data processing!

P/PC: a productivity principle for programmers (and other people)

It’s so easy to make your dreams come true. All you need are goals! Just write them down - promise to read one book per week, do 100 push ups every morning, and learn French fluently. The next day, do less than half of what you planned. After one week, do none and forget about everything completely. Then wait until the next crisis has you scribbling new goals optimistically at 3am. Have you done this before? I have. Many times in fact. The problem is that if your ambition is not in harmony with your ability, your goals have no means to come to light. And you find yourself face-down on the floor wondering why you even started.

The Problem with Smurf Speak

You know how the Smurfs substitute almost every word for smurf? This is known as Smurf speak in the comics and TV show. We software developers also Smurf-speak. What we tend to do is put our company or product in the names of modules, classes, and functions. Classes like McDonaldsPendingOrder and GoogleDocsMainMenu have redundant prefixes. Yet PendingOrder and MainMenu are perfectly good names and give you the same information. I am going to outline why you don’t need to Smurf speak, and give a few tips to help you avoid it.