The title of the anti-pattern is Fast Beats Right. The sub
title is “A few hours? We don’t have that long”
The elaboration is read as: The practices of rushing a project
and taking shortcuts to meet a delivery deadline, usually resulting in poor
quality work that will require more effort to maintain in the future
This link provides some further reading on the anti-pattern
( including an interesting photo). For your convenience I quote it as
following:
The Fast Beats Right ant-pattern alleges that it is always better to just get something done, regardless of quality, than to invest any effort into doing the job right. In software development, this quickly leads to taking on Technical Debt, which can be useful and worthwhile in order to meet short-term deadlines. However, unless it is paid down quickly, its long-term consequences can eventually lead to project failure.
Quotes
"There's never enough time to do it right, but always enough time to do it over." - Jack Bergman
In my decades of software development career, I realized
that the some of those who practices this anti-pattern did so intentionally. They
just want to get things done and do not want to invest time and effort to do it
right. I have seen many in project leadership position do so intentionally. The long lasting effect to the project is devastating.
At the end of it, the project will pay back the technical debt with interest, sometime it could means failure
of the project. There are also people who did so unintentionally, Due to lack of knowledge and
or discipline in software development , programming, they did what they know how to do, but not necessary
the best way. If you ask them why they did what they did, likely you will get
response “I do not have time for it, I was in the rush. In order to do what you
are talking about, I need more time.” The reality is that even if you give him
the time he is asking for, he would not know how to make use of the time and
produce better result. “I need more time” is nothing more than an “convenient excuse”
This remind me watching adults playing chess when I was a
kid. They took time to think and think,
in most of time, my patients s ran out before they made next move. I thought I got the next move way before they
do…. But when my daddy one day agreed to play the game with me, I lost the game
terribly, When daddy asked me to time more
time to think before making move, I realized I do not know how to use the extra
time to think, what to think, how to think. I end up still making bad move. To use
the time effectively one need to be skillful and knowledgeable. The same is
true in software programming. Less qualified
developers meet with less qualified architects , project managers will likely result
in “Fast Beats Right” and “Fast Beats
Right” will likely result in more difficult down the road, or even the failure
of the project. At the end of it have needing to "do it over"
No comments:
Post a Comment