From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934376AbXC3AZ2 (ORCPT ); Thu, 29 Mar 2007 20:25:28 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S934377AbXC3AZ1 (ORCPT ); Thu, 29 Mar 2007 20:25:27 -0400 Received: from smtpout.mac.com ([17.250.248.171]:58129 "EHLO smtpout.mac.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S934376AbXC3AZ1 (ORCPT ); Thu, 29 Mar 2007 20:25:27 -0400 In-Reply-To: References: <2375c9f90703290332w3f232b1cjf044f554fba04879@mail.gmail.com> <20070329205935.GB13541@Ahmed> <64884922-4254-4827-9A9F-09053043B8E6@mac.com> Mime-Version: 1.0 (Apple Message framework v752.2) Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed Message-Id: Cc: "Ahmed S. Darwish" , Cong WANG , Russ Meyerriecks , linux-kernel@vger.kernel.org, Andrew Morton Content-Transfer-Encoding: 7bit From: Kyle Moffett Subject: Re: Student Project Ideas Date: Thu, 29 Mar 2007 20:25:12 -0400 To: Jan Engelhardt X-Mailer: Apple Mail (2.752.2) X-Brightmail-Tracker: AAAAAA== X-Brightmail-scanned: yes Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org On Mar 29, 2007, at 20:09:11, Jan Engelhardt wrote: > On Mar 29 2007 18:54, Kyle Moffett wrote: >> >> One thing that I think is fairly non-obvious to newcomers is that >> Linux kernel development is not done at all the way they teach you >> in your Large Scale Software Engineering classes. Many of those >> classes talk much about careful design (whether top-down, bottom- >> up, outside-in, waterfall, spiral, $BUZZWORD_OF_THE_DAY) and >> detailed unit-testing, whereas Linux kernel development isn't >> really "designed" at all. > > Well, linux kernel is "extreme programming" - hack away until it > works, care about a design shape and stable API later. I somewhat disagree. Look at the amount of _design_ which is going into the linux-virtualization stuff, the replacement SLAB subsystems (SLOB/SLUB), or the current queued-spinlock thread. Admittedly with Linux 90% of the design process is rewriting the code a thousand times based on comments before it goes into mainline, but that's design nonetheless. It's just evolved-design-by-committee, a very knowledgeable committee made of the people who are interested in and understand what's going on well enough to give useful input and with enough sense of technical value to veto anything with significant architectural problems. Cheers, Kyle Moffett