A little while ago, I was asked “What makes software good?”, which was followed up by “How do you end up with good software?”. I thought that they were excellent questions, and I will give my answers below. I don't claim to have the answer, just an answer. I’ll try to limit esprit d’escalier / … Continue reading Good software and how to get it
Author: Bob
Different ways people add value in a software development team
There was a tweet about how tech companies measure people by the impact they make. I replied in the common terse Twitter way, and I want to expand on that here. I think that there are few different ways in which someone can add value in a software development team, and they're not all equally … Continue reading Different ways people add value in a software development team
Brains, tools, chess and programming
Seeing how unimportant the chess board and pieces seemed to Beth Harmon in the TV series The Queen’s Gambit, and a recent Software Engineering Radio podcast on The Programmer’s Brain made me think about how programmers work. How much of it is using tools out in the real world, and how much goes on inside … Continue reading Brains, tools, chess and programming
CI/CD pipelines are software artefacts
Someone asked a question on the Ministry of Testing forum about CI/CD pipelines, and I realised my answer was a blog post (an extended waffle, that others might find useful). The question was from someone just starting with CI/CD, and they asked more experienced people: What do you wish you knew when you started, and … Continue reading CI/CD pipelines are software artefacts
Confusing user value with other things
Programmers look at software they’re working on from the inside, but users look at it from the outside. This difference in perspective can lead to different views about what’s important – too often programmers can be consumed by the technical detail and lose sight of value to the end user. In fact, they too often … Continue reading Confusing user value with other things
Trends in UK Coronavirus cases, hospitalisations and deaths
A friend asked a question to do with Coronavirus that I couldn’t answer but I thought I should. So I got some data, did some calculations on it, and then worked out how to display it. The question was: how bad were hospitalisations and deaths from Coronavirus (in the UK) when the daily reported Coronavirus … Continue reading Trends in UK Coronavirus cases, hospitalisations and deaths
Senior software engineers, power and freedom
This is a follow-up article to my recent article on Senior Software Engineers. The reason why I’m doing a follow-up so soon is because some interesting and useful points came up in a Twitter conversation about it, and I want to capture and build on those. The points concern different ways of looking at power … Continue reading Senior software engineers, power and freedom
The cost of flexibility
Flexibility in software design is often seen as a good thing, but it can come at a cost. This isn’t surprising, because software engineering is a kind of engineering, and engineering involves making trade-offs among several good things. For instance, there is no “best” car, just the best car for a given situation, with a … Continue reading The cost of flexibility
CV tips
A friend recently asked for some advice in writing her CV (résumé) and suggested I turn what I told her into a blog post, so here it is. I don't claim to be an expert in CV writing; these are just the ramblings of some random bloke on the internet. I hope you find them … Continue reading CV tips
Senior software engineers, authority and ability
Some Senior Software Engineers feel they must win every argument, which I think is a bad idea. Not only is this bad for the team, it’s bad for the Senior Software Engineer as an individual. In this article I’ll explore this a bit, with the analogy of Top Trumps. It’s also related to the strong … Continue reading Senior software engineers, authority and ability