Originally Posted by Jimi
There is plenty of development that takes place outside of the kernel--many people claim that the kernel itself is already bloated. Things don't have to be unified; in fact, forking is what makes projects advance when they start to slow down. Look at Libreoffice/OpenOffice, MPlayer/MPlayer2, etc...
For me, urxvt is my preference for terminal emulator. Vim for text editing. Those other projects? They aren't the solution for me, but they may be for somebody else. Somebody who's only ever used notepad doesn't want to use a text editor with the capabilities of vim.
Different developers have different philosophies for the applications. The reason why there's so many *xvt terminal emulators clearly isn't the lack of code being contributed. They clearly don't want the features added to their codebase. But the beauty of open source is that if you wanted to take all of those features and combine them into one application, you could. So, if you want a super *xvt, go start the project.
The one thing I have to agree with you on is that wish ALSA would get a better mixer implementation than dmix. I wish the pulseaudio devs had just done that instead of trying to create something independent.
I understand the different philosophies but I believe some of it has been taken too far. The xvt is a good example, one of the forks has composition and that's it. Like the amount of code they used to create the composite ability is way under what I would ever consider bulk. There is another that I think just adds tabs? Merge the two?
That is the other beauty of Linux, to customize it. They could have compile switches and use flags that could turn a feature on or off. Let the end user decide, it makes things simple. I don't see why you have two forks that just add one feature, to me that is pointless.
It's that kind of stuff, they take the philosophy too hard core. it is one of the downfalls of Linux, plain and simple. What really (IMO) creates a distro is the patches that are applied and the software that is bundled with it. Since you can make any distro use any Linux software, the only thing that really defines it is the software that comes bundled and the minor tweaks they do do the base code of that software. I just think that if we set some things as more of a standard it would not only make it easier for the end user but also for the people who manage distros.
 The package manager also defines a distro, but that mainly defines the base layout that the distro is to follow. Since a lot of them share that layout (the most popular is rpm/deb) then really that is a universal layout that doesn't quite define it. It defines it but only plays a small part in that definition.Edited by mushroomboy - 6/27/11 at 4:43pm