Tuesday, December 26, 2006 8:15:30 PM Haste makes waste, and patience is rewarded. I was reminded of this once again recently as I picked up a morning coffee at Starbucks. There are always a lot of people at this particular store, but the line moves quickly. On this morning I had ordered "a grande nonfat latte for David," and was waiting for the six orders before me to go by. Another man came in, acting nervous and anxious, and he crowded the pick-up counter. As I watched my order come up, he grabbed it and dashed out the door! My first reaction was that someone had just stolen my coffee. But I gave it a little more thought, because he had been there for a couple of orders, and seemed very certain when he picked up the order for "David." Perhaps his name was also David, so I waited to see if another one would come up in a few turns. Sure enough, "David" was called again a few drinks later. I took the coffee and headed for the office, wondering whether it would actually be a grande nonfat latte. I took a sip and discovered ... a grande nonfat gingerbread latte! I'm sure the other David was disappointed, but I was pleased! I reflected on the fact that my patience had rewarded me with an even more flavorful latte than the one I had ordered, and how the other David had, in his haste, walked away with less than he had ordered. How similar that was to software design in the business world! Many of my contracts in the past seemed to devolve into me going around after other contractors and cleaning up their work. A lesser-paid contractor or employee would do a job hastily, and the management would enjoy the delivery of less than they had ordered. I, a higher-paid contractor, would then be asked to set the task aright, to finish the other persons' jobs. It was an improvement from the feeling of being a temporary general helper, but it did take me a while to get used to the role of the clean-up man. I was rewarded for my comfort in the role, as a recent contract was exclusively that of clean-up man. All manner of permanent employees and contractors, architects and programmers, had delivered a commercial product that did well as a prototype, but did not do quite as well under the strain of commercial use. My role was to follow up and tidy up the system. Of course, this was as a technical consultant, with a very nice billing rate, and as a resident hero for the business. Their haste created their waste, and my patience rewarded me.