Cynical interpretations of various project milestones

Official name Cynical interpretation
Coding milestone Writing new bugs
Integration milestone Merging bugs from other teams
Stabilization milestone Fixing bugs
Comments (18)
  1. Mason Wheeler says:

    If debugging is the process of taking bugs out, then coding must be the process of putting them in.

  2. Brian_EE says:

    Half on / half off topic – we once had an Engineering Director who decided we needed to understand progress on a daily basis to make sure we met milestones.

    The term for this? Inch-stones

  3. Antonio 'Grijan' says:

    Add to the list Relase milestone / Ask customer to look for bugs . And no, I'm not going after Microsoft with this one. Anyone that works in the industry knows it's impossible to find all bugs before release, because the user will always use the software in ways the developers wouldn't be able to imagine…

  4. @Antonio:

    Having watched my 1 yr old play with my phone, I'm thinking that he could perform testing… along the lines of Android's isUserAMonkey()… But the lock screen, he's managed to find screens and do things that I didn't think were possible.

  5. John Doe says:

    Cynical interpretation of "Cynical interpretations of various project milestones":

    – cynical: realistic

    – interpretation: meaning clarification

    – bug: feature

    Therefore, whenever you remove features, you're fixing bugs.

    Milestones affect the amount of bugs more than the amount of features.  The bigger the milestone, or the sooner its deadline, the greater the Bug To Feature Ratio (BTFR)™.  I leave finding the proportion (linear, polynomial, exponential, elliptical) and its constants as an exercise for the reader.

  6. AndreN says:

    Integration milestone should clearly be "merging bugs from both teams".

  7. > Stabilization milestone

    Swapping new bugs for old

  8. Joe says:


    Yes, the software development process is "Bugging" and "Debugging."


    So, your milestones were 173 years out? Perhaps cablestone would be more accurate. (Had to use Wikipedia to get that one.) Then again, a stone is 14 pounds and a sprint is typically two weeks, so why not call them a pound?

  9. Antonio 'Grijan' says:

    @Scott: yeah, but Android got it almost 30 years late. The original Macintosh had a global variable whose value indicated whether a monkey was at command: .

    It is surprisingly useful to stress user interfaces that way – be it an actual monkey, a one year old child, or a grown up with random click disorder :-P . It's just a pity that, AFAIK, the Windows SDK doesn't contain a monkey, as both Android and the original Macintosh ones do/did.

  10. cheong00 says:

    For some teams, "Integration milestone" also means "exporting bugs between teams".

    And for "Stabilization milestone", it's time to convert bugs into features. :P

  11. Michael Entin says:

    There is also parallel process of Discovering bugs, which is the only process that may delay Shipping milestone.

    Which reminds of a friend who (being SDE/T) was too good at discovering critical bugs. So the team was not able to ship because they were not that fast in fixing these bugs. The solution? They 'promoted' him from SDE/T to SDE, so he could work on creating bugs rather than discovering them.

  12. cheong00 says:

    @Michael Entin: Inspired by your comment, we now have a new demoralization banner – "Promotion – The processs of sending competent staffs away from positions they had proofed to be competent at."

  13. Gabe says:

    cheong00: I'm pretty sure that the term "promotion" is reserved for meaning "giving higher-paid positions to to staff who have proved incompetent at their current job".

    For example, "After three years, Steve could still only program by pasting in code he found via Google, so he got a promotion to manager."

  14. cheong00 says:

    @Gabe: I don't know, but I've seen a few times that some software companies prompt their best developers from SA to… PM. Not to mention that in traditional companies, it quite natural for long time staffs got promoted to titles like "Assitant Manager (Projects)" or even "IT Manager"


    There are plenty of developers that can code very well but don't know how to manage people. For these guys promotion means they have to moved from "time proved competent position" to somewhere weird for them.

  15. boogaloo says:

    @Michael Entin: If it's 5:00pm and your known bug count is zero, don't start testing.

    @cheong00: In case it's not irony; You have one too many s' in process and it's proved not proofed.

  16. cheong00 says:

    @boogaloo: Argh… right. s/proofed/proved/ on that comment.

  17. Bob says:

    @Brian:  Some of us called those daily "milestones"  foot-pebbles.  Similar meaning (foot < mile ; pebble < stone) but if you envision a pebble in your shoe, it carries connotation of both being painful & impeding forward progress.

  18. Jolyon Direnko-Smith says:

    @cheoong00 and Gabe:  Closely related is "The Peter Principle", or "Managers rising to their level of incompetence", since they only stop being promoted once they reach a point where they are no longer effective.…/Peter_principle

    Using promotion as a tool to move someone out of a job where they are already actively incompetent and causing problems is often called "The Public Sector Promotion" model, since in highly unionised and public sector environments it is often easier to promote someone up and out of the way (to where they can hopefully do no harm or at least become somebody elses problem) than it is to demote or sack them for the problems they are causing.

Comments are closed.

Skip to main content