News

Linus Torvalds: Open Source Is Also About Spreading, Distributing Vision

0

Swapnil: Linux is a massive project-how do you see the open source development model as a better model than the closed source model to handle such a massive project and how do you see your evolution from a developer to a manager?
Linus: One of the things that makes Linux fairly easy to manage is –in a traditional model where you have a company which has a vision where you want to go, that vision comes from above. You have a manager that actually says ”this is where we are going and we have 4 months to develop it” and that’s the traditional work.

That’s not how Linux works, that’s not how I work. I called myself a manager in the panel but I do very little management. It’s probably more technically accurate to say I am a technical lead person because I don’t do logistics. I don’t support people in that sense like a manager in a traditional company would do. I don’t pay people salaries, I don’t make sure they have a workstation; I don’t do any of that. But I also don’t really have the vision of where we need to go, because there are hundreds of different companies, and individuals that aren’t even companies that all have a vision of where they want to go. What I do as a technical lead ends up being to say “OK that direction may make sense to you, but there is no way we can take it because it makes sense to nobody else.” So one of my jobs is to say “No.”  That’s always been true that I  say “No we are not doing that, we can’t do that. Maybe it is right for you but even if it is right thing for you we can’t merge it because it is the wrong thing for everybody else’.

It’s not that you don’t have a vision. You do have visions. It’s just that the vision is not limited to the top. The vision is we don’t just spread out the coding effort, we spread out and distribute the vision effort too. And I think that is equally important.

So I don’t need to give vision, instead I need to do integration and make some choices. Sometimes I give direction. Instead of saying ‘no’ I say ‘I see what you are going for but I can’t take it in that form because it would break everybody else’. Then I say ‘you may be able to solve your problem by doing this way instead,  then it will work well for everybody else’.  So that’s really my job. I think it’s much easier in an open source environment.

It’s not that you don’t have a vision. You do have visions. It’s just that the vision is not limited to the top. The vision is we don’t just spread out the coding effort, we spread out and distribute the vision effort too. And I think that is equally important.

It is one of the reasons why, I think, Linux is actually fairly balanced as a project. While we can support anything from cellphones to supercomputers, which nobody else does– literally. Windows supports cellphones and supercomputers but they don’t do it with the same source base. Apple has iOS for cell phones and their OS X doesn’t even scale to supercomputers — it scales to a very narrow band. Linux scales across the whole band. Part of the reason is exactly that we, instead of having this vision going in one direction, we have tons of different directions and we try to integrate them all. The end result is a balanced project that works very well in different areas. And I think it works very well. It’s all because it’s open source. You couldn’t do this within a company. If you had a company that spends all its effort bickering about all its 10 different groups saying ‘no, I want to go there; no, I want to go there’, that company would not work. But in open source it works.