Should Software be Free?

I recently read this article URL=http://www.gnu.org/philosophy/shouldbefree.html]this article by Richard Stallman on “Why Software should be Free”.

In it, he says that the concept of software having ownership is unproductive in many ways. First off, it makes software less useful because it cannot be readily modified for personal use. It inhibits innovation because a programmer cannot base her work off of the work of other programmers- every program must start back at square on. For this reason, it also makes programming less efficient. People are having to write code that has already been written, but is unavailible. Finally, and most obviously, it makes it so that less people can use the program. This makes the program less useful as a whole.

Stallman proposes various alternatives to the “intellectual property” approuch to software. He claims that before big profits came in to the picture, programming was a labor of love. People were glad to program just for the heck of it. I can attest to this. I have friends who spend many hours of their lives writing programs for things just to see if it can be done. He claims that programming is like art and music- plenty of people do it regardless of personal profits. If we can pay them a living, all the better. But we don’t have to offer huge riches to get all the programmers that we need.

He says that they slack produced by having a few less programmers will be picked up by the fact that they will be able to do their work more efficiently.

Stallman claims that programming should be treated as an academic field. Universities, public institutions and individual programmers could easily provide for our programming needs. Additionally, companies that thrive off of software (like hardware developers and support companies) will want to produce software to boost their own business. An intellectual programming community will thrive in the place of the current secretive world of programming.

It seems that Stallman has a very good point. Copyright, especially when it comes to software, is an artificial construction and has been distorted to the point that it severely infringes on the public good, and indirectly hurts individuals. There is nothing natural or obvious about it. If we rethought our ideas about software ownership, the world would not end. In fact, it would get better as we saw more and more innovative and creative code that is better suited to our needs.

The success and utility of current open source software seems to back up those claims, as does the proliferation of illegal software designed to crack games (those cracks don’t program themselves, and it is unlikely for anyone ever to get rich off of a crack). We’ve seen a huge amount of innovation coming from free software, and if less programmers were lured in to situations where their code remains secret (like most corporations) it seems that we would only see more.

I know that this posistion rubs some dopers the wrong way. I’m interested in what people have to say on the subject.

Well, as a musician I am against file sharing and have strong opinions on piracy. Due to the amount of threads that have already discussed these issues, I’ll stick to this topic.

I think that it is a very strong argument. I also think that people that are the best at what they do should be fairly compensated for it. Would the programmers be fairly compensated for their work? I’ve created quite a bit of music that I do not retain the rights to but made a good living off of its sale. I suppose if I wrote software, I could be comfortable with a similar situation.

I do think that competition is healthy though and creativity can be encouraged by financial incentive. I don’t create everything for money, some is just for personal enjoyment, but i have to be competitive to earn a living and this keeps me on my toes to always try to put out my best work. I would have a fear that we wouldn’t see as many improvements to software if the incentive wasn’t there to be above the competition and sell a better product.

Just thoughts…

I agree with basically all of that except for free software being more efficient.

When you come home after working an eight hour day, you don’t want to sit down and work some more. The only time you’ll come home and start writing code is when you’re passionate about the project. I certainly know what that’s like; I’ve been working on a freeware project for the past three years at great personal expense.

But sometimes I just don’t feel like coding. I’ll get passionate for a few weeks and then take a few weeks off. I’ll stay up until 8 in the morning working on a feature I personally want, but a feature I don’t care about will sometimes get pushed back to the next version, and the next version, and so on, even if it’d be very useful to others.

Now, with open source development, anyone who’s passionate about some feature can contribute to the project. But if no one who wants the feature (or the project itself) happens to be a programmer, who is going to write it? Who sits down and says “today I think I’ll write a control system for factory robots” or “I’m just itching to write a pizza delivery order tracking application”?

Documentation is another weak spot in open source. Programmers hate writing documentation - I’ve caught myself coming up with new features just to avoid documenting the features that are already in. If I were being paid to write docs, I’d probably get it done in a fraction of the time; if I were running a software company, I could just hire someone to write it.

The current success of open source projects shows that financial incentive isn’t necessary - the Apache web server is far more secure, stable, and widespread than Microsoft’s IIS; also witness the success and robustness of Emacs, Linux, and GCC.

OTOH, they also illustrate the drawbacks of programmers writing for themselves. Linux is only just now catching up to Windows in terms of user friendliness.

I agree with Stallman only so far – up to the point where he’s preaching to the choir. I think most anyone who knows who Stallman is and who reads his work is at least partly sympathetic to his views! Probably it’s wrong to say that anything “should” be free; the market simply charges what it will bear.

Anyone who doesn’t want to buy software has the option of installing Linux, getting a build of Mozilla, and going to town. The problem is that anyone who can do this is already pretty computer savvy. I’ve dealt with people that have trouble clicking the mouse! A lot of that open-source software is superior to anything else out there, but it does require effort to use. Most computer users aren’t ever going to program their computers to do anything (or even think that it’s possible), and so these people are willing to pay a lot of money to not have to do what Stallman thinks is the best part of computing!

Further, the open-source model seems to work best with the large group of collaborating individuals (think Cathedral and Bazaar). This is a fine model for some things, but some applications really do demand a more top-down approach. I’m thinking games here, which these days have to have artists working on CGI cutscenes, scriptwriters, the horde of programmers, etc. It’s more like a movie model than anything else, so it needs centralization – and that costs money. Also, if you’re not capable of writing updates yourself, you might spend a lot of time waiting and hoping for someone to do the little thing you need done; and time can be money. I’m also thinking that a centralized model will get things done that are otherwise too difficult, tedious, or uninteresting for your average programmer.

So free software can be a great thing, but it’s kind of silly to expect the whole world order to uproot itself in a moment. If Stallman wants that model to take hold, he’s just got to show that free software is better (I’m thinking Apache and Linux). Until it actually serves the needs of computer users better than what’s out there now (the actual needs, not what programmers think the need should be), then free software shouldn’t rule the world. I’m naive enough to think that it will eventually.

If open source is so great at producing great software, where can I find open source games to compare with the best ones coming out for PCs and consoles right now (not 10- or 20- year old games that were good in their day)? Where are the databases that can duke it out with DB2 or Oracle? Where is the open source user interface that is so much easier to use than the Win or Mac interface? Where is the CAD program comprable to like likes of AutoCAD? Programmers might program the stuff they’re interested in for free, but I’ve seen no evidence that the magic of open source gets programmers doing things like putting on a decent interface or making software the programmer himself doesn’t use.
I’d have to say that an existing and available closed-source program is both more useful and available to more people than nonexistant closed-source software. And unless you can show me the open-source software to fill these various niches, I’m simply not going to buy the argument that making all software ‘free’ is going to provide me with better programs. Also, if ‘free’ software is really so much better a system than proprietary software, why isn’t it simply knocking the closed-source stuff off of the market? There’s no law against open-sourcing your own software, yet I don’t see closed-source software in general being knocked off the scene by Stallman and friends.

His screed about making programming into an intellectual and academic pursuit really shows his true motives. Stallman simply doesn’t believe that the ordinary man should be allowed software that suits him, that instead the common rabble should be content with whatever scraps the self-ordained gods of programming want to toss our way. Sure, Stallman will program something that amuses him, but he I’m not aware of him, for example, sitting down and working with users to make a simpler interface, or even working on software he wouldn’t personally be interested in.

Further, if he really, truly, believes that software should be free from restrictions, then why doesn’t the GNU public license which he loves (he might have written it, I forget) follow that philosophy? It doesn’t, if you use software written with the GPL, then you are required to do certain things (such as make your own source widely available) - that IS a restriction, so his own favored license doesn’t even follow his philosophy.

Also, has he ever proposed a method of dealing with liability for open-source programs? After all, if I’m a doctor selecting between two pieces of diagnostic equipment, I think I’d have to chose the one backed by a company that will stand behind the software on theirs, correct any problems with it, and be liable if it should cause injury to someone, rather than the one slapped together by some guy in his spare time that I might be able to get support for by posting on a newsgroup and which will result in me being liable for any errors.

**
This cuts both ways. Standardized software, especially for things like operating systems, is a good thing. Can you imagine what would happen if there were a hundred different “mostly” compatible versions of Windows? Applications that worked “pretty well” with “most” versions? Geeks might enjoy tweaking Linux and porting software, but the masses wouldn’t.

**
Once again, this cuts both ways. In some case, it encourages innovation.

**
The problem is that a big-time software project requires a big-time commitment of resources. Lots of people love cinema. However, very few people (apart from John Travolta and look where it got him!) are willing to drop a hundred million dollars to make a movie just for love.

It’s all very well to say that people program because it’s a labour of love. However, when they do so, they work on what they love, which isn’t necessarily what the market needs. As Mr2001 pointed out, very few people have a deep passion for writing, say, back-office software.

One of the problem with Stallman’s suggestion is that overall, it would seriously limit innovation and programming. Now, when software is produced and sold, the development costs get spread over a large number of users. Under Stallman’s proposal, if a company needs a piece of software that doesn’t exist, they must absorb all the development costs themselves, and then donate the fruits of the labour to the world at large, including their competitors.

**
Then why don’t they? What’s stopping them? The biggest flaw in this proposal is that it treats intellectual property like a binary proposition. It’s not. Open source demonstrates that it’s not. Intellectual property and public domain software can exist perfectly well side-by-side. Nothing prevents anyone from creating a program and giving it away. It’s called “freeware.” Indeed, nothing (at least not copyright law) prevents an open source consortium from re-developing “Windows” from scratch and giving it away.

The point here is that it’s not an either-or proposition. Stallman wants to make it impossible to protect software from copying. That’s just as wrong as making it illegal to give it away.

**
I’m not sure I follow this. Are you suggesting that programmers are somehow being tricked into thinking they’re working on open source code? If you’re saying that “If only corporations couldn’t afford to lure programmers into working on their projects by paying them, the world would be a better place” I’d have to disagree. Programmers need to make a living just like everyone else. In fact, if you were to look into it, I’d bet you’d find that people who work on open source projects can afford to do so precisely because they also have a well-paid, regular programming job. In other words, intellectual property rights are indirectly subsidizing open source programing.

But what he’s forgetting is that only a tiny percentage of people even have the slightest idea how to modify it in any useful manner. And, like Truth Seeker pointed out, having a standard to work off of makes all programming easier.

I don’t see this as being entirely bad. THIS encourage innovation, as it results in numerous different methods of writing a similar program… and the best method would win. If everything were free and open-source, the first version to hit the market would be what everyone would work off of (aside from a select “labor-of-love” few).

Further, if all software were free and open-source, people who write a really good program would horde it for their own use… why bother giving something out for nothing when you worked so damned hard on it? For that matter, why bother putting so much effort into something if it’d just be a waste of your time and there’d be a thousand hacked-to-pieces versions of it hitting the Internet in a matter of weeks?

Either way, people would inevitably start charging for their software again.

He’s forgetting that before “big profits” came into the picture, programming HAD TO BE a labor of love, as nobody wanted to do big-time programming if it was just going to be a waste of time!

But how often do they come up with a useful, ready-to-market program? Not very often, I’m betting.

No, it would set programming back three decades. Nobody would want to do it.

I disagree. Copyright has allowed a set standard to come into existence, while Stallman’s proposal would turn the marketplace to chaos.

Uh… what is the largest software company in the world, again? They sure don’t use open source.

Free software is great; I have a number of fantastic freeware utilities that do exactly what I want and I’ve even seen the authors incorporate my suggestions and requests into subsequent versions.

That’s fine, but for some businesses, their entire revenue is based on the software that they produce, maintain, support and sell; arguably, in an ideal world, everything would be free - nobody would take more of anything than they needed and individuals and teams would all work selflessly and hard to create useful and life-enhancing new ideas and products, knowing that their contribution was making a better world that they too could live in.

Any idea how we get there from here?

You forgot that there are a number of versions of Windows out there and they are, as you put it, “mostly” compatible with each other. So it is a myth that Windows is some sort of standard because its codebase is clearly splintered. XP is suppse to be an effort to end this insanity, but the new MS licensing scheme are driving users away.

Also *nix needs no tweaking once it is set up, precisely the same way as Windows. I don’t see what the problem is.

The analogy doesn’t stand since software development is a purely intellectual process. There is no need to pay for film stars, advertising, and the whole works.

That are all sorts of “back office” (whatever that means) programs out there: databases, email servers, etc.

Conversely, they can make use of the code that their competitors produce.

Many companies are doing that. What’s your point?

Either you make money off it, either you don’t. Where’s the third, forth, etc., choice?

There seems to be some misunderstanding with various sorts of software. Freeware is not the same as Free software/OSS. Free software is not “free as in beer,” but “free as in speech.” That’s why the source code is given away. On the other hand, you don’t get the source code for freeware stuff. Public domain is an entirely different beast. Stuff in public domain has no copyrights attached while Free software, freeware, etc. are copyrighted.

Linux/*BSD is a very good substitution of Windows.

Hm, there seems to be some kind of confusion here again.

Just because somebody has a programming job doesn’t mean that person is a beneficiary of intellectual properties. This is only true if said person holds a developement job in a software house that developments for a market. This is not true for most programmers who do stuff in-house.

Standard of what? There are all sorts of standards in the sector, from hardware to software to encryption. You name it, we got it.

Or maybe multiple copies of the same program just dressed up slightly differently? The truth is various ways of programming the same thing is not the same as having a better method, which is called an algorithm or protocol.

This shows you are just pulling that from your backend. You haven’t even studied the field at all.

They can, nobody’s stopping them. Just two points:

  1. They can’t base any of their code on GPL

  2. Nothing stops other people from developing the same thing and give it away for free.

Because you can’t wait? Because you think you are No. 1 in doing that? That’s called bragging rights and it’s very important to hackers (traditional sense, not media sense).

I don’t see there is a price tag on apache yet…

Huh? You say sendmail, apache, bind, emacs, samba, *BSD, Linux, etc. are not useful and ready-to-market? :confused:

How wrong you are. THe Internet is made possible by these programs. Try again next time.

Copyrights and standards are two different things. You can have copyrights yet no standards if there are a number of companies competiting in the same field, such as operating system or office automation.

On the other hand, a piece of free software can be so good that it sets a standard.

  1. You are wrong, they do USE open source. They just haven’t released any code under GPL

  2. Don’t get me started on their illegal business practices. ::thumbs down::

esr (that’s Eric S. Raymond for you outsiders :p) suggested that the OSS model works great for mass market items but bad for custom software. Also, just because software is free doesn’t mean support is. RedHat seems to be making money, and so is Cygnus, a company that supports gcc.

Good question.

You’ve got to pay the programmers, pay for the equipment they use to program, and there’s an awful lot of software advertisement going on. I’d say the analogy fit just fine.

Marc

  • I realize in the perfect open source world that programmers would not be paid. *

We pay programmers now because their services are demanded more than “whenever they feel like it”. A better solution would be to pay programmers to develop software instead of paying them for the actual software. Similar to how lots of websites survived the dot.com burst. The websites survived because people would rather give the webadmin money rather than see the website go under.

People would pay the programmers how much they think they are worth, and the programmers would continue producing software if they made enough money. As long as a buisness stands to gain money from software they are going to want to pay for it to get it sooner.

Games and other non “pure code” projects wouldn’t really fit in either. All the code could be open source and you would still be missing all the copyrighted images and storyline.

Software development is not only an intellectual process. it is a business. And businesses need to generate money. Giving stuff away for free has never been a good business model. If you are trying to create something for public consumption, you have to generate some source of revenue to cover the costs of producing it. Its as simple as that. The most effective way to generate revenue is to charge the people who use your software.

If I am running a software business, I don’t care if some guy who programs as a hobby or for my competitor is interested in finding out how my software works. That’s his problem. Why should my people expend their effort and my money so that someone else can just come along and copy it for free? How does that make sense?

Open source software is a wonderful thing, and I support both the principle and the practice as excellent alternatives to proprietary software development. I disagree strongly, though, with those who argue for making it the only option for software development. Large project development is quite often dependent upon large investments of resources which are difficult to justify when the benefits of said investment cannot be preserved for the investors. The UNix operating system, and it soffshoots, actually provides an interesting example for both sides. It has become the flagship of the OSS movement, and deservedly so, yet it began life as a commercial investment with a licensed distribution scheme. It was also, of course, aided significantly by government grants in the early period of “open distribution” (DARPA anyone?).

So, is this a success story for oen source development or for proprietary software development or for government spopnsorship of specific computing developments? To my mind, the reality is more complex than the idealogues (on both sides of the question) like ot present. I think we are best served by having both the protections of copyright and a practical means for developing and distributing open-source software.

i’ve read about Stallman in the book REBEL CODE.

i think he and Bill Gates are at opposite extremes and they have different advantages and disadvantages. i could see why people that write code voluntarily could write better code, but what are they supposed to do for a living? i don’t question their right to give code away, i have two linux machines and i hate macrosh!tware, but thier documentation often sucks. these geeks write code to play ego games with other geeks, not really for average users. it’s their HOBBY. of course the macrocrap is changed for nothing, who wants to watch an icon of a piece of paper flying across the screen just to copy files? i had to pay some programmer to produce that crap? and who need noises to open windows by? and you get to select noises. i spent more than an hour selecting and listening to all the different noises out of a kind of masochistic fascination before turned the crap off. do you prefer the old microsoft sound or the new microsoft sound?

plus UNIX evolved in the university environment where Stallman grew up and won’t leave. he’s not trying to put kids thru college. he doesn’t have any. he won a $250,000 grant and lives cheap. his ideology is great for people that want to live like him. UNIX is a GEEKY operating system. what does the command ‘less’ do? it displays a file on the screen. it works better than ‘more’. the name is a joke, it doesn’t tell you what it does. most users don’t want to learn other peoples stupid jokes.

i think we should try FAIRWARE. programmers give machine code away with payment info. users voluntarily pay programmers if software is worth it. users decide what it is worth. pay $50 every year if they want. this gives good programmers income and time since they don’t have to show up at 9 to 5 to feed themselves. gets more code for users. if other programmers want to mess with the code they contact author. most people can’t and don’t want to code.

I agree, they are very useful and ready to market, however not for the HP/Compaq set. In fact apache, emacs, and samba are poor examples and actually prove SPOOFE’s point. Apache - how many home users need a web server? Emacs - very powerful text editor, but how many home users could remember how to use it? Samba - who cares, unless one is trying to network a POSIX based OS to Win NT? I don’t know what Bind is and I am not going to bother looking it up, but I will assume it doesn’t allow a home user to create a birthday card for Grandma.

OSS is a philosophy with some very strong points, but so does Marxism, that don’t mean either have all the answers :slight_smile:

Wow, that came out a lot more surly than I intended… sorry bout that

This isn’t hardly the same thing. Windows has (supposedly) evolved. There are only a handful of Windows versions and they are designed to be reverse compatible with existing software. Each version is supposed to have all the features of the original version plus additional can’t-live-without features. Having a hundred or more Windows variants designed by who knows who would be a completely different proposition. They wouldn’t be cross-compatible. In fact, they would not be intended to be cross compatible as each version would, one assumes, have different features.

** Well, one of the key supposed advantages of letting software be “free” is that people can “customize” it. Also, you’re imagining a world where your word processor is “free” but you might well have to make some “minor” modifications to its source code (or to the OS) in order to get it to work. The masses, however, get frustrated enough with setup wizards.

**
There are problems with this statement on many levels. First, bought any games lately? They have far more in common with films than they do with “Donkey Kong.” The simple fact of the matter is that if complex games where not protected by copyright, they would not be created.

Second, you overlook how complex and painstaking a task much software design is. It isn’t just some geek sitting down and whipping up a cool new feature. In fact, that’s often one of the easier parts. Identifying customer requirements, compatibility issues, defining standards, etc. is far more tedious and just as expensive.

**
The fact that you don’t know what I’m talking about ought to give you a clue that it’s pretty boring. Know anyone with a life-long passion for designing and programmin integrated inventory control and accounting systems? I thought not.

**
The problem is that no one will ever write any code in the first place. Why not let your competitor spend fifty million dollars writing code that you can scoop up for free? The question works the other way, as well. Why should I write this code? It’s going to cost me fifty million dollars but it isn’t going to give me any competitive advantage since my competitors will get it for free. In many cases, while corporations would use the new code if it were available, they would have no incentive to use it if no one else was. To put it another way, economic efficiency is relative. Corporations only want to be more efficient if it will either allow them to earn more profits or if they need to in order not to lose profits. If their competitors are equally inefficient, they have no incentive to improve efficiency, especially if doing so will also improve the efficiency of their competitors.

**
Perhaps you should respond to the entire paragraph rather than one sentence out of context. I said,

**
The point is that open source/public domain software is free to compete with “intellectual property” software. If it’s a more efficient model that produces a superior product and does a better job of addressing consumer demand, then it will prevail. Certainly, it has a substantial price advantage.

Open source might well be an ideal way to develop certain applications. However, the idea that open source should be mandated and that protecting software should be illegal is, and I search unsuccesfully for a different way of putting this, stupid.

You’re mistaken. Even companies with in-house programmers benefit from intellectual property law. As I discussed above, very few companies would have any interest in having programming done if they couldn’t protect their investment.

The point of all this is that if open source/public domain software is a better model, it can compete and triumph in the current intellectual property law regime. No one is forcing people to charge for their software.