Here are the points in the order they were presented in Bruce Peren's reply to the KDE in User Linux proposal, along with my thoughts on them.
It's All Emotional
Bruce first tries to explain it away by saying, "it's simply unbearable for their personal GUI not to be the one chosen for our project", after making references to emotional investments. He's right in that people do care for and about that which they create. He's wrong in that the "emotional investment" is why many of us had issues with the choice to ban KDE/Qt from his project.
The real reasons are that Bruce's declaration ignores market realities. User Linux will be a less useful operating system and is already less applicable to many of the people who wished to be involved in and support it. It will also lead to the reinvention of the wheel and wasted resources. Instead of using the best applications available, Bruce has doomed User Linux to mediocrity and spending vast amounts of effort on creating things that already exist.
Bruce's declaration will not stop others from supporting KDE as he noted. Ditto for MySQL. Bruce has guaranteed that there will be unneccesary variation and forking within the User Linux base if and when it materializes. So much for a uniform platform.
Finally, it also showed the rule-by-fiat nature of Bruce's project. I don't know about you, but I don't trust my time and energy to one man's decision making process when it fails to draw upon the experiences and knowledge of those around him.
It Doesn't Affect Users
Bruce argues that users don't care what toolkit the programs they use are written in.He tried to pass it off as a developer issue that won't really affect anyone. Well, he's right in that users don't care what toolkits are used, but that is only true if things work. When a user tries to use an application and can't because her OS doesn't support that toolkit, she doesn't care why that toolkit isn't there, she only cares that it's rendered her system unable to run that program.
By not supporting KDE, User Linux will not be able to offer access to the thousands of KDE applications available. The same is true for MySQL. Explain that to your users.
Bruce actually got it completely backwards: toolkits don't matter to users, they just want everything to work. So it's up to the developers to normalize them as much as possible. This is a reality that the KDE proposal recognized and addressed with possible solutions.
It's an Economic Issue Part 1: Support
Bruce then tries to pass it off as an economic imperitive: if there's both KDE and GNOME then companies that wish to support User Linux may not be able to afford to. But this makes absolutely no sense.
User Linux will span a huge array of capabilities: from LDAP to web serving to databse servers to email services to groupware to desktops to web browsers to... If one expects a single company to service that whole array of items, that company either has to be very large or it has to subcontract work. If the company is very large, then the difference between supporting GNOME with KDE apps (or vice versa) and supporting only GNOME is inconsequential when compared to the costs of supporting LDAP and PostgreSQL and Mozilla.
Since Bruce envisions "a network of competing for-profit service providers" I can only assume that he isn't envisioning a small number of large shops that can do everything under the sun, but a large number of smaller shops that can work together. In this case, having a shop that provides KDE support which can be easily subcontracted to is the obvious answer, just as the GNOME shop that needs LDAP expertise will likely hire out for that expertise.
It's an Economic Issue Part 2: Royalties
Bruce then goes on to claim that it's an issue with royalties. Since Qt is dual licensed, you have to pay to write closed source applications. But this is not a royalty, it's a per developer license. Look up the definition of royalty in the dictionary and you'll see what I mean. Even after having this drawn to his attention, Bruce continues to use the word royalty because it aligns better with his desired message, because if it were a royalty then it would be a lot more expensive than it is.
But let's assume for the moment that a royalty and a developer license is the same, even though it isn't. Is the cost of the Qt developer license the mitigating factor in choosing to develop with Qt or with a free-as-in-beer toolkit? Looking at the dozens and dozens of commercially available applications written using Qt, it appears the answer is no.
Beyond the concern for the initial price of a tool, there's the question of the flexibility, quality and support of the product. Qt is hands-down a better toolkit that comes with much better tools for the developer than any other GPL'd toolkit out there, while rivaling the closed source toolkits (and surpassing most of those, too). Because of this for most development shops choosing Qt for their for-profit development is actually an economic win: what they save in time and make up for in a better product outstrips the license costs. There's also the issue that encouraging Free Software to be written by offering an incentive to do so (it's even cheaper) is a good thing.
But all of this really misses an even bigger point: if Gtk+ is available and the developer doesn't want to pay for a license then use Gtk+. Nobody is saying not to include Gtk+ or other free toolkits such as wxWindows; in fact, the KDE proposal paper specifically takes this reality into consideration and addresses issues of interoperability and ease of access.
Bruce is also ignoring the fact that many other parts of User Linux that people may wish to build upong will be GPL'd, including the kernel and OpenOffce.org.
Enterprises Want Closed Source Software
Bruce states that large companies want and need a large array of closed source software, and so therefore to make this body of software a toolkit must be made available for which it is zero cost to develop for. While the first part of that concept is probably accurate, the resulting conclusion is a farce.
If Bruce decides not to support Qt, then he's ensuring that all the closed source software that currently exists and is yet to be written on Qt/KDE will not be available to these enterprise customers! Bruce is trying to say that by giving choice, we must remove choice. Doubleplusgood, that!
I also find it curious that he states that we "need" to create a large pool of closed source software for enterprises. What are we doing writing all this Free Software then? Wasting our time? He says eventually we'll get to writing Free Software, but for now we'll need to write closed source software until we can "move up the application stack". This is completely at odds with his original white paper in which he stated that the goal was to leverage cost sharing to create "a fully supported and certified GNU/Linux system, without a per-seat fee, that meets the specific needs of their industry". Closed source software is not "cost sharing": it usually ends up getting licensed per-seat or per-site or not shared between companies at all. It honestly sounds to me like someone has a proprietary software play replete with vendor lock-in in mind. I'm sure that all those enterprise customers would rather pay licensing fees to Bruce for closed software rather sponser the development of this Free Software OS, even though the latter was the original idea as per Bruce's original white paper!
But this is all details when one asks the obvious question: does a free-as-in-beer toolkit actually create more closed source applications? If today's market is any indicator, the answer is no. Unless, of course, nobody is using Microsoft's development tools on Windows, which happen to cost money.
"I'm Brave and They Hate Me. Honor and Pity Me."
In a final stroke of spinmanship, Bruce counters with an emotional play. He says he did what he had to, and that it was the brave thing to do. It's also brave to step off a tall building with nothing to save you from the fall. Stupid, but brave; or desperate. One or the other.
Bruce also makes mention of taking an emotional beating himself. Thankfully we don't have to worry about it because Bruce is strong and has had a decade of practice dealing with it. Unfortunately, some of the comments on the mailing list were not very friendly. It would be great if everyone was always calm all the time. But that doesn't happen. It doesn't excuse it, but it does recognize reality. I've never once heard Linus complain about it, and he gets subjected to a lot more of it than Bruce could ever hope to. But I suppose when you are replying to a well thought out proposal, you may as well go for the emotional battery defense while you're scraping the barrel clean, right?
It's more than a little annoying to be dismissed because someone's feelings were hurt, or because the person feels they are brave enough to ignore you.
Bruce also reminds us that he's not a Qt-ogre because he's recommended Qt to others and is publishing a book through his book series title on Qt development. That's nice. Irrelevant to the discussion and decisions at hand, but nice.
All summed up, Bruce talked a lot about emotional responses in his article, but I don't think he was making observations. The discussions were, by-and-large, civil and factual. Several times people stated that they weren't speaking from an emotional place. It seems that Bruce was projecting quite a bit while writing his response.
Business As Usual
Bruce finishes by saying, essentially, that it's now business as usual in User Linux land: GNOME is the decision, end of story. Work will continue, best of luck to everyone else. Buh-bye. At least we know where Bruce stands, that's something he's very good at and something that I personally appreciate. There's very little beating around the bush with him.
It's a little sad that all the points above, and many more, were raised in fine detail with Bruce on the User Linux mailing list. None of it phased Bruce and so he regurgitated all of
his misleading arguments in his response piece without actually addressing the KDE proposal itself at all!
Oh well... =) Here's looking forward to business as usual... which for me, at least, means a KDE desktop.
Enterprises do not care about licenses
Enterprises which want to develop closed source software do not care about license fees for development toolkits. QT licensing at least will get fed into further qt development. Currently UserLinux is pure vapour ware, Ubuntu is somehow what Perens thought of.
A Linux for Users without KDE? This is crap. Take your best horse.
And: GTK software runs fine under KDE.
Enterprises which want to dev
Enterprises which want to develop closed source software do not care about license fees for development toolkits. QT licensing at least will get fed into further qt development
You're confusing the miniscule desktop penetration of linux right now and the picture in the future.
Put it this way. If glibc had the same licensing scheme as what QT does now, then an alternative would have to be rewritten with a more liberal license. You have to look long-term.
One of the reasons that Novell, RedHat, Sun, and Ubuntu (which you are correct in pointing out is what UserLinux wants to be), is because of the license issue.
my experiences are very different than Bruce's
I enjoyed reading (and agree with) Aaron's rebuttle.
To add my 2c:
My experience has been that, in the corporate world (at least the world i live in), KDE is considered the 'first choice' in terms of switching from M$ or closed-source UN*X based desktops to an OpenSource/Linux/UN*X desktop. I was told that by at least two very senior level corporate IT managers, at two different Big American Corporation(s). Both of them quoted the same main reason: KDE's very intuitive and easy to use UI. For coporate IT, this means: easy to train users and move away from M$. UN*X users were not even taken into account, they are all expected to already "know" KDE
. To these managers, KDE means $$$$$$$ savings on training and support, which is what they care about most. Both of them were also aware of the Qt licensing terms, and none of them considered it a hindrance. Interestingly enough, these two Big American Corporations are in competition with each other, and the probability of them working together or making decisions in tandem is 0.
I am aware that 2 managers at 2 corporations is not necessarily a relevant statistical sample. However, if history is any indication, corporate IT tends to "do what the competition does", for fear of not being left behind.
Interestingly enough, none of these managers ever mentioned any interest in closed-source software. They all have gazillions of closed-source UN*X desktops running right now. It's a support and cost of ownership nightmare. They are considering migrating _because_ it's open source.
--Stefan
Since Bruce changed his "response"...
...for historic reasons here a link to a copy of his original "response" at newsforge (thanks to Marcin for making me aware of it):
http://www.newsforge.com/software/03/12/16/0029234.shtml
Othere interesting thoughts
I always expect good stuff from Aaron and I've openly stated my opinion of Bruce's so called response several times. I ran sloccount on Quanta and found that it would have cost $3.5M to develop with 17 developers. No matter how you slice it toolkit licensing would have been less than 1% and and you'd have to sell tens if not hundreds of thousands of copies to make a profit. That's why you don't see many shrink wrap apps on Linux and why it's so hard for companies. It's why you see crummy software that you know they cut corners on to get it out the door. In fact the number one thing that determines whether you have a chance of making a profit is your tools and you don't play games with them. If Bruce were any farther off base he'd be on another planet! I think he's just pals with M&N and wants to kiss up. He's making a mess. The absolute cheapest way to develop software is GPL and I think companies like Red Hat have proven you can make a business out of it... but I guess that hasn't registered yet with Bruce.
Anyway, Aaron brought up the point of Bruce's rule-by-fiat nature. That really struck a chord in me. What about that? I came into the Quanta project almost by accident. When my former partners left it was my baby and I was left to do whatever I wanted. The first thing I did was get away from the cheesy HTML 3.2 hardwired approach and work on making it a more serious application. At least that's what I did in my head. After a year and a half back in development we only now finally have a new Quick start dialog to replace the terrible one we had. What did I really do? I found Andras.
Andras had a lot more skill and experience with C++ than I did and I set out to build a relationship with him. It was important that we first trusted each other and respected each other. It was important that we had common goals and ideals and were in it for the long run. Then I sponsored him. I was paying him to develop, so I could tell him to do whatever I wanted. Right? Wrong! Because we have trust and I respect him I began involving him in all the decisions. Because of this relationship I enjoy his validation and support in what we do and if he doesn't like it you can figure chances are excellent we go his way. I have to have a good reason to overrule him.
I run a project that I could say is "my" project and yet I seek to get as many people involved in the decisions and contributions. I see myself as really guiding the direction of the project, helping others to focus on and define their tasks and maintaining the core principles and cohesive consistency of the project. I do other things, but largely this is leadership for me. It involves bringing out the best in others. Also the fundamental rule of leadership is to find people who know more than you about things. In this I have people inputting their expertise in various areas and we have a team.
The one thing I never lose sight of is that there are perhaps a million or more users out there depending on me to make good decisions. If I make bad ones I'll get emails about it. I have to insure I make good decisions about more things than I possibly can, so I surround myself with people who can make decisions and together we discuss and seek consensus. When someone knows they are right and feels strongly they get to explain why they feel that way. I need a really good reason to shoot them down.
Bruce's rule-by-fiat approach for such a large project is absurd, disrespectful and untennable. No one person can be intelligent enough to do a good job with it, but in Bruce's case he is acting like it's not really an open project but a closed one with volunteers... or like he doesn't care about the problems of the user because he's doing it his way and not making money... or something. All I know is that aside from insulting my intelligence with his "response" I've realized that he has a very bad leadership style for this high a profile project. At least if one is going to lead that way they ought to be able to make decisions. All I can say is, here is Yet Another Distro and before it starts it's already got serious problems.
Along with being a developer I'm also a business owner. One of my first rules is as soon as someone starts talking out of both sides of their mouth I look for someone else to do business with. That's just intelligent business because trust is important. It's not about which desktop Bruce wants. Who cares? By dumping the applications of either, let alone the superior, toolkit he proves serving the user/customer is secondary to his religious affiliation. Now it's not "User Linux" it's "Perens' Linux". Even the name is misleading.
Beer
My impression is that a requirement of UserLinux is to allow applications/solutions for commercial use to be developed for "free as in beer" as well as "free as in speech" with the default/base installation. I personally think this is a reasonable goal. I would expect many companies and developers will ignore UserLinux because of the consequent choice of applications/toolkits/frameworks which are currently not "de facto standard", "best of breed", etc, just as many companies and developers have ignored platforms other than Windows/MSVC++/VB/Flash/IE/....
Larry
reasonable
yes, it is reasonable to offer ways to develop proprietary solutions for $0 cost. or at least, it's unreasonable to try and prevent that. however, that isn't what's happening.
what is happening is Bruce is removing the option to use tools simply because they don't have such a "free beer" option. nobody is saying "don't allow free-beer proprietary development"; what is being suggested is offering a choice of tools. of course, while Java, Gtk+, GNOME, XUL and wxWindows will all be available in User Linux (negating the multiple APIs are bad argument), Qt won't be incldued simply because of it being Free as in Freedom but not free as in beer. this is so astoundingly wrong-headed and dense, it's amazing. either Bruce is confused or he thinks everyone else is stupid.
this also isn't about "including everything possible"; Motif, Fox, etc haven't been seriously suggested. it's about being reasonable and recognizing market realities. that was, after all, what User Linux was _supposed_ to be about.
thankfully people are doing just that, if on a different mailing list (kde-debian@kde.org)
argh.
It annoys me that you along with Bruce haven't even considered our proposal which deals with this point specifically. Please see:
strategy.html#gtk
New(?) angle
I just finished reading Bruce's article on newsforge and I think I have a new angle to look at the decision regarding the GUI.
One (the only?) reason for GNOME/GTK is that it is perceived as cheaper.
(Lets forget about things like developer productivity and assume it is)
As I understand it, UserLinux is a base where independend service providers create and deliver solutions to service customers.
If you look at this relation more closely you will see that Qt/KDE would have been a bad joice for the provider side.
For example, assume customer A wants something to restrict desktop functionality. He asks provider X to deliver a solution for this.
With GTK/GNOME, provider X can tell customer A that it is not available in UserLinux base but that he can purchase such a solution for a small fee of 10000 Euro.
Would UserLinux have Qt/KDE, solution provider X could not make such a nice deal, because any other provider Z could offer it cheaper as KDE makes any costly development unecessary.
Conclusion, the decision to not include Qt/KDE is better for providers because it leaves them chances to create expensive "extensions" that would have been gratis otherwise.
It is less favorable for customers, because they need to pay extra for things they could have got gratis.
But who cares for customers anyways! (as we now can see, certainly not the UserLinux managment)
heh (take 2)
That's quite an interesting angle and not one that had occurred to me. Unfortunately, you'll have a tough time trying to get a straight response out of Bruce.