Aaron J. Seigo: I've never heard people worry about having too much application choice for so little cost before. In fact, I distinctly remember a time when the complaint was exactly the opposite. It amazes me what people will choose to worry about.
A desktop is useless unless it enables you to get your work done, therefore it should be our aim to provide people with as complete a solution set as defined by the general needs of the userbase (as oppose to, say, our personal opinion). Nobody is required to use or even install every available application included with KDE, but unless they are available the environment is that much less attractive and useful to at least some segment of the user base. The proliferation of quality applications that fulfill real world user needs is vital to our success. The importance of this can not be understated.
Outside of the official KDE distribution, competition between different efforts can be a great things. Cooperation can often be even better, of course. But within the base KDE distribution duplication of features is kept to a minimum and generally frowned upon.
You offer the example of KEdit, KWrite and Kate, but all of those apps do something quite different. KEdit simply edits plain text files, nothing more and nothing less. KWrite is a source code editor for programmers while Kate is a light-weight IDE. So why do all three exist? Because there are three different types of users and use cases which are best served by each. This is the difference between user driven design and "developer knows best" design.
Havoc Pennington: I pushed for GNOME to come in small modular tarballs, and generally I like to see independent, healthy communities writing each GNOME app in parallel. GTK+, AbiWord, Gnumeric, etc. all have large communities of developers with release schedules that aren't tied to GNOME.
Originally this made it kind of annoying for users to build GNOME, but we've addressed that via tools such as jhbuild and GARNOME. Plus most people use a distribution version anyway.
My feeling is that if an app has to come with GNOME in order to get it properly integrated with the desktop, we have a model that's not scalable; it will have to bog down at some point as the Linux desktop becomes more successful and there are more and more apps. A scalable model is based on documentation, guidelines, APIs, that anyone can pick up and use without having to release in sync with GNOME proper.
So I like having the GNOME project itself focus on the "desktop and developer platform" release which is just the libraries and the desktop shell, more or less. But we also have the GNOME Office release, and the "fifth toe" add-on apps release, which are on separate release cycles.
Waldo Bastian: Just because KDE releases an application doesn't mean you actually have to install it ;-) Until recently we used to put applications in large modules and those tended to end up in single binary packages. The reason for that was that that is easier to manage from a development point of view, and our users liked the limited number of packages they had to download to get a complete set of applications.
Since last year we have changed that course somewhat, we keep the large modules that we have as much as possible but new applications are now mostly added to "KDE Extra Gear". The extra gear applications are supposed to be released according to their own schedule and packaged as single binary package so that users can choose per application whether to install it or not.
9. Despite the advancements of RPM handling, apt-get from Debian and Gentoo's Portage, users are still not comfortable downloading applications and easily installing them. Either dependancy hell (RPM) when downloading apps from the web, bad interfaces for apt-get (Synaptic is not what I would call "niiice") while Gentoo itself is a nightmare to install for new users, makes the installation of... random Linux applications pretty impossible for new users. With all the advancements recently, this domain is still not as easy as in Windows, OSX or BeOS. Do you think that the DEs themselves should require a special packaging (doesn't have to be a new technology or something different than RPM or apt) that somehow elliminates the current problems and adds visual un-installation, ability to install a package without the need to be the administrator, or automatically categorize the installed application etc? In essence, could the two leading DEs "force" the Linux distros towards a common standard which will be modified in a way that elliminates most of the problems mentioned above?
Aaron J. Seigo: This question is applying old-style thinking to problems in a new space. There is a near zero chance of KDE and GNOME, even together, forcing anything on operating systems integrators if they don't want it. The Linux distributions already modify KDE to their will, sometimes with good results and other times to the detriment of everyone involved.
While this lack of leverage on the part of KDE and GNOME may seem like impotence, it actually is a strength since it allows divergent systems to use the same interface. Thanks to this agnostic principle I can use KDE on any Linux, BSD or UNIX (including MacOS X) I wish.
The real problem is not with KDE, since it is actually the perfect incubator for safe cooperation on the UI level between the OS vendors. And *that* is where the real problem lies. The OS vendors feel it is perfectly allright to modify (or "fork") the desktops to suit their own needs so as to create artificial benefits over their competitors. They should instead realize that KDE represents an opportunity to work together within a larger vendor neutral community to create consistent and more compelling systems at a lower cost to each of them individually. Instead of differentiating each from the other, they should be differentiating together from the real competitors: Microsoft Windows and MacOS X.
This if Free Software 101, and I am completely baffled why the likes of Red Hat, Mandrake and SuSe don't seem to get it. Perhaps because the desktop space is a new-ish phenomenon in the Open Source world, since they deffinitely get it when it comes to server and systems software.
Havoc Pennington: I don't think this is feasible. For one thing, a packaging system is an extremely nontrivial undertaking. For another, there is no way you could move existing distributions off their current systems. Finally, it doesn't make a lot of sense to have two packaging systems at once (the distribution one, and the desktop one).
The road I think we have to take instead, is to add better integration with RPM/dpkg/etc. - possibly extending those to give the UI the information it needs to make things nice.
Another key issue in this area is that we have to make the LSB a reality, so software can be provided in distribution-neutral RPM packages as described in the LSB. Right now, most software comes as source code, or as a tarball with binaries, because that's the only cross-distribution method. And obviously that distribution method is hopeless from a UI standpoint.
Waldo Bastian: KDE limits itself to providing source code and most of our binary packages are provided as courtesy by the major distributions (with Red Hat being a notable exception), as such I don't think we are in any position to set a standard wrt binary packages.