KBuild Issues on the LKML
Mark Bainter writes "If you haven't checked out kbuild lately, you should. The new build system Keith Owens has put so much time into has a long
list of benefits, including much shorter build and rebuild times, and greater accuracy.
It appears his system is well liked by most,
kernel developers (though not all).
So the question is, why won't Linus merge it? Keith has been announcing for some time that it is ready to merge, and has worked very hard on trying to keep everything up to date as the development kernel continues to change, yet his requests to merge seem to be largely ignored.
Linus did weigh in on the topic, but his views don't seem to resonate very far on the list, and seem rather arbitrary to me. Keith doesn't seem to be all that fond of Linus' thoughts on the matter either, and has called for an email campaign to get Linus to merge it in all at once.
Perhaps instead of everyone on /. emailing their (partially informed) opinion to Linus, an open discussion amoung Linux users/developers who might not normally participate on the kernel list would lend some weight one way or another."
I've been following the sociology of Linux to some degree.
Linus Torvalds is a brilliant human being, but he doesn't know everything, and no one does. Everyone seems happy with his technical knowledge. However, he doesn't seem as capable of thinking creatively about the sociological issues, such as "How do we make the next transition." It seems to me that there is some need for organization or re-organization of the Linux effort. But what should that be?
Linux is a world-wide phenomenon. It is one of the most beautiful things happening in the world today, in my opinion. Arguably, governments should use open source, free software, because proprietary software hides some government activities from citizens, or puts an understanding of government operations beyond citizen's financial reach. Possibly Linux will become the backbone that runs all the world's governments.
It is reasonable to suppose that Linux has grown to the point where there is a need for additional infrastructure to take some load off Linus' huge, but not infinite, mental capacity? If so, how do we think about that? Who will think about that? Who will finish the thinking, rather than just provide disconnected ideas?
Linux is not about money, but maybe there are times when money would help. Is it possible that a management fund would be useful? If so, I would be proud to donate $100, or more.
Are there efforts that are not suitable for volunteers? Is it possible that a few employees, under the direction of Linus, could help accomplish clerical tasks?
I'm not qualified to know the answer, but maybe I am qualified to play a miniscule role in asking some initial questions.
More troublesome, though, Linus has been a "benevolent dicatator" so far. What happens when he makes too many "bad" decisions? First he refused to use SCM software, then he decided to use Bitkeeper. He held off on accepting the kernel latency patch, then added it. Now he won't add a popular configuration tool.
Linus may be a nice enough guy, and (unlike some other FREE software figures) he's quite modest about his work, but he can't please everybody.
Do you even lift?
These aren't the 'roids you're looking for.
What is the reason that Linus does not want to make the change? Probably the fundamental reason is that he is trying not to over-commit his brainpower.
Linus has already agreed to the change in principle. The logic for the change is unassailable. This is not a technical problem.
It seems to be a social problem. Consider this: To do the job right, there must be a flag day. But flag days require a huge peak of mental effort from Linus. He knows, from past experience, that they are painful and disruptive of his inner balance. So, he is trying to maintain balance. Only this. Who is the villain here? No one, absolutely no one.
If this theory is correct, putting social pressure on Linus may get him to agree. However, pressure may increase the overall stress in his life. Every project needs a coordinator who can think calmly and thoroughly. Increasing the stress takes him in the opposite direction. So, the end result would be that Linux as a whole would suffer.
Usually social problems require social solutions. A solution would be to find a method of organization that removes some of the demand for Linus to think.
If someone works at 80% of his thinking capacity, he or she can accept a temporary peak effort. But at 98% of capacity an increase in demand can be health threatening, even if a change would make things easier later.
We all know that Linus has been doing all of his adult life. He hasn't had the enormous amount of time it takes to explore his inner reality. On some level he experiences extra demands on his brainpower as overload; he is just not an expert at communicating that; instead he gives technical reasons. He seems not be an expert in thinking about the solutions for overload. He seems not to be an expert in organization.
The solution is not to go to Linus with demands. Demands increase the need for him to think. Instead, go to him with solutions. Go to him not with solutions that are good for Linux, but solutions that are good for Linus. Linus is already overloaded; you cannot expect him to find those solutions himself.
There are larger efforts than Linux, for example, a large corporation like IBM or a national government. How do they cope with the huge amount of mental effort necessary? Through greater organization. If someone else besides Linus can finish the thinking about this, it is possible that the solution can be adopted.
Linus has been an excellent leader in a world that often suffers from lack of good leadership. How can things be arranged so that Linux has the benefit of his ability, but the work does not overload him? That's the tough question that will require considerable thinking. If the thinking is not done, the answers are very unlikely to be found.
My earlier post began about where this one ends: How do we think about the next step? (#3656926).
Another thought. You have come to Slashdot, which is known for its excellent technical discussions (and for its comments by people who only want to trash discussions). This may not be the best forum to discuss a social problem.