Restrictions spur creativity. Perception shapes reality. Or why you don't want to get on the wrong side of your users. In the early days of the internet, GIF was the prevailing file format for website graphics. While JPEG is great for compressing photos, GIF (Graphical Image File) is a lossless encoding that works great when … Continue reading PNG is not GIF
Tag: Software engineering
Office or remote?
The pandemic showed that software engineers can work productively from home. But most of us have also realised that working remotely is hard to sustain as a healthy business operating model. So what is the recipe for success in post pandemic software engineering?
GitHub Copilot: How does it feel?
AI is like teenage sex. Everyone talks about it. Everyone thinks everyone else is doing it. When you try it, it is not such a big deal after all. I decided to try out GitHub Copilot to understand what it can do and what all the hype is about.
Great software
At a recent interview I was asked: What is good code? While I have written code professionally since 1999, I think a more interesting question is: What is great software? While the source code important, it doesn’t live in a vacuum. To write good code, you need to understand the larger context of the system. Reflecting after the interview, here is the answer I would give today.
Take your scrum to 11
Scrum can be a drag when executed poorly. Done right, scrum is a non intrusive framework that provides a great flow for software development teams. In this post I share my best tips on how to dial your scrum all the way to 11.
Ten habits of highly productive developers
I decided to write a book about everything I learned about software development. After fiddling around with margins and fonts for almost 30 minutes, I wrote a blog post instead (tongue-in-cheek spoof on internet advice).
Managing software complexity
If you are working as a software engineer, chances are that you are fixing bugs and adding features to a system that was conceived years before you joined. Every successful system grows beyond the original design. Whatever the creators imagined, changes to requirements and technology soon outgrow what the initial team can keep up with. … Continue reading Managing software complexity
You never know when you have found the last bug
Each Tuesday, I post a one-liner — an insight learned from 20 years as a software development professional distilled into a succinct statement.
There are always implicit requirements
Each Tuesday, I post a one-liner — an insight learned from 20 years as a software development professional distilled into a succinct statement.
Great results are achieved when business and IT communicate effectively
Each Tuesday, I post a one-liner — an insight learned from 20 years as a software development professional distilled into a succinct statement.