Thread: Specifications
View Single Post
  #3   Spotlight this post!  
Unread 14-12-2005, 16:48
TechnocratiK TechnocratiK is offline
Registered User
AKA: Patrick Diez
None #0296 (Northern Knights)
Team Role: Programmer
 
Join Date: Sep 2003
Location: Montreal, Canada
Posts: 22
TechnocratiK is an unknown quantity at this point
Re: Specifications

Quote:
Originally Posted by KenWittlief
If the specs are not written, or only half written, or you use parts (like interface specs) that are not up to date, or if you have no spec at all, then you are writing code by the seat of your pants.
Agreed, specifications are necessary wherever engineering is involved. I think what Linus is getting at, however, isn't the issue of "vertical" specs so much as "horizontal" specs - I'll elaborate:

A processor is made with certain specifications. These specifications are necessary, so that systems programmers aren't poking around in the dark trying to figure out how to use this new chip. This is a "vertical" specification so-to-speak, because it influences the next step in design - the processor manufacturer tells the system programmer how to write code for the chip, the system programmer then tells the applications programmer how to write code for the OS, and so on. Here, a well designed specification is fundamental to the viability of the chip and its implementation.

On the other hand, consider a specification like POSIX. It is what I would call a "horizontal" specification. If it were called the UNIX specification, there would be no problem, but giving it a name like the "Portable Operating System Interface" has the effect of pressuring non-UNIX system programmers to comply with it, mainly because they know that "POSIX compliance" means "open source community friendly." Admittedly, my question was poorly phrased. What I meant to debate was whether or not a specification should be followed for its popularity, even though it limits innovation.
__________________
TechnocratiK out.