I vividly remember an appointment with a sonographer when my wife was pregnant. On one hand, it was a skilled professional using a combination of acoustic gel, a wand that contained a microphone and loudspeaker, a portable computer that did signal processing on what the microphone picked up, and a monitor that displayed a visual … Continue reading Emotion and software development
A friend recently talked to me about blogging, and it got me navel gazing a bit. I’ve not really thought about how or why I blog, and I guess it’s a good thing to be a reflective practitioner. At the risk of being self-indulgent, this is an article about how and why I blog. As … Continue reading Blogging
At this time of year, it’s common to set goals and New Year’s resolutions such as lose X kg of weight, or run Y km. If you have a goal like this, then I wish you well. It’s less common to have goals like have a better relationship with the people I love, even though … Continue reading Complexity: Important stuff can be messy
Introduction Impostor syndrome is where you feel that you are in a position that you don’t deserve because you’re not good enough at something, in contrast to all the people around you who all seem to be good enough, and one of these days someone will discover you to be the fraud or impostor that … Continue reading Impostor syndrome and the programmer’s brain
This post is inspired by an episode of the Art of Manliness podcast, with the psychologist Svend Brinkmann. I guess a good way to introduce it is to give you an example from the podcast. Imagine you go to a shop to buy some milk. You go to the checkout with your milk, and the … Continue reading People: an end or just a means?
There is a sometimes tangled relationship between what we can do and how we think of ourselves. I'm going to look at a part of this below. I can't do X because I'm a Y Have you heard someone (or yourself) ever say something of the form "I can't do X because I'm a Y"? … Continue reading Competence vs. Tribalism
I recently watched a video and listened to a podcast that form an interesting pair of opinions about performance. The video is Patterns for high-performance C# and the podcast is SE-Radio Episode 357: Adam Barr on Software Quality. There are two things where the podcast and video have no differences: the system must behave correctly, … Continue reading Performance optimisation – for machines or people?
Introduction There is a stereotype of a certain kind of programmer. It’s of a young white able-bodied man, alone in his room, creating the future through the force of his intellect. This creation leads to widespread change and a gazillion dollars for him. While it can be amazing to create things in code, and there … Continue reading Programmers should play nicely with others
Introduction I listen to the podcast Art of Manliness - its title is possibly misleading, as it's quite a mix of philosophy, practical skills, self improvement, lives of interesting people and so on. The episode I listened to most recently was about mental models, from Shane Parrish who is the person behind Farnam Street. I … Continue reading Programmers, mental models and decisions
Introduction I very much hope that this avoids being a rant. I also hope it avoids being self-indulgently clever rather than being helpful. Finally, I understand that people learn in different ways; I think I like images and like to get the big picture before getting into detail. Other people like to be led along … Continue reading Balancing big picture and details when coding, testing and documenting