|
competition is good?competition is good?Posted Mar 22, 2007 13:07 UTC (Thu) by hummassa (subscriber, #307)In reply to: competition is good? by dion Parent article: Linux and flash
short answer: YES.
(Log in to post comments)
competition is good? Posted Mar 24, 2007 9:54 UTC (Sat) by dion (subscriber, #2764) [Link] I realize that different people have different needs.
Wrt. Flash implementations there is only one need: To have the best possible implementation.
Wrt. Desktops there are many users with different needs, but that's something that should be handled by adding configuration options, not by creating a separate project for each user.
I may be treading in flamewar territory here, but bear with me for a paragraph or two.
The GNOME project has done more to hurt Free software on the desktop than MS could ever hope for, not because they produce horrendous software, much of it is very nice, in fact, but because all GNOME does is to provide a second modern+bloated desktop to choose from, leading to more confusion for users and less developers on both GNOME and KDE.
Even though the technical reason for starting GNOME is gone (non-Free Qt), there are many people still working on that project for somewhat vague reasons like having a preference for C over C++.
To me that says one thing: Duplicated effort.
There is no danger in having one really good implementation that everybody uses, just look at samba, gcc, Linux and openssl*, those projects and their users do very good without any direct competition.
* Well maybe the openssl mono culture is a bit dangerous, from a security standpoint.
I guess my point is that the danger of lock in and mismanagement isn't that big of a deal with OSS projects, because if a project goes astray you can always fork it and keep going, so keeping the developers and users consolidated around that one project only has benefits for both.
competition is good? Posted Mar 25, 2007 1:09 UTC (Sun) by dlang (subscriber, #313) [Link] you say we should have one desktop with config options for every possible user
but you have honest disagreement between different people about how much configurability there should be (and not just the gnome folks)
haveing underlying mechanisms that can be re-used by different projects to implement the same functionality is good, but if you make absolutly everything configurable you just create the need for multiple configuration mangement tools to implement sane configuration.
as an example X is fully configurable, but X by itself doesn't make a useable desktop, as a result there are a LOT of projects out there to implement the management of windows (not just gnome and kde, but also windowmaker, fvwm, icewindows, etc)
the other thing to remember is that there are a LOT of reasons why someone may not want to work on one project, there can be personal and technical disagreemnts with how something is done. if competition is bad then they have to either work with the existing project, or not work in that space at all. competition is good becouse it allows someone who disagrees to go off elsewhere and implement it their own way.
getting back to the issue at hand (a flash player), while the end goal is the same (the ability to play flash), there is still a lot of room for disagreement on how to get there. Even if both teams decide to use the same language for programming the project (I don't know if these two do or not), there's still a lot of room for disagreemnt on how the code and project should be orginized. even seemingly simple things like what codeing style a project requires could be enough justification for someone to not want to work on it.
Opensource programming isn't a zero-sum game. if someone works on project A it doesn't mean that they would work on project B if A went away (and it also doesn't mean that they would reduce the amount of effort that they choose to put into project C by working on A)
competition is good? Posted Mar 25, 2007 14:27 UTC (Sun) by dion (subscriber, #2764) [Link] I completely get your point that there are good reasons for not wanting to work on a project and of course it's good that people can go off and do their own thing.
I don't buy the argument that gnome is needed because it's better to have less configurability than what KDE offers, if that was a valid reason then gnome would consist of a very limited configuration tool for KDE.
While I think it's good for the individual to be able to choose what project they work on, I still don't think that it's better for users to have several competing implementations of the same solution, unless the point of those different projects is to figure out what the best solution is before EOLing the others.
Your example with the flash players is a good one, clearly it would suck to have to work on a project that has horrendous code, so you might be happier to just work on your own project in stead, but that doesn't mean that you will make progress any faster than the first project or that the resulting product will be any better, it just means that you will be happier.
I think it would have been better if the first project didn't have horrendous code and if you had chosen to work on the first project in stead.
I'm not saying that a hacker should be banned from starting on a competing project, just that it would be better if he chose to help the first one.
competition is good? Posted Mar 29, 2007 18:05 UTC (Thu) by TRauMa (guest, #16483) [Link] You're a fan of intelligent design? Cause that's not how evolution works. You just can't tell which approach to solving a problem is better at any point in time. The first mammals were a failure, yet no one decided to scrap the duplicated effort and just go with the dinosaur design.
And what gives you the idea we should just scrap GNOME? Why not KDE? Because KDE was there first? What kind of reason is that?
competition is good? Posted Mar 30, 2007 8:26 UTC (Fri) by dion (subscriber, #2764) [Link] I take your "intelligent design" suggestion as the strongest possible insult, but we're talking about software development, not a biological process.
Evolution is not a good development method for software, except for some very specialized areas where you can run thousands of generations pr. second.
Sure it's nice to think of the plethora of OSS projects as evolution in action, but behind every single one of those projects is at least one designer,
Natural selection doesn't really work with software either, the only thing an OSS project needs to live is to attract developers, that's why you have ridiculous things like desktop applications written in C that just refuse to go away or evolve into using a higher level language.
To get back to your question; yes, I think that GNOME should have been scrapped around the time when Qt was released under GPL or maybe even before that, even RMS conceded that the QPL was a Free license.
The reason to start GNOME in the first place was that Qt wasn't Free, so once that reason went away so should GNOME.
That being said, GNOME has improved and is a useful desktop now, the only thing lacking is a proper high level language, but I guess the up coming C# rewrite will take care of that.
Once GNOME has been rewritten in C# it will be an ideal desktop for former windows developers to get started on, so there is merit in that approach.
competition is good? Posted Mar 29, 2007 19:24 UTC (Thu) by Duncan (guest, #6647) [Link] > you say we should have one desktop with> config options for every possible user > > but you have honest disagreement between > different people about how much configurability > there should be (and not just the gnome folks)
As a KDE user that appreciates the level of configurability it offers,
Additionally, the point made that FLOSS isn't a zero-sum game definitely
The same of course applies to all the other "wars", vi/emacs, etc.
The first point doesn't so much apply in the flash case, due to the spec
Meanwhile, I have gnash merged here, but haven't found it all that
Duncan
competition is good? Posted Mar 29, 2007 14:29 UTC (Thu) by hummassa (subscriber, #307) [Link] > Wrt. Flash implementations there is only one need: To have the best> possible implementation. The definition of "best" is multiple: 1. the fastest implementation; or 2. the smallest implementation; or 3,4,5. the implementation best-integrated with my KDE/GNOME/XFCE desktop; ... > Wrt. Desktops there are many users with different needs, but that's > something that should be handled by adding configuration options, not by > creating a separate project for each user. Configuration option: do you want all the DE's software to be developed using C++, C, or C#, using GTK, Tk, LessTif, or Qt (so you can extend it with your own knowledge)? I don't think it's possible... > Even though the technical reason for starting GNOME is gone (non-Free > Qt), there are many people still working on that project for somewhat > vague reasons like having a preference for C over C++. Even if I agreed that GNOMErs are evil (and I don't), some people just don't have the ability to program in C++ over C. > There is no danger in having one really good implementation that > everybody uses, just look at samba, gcc, Linux and openssl*, those > projects and their users do very good without any direct competition. Without competition like MS-CIFS, lcc and lots of proprietary compilers, *BSDs, and GNUTLS? > I guess my point is that the danger of lock in and mismanagement isn't > that big of a deal with OSS projects, because if a project goes astray > you can always fork it and keep going, so keeping the developers and > users consolidated around that one project only has benefits for both. That is your error IMHO: if a project goes astray you can always fork it and keep going IFF you have the necessary skills to make it keep going the way it is. Anyway, "keeping developers and users consolidated around one project" is a pipe dream... people disagree all the time, that is why we do have thousands of different legal systems in the world.
competition is good? Posted Mar 30, 2007 10:16 UTC (Fri) by dion (subscriber, #2764) [Link] Best wrt flash should be something like: Correct, fast, integrated in that order.
WRT GNOME choosing C, that is widely regarded as a mistake or at least widely enough that Miguel shares that point of view.
Choosing C over C++ is really not a forgivable offense when talking about desktop applications IMHO.
I guess I should specify what I meant by "direct competition", MS-CIFS doesn't compete directly with SAMBA as it's not Open Source and thus not available to everyone that SAMBA is available to.
The same is true with GCC, lcc is not Free software and doesn't come close to GCCs abilities.
gnutls does seem to try to compete with openssl and there are certain smaller Free ssh implementations (dropbear for one), but they do not have nearly as wide a deployment (I certainly had never heard of gnutls before) so both openssl and openssh can be said to have a monopoly.
The BSD kernels could be seen as competitors to Linux, but again there is no direct competition, as BSD is a whole other OS, when was the last time you swapped out Linux with the BSD kernel on your system?
That being said I don't think forcing anyone to do anything is ever a good idea, so I fully respect peoples rights to choose what projects to work on.
All I'm saying is that the situation is much better when a single good project dominates without any competition than when there are n+1 crappy competing projects.
Having a single good project might not always be possible, but when it is it can be very, very good in deed.
competition is good? Posted Apr 5, 2007 16:48 UTC (Thu) by hazelsct (subscriber, #3659) [Link] Whence the "C is a bad desktop programming language" tirade? Have you learned nothing in the past decade?
GNOME has had five years of API and ABI stability. The C++ language has had about five ABI changes in the same timeframe. So even if we don't count the changes in KDE and Qt libraries, 3rd party software OEMs have had to re-build everything from scratch for each of the numerous KDE/QT interface and C++ ABI combinations shipped with various versions of various distributions, which is an outrageous amount of effort. Or they've shipped everything statically linked, resulting in extreme bloat in both disk space and memory usage. The GTK+/GNOME apps have just worked, and will continue to just work for the foreseeable future.
There you have it. C is superior to C++.
And for the record, read Miguel's rants again: he is not tired of C, but of languages which aren't garbage collected or JIT compiled. Neither C nor C++ has this, so they're both obsolete!
There, now aren't you glad we have desktop competition? :-)
|
Copyright © 2008, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds
Powered by Rackspace Managed Hosting.