
Uncle Bob Explains the Programmer's Oath (Videos) - tapanjk
https://www.youtube.com/playlist?list=PLWKjhJtqVAbno-B4RmJHCDO0ZUKC2tpUQ
======
daly
Number 8, software estimates are complete nonsense.

Read [https://www.quora.com/profile/Lishi-He/Programming/Lets-
take...](https://www.quora.com/profile/Lishi-He/Programming/Lets-take-a-hike-
on-the-coast-from-San-Francisco-to-Los-Angeles-to-visit-our-friends-in-
Newport-Beach-Ill-whip-out)

I worked at a startup. Just before I was hired they bid on a fixed-cost 5
programmer, 5 month contract. After 10 programmers for 18 months they fired
all of the (over 2 dozen) programmers and the company folded.

At another startup I was given a project when the prior programmer left after
2 weeks. The project estimate was 8 weeks. I did an analysis (140 items, 4 of
which had been completed) and estimated that the project would, at minimum,
take over 6 months. The next day I was fired.

IBM used to put out contract bids at 3 firms to build the frames for their
mainframe computers. The independent bid estimates were delivered with time
estimates within a day and costs with a penny. They delivered on time and on
cost every time.

Moral: If you have a repeatable task then you can provide an estimate. If you
are doing a task for the first time, as most programmers are, then you CANNOT
make a reasonable estimate. You can't even make a good guess. The only HONEST
answer is "I don't know".

Bob suggests providing 3 answers, minimum, likely, and maximum (aka NASA PERT
charts). I tried that. The ONLY one management every hears is the minimum.
They provide that number to the customer and record that as your target.

Look at Edward Demming's work. Demming came up with principles that
transformed Japan. Programming needs an Edward Demming.

In fact, your job depends on your performance even on things you cannot
control like estimates. See the Red Bead experiment:
[https://www.youtube.com/watch?v=ckBfbvOXDvU](https://www.youtube.com/watch?v=ckBfbvOXDvU)

I have been programming for 47 years and I have NEVER seen a project estimate
even close to the actual result.

------
daly
Look up and learn Demming's 14 points (
[https://www.youtube.com/watch?v=tsF-8u-V4j4](https://www.youtube.com/watch?v=tsF-8u-V4j4)
)

Bob's Oath's cannot improve programming. Demming can.

