Oral History of linus Torvalds



Yüklə 332,77 Kb.
Pdf görüntüsü
səhifə17/18
tarix08.08.2018
ölçüsü332,77 Kb.
#61586
1   ...   10   11   12   13   14   15   16   17   18
    Bu səhifədəki naviqasiya:
  • Booch

Oral History of Linus Torvalds 

 

 



CHM Ref: X4147.2008            © 2008 Computer History Museum                                 Page 34 of 41

 

 



give me something to work on because otherwise I'll be bored and I'll be done with my project.  I want 

people to give me feedback.  And I think that was really important because a lot of people start doing-- 

they have some design decision that they're attached to and they do everything according to that design 

decision.  And it turns out reality doesn't work that way.  Reality is not black and white.  And if you actually 

want to be useful, you need to be able to just say, okay, that works most of the time.  But we'll need to do 

this ugly other case for people who don't want to work that way. 



Booch:  Would it be fair to say that Linux' architecture is more accidental than intentional? 

Torvalds:  I wouldn't say accidental.  I'm a huge believer in biology and evolution, right.  And I would say 

organic…


 

Booch:  Oh, organic. 

Torvalds:  

…in the sense that the one driving goal has never been this vision.  It has more been,

 okay, 

what do people need and what works, what doesn't work, and being flexible in that way. 



Booch:  So, in the history of from the point zero aught versions to where you are today, can you identify 

major architectural transformations or was it really an organic evolutionary process? 



Torvalds:  Yeah, there hasn't really been any.  I mean, part of that has been that obviously we started 

with a very solid pace.  Unix itself had a few guiding goals like the whole-- everything is a process and 

everything is a stream of bytes.  But at the end of the day when you look at what actually happened over 

the history of Unix, yeah, everything is a process and everything is a stream of bytes except when it isn't.  

So, Unix itself, over time, kind of got more of the dose of reality.  And then Plan 9 tried to re-imagine the 

original beauty of Unix. 



Booch

:  Plan 9, to get this on tape, that was to … tell us the individuals involved on that one?



 

Torvalds:  It's all the Bell Labs people and who's the-- I mean, Ritchie was involved. 

Booch:  Was it Ritchie?  Dennis Ritchie, yeah. 

Torvalds:  But I think Dennis Ritchie was actually more of a manager of the team and-- background> what's he saying?  I met them.  They're incredibly bright people, but I think they were the 

example of people who are a bit too-- they have too much of an agenda, where being clean is very 

important and sometimes more so than be practical.  So, that is one thing I've, I mean, I've tried to be very 

pragmatic in everything, including…

 

Booch:  So, that's more of a guiding principle for you? 



Torvalds:  Yeah.  The whole pragmatism.  And also including when it comes to the whole license thing I 

think you don't have to be so black and white when it comes to licenses.  I used to use this commercial 

source control management program for maintaining the kernel just because it was the best one out 

there.  And it worked wonderfully well for three years until things didn't work anymore. 




Oral History of Linus Torvalds 

 

 



CHM Ref: X4147.2008            © 2008 Computer History Museum                                 Page 35 of 41

 

 



Booch:  Which one was that?  What commercial program? 

Torvalds:  It was a program called BitKeeper. 

Booch:  And now you're moving to Git. 

Torvalds:  And the reason I wrote Git was that there ended up being all these horrible political and 

frightening-- and then license discussions and it was just-- at one point it was like, okay, I'm walking away 

from this.  And quite frankly, everybody in the whole source control management system world is a 

complete moron.  And I can do something better in two weeks and I did.  And three years later somebody 

else is actually maintaining what I did.  But it was one of those things where part of the problem had been 

that I was very flexible.  I didn't think that licensing was something to be religious about.  Let's do the best 

thing we can do.  And I chose a commercial program that was free to be used in the sense that it didn't 

cost anything for open source programming.  But…

 

Booch:  In addition to pragmatic as a guiding principle, it also sounds like from what you said that a drive 

towards simplicity is very important for you as well too. 



Torvalds:  It is, but within reason.  I mean, you can certainly take simplicity as one of those guiding goals 

and just taking it way too far to the point where it's so simple that it's not useful anymore so.  So, the other 

thing I've been good at, because I don't care is the letting-go part that I already kind of alluded to, where 

it's too easy to try to be controlling.  I'm really lazy.  I consider it to be the-- like the primary goal in my life 

is literally to sit on the beach sipping a margarita, going out for a scuba dive.  I mean, that's what I want to 

do.  I'd be bored to death doing that, but it's kind of my mental model of what everybody should strive for.  

And part of that is, hey, if you can actually make things easier for you, go for it.  So, all my workflow has 

been so automated I can merge easily tens of thousands of patches in a day.  And in order to do that I 

need to trust people and I need to be able to find people who are worthy of being trusted.  But…

 

Booch:  In addition to that release process, what's been the testing philosophy for Linux as well, too? 



Torvalds:  It's always been okay.  If it compiles, ship it and let the users-- I mean, I say that.  It's actually 

true and not true at the same time.  Because it's this multiphase thing where we actually have different 

levels of confidence in our trees.  So, individual developers have their own thing that they're working on 

and they should release it openly and talk about it openly and try to get people to use that.  But on the 

other hand, they should not try to push it to me until it has been tested by others.  So, that's kind of like 

the CERUF [ph?] level of testing is even before it comes even close to me, it should get as wide a testing 

as possible.  But then when it comes to me, we have a separate merge window when we say, okay, this 

is when we do merging of new features.  And that's two weeks out of our release window that is two-and-

a-half months.  So, really, just 20 percent of the whole release window is for merging new stuff and 80 

percent is for testing and finding regressions.  And if we find a regression that we can't easily fix, the rule 

is we remove that feature immediately.  

Booch:  Are you driving the release schedule? 



Yüklə 332,77 Kb.

Dostları ilə paylaş:
1   ...   10   11   12   13   14   15   16   17   18




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©genderi.org 2024
rəhbərliyinə müraciət

    Ana səhifə