Messages in this thread | | | Date | Sat, 1 Dec 2001 06:14:31 -0700 | From | Victor Yodaiken <> | Subject | Re: Coding style - a non-issue |
| |
On Sat, Dec 01, 2001 at 08:57:17AM +0000, Alan Cox wrote: > > Here's a characteristic good Linux design method ,( or call it "less than random > > mutation method" if that makes you feel happy): read the literature, > > think hard, try something, implement it > > That assumes computer science is a functional engineering discipline. Its > not, at best we are at the alchemy stage of progression. You put two things > together it goes bang and you try to work out why.
Recently, our correspondent from Wales wrote: ... the changes have been done and tested one at a time as they are merged. Real engineering process is the only way to get this sort of thing working well.
I really dislike this "alchemy" stuff. It's demeaning and misleading. All the alchemists ever managed to create were cases of mercury poisoning.
> In many of these fields there is no formal literature. The scientific paper > system in computer science is based on publishing things people already > believe. Much of the rest of the knowledge is unwritten or locked away in > labs as a trade secret, and wil probably never be reused. > > Take TCP for example. The TCP protocol is specified in a series of > documents. If you make a formally correct implementation of the base TCP RFC > you won't even make connections. Much of the flow control behaviour, the > queueing and the detail is learned only by being directly part of the > TCP implementing community. You can read all the scientific papers you > like, it will not make you a good TCP implementor.
And you can hack away all you want, you'll never get TCP to work either. This stuff is a mixture of theory and practice and whether your theory is picked up from years of experience, boozy arguments, and thinking, or from a strictly supervised tour of the library it's theory all the same. CS is like any other skilled field. There's a difference between a guy who knows how to hammer and a master carpenter.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |