3 ms·
Uncle Bob Explains the Programmer's Oath (Videos)
- daly 9y agoNumber 8, software estimates are complete nonsense. Read 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 https://www.quora.com/profile/Lishi-He/Programming/Lets-take... 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 9y agoLook 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.