Advertisement

Release for Linux, or why I don't like GPL zealots

Started by January 04, 2005 10:20 PM
225 comments, last by Yann L 19 years, 6 months ago
Quote: Original post by Anonymous Poster
So what happened to the project?

GTK 2.6 is being annoying. Damn, this thing is bugged. Many of their new funtionality seems to be quickly hacked together, just to get the release out, without any real testing. And it's a lot slower than 2.4. We had to rewrite at least 3 entire widgets, because the built-in ones were unusable. I was actually thinking of switching to Qt, if it wasn't for the license. And I'm still unable to find a good HTML widget that is not GPL'ed.

This kind of thing is exactly what keeps commercial developers away from the desktop Linux market: they have to write everything themselves, if they don't agree with the GPL or LGPL. At least the basic windowing system (Gnome/GTK+ in this case) should allow closed source usage, otherwise you can just forget about the desktop market altogether. I mean, imagine Microsoft would make you pay for a product using the Win32 API !

bani: you don't have to give me a comercial presentation about why I should use Linux. I already use it, our company uses it, our servers use it, many of our corporate customers use it. The problem is the desktop market. Linux is a very good OS, ready to fly off, yet it is chained to a wall preventing it from really taking off - and this chain is the GPL. The GPL is something fine, as long as your OS is a small community project, only known by insiders, see elitist attitude. This is not the case anymore. Linux has grown up, it has finally made the step into the real world. Unfortunately, the real world has no place for something like the GPL, so the license needs to adjust. Linux should open the choice, and make both open and closed source viable options. In the corporate world, this is actively happening right now, pushed for example by Novell and IBM. On the desktop market, these "zealots" (that might be a minority, yet a strong one) try to hold on to ideas that are obsolete and will harm the success of Linux more than anything else.

Open Source is a great idea, and I firmly believe that it will be the future of software development, once the loosely coupled teams are replaced by good organizational structures. Unfortunately, the GPL doesn't fit into this future.

The MIT style license is perfect, but some people might fear the possibility of corporate abuse. This is understandable. The LGPL is not bad from the basic idea, but it's often technically hard to create a conformant application technically (see static vs. dynamic linking, etc). And it is still too close to the GPL in many points. I think a new license, that will protect both open source and closed source, both freedom of development and corporate interests, is in order. And quickly, because the window of opportunity for an OS such as Linux to jump into the market isn't infinitely large.

Quote:
lot of people would probably feel the effort better spent on improving existing IDEs rather than starting a new one from scratch.

I don't agree with the concepts of existing Linux IDEs, period.

Quote:
also, what about if i want to use your IDE on eg sparc or powerpc?

What if I want to use 3D Studio Max on Solaris ? It's not going to happen. Three words: Target market analysis.

Quote:
aside from maybe Cg compiler support, i can't really see anything you listed as being something you can't already get in anjuta/kdevelop. and the screenshot you gave looks like it's missing a lot of functionality one can already get in the other IDEs.

You do realize, that this project is just a week old, do you ? I'm sure KDevelop and Anjuta were both developed in a week... Good joke.

Quote:
people use opensource applications because it fills a need and does it adequately, and commercial products while maybe "better" are not better enough to justify the often enormous price tags.

Closed source projects != non-free commercial projects.
Quote: Original post by Yann L
I mean, imagine Microsoft would make you pay for a product using the Win32 API !


whats interesting is that microsoft's eula forbids the obverse, which is using visual c to develop anything gpl.

Quote: You do realize, that this project is just a week old, do you ? I'm sure KDevelop and Anjuta were both developed in a week... Good joke.


kinda moot point, because you've already stated:

Quote: We have a very well defined feature list, and we aren't implementing anything beyond those features. We're trying to bring the IDE to it's final state within a couple of months. After that, it's fixing bugs only.


a pity, if it were opensource then end users could contribute features. feature locking your ide isnt likely to help it become more popular.

moving to the topic of organization, i've also worked on many large corporate projects (10+ million lines of code) with rigidly defined organizational structures. i can understand why some would cling to such structures as it give a sort of comforting 'security blanket' feel for development (a false sense imo), however it does almost nothing for code quality. code quality is largely defined by the skill of the individual programmers involved.

what rigidly defined organizational structures usually do is give management an easy way to quickly assign blame (justified or not) and convenient ways to evade actually addressing the issues that do come up.

the only real way to avoid crappy code is with careful code review by peers. and from experience being involved with widely geographically distributed coding teams, there's little difference between that and your typical GPL project -- code submitted via version control gets reviewed as a matter of course.

to say that the actual code of commercial products is better than opensource is bogus -- how can you actually know that for a fact without actually seeing the source code? all you know is how the product looks and operates on the surface to the end user. underneath it may be the most horrible mess ever. and having worked on a lot of commercial proprietary code, i would have to say it often is really bad, because no end users will be looking at it. so it can be as grotty and nasty as you want, as long as it functions.

eg internet explorer or microsoft office might be very pretty on the surface, but i would wager a lot that the source code behind it is a really evil mess. your only accountability is how the product looks on the surface, there is far less accountability to how it looks underneath -- after all, no end users are going to be touching the code anyway.

if you commit ugly code to an opensource project, there's always some pedant who is going to rework it to be clean :)

i do agree on one point though, and that is that the 'default' ui library needs a clean license to allow closed source development. that already exists (sorta) if you count xlib though i wouldnt expect anyone to actually write any applications in it. :)

the fear of corporate abuse is largely what drives support for these licenses though. the whole GNU project was started because of the incredible corporate abuse at the time (and it hasnt gotten any better since). if corporations weren't so abusive, there wouldn't be such strong support for these licenses. if corporations stop being abusive (hah, not likely) then the support for extreme licenses like GPL would largely dry up.

end users keep getting burned horribly by corporations, so its hardly suprising they turn to these licenses as protection from them.

there isnt anything in the license preventing one from making a closed source app with GTK though is there? from what I can tell, dynamically linking is ok.
[=^_^=]http://bani.anime.net/etpro/ - ETPro websitehttp://bani.anime.net/banimod/forums/ - ETPro discussion forums
Advertisement
Quote: Original post by bani
Quote: You do realize, that this project is just a week old, do you ? I'm sure KDevelop and Anjuta were both developed in a week... Good joke.


kinda moot point, because you've already stated:

Quote: We have a very well defined feature list, and we aren't implementing anything beyond those features. We're trying to bring the IDE to it's final state within a couple of months. After that, it's fixing bugs only.


There's a big difference between a design on paper and an actually working product. The design is done, yet the code is just a week old. Do you really expect to have the full functionality available after a few days of coding ? This is a spare time hobby project, not something I outsourced to India with a 150 men development team...

Quote: Original post by bani
a pity, if it were opensource then end users could contribute features. feature locking your ide isnt likely to help it become more popular.

Feature locking is the only possibility to avoid code bloat, evil feature creep and allow for a realiable and rock solid product. It is one of the most important parts of commercial software design (although unfortunately often neglected due to unreasonable and ever changing requirements of the customers). Keep the next features for version 2, instead having a new release every two days.

Quote: Original post by bani
to say that the actual code of commercial products is better than opensource is bogus -- how can you actually know that for a fact without actually seeing the source code? all you know is how the product looks and operates on the surface to the end user. underneath it may be the most horrible mess ever. and having worked on a lot of commercial proprietary code, i would have to say it often is really bad, because no end users will be looking at it. so it can be as grotty and nasty as you want, as long as it functions.

So ? The code quality is none of the customers business, unless he actually buys the source. As long as the product works as intended, and satisfies the customers requirements, the underlying code is largely irrelevant to him. Yes, MS Word is pretty on the surface. Yes, it's code is probably ugly. Do I care ? No, I don't give a shit. MS Word does what it is supposed to do for me, as a customer, I couldn't care less for the code. In fact, I personally use Open Office rather than MS Word. The source is available. Did I ever even took a look at it ? No, I simply use the product. More and more people, myself included, use Firefox. How many of them ever took a look, or even downloaded the source ? Infinitesimal.

Quote: Original post by bani
end users keep getting burned horribly by corporations, so its hardly suprising they turn to these licenses as protection from them.

The funny thing is, that the GPL can be seen as an abuse as well, a limitation of a developers personal freedom. And people can try to hold as tight to such licenses as they want, if they want Linux to become a success on the desktop market, the GPL has to go. That's a fact, there is no way around it. It's either a mass market desktop Linux without the GPL, or no desktop Linux at all.

Quote:
there isnt anything in the license preventing one from making a closed source app with GTK though is there? from what I can tell, dynamically linking is ok.

GTK is LGPL, so yeah, dynamic linking is OK. Yet, if I fix a bug in some of their horribly broken widgets, I am not allowed to statically link them into my application, because it is a derived work. I have to rewrite them totally from scratch, or supply the source of that fixed widget with my product.

This is one aspect that needs to be fixed in the LGPL. Also, the exact definition of "derived work" needs to be clarified.
Quote: Original post by Yann L
Quote: Original post by bani
a pity, if it were opensource then end users could contribute features. feature locking your ide isnt likely to help it become more popular.

Feature locking is the only possibility to avoid code bloat, evil feature creep and allow for a realiable and rock solid product. It is one of the most important parts of commercial software design (although unfortunately often neglected due to unreasonable and ever changing requirements of the customers). Keep the next features for version 2, instead having a new release every two days.


ok, so your ide is going to be a commercial product then?

if you arent going to address the requirements of users in this forum, then i don't expect its going to be widely used -- open source or closed source. what's the target audience of your IDE? yourselves, or the forum?

you also seem to be of the opinion that you're the only one in the world who is able to write good code, or manage a software project well. if you want to talk elitism, well there it is :-)

you also seem to have a rather adversarial view of customers. they are your customer! if you feel their requirements are 'unreasonable' you're either not charging them enough (eg you're of the opinion the customer is cheating you), or you're not communicating with them. the customer is paying you to deliver. if you can't, that's your failing -- not theirs.

if the only way you are able to deliver 'rock solid' product to customers is to feature lock, maybe your processes need rethinking. other companies are able to deliver 'rock solid' product without such limitations on development. just because it's the only process that works for you, doesnt mean all companies have to be restricted to it.

Quote:
Quote: Original post by bani
to say that the actual code of commercial products is better than opensource is bogus -- how can you actually know that for a fact without actually seeing the source code? all you know is how the product looks and operates on the surface to the end user. underneath it may be the most horrible mess ever. and having worked on a lot of commercial proprietary code, i would have to say it often is really bad, because no end users will be looking at it. so it can be as grotty and nasty as you want, as long as it functions.

So ? The code quality is none of the customers business, unless he actually buys the source. As long as the product works as intended, and satisfies the customers requirements, the underlying code is largely irrelevant to him. Yes, MS Word is pretty on the surface. Yes, it's code is probably ugly. Do I care ? No, I don't give a shit. MS Word does what it is supposed to do for me, as a customer, I couldn't care less for the code. In fact, I personally use Open Office rather than MS Word. The source is available. Did I ever even took a look at it ? No, I simply use the product. More and more people, myself included, use Firefox. How many of them ever took a look, or even downloaded the source ? Infinitesimal.


ok, so you're saying that this argument against opensource code (opensource code quality vs closed source code quality) is completely irrelevant? you've just shot down some of the pro-closed-source-posts in this thread, thanks for the help :-)

Quote:
Quote: Original post by bani
end users keep getting burned horribly by corporations, so its hardly suprising they turn to these licenses as protection from them.

The funny thing is, that the GPL can be seen as an abuse as well, a limitation of a developers personal freedom. And people can try to hold as tight to such licenses as they want, if they want Linux to become a success on the desktop market, the GPL has to go. That's a fact, there is no way around it. It's either a mass market desktop Linux without the GPL, or no desktop Linux at all.


i don't see how the GPL can be seen as abuse -- nobody's forcing you to use GPL stuff, there are LGPL and other licenced stuff available. all GPL says is, if you take this code, give something back. that's abuse?

linux will never be used by anyone
linux will never crack the server market
linux will never be taken seriously by corporations
linux will never have any commercial applications
linux will never have a usable desktop

sound familiar? :-)

But I fail to see how GPL would kill linux desktop -- GTK is LGPL after all. kde also seems to be doing quite well, despite the quirky qt license.

there wasn't a linux desktop _at all_ a few years ago. now _every_ distro has one.

Quote:
Quote:
there isnt anything in the license preventing one from making a closed source app with GTK though is there? from what I can tell, dynamically linking is ok.

GTK is LGPL, so yeah, dynamic linking is OK. Yet, if I fix a bug in some of their horribly broken widgets, I am not allowed to statically link them into my application, because it is a derived work. I have to rewrite them totally from scratch, or supply the source of that fixed widget with my product.

This is one aspect that needs to be fixed in the LGPL. Also, the exact definition of "derived work" needs to be clarified.


Depends on how you "fixed" it. If you took the original GTK widget source code and modified it then yeah, you can't static link it. But aren't there other ways to fix the widget in question dynamically? You can also write new/replacement widgets, which isnt a derived work (I checked, it's allowed.)

re: licenses in general
the popularity of GPL and similar opensource licenses are a reaction to an abusive market. it is often the only escape for trapped customers. stop trapping them, stop abusing them, and the GPL will die. the more abusive the marketplace becomes, the more customers will leave.

or to quote a cheesy (but well-known) movie:

"The more you tighten your grip, Tarkin, the more star systems will slip through your fingers."
[=^_^=]http://bani.anime.net/etpro/ - ETPro websitehttp://bani.anime.net/banimod/forums/ - ETPro discussion forums
Quote: Original post by bani
ok, so your ide is going to be a commercial product then?

It will be a product developed according to the paradigms of commercial software development, yes. It will not cost anything, at least for personal use. I now see it as an experiment, how the current Linux community reacts to closed source software. The results have been quite interesting, so far. Especially in the sense of hypocrisy. You always wanted Linux to become mass market. Now deal with the consequences.

Quote: Original post by bani
if you arent going to address the requirements of users in this forum, then i don't expect its going to be widely used -- open source or closed source. what's the target audience of your IDE? yourselves, or the forum?

Huh ? Where didn't I address the requirements of users ? Did you actually read this thread ? True, I did not address your requirements, because they seem to be more whining about the big bad corporate world than anything else. You are not my target market. If IDEs such as Anjuta or KDevelop make you happy, then this is perfectly fine. To each his own.

Quote: Original post by bani
you also seem to be of the opinion that you're the only one in the world who is able to write good code, or manage a software project well. if you want to talk elitism, well there it is :-)

Let me iterate again: huh ? If you would be so nice to quote me saying that, because frankly, I can't find it...

Quote:
you also seem to have a rather adversarial view of customers. they are your customer! if you feel their requirements are 'unreasonable' you're either not charging them enough (eg you're of the opinion the customer is cheating you), or you're not communicating with them. the customer is paying you to deliver. if you can't, that's your failing -- not theirs.

You have obviously no idea about the business of software developement ;)

Quote:
if the only way you are able to deliver 'rock solid' product to customers is to feature lock, maybe your processes need rethinking. other companies are able to deliver 'rock solid' product without such limitations on development. just because it's the only process that works for you, doesnt mean all companies have to be restricted to it.

OK. Seriously, have you ever worked on a large scale commercial product ? Do you have the slightest idea about how a product development cycle works ? Hint: if you don't want a feature freeze, then look at Duke Nukem Forever...

Quote:
i don't see how the GPL can be seen as abuse -- nobody's forcing you to use GPL stuff, there are LGPL and other licenced stuff available. all GPL says is, if you take this code, give something back. that's abuse?

If it forces you to give everything back, then yes, this is abuse.

Quote:
But I fail to see how GPL would kill linux desktop -- GTK is LGPL after all. kde also seems to be doing quite well, despite the quirky qt license.

there wasn't a linux desktop _at all_ a few years ago. now _every_ distro has one.

Oh please, give me a break. Reality check: Microsoft Windows owns 99% of the desktop market. The rest is shared between Mac OS, Linux, and a few others. Linux will never stand the slightest chance in this market, if it doesn't adapt to the rules. Fact is, an OS is nothing without software. Now, we agree that there is quality open source software out there, but it is in the minority. With a few exceptions, commercial software is much better and more mature than their open source counterparts, for the reasons people already pointed out in this thread. And you are not going to get such software developed on Linux, if you hold on to the GPL.

No software = no market share. It's as easy as that. BeOS rings a bell ? Or IBMs OS/2 ? Both were excellent operating systems, much more advanced than their Windows counterpart at their time. Yet, they both died. Why ? Because there was no software available. The same thing is going to happen to Linux, if some fundamental changes aren't made. The GPL is a nice ideal, but it doesn't match the real world.

Quote:
Depends on how you "fixed" it. If you took the original GTK widget source code and modified it then yeah, you can't static link it. But aren't there other ways to fix the widget in question dynamically? You can also write new/replacement widgets, which isnt a derived work (I checked, it's allowed.)

Wasn't this exactly what I said ? I have to rewrite them totally from scratch, or supply the source of that fixed widget with my product.

Quote:
the popularity of GPL and similar opensource licenses are a reaction to an abusive market. it is often the only escape for trapped customers. stop trapping them, stop abusing them, and the GPL will die. the more abusive the marketplace becomes, the more customers will leave.

Look my friend, the GPL is not popular. It is popular among a very small group of open source developers. In the scale of worldwide software markets, this is nothing. And please spare us this stereotypical "the GPL solves everything, and commercial software is going to be man's doom" stuff. You start to sound like Stallman.

Oh well, I guess this thread is doomed anyway. I'm going to post a new one, when we have the test version ready for people to try it out.
well the thread did start out with a troll.

you set the tone of the thread, so it's hardly suprising it wasn't terribly productive.

it's also rather obvious you're not really looking for constructive input, you're looking for groupies. well, good luck with your next thread :-)
[=^_^=]http://bani.anime.net/etpro/ - ETPro websitehttp://bani.anime.net/banimod/forums/ - ETPro discussion forums
Advertisement
Quote: Original post by bani
well the thread did start out with a troll.

you set the tone of the thread, so it's hardly suprising it wasn't terribly productive.

it's also rather obvious you're not really looking for constructive input, you're looking for groupies. well, good luck with your next thread :-)

I don't think it was a troll. Yann L's experience isn't that uncommon and others share a similar view. Fanatics on the other hand are always a problem and often limit productive output severely... on whichever side they stand.

Personally, I'm not developing on Linux mainly because of the lack of a IDE that suits my needs, be it closed or open source.

-codeandroid
well i could start a thread about 'why i dont like christian fundamentalists' too, but it would still be a troll. even if you don't think it's a troll, it's definitely baiting and hardly conducive to productive discussions.

codeandroid, can you list your exact specific needs, perhaps i know of an ide which fits them.
[=^_^=]http://bani.anime.net/etpro/ - ETPro websitehttp://bani.anime.net/banimod/forums/ - ETPro discussion forums
Quote: Original post by bani
well i could start a thread about 'why i dont like christian fundamentalists' too, but it would still be a troll. even if you don't think it's a troll, it's definitely baiting and hardly conducive to productive discussions.


From Whatis.com:
Quote: (...) the practice of trying to lure other Internet users into sending responses to carefully-designed incorrect statements or similar "bait". (...)

Sorry, I still doubt that trolling was his intention. I maybe wrong, who knows...

I still don't see the problem. He posed a fine question (preceded by a rant which was marked exactly as such) and besides a few answers which were directly on-topic the discussion went in various directions. While, personally, it didn't give me much more insight into the minds of 'zealots' of whatever belief there were a few interesting bits to be found here and there.

Quote: Original post by Yann L regarding GPL
If it forces you to give everything back, then yes, this is abuse.

I totally agree. I spend a lot of time going through licenses when I made my spare-time project opensource. I finally settled with a multi-licensing model, i.e. it's available under LGPL as well as custom licenses as needed (or negotiated). This forces us to handle some legalities but I think it's quite fair for the 'client'/'customer'.

-codeandroid
Quote: Original post by bani
it's also rather obvious you're not really looking for constructive input, you're looking for groupies. well, good luck with your next thread :-)


It's also rather obvious you're not providing constructive input. You're providing the same old bs that every GPL fan provides, about how good the GPL is against corporations, bla bla bla. And being a closed-source only project is a basic premise of Yann's IDE. Deal with it. I for one am happy that it's going to be developed in closed source, whether it's opened later or not. It's that much more likely to lead to an efficient, lean, and effective IDE than the open source ones, which include everyhing under the sun, and then some. (Read: BLOAT.)
SlimDX | Ventspace Blog | Twitter | Diverse teams make better games. I am currently hiring capable C++ engine developers in Baltimore, MD.

This topic is closed to new replies.

Advertisement