If your first reaction to this article's title was to think of other activities in software that are more expensive than estimation, that's ok! There are probably plenty of expensive things you are doing like sending large bags of money to AWS each month. However, the title says "most costly" and not "most expensive". Estimation … Continue reading Software estimation is your most costly activity. Why not reduce it?
There are some terms in common use in the software industry that, while originally well-intentioned, have since become damaging rather than useful. "Sprint" Sprints were originally meant to create some focused time for engineers to give them space for concentration and deep work. They are only supposed to happen periodically, and in between less intense … Continue reading Three Terms in Software That We Should Consider Retiring
If you work in software for any length of time, you'll eventually hear of the term technical debt. It refers to something that isn't that well designed and will be a costly maintenance headache in the future. It's supposed to conjure scary images of short-term technical shortcuts causing future pain. While well-intentioned, I think the … Continue reading Let’s Replace the Term “Technical Debt”
The conventional wisdom in software development has always been that internationalization (i18n) is a very expensive and time-consuming effort, and that it's always better to target just one language first, adding support for more languages later, when the market demands it. Because of that perception, multilingual support is not often considered during the early days … Continue reading How to write software that is ready for the world
The world of professional software engineering is full of titles and grades. Employers use job titles as a means to help them build new teams with the right mix of talent, attract the right caliber of candidates when hiring, create attractive career paths and assist with compensation planning. However, many companies assign titles differently, making … Continue reading Understanding Software Engineering Job Titles