Originally posted by: AUGrad
Originally posted by: Lestan
Originally posted by: mechsiah
Windows has come a long way and does some amazing stuff, but I think that a company with as much money and manpower as Microsoft has could be a little more careful with its code.
I couldn't disagree with this more. Coding has never been an exact science. Unix itself has been hardened over the last 30 years, and that is why it is now more secure. Windows is now the mainstream NOS, and we are witnessing the hardening process in action. It has only had 10 years or so of being heavily exposed to the Internet, so I'm betting that in 20 years (probably less) Windows will be the most secure piece of software on the planet. You can't just write secure code, it has to be a trial by fire.
Here is a fascinating article that compares computer viruses to biological ones, and it is so true: http://www.zone-h.org/en/news/read/id=3287/
And I couldn't disagree with this more. Coding is based on scientific principles. While there is a creative/artistic element to it, the basic science and methodologies behind it should not be ignored. Compare programming to building a house. Each house may be different in very artistic ways, but the basic principles of determining live and dead loads, pouring an adequate foundation, etc. apply in every home. If you're not following basic principles of good coding -- validating all inputs and verifying that any data is not too big for its target memory come to mind as examples -- then you're doing it wrong. If Microsoft were a big builder, they would have been sued into nonexistence by now for building substandard homes.
I'm not saying the MS is the only company with this problem, I'm just using them as a good example of why the "coding is art" bunch need to rethink their argument. Ultimately, form should follow function, and code that breaks in not functional.
Well said, AUGrad. Anyone who has studied Computer Science will probably agree with this statement. I like the comparison to an architect. You build things SAFE no matter what. Everything else follows that. Otherwise your career is over.