« Stuff, nonsense, etc. |
Main
| Four »
Old-school computer science called [and still calls! -Jeff] for methodical coding practices to ensure that the large computers used by banks, governments and scientists wouldn't break. But as personal computers took off in the 1980s, companies like Microsoft didn't have time for that. PC users wanted cool and useful features quickly. They tolerated -- or didn't notice -- the bugs riddling the software. Problems could always be patched over. With each patch and enhancement, it became harder to strap new features onto the software since new code could affect everything else in unpredictable ways.
The comments to this entry are closed.
I don't know if Computer Sciences says so... you must mean Software Engineering which I consider to be a distinct field (along with IT and Information Systems).
This being said, there are very good reasons why software shops don't follow the principles of academic software engineering. They simply do not work. In most academic work, the requirements are known ahead of time and they are constant. Oh! And the deadlines are fixed and set by the engineer. The premises are wrong, wrong and wrong.
Apple makes better software than Microsoft, but this has nothing to do IMHO with the fact that Apple has been software engineering practices. I'm sure there are as many UML diagrams at Microsoft than at Apple.
Posted by: Daniel Lemire | October 05, 2005 at 05:35 PM
No, Daniel, I mean old-school computer science -- actually sitting down and reasoning about what you're going to do before you even touch the keyboard. Forget the UML diagrams and all that crap. I'm talking about simple, basic programming discipline. Writing simple, readable, flexible, modular, working code.
And you missed the joke.
Posted by: JeffE | October 06, 2005 at 02:48 PM