Fog Creek Software
Discussion Board




Can someone please explain Open Source to me?

Hello All,

One of the threads going on below made me realize that this would be a good forum to ask about something that I've never understood, and that has never been rationally explained to me.

Can someone please explain the Open Source community’s philosophy that every one (or every company?) is obligated to release their code to the world to me?

I've read a number of the manifestos out there, GPL stuff, etc. I understand that one component of the community is the desire to work together with a large widely-dispersed group to collectively build something great. I can certainly understand enjoying that.

What I don't understand is why there has to be an anti-corporate, or more importantly (to them, I think), anti-profit feeling in the community. I guess in the scenario above, of just enjoying working as a group to accomplish something bigger than oneself, I can also understand the underdog mentality and the desire to show up the current masters in whichever venue.

I am particularly baffled by the amazing number of loud public cries for Microsoft or any other large company to release their source code. Does a reasonable argument exist as to why Microsoft or any other company should morally or ethically be compelled to release their code? Why would anyone think that they have a "right" to the work developed by another person or group?

Is there any other field where this phenomenon exists? I have never heard a mechanic say that they would like to build the ultimate car, so "It's WRONG that Ford, Chevy, Ferrari, and Porsche don't offer all of their blueprints, plans, designs, research, and etc. freely to the public." Maybe that’s because cars are easy enough to touch and measure every aspect of the internal workings of the finished results, and then learn from them. What about cooking? It’s somewhat hard to determine with perfect accuracy the contents, amounts, and techniques used to create any type of difficult food dish. You can certainly try to reverse engineer it, and maybe work with a bunch of other interested people to try to improve the accuracy of the final guess. But is there anyone anywhere who thinks that a master chef is obligated to reveal all of their secrets?

If I correctly understand these contentions, then the typical open source programmer thinks that Microsoft (as an example) OWES it to society to release everything they work for and develop to the word. Why would that be? This seems to me to be the largest underground anti-capitalist socialist / communist community operating within American society today. (Has anyone here read Atlas Shrugged?)

Why shouldn’t every person take responsibility for their work and their accomplishments and create with what’s available to them both internally and externally? Why blame someone else for holding you back unfairly? Is that really what is happening? How? Otherwise it’s just an excuse, and an appallingly widely accepted excuse at that.

I'm an American who's lived throughout the country for all of my life until a year ago when I moved to Argentina for a temporary period while my wife has been transferred here. In that time I've also done a lot of traveling throughout the region. Particularly due to the recent economic issues in this region, plenty of people are looking for explanations on how they got into this situation and how they should get out. My wife was also born in and lived in Cuba for 27 years.

So, in the past year I've heard all manner of theories on why capitalism, and even democracy, is bad.  And I've heard numerous proposals on the best way for society to work. Typically every one of these concepts, if taken down their natural, logical, progressions would result in the exact system that we have now. What's interesting is that all of these "philosophers" are also interested (I almost wrote devout worshipers -- funny that that's a decent description for some, huh?) of open source.

I am, and always have been, an entrepreneur and capitalist. I see no other way of living that would provide such freedom of expression and endeavor. Any other system that this world has ever tried has resulted in the loss of all personal motivation other than the motivation to overthrow that system.

So, please, if it's possible, can someone explain to me in a rational and logical way why it is that ANYONE, be it me, you, Microsoft, or anyone else is in any way obligated to give over their creation and development to the world?

I'm not looking for more religious wars with irrational emotional comments and illogical theories, but a simple rational and logical explanation, and maybe discussion, explaining these views. If it’s not possible to explain it in this manner than my assumptions about the motivations of the “Give me your code” Open Source followers will be reinforced. I hope to find some thoughtful responses.

Regards,

  --JWA

JWA
Friday, August 30, 2002

You have to try to understand the Open Source movement in the era in which it florished.

A lot of white, middle class kids became highly paid, pampered programmers, web developers, system administrators, etc. This led to the standard American white, middle class social liberalism, which is not that far from standard socialism or communism.

Software is a highly pirated commodity, especially amongst those who know and understand computers and have access to the original floppies or CDRoms.

So, you have the confluence of several streams of American social behaviour coming together to create an utopian computer movement: All software should be free, Everyone should give according to their abilities, and take according to their needs.

That the mainstream proponents of this movement are/were highly paid benificaries of venture capital and the Internet boom, is ironic.

And as a consequence of this movement, the target of this freeness has expanded to include Data. So, the rabid open source people think that there should be no such thing as copyright. And even if there is copyright, their infringement is a minor issue, as the authors will make it up by selling to the millions of other people who actually pay for their data.

Communism is alive and well, and it is called Open Source.

Evan
Friday, August 30, 2002

I have contributed to a few open source projects (including the Linux kernel), but I am currently working on a for-profit software project.

IMHO availability of source code and making money from a software project are orthogonal axes. You can keep source code secret and charge for licenses (e.g. Microsoft and most other software vendors), keep the source secret but give the software away (most often "players" and runtimes work like this - Acrobat Reader, RealPlayer, the Flash player, etc), make the source available but charge for a license (few companies do this; one example is Archaeopteryx and their Wing IDE), or finally make the source available and give away licenses for free (most open source projects).

Several factors dictate which choice is the most appropriate.

Do your customers want to have the source code for immediate bug fixes, enhancements, or security audits? Then you're better off making it available. Are you worried the competition is going to learn too much from reading your code? Then keep it secret.

Is your primary source of revenue going to be license sales? Then charge an appropriate fee. Or is it more important to reach as wide a user base as possible, and then make money from services, developer tools, or advertising? Better give the licenses away.

I think too many people have a narrow view that everything must either be source-available / for-free, or source-secret / for-profit. But there is actually a much wider spectrum of choices. I think we will start to see more companies thrive on new licensing models, such as the combination of making source available while charging for use licenses. (I am contemplating this model for my own project - I think my customers would benefit a great deal from access to the source code, but I still want to have my revenue come from license sales).

Dan Maas
Friday, August 30, 2002

It's an interesting story, and I hope I'm not too sleepy to help explain it. 

Open source can mean many things.  Much of it is pro-business -- it provides free tools to integrate and help develop your products.  Developers clamor for sourcecode, because it helps them build things, instead of having to constantly reinvent the wheel.  IBM, Sun, and Apple have found free sourcecode strategically useful.  Microsoft would too, except they are the current hegemony and have no real incentive unless they're attacking a new market.

An older tradition, led by Gnu and Richard Stallman, argues for user freedom.  Capitalism is fine with them, except when businesses strip users' freedom away for the love of money.  There are always companies patenting trivial shit, then when everyone adopts them, they demand huge royalties to let you use files that you created, on your own computer.

This is only for software.  Stallman knows that he's not an expert on other things, and believes that manufactured goods companies need to keep secrets, because expensive factories are needed to serve people.  But with software, it's all free -- creation, distribution.  One can make a decent living without needing to take away everyone's freedom.

Anyway, the world is now a pretty complex place with all these different forces.  It's useful complexity, because everyone is kept in check.

The beauty is that it's purely capitalistic.  People always want cheaper prices but are also willing to pay for quality.  Opensource does not change this.

Sammy
Friday, August 30, 2002

I should also add that even different parts of a single program can have different licensing models. e.g. many applications consist of a "back-end" library or server coupled to a "front-end" graphical interface. A vendor may benefit from pursuing an open source approach for one part, and a proprietary approach for the other.

e.g. 1) The Satellite Toolkit suite by Analytical Graphics consists of a bare-bones number-crunching back-end with 2D graphics, plus an snazzy interactive 3D front-end. The back-end is available for free (though source code is not provided), while the front-end is sold under a traditional software license. The free back-end has reached all over the industry, which has converted into lots of front-end sales for the vendor.

e.g. 2) The highly successful Quake games from id Software are designed as a "back end" of game-specific code (rules, weapons, and monsters) coupled to a generic 3D display engine. The engine (plus the basic Quake game) is sold on store shelves, but the game code itself is freely available for enhancement and modification. And one major reason for Quake's success is the proliferation of free "mods" (alternate games constructed from new back-end code) that this architecture allows to be created.

Dan Maas
Friday, August 30, 2002

Those are good examples of the different marketing choices pursued by different companies. That all makes perfect sense to me. They made those choices as the best way to pursue their business plan and profit goals. I'm a bit of a student of innovative marketing strategies, and I appreciate some of the intelligent approaches that software companies take.

What I don't understand is the rational behind the view held by some within the Open Source community (certainly not all, by a long shot I'd bet) that it is incumbent upon these larger successful companies to release all developments and innovations to them.

Personally, I doubt that there is a rational argument for this concept that I could understand and respect as being logical. I am fairly certain that there is no way it could be reasoned out that I would agree with it, but I'm just looking to understand it and see if there's a respectable rational behind it.

This forum is typically contributed to by rational and well-rounded individuals, which may mean that it will be a good source for this type of explanation, or it may mean that no one here subscribes to these beliefs.

Regards,

  --JWA

JWA
Friday, August 30, 2002

Dear Evan,

Open source has declared no wars, built no gulags, purged no cultures, killed nobody, censored no speech.

Comparing it to communisn is so stupid it isn't even funny.

As for JWA comments, you seem to be talking more about free software than open source, but anyway it happens in other fields, for example, some people like to build their own homes, what you can't do is download their home for your own use, so it isn't as visible.

Andres
Friday, August 30, 2002

>> Communism is alive and well, and it is called Open Source.

What a load of crap.  There are plenty of companies trying to make and making money on open source software.  Whether intentionally or by accident you have happened upon the writings of Richard Stallman.  I once wrote him off as a wacko, but in fact the guy is on the right track when it comes to protecting speech and the rights which make America what it is.

But moving on from Stallman, in particular, perhaps Eric Raymond might be a more presentable character - as he debated Stallman specfically on this subject.  But y'know what?  Screw that.  Who am I to say is presentable?  That's the whole point of "OPEN" and Free (as in speech).  Its a democracy and you're entitled to your opinion.  Are you advocating a ban on that?

Open source projects, like MySQL, RedHat's distro, Gnome, KDE, QT, Lynuxworks - just to name a few - are in it to make money.  So is our little shop - we maintain the Linux boot screen, ecnrytping bridge and have made a few miscellaneous contributions along the way.  And then there's IBM - a company with 4 times the anual revenue of MSFT.  You can bet they're in it for the money.  ORCL too - they're moving to complete support for Linux.

Just because open source poses a real and credible threat to the revenue stream of *some* companies and perhaps your pay check...  You get no sympathy here.

As for the GPL, which is not the only open source license - it is just one of several.  Perhaps you might read why Stallman supports it so vigorously:

"In 2000, Microsoft undermined the Kerberos secure login software in this way. They added a small secret feature to their version of the Kerberos software, simply to make it incompatible. The standard, free software version of Kerberos cannot communicate with Microsoft's modified Kerberos server. The result: anyone who wants to communicate with the Microsoft server software has to run Windows on his desktop.

The Kerberos community was incensed when they saw this, but they had no way to stop it. Kerberos had been developed at MIT, and released as free software--but not under the GNU GPL. The lax license used for Kerberos was no bar to Microsoft's plans. If the Kerberos developers had released Kerberos under the GPL, Microsoft could not have undermined it in this way.

Now Microsoft demands that we leave ourselves equally vulnerable in other areas. But defenselessness is not the American Way. In the land of the brave and the free, we defend our freedom with the GNU GPL."

As for this statement:  Software is a highly pirated commodity, especially amongst those who know and understand computers and have access to the original floppies or CDRoms.

Tell it to MSFT, who on 2 separate occaisions had to settle cases of software _piracy_ when violating licensing tems (softimage, I think) and stealing competitors software (stacker).

The only ones I hear making "loud public cries for Microsoft or any other large company to release their source code" are the opponents of MSFT in their antitrust trial.  This is what happens when the defendant asserts that their case is dependent on a technical argument only resolvable through source code examination.  And even that would be done under a gag order of the court.  Perhaps another loud community of "examine the source code" screamers are the MSFT customers out there who are sick and tired of bugs and security holes which take 6 months or more to be resolved.

So much for the ragged edges of extremism as it related to open source - as these issues are on the exteme, for the most part - mostly they are of little consequence and I certianly don't expect much to come of it.

Tim O'Reilly, an open source friend if ever there was one, wrote a well intoned letter admonishing against forcing Linux into government agencies through legeslation http://www.oreillynet.com/pub/wlg/1840?page=last&x-showcontent=text

There are 3 interesting debates of consequence looming:
1. Should the GPL be applied to government research grants?
2. Should open source be legeslated?  (Hopefully not, but it is becoming and issue in CA)
3. Should the US gov't force telcos to enforce national firewalling policies.

IMO, #3 is a clear threat to freedom of speech and association.  And because any operating system source provides the capability of circumventing provisions of the DMCA and derivatives, could effectively outlaw open source within US borders.  Think that's far fetched?  Today, if you ask for US geological survey information at your local library, you may be treated as a criminal under new security laws.  Request a book, go to jail.
http://www.npr.org/ramfiles/me/20020826.me.06.ram
http://www.npr.org/ramfiles/atc/20020810.atc.02.ram
http://search.npr.org/cf/cmn/cmnpd01fm.cfm?prgID=2&prgDate=04/11/2002
Download a kernel, go to jail?  Hmmm.

Finally, I'll tell you what the atithesis to the above "You have to try to understand the Open Source movement in the era in which it florished." statement is here:

You have to try to understand the MSFT employee and the times of its existence.  MSFT, the stock, peaked at $US 130 plus change in somewhere around 03/00.  Now you've got an interesting mix of cultures in Redmond:  Those with 10 or more years of vesting, who trip to France on the Concord over a weekend, take leaves of absence, and are regarded as high and mighty geniuses.  And then, the lower classes stuck wondering "when do I get mine"?  When the answer comes back "You Don't" or FYIV, then they start looking for someone to blame.  Well, you can't bite the hand that feeds you, so go looking outside.  What do you find?  People writing code that is cleaner, faster, and often better market penetration than your giant MNC on a good day.  Then, you can become Limgaughesque in your appeal - and who knows - you might even get a few NRA supporters on your side.  A few toothless hillbillies toting 12 guages can always come in handy on a bad day.

Peace baby.

Nat Ersoz
Friday, August 30, 2002

Sorry - spell it "Limbaughesque" - Dontcha love the weblog - its like talk radio all over da place.

Nat Ersoz
Friday, August 30, 2002

Like or dislike the "mandatory" open source ideas, there is definatly an argument for it with standards. The thing with cars, is the standards are in fact open, and usually set by the govt. The size of roads, the emmision laws, the saftey standards, steering wheel side, signal colors and placement etc. So if you build a car to that standard, its a level playing field.

Move to computers, and the standards are often owned by companies. The word format, windows, swf, pdf, Mac OS, stupid patents etc. So there can never be a level playing field. I can make cars, but they aren't allowed to use roads. Or maybe more accurately, I can buy trains, but I can't drive them on others tracks. A big part of the reason there are anti-trust laws at all is the US experience with the railroads (worth a google if). It is a different situation now, but not without parallel...

Robin Debreuil
Friday, August 30, 2002

It was mentioned several times in previous posts, but I'm wondering whether it might have gotten lost in the noise:

Some (very vocal) open source proponents to argue that any form of licensing other than open source is bad.  Richard Stallman was the first of these people and has a number of "disciples".  But I think they are in a minority, even though they are very vocal and make a lot of noise.

Other open source proponents (most, I think) have no problem with the proprietary licenses for software, they just think open source is a neat thing.  They're excited when corporations find the open source model fits with their goals (i.e., decide it can help them make more money), and are eager to help educate others about the benefits of open source.

It's fine to write off the open source "evangelists" who think all developers are morally obligated to release code under the GPL.  I think that's a crazy idea myself.  But just don't think that those people are representative of the general opinion among open source developers.  They're not.

Herbert Sitz
Friday, August 30, 2002

I agree. I don't think I've ever seen anyone argue that there's an "obligation" to make source available. So I think the premise of this whole thread is a bit off. Further, the more common automobile comparison is if the hood were welded shut and only Microsoft could repair the engine.

pb
Saturday, August 31, 2002

Obviously, there's no clear and overriding view of what Open Source is all about. From a recent article, "The Linux developer lifestyle, exposed" ( http://news.com.com/2100-1001-954929.html?tag=cd_mh ),

<<
Open-source developers tended to get involved with the movement out of a desire to improve their programming skills, but over time had increasingly material and political interests in open source, the report said.

Developers tended to identify themselves as either allied with the "free software" (48 percent) or "open source" (32.6 percent) communities. "Open source" is a more recent term than "free software," having been coined in 1998 to encourage a more business-friendly approach to the free software concept.

However, the picture is not as polarized as this might suggest, the report said: Respondents ranged from saying that the two terms should be entirely separate, to saying that they were practically the same thing.
>>

Obviously there is a vocal minority that would like all (?) software to be open source. But, is it really all software that they're concerned about, or just Windows? A sliver of that minority may truly believe that all software should be open source, but I suspect they're really aiming at Microsoft.

The analogies to cars, above, are interesting. Red Hat 7.3 pops up quotes and trivia during the installation process.  As pb references, one of the quotes is (not verbatim): "Buying an operating system without the source code is like buying a car with the hood welded shut." I don't think that this is a valid analogy.  In order to repair software you need access to the source code, but as JWA mentions that's tantamount to supplying the "blueprints, plans, designs, research, and etc." On the other hand, a car can be repaired without the manufacturer having to give away all their intellectual property.  The specs and repair instructions in a car manual are more analogous to revealing the public interfaces in software.

Bottom line, though -- I think that the majority of Open Source development has nothing to do with the political hype (and certainly not Communism - unless there's an Open Source PayPal that drains your bank account and disburses your funds to the underprivileged).  I think that it's primarily about developers would want to strengthen there skills, pad their resumes, devote some time to a project they're passionate about, or simply to find a creative / intellectual outlet.

Nick Hebb
Saturday, August 31, 2002

I think that your requirement for a rational explanation is too strong. It'll never be satisfied because people (including you) are mostly irrational. The fallacy in the way you phrased your question is that you start with the premise that rational=good, irrational=bad.

I'm really not joking. A few examples: is love rational? Is believing in God rational? Is not believing in God rational? Going to church? Being a vegetarian? I think that in each case you'll find elements of rationality and irrationality.

Vegetarian is a good analogy here because of the examples I've given it strikes me as the least rational. There's a weak case to be made that the food is healthier but that's the only argument I can see (ok, I'm not trying very hard). Yet it's a fact that there are people who just believe that killing animals just so that we can eat meat is morally wrong. Is this rational? Let's assume that you think it's not. Would you demand people to "explain" vegetarianism to you in a rational matter?  You don't have to "understand" vegetarianism, but what you should understand is that there are things you don't have to or even might not be able to understand but the fact that you don't understand them doesn't make them less legit or inferior to things you do understand. And I don't mean to put you down - there are many things I myself do not understand, like being a vegetarian. Or being gay. Or a lawyer. I'll never be one and I'll never comprehend why would you like to be one. But I try to keep an open mind - I'm pretty sure there are people who couldn't imagine why one would like to be a programmer like me and I wouldn't like them to look down on me just because I've chosen profession that to them looks utterly dull and uninteresting.

So let's go back to rationality in demanding that all software should be free. It doesn't do much good to collectively talk about a mass of people that can't even agree among themselves so let's take a particular and quite extreme example of RMS. The basis of his actions, and you can easily find relevant supporting evidence on http://www.gnu.org is a believe that it's immoral to forbid sharing of the software and to prevent learning from software. Everything else is just a commentary. If you look at GPL, it's designed to prevent exactly that (prevent anyone to ever forbid sharing a GPL-covered piece of software).
Is this a rational belief? Not by a long shot. Can you find rational elements in that belief? Yes. The premise here is that when  sharing of software is prohibited, it divides the society and creates anti-social behavior. As an example, not many think that if I don't give you a book I own then I'm a bad person. It's my book and if I give it to you you'll gain but I'll lose. If, for some reason, I give you the book none-the-less and don't demand anything in return, some would call me generous. But a software is a bit different. Suppose we're neighbors and the winter is very strong this year. Suppose I know a trick that keeps my house comfortably warm. You don't know that trick, so it's freezing cold. Should I tell you this trick or not? On one hand I won't loose anything if I tell you and you'll win. On the other hand I might demand a payment from you because that trick is valuable to you. Just like a decent capitalist would do. So I have a decision to make. I can be generous and tell you the trick for free. Most people would say that it's very nice of me to be so unselfish but that's not what a hard-core capitalist would do. Or I can be anti-social and let you freeze as long as you don't pay me for revealing the trick. Neither decision is "rational" per se, there are good reason to tell you the trick (you'll like me, I'll feel good about myself, other people will think I'm a nice guy) or not tell you the trick (money) but whatever I'll do will be based more on the (irrational) beliefs I held. Or my current mood. When it comes to sharing software/not sharing software, there are similar trade offs. On one hand it's the fruit of your work so why anyone should have any right to it except you? And if they want it, they can pay you to get it. On the other hand if 2 people use a given program, the software is more useful than if if it's used only by one person. And if a second person starts using it, the first person doesn't loose anything. It's a pure win for the society.

I'm not advocating here either approach, just trying to point out that the issue is more complex than the simplistic accusation of the kind "they want me to open up my code".

If there is a thing that I wish more people would understand it's that RMS isn't anti-corporate or anti-profit in general just as a vegetarian isn't anti-personal freedom in general.

The consequence of adopting RMS's beliefs is that *effectively* you loose ability to make a lot of money off software just like adopting vegetarianism *effectively* constrains your personal freedome (you can no longer eat meat). But those are just collateral damages.

But you'll never "understand" a vegetarian if the only question you'll ever ask him is "why do you want to take away my personal freedom to eat meat?".

Krzysztof Kowalczyk
Saturday, August 31, 2002

> What I don't understand is the rational behind the view
> held by some within the Open Source community (certainly
> not all, by a long shot I'd bet) that it is incumbent upon
> these larger successful companies to release all
> developments and innovations to them.

Well, consider it an economic pressure, like price pressure.  People often clamor for lower prices, even if companies think it will put them out of business.  Even other companies will want you to change your licensing terms; Joel wants this to happen with Groove.

With opensource people, they only seriously care when you control a technology that bars them from using computers.  For example, Stallman got really pissed when Xerox forbade him to fix a problem with a printer driver.  That backward, antisocial thinking led him to found Gnu.

Really, it's not the technology that people want.  Most programming is just dealing with tedium.  It's the interfaces that are important.  Another thread here shows people clamoring for Joel to open up an interface in his code, so they can buy his software and build things on top of it.  They don't want him to open up all his code, but just expose an interface in a mutually beneficial way.  They buy his product to add value so they can resell it. 

If Joel does not satisfy this demand, perhaps Pierre Walker might create a competitor and satisfy it.  This is an economic pressure.  It might not be a credible threat, but Joel could eliminate it by making a feature announcement to open the interface.

Sammy
Saturday, August 31, 2002

Lets say that Student X creates and app with major features A, B, C, D, E, F and G.  He releases the code into the public domain.

Student Y likes X's app, but needs minor features H, I and J.  He releases the code into the public domain.

Business man Z see the commercial potential of the app, adds a user interface and sells it to the world, keeping the source to himself.  After a tiny amount of effor Business man Z gets lots of money.

The two students get nothing.  The market is poor, and they both end up working in McDonalds.  They get together and add the user interface themselves and try to sell it, but Z threatens to sue them for look and feel infringment.

There are two options to avoid this scenario. 

Firstly, you guide your source with your life so that nobody can rip it off.  This is the model followed by Microsoft.  Fair enough.  They own the code, and can do what they like with it.  Some people, however, do like to cooperate and aren't in it for the money.

Open Source means that if I make any changes to code that somebody has kindly made available to me, then I too must make the changes available for the benefit of others.

Its not about attacking capitalism or anything else, it just about being fair and not benefiting unfairly from the honest labour of others.

Ged Byrne
Saturday, August 31, 2002

>> Open Source means that if I make any changes to
>> code that somebody has kindly made available to
>> me, then I too must make the changes available for
>> the benefit of others.

Not really, for example you have the BSD and MIT licenses which allow you to keep the changes secret, and they are both free and open source licences. This is what happened when Microsoft used Kerberos in Win2K.

Other licenses, the main ones being the GPL and LGPL, make you release your changes if you distribute modified binaries, they are usually called 'copyleft' licenses.

This is why MS wants to prevent goverment funded software from using the GPL and go for the BSD, so that they can benefit without giving anything back.

Andres
Saturday, August 31, 2002

"I am particularly baffled by the amazing number of loud public cries for Microsoft or any other large company to release their source code. Does a reasonable argument exist as to why Microsoft or any other company should morally or ethically be compelled to release their code? Why would anyone think that they have a "right" to the work developed by another person or group?"

Since this is the crux of the question, I can answer this quite easily.  Microsoft is a confirmed illegal monopoly.  The solution proposed by open source activists is that the code should be opened (such as code to generate Word documents) so that the grip that MS holds on the industry can be loosened. 

RMS' goal is to make all software open source.  If you read the GNU website, he has many opinions on why this would be good for everyone.  The average person understands that there is a balance between open source and closed source.

I think, however, that the "movement" will cause alot of companies to begin requesting the source code for non-shrink wrapped applications they produce.  This will be an added cost (just as getting the Photoshop source files from a designer generally costs more than just getting the final images).  This is because the guaruntee of return income (for modifications) is gone. 

"Is there any other field where this phenomenon exists? I have never heard a mechanic say that they would like to build the ultimate car, so "It's WRONG that Ford, Chevy, Ferrari, and Porsche don't offer all of their blueprints, plans, designs, research, and etc. freely to the public.""

Actually, there is a movement to "open source" the diagonistic codes used in modern cars so that non-dealer mechanics can work on the car.  Although there is a standard, it's incomplete and hard for outside mechanics to work on your car.  So it does have analogies to other industries.

Later,

Wayne Venables
Saturday, August 31, 2002

It's important to distinguish your concepts here.  Forget "movements," forget "philosophies," for they cloud the technical details.  The software world has grown several dichotomies recently:

* Free software vs proprietary software (a matter of licensing)

* collective/"bazaar" development vs isolated/"cathedral" development (a matter of developer organization and development planning)

* products vs services (a matter of business models).

Which of the three are you referring to when you say "open source?"  Many involved with "open source" software don't seem to have a clear understanding of the separate processes, frequently confusing the first two.

Likewise, many people outside don't think it through, either.  They frequently focus on the third, arguing against it, and then sweep away the other two.

Now, there are some people who attach philosophical arguments to these things.  Some people claim that collective development is somehow anti-capitalist.  Some people claim that proprietary licensing is equivalent to slavery.  However without clearly drawing out what issues are actually involved, it is impossible to discuss these rationally.

Neil Stevens
Sunday, September 01, 2002

One thing you can really say about opensource development is there's usually more trust.  If the code is open, it's not like you can really hide much.

If you look at the webpage for a normally successful project, it's honest.  "Ok we fixed the memleak, collecting suggestions for architecture enhancements for v3.0."  Whereas with good commercial sites, it's all like, "Rebol is an OS REVOLUTION and veritable taste EXCITEMENT!"

Look at the people at Java's Bug Parade, the place where people vote on what Sun engineers should fix.  It's so pathetic, watching people beg and cajole and weasel Sun engineers to get off their asses and fix something.  For the longest time on Win9x, Java apps would pop up a grotesquely ugly DOS box in the background.  Since I think 1994 until a couple months ago.  People would give Sun code snippets to no avail.  Even now, Sun engineers respond to these bugs saying, "I don't know very much about Win32 programming."

Not being able to fork is dispiriting.  It turns adults into children who have knowledge but no power.  It shows in the mood of the platform communities.

anon
Sunday, September 01, 2002

"It's important to distinguish your concepts here. Forget "movements," forget "philosophies," for they cloud the technical details. The software world has grown several dichotomies recently:"

---

A thing worth taking into account is that, at heart, the Free Software movement _is_ loaded with philoposphy. It's good to remember that its origin was the belief that it's bad and wasteful not to share information, because sharing information makes us all "richer". But, RMS being an expert solely on programming, he focused specifically on computer code.

So I'd say it's _wrong_ to try to "separate" the "issues", because that is mistaking cause and effect. It's _not_ about technical details, it's about Freedom. You can read about it at http://www.gnu.org/philosophy/philosophy.html especifically, at http://www.gnu.org/philosophy/why-free.html and http://www.gnu.org/philosophy/shouldbefree.html

Now, a side effect of that way of thinking is that the programs developed openly with a free license, are usually of a high quality. extremely cost effective and have an ammount of technical properties that make them desirable. But I think it's a good idea to be clear on the cause of things, and the _reason_ for the existance of the FSF is 100% philosophical. The Open Source Initiative has a more pragmatist way of _marketing_ the same ideas, but the basis for the Open Source Definition (OSD) is the Debian Free Software Guidelines, and both of them focus on the Freedom to share and modify. So it's also not a "technical" argument.

Just my 0,002 on the _whys_ instead of the _hows_

Javier Jarava
Sunday, September 01, 2002

Its been said a few time now, but id like to emphasize...

Open Source is not the Free Software movment.

Open Source means nothing more than the words imply.

Eric DeBois
Sunday, September 01, 2002

The free software movement is about 1000's of people talking incessently about what free software is, most pretending they have some sort of legal expertise, and an unlimited knowledge of code. Open source is about 1000's of people talking incessently about what free software *does not have to be*. Suprisingly, most of these people also pretend they have some sort of legal expertise, and naturally also an unlimited knowledge of code. Commercial software is about programming or getting fired, so there sometimes a gap in communication there.

Software is fun to write, especially when you are doing it for fun. Most people that write for fun couldn't be fucked to go to all the work of trying to sell it, and don't like the odds anyway, so they give it away. Other people who also program appreciate it, sometimes, and often let them know, somehow. These people generally keep all their mouths shut about philosphy, because they prefer programming, plus most of them had a bad experience with it at an early age.

This would all be really clear to everyone, if it wasn't for that bastard Richard Stallman. He's produced tons of fantastic code, and yet still has the time and inclination to spout off his childish ten cent views in public. Damn. This is why we hate him. He's allowed our pastime to be hijacked by a pack of whiners, that pretend to code like him all week, and then pretend to defend IP and prosecute anti-trust cases on weekends, when in fact they generally just wandered over from alt.herbal.wicken.mensian.guru, or some such place.

You know what - don't put a licence on the code you give away. Who cares. I've done it a lot. Who gives a shit what it says at the top, if in fact it just gets it the way of reading the damn stuff. Oh, but Microsoft won't give back, whaaaaahh. It's trrruuuuueee. Whaaaaah... My God, you are actually putting me to sleep. Zzzzzzzzzzzzz zzzzzzzzzzz zzzzzzzzzz zzzzzzzzzzzzz zzzzzzzzzzzzzz zzzzzzzzzzzzzzz zzzzzzzzz zzzzzzzzz zzzzzzzzz zzzzzzzzzzz zzzzzzzzzzz zzzzzzz.

Robin Debreuil
Sunday, September 01, 2002

>> Damn. This is why we hate him.

Is that a royal 'we'?

Andres
Monday, September 02, 2002

Good job, guys.  Avoid the issues by repeating the lie often enough.  "It's just some political movement based on nothing."

Neil Stevens
Monday, September 02, 2002

There are only issues if you have issues : ). 

I know there is a urge to want to prevent Adobe from copying idea out of KIllustrator, and Napster from copying ideas out of KNapster, but hey, its legal, you can't stop it. There got my cheap shot in.

The queen and I both very much admire Richard's work and unfailing energy, but yeah, we hate his big mouth. Indeed that is what I meant by 'we'.

Mostly I'm just pissed because China started censoring Google a few days ago it seems, so the internet is back to 1998 for me. It makes you more sensitive to people telling you something is "for your own good", regardless how much they think they have your best interests at heart. Of course they would just tell me I'm repeating the lies of foreign propaganda, avoiding the real issues of the greater common good. It must seem like a good argument, I hear it a lot.

Collective voulenteer labor is a great thing and I participate a fair amount. I like working with others on things of mutual interest. You learn tons. The people are great.

Collective voulenteer free labor driven by politics and philosophy, with anti-corporate overtones, is something I steer very clear of. Like religion or nationalism  gone wrong, it can produce many people with that dangerous shine in their eyes. I'm not saying free software zealotry (as opposed to free software in general) would ever produce the millions of dead bodies that it produced here and elsewhere, but when people tell me I'm being controlled by those against the 'revolution', or my way of thinking is the real problem, I get a bit of that sick feeling just the same.

No one is above getting caught up in the collective fever, smart, happy, or good looking, it is just a human thing. I'm sure you think this is all absurd, ok whatever, but it happens a lot, and it can eventually get dangerous. FSF isn't calling for civil strife or network sabatoge of course, but I would still avoid getting too personally radicalized over it. I'd stick to your code, your generosity, and not dwell too long on the business of others.. Your milage may differ of course, hopefully anyway.

Robin Debreuil
Monday, September 02, 2002

What I fail to see is: If I am a software developer, I have to give the fruits of my labour to the world for free (Let's not get into the technicalities, we all know this is basically what is meant). However, if I am not writing software, but about the software, nobody seems to call me immoral for charging for these works. Why is no-one high riding the moral plane and making noses at O'Reilly for not putting the PDF's of their books ABOUT GPL'ed software on the net FOR FREE?

The poor software developer is singled out and given the finger. Software is doomed to be a loss-leader to "other activities", be it support, documentation or T-shirts & mugs.

To put it bluntly: once the hippies have partied their way though all the 90's venture capital, what will there be left? I am deeply suspisious of a business model that basically gives you the software and has to live of extra support. What is the business incentive there to provide nice, easy to use bug-free stuff?
It might not be perfect, but I have more trust in a model where the software sales bring in the revenue and all the support is a cost.

Just me (Sir to you)
Monday, September 02, 2002

"I know there is a urge to want to prevent Adobe from copying idea out of KIllustrator, and Napster from copying ideas out of KNapster, but hey, its legal, you can't stop it. There got my cheap shot in."

Actually, it's not a cheap shot, but more missing the next stage of the "idealism" behind open source. Not only is Adobe copying the ideas legal, it's WANTED. It's what open-source is about. The only place it falls down is that Adobe takes and doesn't give back...

The base concept behind Stallman's philosophy (in my reading of it) is wanting to avoid wasting effort.

Look at the effort the soviet union went to to copy the shuttle. They managed it, but it's a pointless exercise. It didn't better mankind in anyway. In any rational universe they'd have had the sense to go get the plans from Nasa, and Nasa would have had the sense to give them to them. The effort expended in developing something already developed is completely wasted... thrown away. That's human life wasted and that's immoral. Just copying the shuttle would have given mankind one more launch vehicle and taken a lot less time.

So Stallman's belief is that he should be able to build on other's work and others should be able to use his, because having two people wasting time doing the same thing twice isn't sensible.

All the effort that the KDE team have put into, essentially, coding Windows is wasted effort. If MS had open sourced Windows, those developers could have been improving Windows instead... we basically now have two versions of the same thing. We can do that with a disk duplicator in a lot less time if that's actually what we want.

"Don't do things twice" is a strong imperative to developers: hence libraries, subroutines, frameworks, patterns all the philosophy of code re-use, of documenting code so it can be maintained rather than re-written...

Open source is merely taking that its extreme: you could run a software company where each developer won't share any of their code with anyone else. Most people can't see how that would be sensible - it would take ages to get anywhere. Stallman can't see why a world that works like that is sensible either...

Katie Lucas
Monday, September 02, 2002

""Don't do things twice" is a strong imperative to developers"

I don't think so... I know what you are saying, but if everyone winds up copying and maintaining the done one time thing, how will anything new be developed?  I think I would prefer a little less imperative... more along the lines of Fred Brooks "build one to throw away".

I was thinking about picking up a copy of this book this weekend, but I wasn't able to find one at the two local bookstores.  If it was truly about avoiding waste, then I would still be interested in reading it.  Reading these posts, it now sounds like an exercise in whining... especially this: 

"So Stallman's belief is that he should be able to build on other's work and others should be able to use his, because having two people wasting time doing the same thing twice isn't sensible."

That sounds an awful lot like he desires an open invitation to justify stealing the work of others for his own benefit.

Joe AA
Monday, September 02, 2002

> I know what you are saying, but if everyone winds up
> copying and maintaining the done one time thing, how will
> anything new be developed? I think I would prefer a little
> less imperative... more along the lines of Fred Brooks
> "build one to throw away".

Stallman:  "In 1997 we launched two parallel projects [snip...]  The reason for starting two projects in parallel was redundancy: any project may fail, and the risk was big enough to warrant two simultaneous approaches to preventing it."
http://www.linuxdevices.com/articles/AT3236151590.html

Is this what you mean?  The technical need to have redundant projects?  Also, remember that these projects can fork, and still use each other's codebases.

> That sounds an awful lot like he desires an open
> invitation to justify stealing the work of others for his own
> benefit.

I have found an exquisite proof on why sharing != stealing, but unfortunately this discussion board is too small to contain it. ;-P

Sammy
Monday, September 02, 2002

Well I thought it was a cheap shot, open source has its share of creativity after all. But I never expected:

"Adobe takes and doesn't give back..."

...when referring to KIllustrator! Whew, I guess that whole program is a series of coincidences then. That has to be a record. Or maybe take and give have secondary meanings I'm unaware of?

Its normal, healthy even, for markets to canibalize themselves and move on. Ftp used to be hard and take a lot of effort to implement. These days you shouldn't pay more than 68 cents for it if at all - normal enough. Injection molding went the same way, so did simms. I don't think there is anything wrong with that, hard things get easy and become a commodity with almost no value. If you can't keep up you get trampled by open source, the .net framework, standard libraries, or a third world factory with more ambition than you...

'Free' software is a pretty good model for commoditizing things that are already semi-standard, as that doesn't really require market research, specs, UI testing, documentation etc. I find the GPL a bit weird in many cases, because it attempts only to deliver to those who hold the same views. That in itself is fine, but much of the time it is delivering an idea that is no longer new and no longer really has any value, as far as the code anyway. You can only use Kftp if you share all the code you make with it, but who the hell needs kftp to get ftp code these days? Its built in to everything. You would be better off just giving that kind of thing away imo, because it is just a commodity. It would stand to help more people, and it would make you more generous - if your goal is political, or 'world domination' no problem, but then don't waste your time programming commodity items.

There have been many innovations come out of freely availible software though (eg - much academic work, but also FSF/OS work), which to me is the most interesting place to look when making comparisons with commercial software. I think the differences here come down to one side wanting to "release" ideas, and the other wanting to "deliver" ideas. Obviously both have different strengths and methodologies. And lots to learn from each other I would guess. But hey, lets talk about how I'm to busy blowing Bill Gates to notice my world collapsing instead, its funner.

Robin Debreuil
Monday, September 02, 2002

Oh, Sammy, you don't have to go through any trouble.  I agree that sharing isn't stealing!!

As long as "sharing" is a free choice.  Once it becomes an obligation, then there is no difference between sharing and stealing.

Joe AA
Monday, September 02, 2002

Just me (sir to you) wrote: "Why is no-on high riding the moral plane and making noses [sic] at O'Reilly for not putting the PDF's of their books ABOUT GPL'ed software on the net FOR FREE?"

It's because they **ARE** putting their books online for free (some of them, anyway): http://www.oreilly.com/openbook/ .  They are also *paying* people to write books under the GNU Free Documentation License (see http://faifzilla.org/intro.html for one such example).  This is in addition to actively funding various Open Source Software projects.

This has given O'Reilly "street cred" in the OSS community.  They still occasionally catch heat (see http://linux.oreillynet.com/pub/a/linux/2001/08/15/free_software.html for one example), but they are usually given the benefit of the doubt.

James Damour
Tuesday, September 03, 2002


I've read many statements that "not everyone is a FSF zealot", and many people taking the stance that "sharing is good, but it shouldn't be mandatory".  While both statements are true, neither explains why someone should be **obligated** to release their code (that *is* the question that started this thread, isn't it)?

Here's one rational reason that is even backed by law: "To promote the progress of science and useful arts..." [US Constitution, Article I, Section 8].  This is the basis of Copyright in the United States (the law that allows Microsoft to charge $500 for a copy of Office XP... without fear of someone mass producing copies of the CD for $25 each). 

The rest of the sentence reads, "..., by securing for limited times to authors and inventors the exclusive right to their respective writings and discoveries."  That means that someday I *will* be allowed to make as many copies of that CD as I want; all I have to do is be patient.  As of September 3, 2002, I have to wait about 90 years, but my great-grandchildren should be able to get a full-featured office suite by that time. 

Unless, of course, Microsoft (or whatever entity comes to hold the copyright in the meantime) reneges on their half of the bargain. 

Now some may argue that I am misreading the Constitution.  Others will argue that this clause just allows me to copy the .EXEs, and doesn't give me a right to the source code.  Far more people will say that no one would want a program that is 90 years old.  Many (especially the much-reviled "Slashdot crowd" think that 90 years is too long, and argue for a different duration of "limited time".

All of this is beside the point.  The "contract" between copyright holder (e.g. Microsoft) and copyright granter (i.e. "We the People of the United States of America") is one, valid, rational reason why someone should be obligated to share their source code.

James Damour
Tuesday, September 03, 2002

IIRC from PoliSci, originally those who wished to incorporate had to do so with the goal of promoting the general good.  This is because corporations had superhuman legal powers.  Over time of course, corps were able to buy off politicians, and this requirement eroded.

For some reason I've stopped mentioning this.  It's like when Stallman explains that Shakespeare had the extreme luxury of reworking other peoples' stories, because of weak intellectual property notions.  Even now, smart companies 'steal' like mad.  But somehow it's so alien to embrace these facts to their logical conclusion, that it's pointless to mention them.  Maybe we live in the wrong times.

Sammy
Tuesday, September 03, 2002

"It's because they **ARE** putting their books online for free (some of them, anyway): http://www.oreilly.com/openbook/ ."

Looks to me like a limited collection of out of print stuff, in nothing comparable to e.g. http://linux.oreilly.com/ .

Not that I am tracking this very closely, but at least I have not seen much outcry with every book published ABOUT some GPL'ed code, in the sense that it should not be on the shelves without the PDF (or whatever editable format) being publicly available at the same time.

The fact that they are more palatable because they put dollars into some cuddly stuff seems to be highly irrelevant.

Just me (Sir to you)
Wednesday, September 04, 2002

""Looks to me like a limited collection of out of print stuff, in nothing comparable to e.g. http://linux.oreilly.com/ .
"""
Maybe they are not the only ones that have their say about it? After all, to be able to release a book under the GPL / FDL , the author has to release it under one of those licenses. So if the author doesn't, they can:

a) Try to live with the fact that people are free to choose, and publish the books so long as they meet their (very high, IMO) standards

b) Complain and not cover a topic that it's interesting and better off being documented than not.

I'd say that a) is more logical and mature response.

Of course, it'd be better to do a) _AND_ try to persuade authors to use the GPL / FDL for their books (in efect, paying them to write "free" books)... and you know? That's what they do :)

Remeber, the GPL lets you _use_ the program to earn money (by writing the next Great American Novel, or the killer computer game... or a book about the program) and you're not forced to give anything back. What you can't do is release a modified program and keep the changes of the code to yourself.

Javier Jarava
Wednesday, September 04, 2002

O'Reilly lets authors choose any license they want.  Some are GPLed, it's just not obvious, and in those cases O'Reilly just releases it in print.  But you're able to scan them in and distribute over the net.

Richard Jenkins
Wednesday, September 04, 2002

Javier,

I agree with the "try to persuade but let them do as they please". Thing is, under GPL IMHO this is true for everyone except programmers. Programmers code -> they MUST release. Writers write -> they can choose. Just sounds inconsistent with a very anti-programmer bias.

Just me (Sir to you)
Wednesday, September 04, 2002

"Thing is, under GPL IMHO this is true for everyone except programmers. Programmers code -> they MUST release. Writers write -> they can choose. "

Not so.

Writers write, it's their writing, all of it -> License as you se fit.

Programmers code, and it's their code (100% of it) -> License as you see fit.

BUT the thing, for both is:

Writers write, by modifying / changing / enhancing / integrating / adapting existing GPL / FDL texts -> The "new" text _has_ to be GPL'd (or FDL'd, as the case might be)

Programmers program, by modifying / changing / enhancing / integrating / adapting existing GPL programs -> The "new" program _has_ to be GPL'd.

Thing is, it's much more common to re-use, copy or adapt computer code than a written text (at least, the pressure is greater, because if the code is proven, it's valuable; the ideas on the text can be expressed on many ways; "working" code is more limited in expression). SO, as long as your work is your work alone, you can do with it as you see fit. IF it's based on someone else's work, you must respect what the previous author's conditions for re-use were (in this case, GPL).

It's quite likely that there is more "pressure" from the Free Software community for the release of "fresh" code than for the release of "fresh" books, but I think it's due mainly to two reasons, first of all, programmers _usually_ are not very keen on documenting, they prefer to "jump right in" and tinker, so they'd value code more than words. Secondly, as stated above, it's more difficult to express an idea on _working_ code than it's to express in words. As such, almost anybody can "try their hand" at explaining things and more or less convey a meaning. But due to the code's stricter formal requirements, it's harder to get right, so there is more value on a "proven" pice of code than on a "proven" written text. I guess we could argue about how hard is to write "well", and I think that slowly the F.S. community is starting to appreciate more the real value of a good writer's output; they're not as valued as "good programmers", but in time, as the code matures, words and texts will start recieving more attention.

My ## worth :)

Javier Jarava
Wednesday, September 04, 2002

( I feel like I am dragging this out and just boring people, but Javier has good points, so ...)

--------
Writers write, it's their writing, all of it -> License as you se fit.
...
Writers write, by modifying / changing / enhancing / integrating / adapting existing GPL / FDL texts -> The "new" text _has_ to be GPL'd (or FDL'd, as the case might be)
--------

Well ... I could write a book (wouldn't be any good), with all my own text, not "integrating" any GPL'd/FDL'd text. BUT: if I write about Apache 1.3, isn't that sort of like linking to it? My book would be complete nonsense if the Apache 1.3 code didn't exist (total sales volume would be around 1, as my sister would probably buy my mother one for Xmas). So, am I not building on it? Yet (I believe) I am home free as far as the GPL/FDL is concerned, right?

Just me (Sir to you)
Wednesday, September 04, 2002

(I hope I'm not boring everybody, either :)

Re: Writing a book on Apache and the legal / GPL issues regarding it.

The short answer: you are totally "home free" as regarding the GPL / FDL. You don't _have to_ follow any rules or guidelines with your text. Of course, following the english grammar makes it more likely to be read ;) , and misrepresenting or abusing the program and / or the authors might land you on a libel suit, but that's another matter ;) Being rational and expressing yourself properly in writing is up to you. Giving something back to those that made the book possible, too.

The long-ish:
We have to take into account that the license _only_ applies to the program's source code itself. So you can write about the _existance_ of the program ("Apache _whatever_ has been released"), about what it does ("Apache is the best invention since sliced bread"), about your reactions to it ("I love it"). And you can make a book out of it. The GPL makes no claim about any of those endeavours. It'd be analogous to an author saying on a book "I write this, but nobody can write about what I've written". Criticism is an stablished right. If we couldn't say that, for instance, we all hated Jar Jar Bins on STW Episode 1, where would the cinema critics be? (maybe doing something useful? :)

Of course, if The Media Companies and Assorted Friends have their way, then we wouldn't be allowed to talk about their wares without their previous permision. Thankfully, _as of now_ it's not necessary (don't get me started on the dangers and evils of the current Copyright system and, specially, of the one they want to get for themselves, or this rant / opinion / whatever would be _much_ longer. If interested, visit http://action.eff.org/ ).

So, the same that you're free to write a book on Microsof Access and you don't have to give anything back to MS (mmm.. maybe I'm wrong here; in any case, I think you _should_ be able to do it), you don't have to give anything back for your "killer book on apache".
Of course, a token of appreciation _is_ welcome, and earns you goodwill (so the next book will probably be better recieved and will get more help, quite likely)...

My 0,000000 (yes, not too much worth, but looong :)

Javier Jarava
Wednesday, September 04, 2002

*  Recent Topics

*  Fog Creek Home