tag:blogger.com,1999:blog-26260493.post1138516063429508155..comments2024-03-12T02:25:31.036-07:00Comments on Here's the Deal: The Next Stack Frame: Why Does Software Suck? Why Do You Think?Adamhttp://www.blogger.com/profile/01882993823597457057noreply@blogger.comBlogger2125tag:blogger.com,1999:blog-26260493.post-81740398924444733472007-04-05T15:08:00.000-07:002007-04-05T15:08:00.000-07:00I argue that software development is "susceptible"...I argue that software development is "susceptible" or "corruptible" by org cognitive dissonance. You are showing that delivery of hamburgers or airline flights can be made less corruptible. <BR/><BR/>But I disagree if you're suggesting that the same procedures by themselves can help software in this regard. Take measurement of the output, for example. It doesn't fail to help because it doesn't work; rather it's compromised by organizational factors. There are too many social vulnerabilities -- the software process itself is inherently "soft" in a group dynamics sense, so it gets reshaped by the org's internal disagreements.<BR/><BR/>To use an analogy, certain kinds of businesses are rapidly corrupted by a corrupt government or organized crime. They are attractive because they have a certain amount of "flexibility" that can be exploited (just like IT).<BR/><BR/>You are right that externalities (to the group) can work against this. E.g. the FAA's requirements for pilot certs and aircraft maintenance go a long way toward fighting the airlines' org problems that make them want to cut corners on maintenance, employ fatigued pilots, etc. And you're also right that real liability would serve the same external role.Adamhttps://www.blogger.com/profile/01882993823597457057noreply@blogger.comtag:blogger.com,1999:blog-26260493.post-58676988334957123892007-04-04T06:57:00.000-07:002007-04-04T06:57:00.000-07:00I'm not sure I agree with your diagnosis. I've wo...I'm not sure I agree with your diagnosis. I've worked at a number of different places that actually manufacture things. Physical things, things on an assembly line.<BR/><BR/>They don't often have good marketing departments, reasonable HR departments, people that have any clue.<BR/><BR/>But, in even the crappiest cases we get better quality control and consistent product from a firm that manufactures physical things than we do from software firms.<BR/><BR/>Why is this?<BR/><BR/> - Easier to specify physical requirements that software requirements?<BR/><BR/> - Easier to manipulate the process and measure what you are producing?<BR/><BR/> - Easier to measure the final product and know whether it actually worked?<BR/><BR/> - Lack of unqualified clowns who think they can do the job, fool people for a while, but are actually producing junk?<BR/><BR/>I'm not which of these it really is. But assembly lines don't build themselves, physical goods don't generally get built by people with no training and experience, but software does.<BR/><BR/>McDonalds has structured their whole work environment around getting consistent product from essentially unskilled labor. <BR/><BR/>Airlines however put people in the pilot seat that has a demonstrated track record of knowing what they are doing. Has passed a bunch of tests, has consistently demonstrated abilities.<BR/><BR/>I feel sometimes like we want the airline pilot, but companies think they can develop software on the McDonalds model...<BR/><BR/>At last McDonalds has a way of measuring when the hamburger got cooked right.Andy Steingrueblhttps://www.blogger.com/profile/07177656204885181542noreply@blogger.com