Just a thought about an error free app or OS

Posted:
in General Discussion edited January 2014
I have always complained about apps and OS's not being perfected before they're marketed.



Then someone explained to me that if a company fielded a perfect product, not one would buy a newer version and the company would have put itself out of business.



Seems logical, so we'll never be able to buy an error free app or OS.

Comments

  • Reply 1 of 4
    Hence leaving out the cameras and SD card slot on the iPad even though ample room exists in the case for them.
  • Reply 2 of 4
    akacakac Posts: 512member
    While that's kind of fanciful, the real reason is that computers are very powerful, are told to exactly what we tell them to do, yet the requirement to write code that takes into account every possible code path is something that humans can't really perform perfectly and therefore cause bugs.



    I mean it can be done....with years of time and millions of dollars. Somehow I doubt anyone would want to wait for a completely bug-free OS X Snow Leopard that would ship in 2040.
  • Reply 3 of 4
    MarvinMarvin Posts: 15,326moderator
    Quote:
    Originally Posted by Akac View Post


    While that's kind of fanciful, the real reason is that computers are very powerful, are told to exactly what we tell them to do, yet the requirement to write code that takes into account every possible code path is something that humans can't really perform perfectly and therefore cause bugs.



    Yeah, the amount of code that goes into building an OS and big application suite is huge and co-ordinating teams of developers to sift through it all and make sure it works is never going to be perfect. Maybe if someone builds an AI program to write programs you'll get perfect code but generally no.



    If you google for defects per ksloc (thousand source lines of code), it gives some numbers on error rates and it's listed at about 10 defects per ksloc but important agencies do much heavier error-checking so they get that number down. The larger that apps get though, the less that major chunks of code will be rewritten so the defects in something like an OS will drop in components that don't change much.



    Snow Leopard has certainly reached a fairly stable point IMO.
  • Reply 4 of 4
    This is why flight control systems, and other mission critical programs, tend to be coded in Ada, which was developed from the ground up to be conducive to reduced-error software development. Why it has not caught-on elsewhere is beyond me -- the argument used to be that it is resource intensive, but compared to Java it is nothing.



    I will also make the point that commercial software is basically dead, so the marketing impetus to leave room for future upgrades by crippling current builds -- or pushing crap out the door -- is becoming a fading memory (incidentally, this is also why C++ is dying). Every day, software revenues are less based on licenses sold and more based on services subscribed. So having buggy software doesn't help much.



    Last point: the seminal text on all of this stuff is The Cathedral and the Bazaar.
Sign In or Register to comment.