People tend to use the terms Sprint, Iteration, and Time box interchangeably. For the most part this is true, but there is some nuance: Sprint is a term popularized by Mike Beedle and Ken Schwaber in creating the Scrum methodology. They chose the word because it implied a desire for fast pace. It’s not a…
Software Team
Quality Beyond “Working”
When you think of the term “Software Quality”, what comes to your mind. Let me propose that how you think of quality depends heavily on your “relationship” to the software product. If you are a user of that software product – quality relates to the following qualities in order: Operational Correctness – It produces the…
Design Philosophy And Coding Style
Caution, Rant Alert! In my career, I have been some kind of leader on about a dozen new application projects. It is interesting to me that the only time I have ever heard about “design philosophy” or “coding style” is when some new developer comes on a project and gets his butt handed to him…
Developer Interview Thoughts
Recent interviews with developers have caused me to evaluate and devise questions that help assess behavior motivators… While a more technical interviewer is responsible for questions related to technical competence, I am responsible for questions related to work ethic and value systems – in other words cultural fit.
Top Six Estimating Tips for Programmers
Every programmer struggles with providing estimates. It is a universal truth of software development. Most of the time we go way too deep, try to be more precise than we have any reason to be. Many times we have fear driving our estimates – what if they are too big (will they cancel the project?…
Put the Yak on the Stack
In a prior post, I introduced the concept of Yak Shaving. In this brief post, I want to introduce a strategy for preventing Yak Shaving. The developers on this team have become sensitized to yak shaving, and often report that they ran into a yak on the way to done. They have to make a…
Proper Task Length
Glen Alleman in his post How Long Should Tasks Be gets to the heart of an important issue. When planning, how long can you wait before you know that you are late. In principle, it works like this – you don’t know you are late until you fail to complete a task on schedule. How late…
Normalized Perspectives
As software professionals, our beliefs about what qualifies as “best practices” often depends on our experience and our expertise. This is one of the reasons that it is so very difficult to run the self-organizing software teams, frequently described in agile literature. The fact is, teams cannot be self-organizing, until the members share mental maps…
Agile Delivery Manager vs. Project Manager
When you adopt agile practices, especially agile life cycle plans – it is really simple to have your project manager become the scrum-master, right? Isn’t that what everybody does? After all, it’s just swapping a gantt chart for a burn down chart, right? It certainly is what all of the project managers do when their…
Weaponized Metrics
Software teams hate metrics. They don’t like to estimate work. They don’t like to tell you how much progress they have made. I remember my first “team” project. PM asked me to estimate how long it would take me to finish a task I had never done before on a platform I was new to.…