198
votes

As an entrepreneur/programmer who makes a good living from writing and selling software, I'm dumbfounded as to why developers write applications and then put them up on the Internet for free. You've found yourself in one of the most lucrative fields in the world. A business with 99% profit margin, where you have no physical product but can name your price; a business where you can ship a buggy product and the customer will still buy it.

Occasionally some of our software will get a free competitor, and I think, this guy is crazy. He could be making a good living off of this but instead chose to make it free.

  • Do you not like giant piles of money?
  • Are you not confident that people would pay for it?
  • Are you afraid of having to support it?

It's bad for the business of programming because now customers expect to be able to find a free solution to every problem. (I see tweets like "is there any good FREE software for XYZ? or do I need to pay $20 for that".) It's also bad for customers because the free solutions eventually break (because of a new OS or what have you) and since it's free, the developer has no reason to fix it. Customers end up with free but stale software that no longer works and never gets updated. Customer cries. Developer still working day job cries in their cubicle. What gives?

PS: I'm not looking to start an open-source/software should be free kind of debate. I'm talking about when developers make a closed source application and make it free.

21
  • 76
    "Ship buggy product..." Sigh :(
    – user1249
    Sep 14, 2010 at 7:09
  • 20
    Free software breaks? I'm sorry you choose bad free software. Have you tried something like Ubuntu? So much quality software in one nice package. And, IE or Chrome being free isn't a bigger issue to you? How's a solitary programmer going to compete with that?
    – dlamblin
    Sep 14, 2010 at 22:05
  • 60
    I've had plenty of payware apps that have died after an OS upgrade and were not updated.
    – mlk
    Sep 15, 2010 at 8:31
  • 17
    Free software breaks more than commercial software? Thats completely false. Feb 6, 2011 at 13:43
  • 50
    99% Profit margin? Can I take some of the drugs you're on? My time isn't worthless.
    – Incognito
    Feb 6, 2011 at 14:32

62 Answers 62

293
votes

Because I don't want to feel obligated to provide technical support or offer refunds.

15
  • 4
    this is a really great answer, so much win for such a small amount of words
    – MetaGuru
    Sep 13, 2010 at 18:37
  • 13
    We've had good luck in the past with pricing simple apps at $8. Maybe it's just a Mac thing, but we found users would easily part with $8 and then wouldn't feel particularly entitled to a high level of support (they were always surprised at the high level of support they got ;) ) Actually getting money encourages you to keep working on the app, make it bigger and better. If we feel it's significantly better, then we simply raise the price accordingly, usually to $20. I don't believe in software costing much more than that.
    – Ken
    Sep 13, 2010 at 21:13
  • 8
    @BlairHippo: Why would you want to be giving out buggy, unsupported, undocumented software in the first place?
    – Ken
    Sep 13, 2010 at 21:14
  • 17
    @Ken: maybe because it was made for scratching the dev's own itch (and thus didn't need to be very fancy), and then the dev realized many others wish to scratch a similar itch? Sep 14, 2010 at 10:49
  • 60
    Giving away your software for free won't stop people from complaining and being jerks. But you'll feel zero guilt telling them to go F themselves when they didn't pay for it. Sep 15, 2010 at 3:21
217
votes

Sharing

Most of us make use of software that has been provided to use free of charge. As a result, it makes sense to share our own software free of charge as well. Basically, we are exchanging our software for the other free software but without the overhead of actually going through a transaction. There will be leaches who do not contribute, but since distribution is so cheap that does not matter.

Selling is Hard

Actually trying to sell software makes the process much more difficult as you have to market, collect money, and worry about the legal ramifications of selling to people. For a lone programmer this takes them away from what they really want to be doing. As a result they may release their program simply so that other people can have benefit even if they cannot.

A New Model

It might be argued that a new model of software development is arriving. The model of selling software is an attempt to take physical-world selling and apply it to software. However, software is not like the physical world. Because distribution is so cheap a couple of issues arise.

  1. Letting someone use your software is basically free for you.
  2. Attempting to prevent people who haven't paid for the software from using it is really expensive.

Under this view, attempting to charge per copy of the software is a losing game. Thus you should attempt to make money on software-related services, not software itself. Thus you might charge for a support contract, hosting services, etc. rather than the right to use the software itself.

Incidentally, this model is used by webcomics, web series, etc. which give the primary product away for free and sell related merchandise.

12
  • It's also similar to Trent Reznor's model in giving away so much of his Nine Inch Nails music. I think this is the link (but I can't watch to check because of the machine I'm using at the moment) youtube.com/watch?v=Njuo1puB1lg
    – Hans
    Oct 25, 2010 at 10:29
  • A lot of the issues of "Selling is Hard" are mitigated by the AppStore for iOS: I realize this is a unique case, but it does handle some of these concerns for a tiny chunk of a very huge market. Oct 25, 2010 at 16:12
  • 1
    @Yar: Getting apps onto the App Store is not difficult if you pay attention to the rules and guidelines. Getting people to notice it once there, among 150,000 or whatever it is now other apps, is. Oct 25, 2010 at 19:28
  • @David Thornley, yes, but marketing is a problem for free apps too. As the App Store has demonstrated, though, sometimes getting a million users willing to pay $1 is easier than getting 100 users willing to buy 10K in services. I think I've got the zeroes right ;) Oct 26, 2010 at 1:24
  • 18
    The "selling is hard" point is something many people overlook but is very true. Most programmers are bad at it and generally hate doing it. +1 Feb 6, 2011 at 15:26
117
votes

Releasing free apps and working on open source programs are great advertisements for selling a product, namely you. (Alternatively phrased: free apps are a loss leader for selling your time.)

There's also the concept of the "gift economy", where the more you give away the wealthier you are. Why would I not donate back to my peers/society at large when I have received so much from so many people?

Lastly, what other field allows you to directly affect the lives of millions of people by writing something that makes their lives that little bit easier?

13
  • 23
    Why? Bills. Food. Sep 13, 2010 at 19:49
  • 30
    It is not an either/or situation. You can actually have a paid job AND release free software.
    – helgeg
    Sep 14, 2010 at 5:43
  • 21
    @Paul I program for food. In my spare time, I also program and give away at least in part because other people gave me stuff: Squeak, SBCL, FreeBSD, exim, stunnel, epic, apache, emacs. And that's just the stuff off the top of my head. Sep 14, 2010 at 6:17
  • 12
    @Mystere Man: If I charged for software I wrote in my spare time, I'd be butting up all sorts of interesting barriers (much more complicated tax return, possible no-compete issues). Since I write code in my spare time anyway, I have the choice of "only I see it" or "I give it away". To me, that balance tends towards "give it away".
    – Vatine
    Feb 6, 2011 at 11:16
  • 13
    @el fuser, Mystere Man: It's an enormous amount of work running your own business, involving a lot of dogwork that I care nothing about, with a high risk of failing. Instead of, say, doing what I love all day, with a good enough salary, and financial security for my wife and children. So by all means, go run your startup. Good luck. Feb 6, 2011 at 14:09
103
votes

I suggest that you watch this fantastic video to learn why money is often not the motivation for doing things: RSA Animate - Drive: The surprising truth about what motivates us

I recommend that you watch the whole thing, but it also directly answers your question around the 6:40 mark.

3
  • 4
    THis is probably quite spot on why people write software for free (and really why anyone does anything without charging for it)
    – nos
    Feb 4, 2011 at 22:06
  • 5
    Awesome video! TYVM for sharing it!
    – jweyrich
    Feb 6, 2011 at 10:39
  • 1
    He mentions Atlassian who makes really nice software. atlassian.com
    – user1249
    Sep 30, 2011 at 10:42
65
votes
  • Some people write programs for the fun of it—selling it turns it into work.
  • Some people rank the number of people who use their programs above how much cash they get for it—selling it pushes down the first where they don't care much about the second.
2
  • If you don't want to be responsible for all of the responsibilites of selling your product then atleast license it to some company and get royalties or similar. Jul 7, 2011 at 8:06
  • @Nick: It's work, not because of the effort, but because I'm getting money for it.
    – BCS
    Jul 8, 2011 at 16:26
39
votes

I release my software for free because I have spent time and energy on it but have neither the time or inclination to market it, someone might-as-well benefit.

By personal philosophy is (and I do sell software too), "Competition makes you better".

If you can't create a product that blows the competition (free or not) out of the water you're going to be in trouble.

5
  • 1
    But you don't even need to market it! Just make a basic webpage and if it does something that people need, and typing that need into Google makes your webpage come up, then you'll have instant customers.
    – Ken
    Sep 13, 2010 at 15:00
  • 15
    @Ken Yes but if you don't market it, nobody's going to find it, and then you're not going to get paid anyway. There are gazillion programs out there for every task. Divide the number of potential customers by gazillion and you get an epsilon percent that will be exposed to your program by sheer chance, and they are not going to buy it because they are just some teenagers who just want to use your program once, ad hoc for something. So what's the point? Without thinking about the business practices around your program you're not going to be paid anyway (not any significant amount anyway). Sep 14, 2010 at 5:10
  • I'm just speaking from experience. We sell huge amount of software and about 99% of our business comes from people Googling what our software does. The first thing to come up is either our site, or an article talking about our product, which links to our site. Of course, this doesn't work in the case of heavy competition. But if there's heavy competition you've sort of already lost.
    – Ken
    Sep 14, 2010 at 17:07
  • 2
    @Ken There it is: "...or an article talking about our product". How did you manage to get someone to write an article about your program? People don't usually write about some obscure audio-video format converting program buried deep in the download.com archives. Just the fact that a journalist noticed you means you invested more efforts in promoting your program than what many do-it-for-fun programmers are willing to invest. Sep 14, 2010 at 17:24
  • You're writing something obscure, so you've already lost. If your program is useful to a lot of people, journalists will write an article about it. Believe me.
    – Ken
    Sep 14, 2010 at 23:38
30
votes

A lot of free apps are created by someone who is fully employed and has come up with an idea for an application that they produce in their spare time. That person doesn't "need" the money to survive.

A lot of times finding the mechanisms to market, sell and collect payment are just not worth the effort and sometimes individuals just enjoy offering something they thought as useful to the general public.

If you are competing with a free application then the best strategy is to make a better product. I've often purchased an application over using a free version just because it offered more features or was better implemented in some way.

25
votes

There does come a point where enough is enough, and then there is the fact that it does take more effort to sell something even though it may be a small effort. I still need to come up with a way to collect money for example.

I think the reason I post free apps that are closed source is simply because I love full featured freeware myself, so I like sending it out to the world with the same idea in mind. When I can get a significant task done with a completely free software package it feels great, so I like to share that.

Really if the answer of 'why not make it free?' comes down to 'because you can get piles of money' then it all is about what your motivation for releasing some software is. Not everyone is motivated by more and more cash.

4
  • 2
    It's less about the cash itself, but the ability to make enough of it to be able to work for yourself... not for a company or as a contractor, but entirely for yourself. Software makes doing this so easy. No office, no overhead, etc. Once you've done that you can never go back to working for someone else.
    – Ken
    Sep 13, 2010 at 14:58
  • 9
    @Ken: That's not strictly true. Working for yourself entails certain bits of work that not everyone wants to be involved with. I have looked at the option of working for myself, and while I feel confident I could do it, I have no desire to deal with a lot of the minutiae that would come with it. I found a company I'm happy to work for, that values me, and I'm content working for them. Sep 14, 2010 at 5:10
  • 2
    Question - If you are releasing it as freeware, do you have a specific reason not to release it as free software (open source)? Feb 6, 2011 at 13:47
  • @mathepic if I am releasing something free then I see no reason why I can't also include the source code, though there could be a situation where one used certain code in both free and sold products and thus would want to protect the code since it is also used in the sold ones
    – MetaGuru
    Feb 7, 2011 at 19:41
25
votes

I see two main reasons:

  • An individual programmer may just want to be known and loved.

  • There is an alternate economic model behind the scene. Some famous examples: iTunes, Acrobat reader, Firefox, Ubuntu are all free but their promoters all make money with these products (selling entertainment, paid features, audience for search engines, support).

1
  • 1
    This alternate economic model would start to work as soon as the baker around the corner started to give away their bread in exchange for the free software they have downloaded.
    – Giorgio
    Nov 30, 2012 at 10:07
23
votes

Why does anyone offer free advice here on Stack Exchange when some people make money answering technical questions? I think this points to a basic psychological need to be generous. Jorge Moll and Jordan Grafman, neuroscientists at NIH, have found that charity is hard-wired in the brain. See the Washington Post article ``If It Feels Good to Be Good, It Might Be Only Natural'' at http://www.washingtonpost.com/wp-dyn/content/article/2007/05/27/AR2007052701056.html

Both Kohlberg's theory of cognitive development and Gilligan's ethics of caring view people as interdependent and developing towards increased empathy and altruism. This behavior is necessary for humanity to survive and thrive.

Lewis Hyde says there are two types of economy: (1) The exchange economy (economy of scarcity), where status is accorded to those who have the most and (2) the gift economy (economy of abundance) where status is accorded to those who give the most. Examples of gift economies include marriage, family, friendship, traditional scientific research, social networks (like Wikipedia and Stack Exchange), and, of course, F/OSS.

IMHO, Eric S. Raymond and Linus Torvalds performed a miracle: transforming selfish programmers into generous programmers. This is very similar to how Elisha transformed 2,200 selfish students into generous people with the miracle of ``the feeding of the multitude.'' In II Melachim 4:42-48 Elisha must support 2,200 students. There's a famine. His students are hungry and selfish. Each of them has some food, but they refuse to share with each other. After Elisha distributed a mere 22 loaves of bread to them, they began to share with one another. Soon, not only are they all fed, but there's food left over. The true miracle is not that bread materialized out of thin air, but that those who were once selfish became generous, inspired by the example of one person's generosity. Something similar has happened over the last couple decades, as a result of the release of Linux and other free software.

20
votes

I get paid enough at my day job as a programmer. I mostly code on my own little projects for fun. I release almost all of what I write on my own time for free and under a free/open source license because:

  1. These are fun projects (e.g. an interpreter for a simple language, a tool to clean up JavaScript code, various small scripts, etc.). These are not "enterprise" applications. Not even small applications home users need to get some job done or for entertainment. Okay, there might be a few people who might actually pay a very small amount for some of the tools I write. But really, it would be a trifling sum, and I really don't need the money badly enough for me to consider the effort involved in marketing and selling them.

  2. As someone growing up in the 1980s and early 1990s, and that too in a developing country, I understand how it feels not to have enough money for or access to the tools I need. Payment is a big hassle for a lot of people not living in the west, and even if it is possible, a few dollars can translate to a lot of money for a student on the other side of the world. If most of the people who might actually use these tools wouldn't be able to pay for them anyway, what's the use of charging for them?

  3. As other answers have already pointed out, my own projects, as well as the effort I put into any larger projects that are not owned by me, pays off for me as advertisement for my skills. Apart from such things as making me more liked by other people, it also helps me getting noticed by potential employers and thus helps me career-wise. A freely available software is bound to be better known and more widely used to something of equal quality but not free of cost.

As other answers already point out, if the efforts of a single or a small group of people who are coding in their spare time are threatening the commercial prospects of software written by people doing it to make a living - I think it is up to the latter to work harder to make their product worth spending money on rather than the other way around. If anything, it just sets the bar higher for quality software which is good for all concerned.

It's like saying giving away your old clothes to charity hurts people in the textile industry.

18
votes

I've come across quite a few app where I ask my self "You are asking for $20.00 for this crap?" I know I can do it better and in order to "stick it to the man" I release it for free.

I understand that there is lots of time and money going into those apps but I also believe that if you are going to put out a product for sale, it should be top notch or just give it away.

4
  • 7
    Agreed. People should not be charging for crap. If what you can make in a few days is just as good as what someone is charging for, then obviously it's not worth $20.
    – Ken
    Sep 14, 2010 at 17:09
  • I've done that once. It wasn't as much fun as I thought it would be. It's much more fun to do it for the sake of the kudos you receive (in other words, ego stroking). Feb 6, 2011 at 16:00
  • This reminds me of the Timer application in Android that sells for like $10.
    – Earlz
    Feb 6, 2011 at 22:20
  • Except you're not really "sticking it to the man". You might well be "sticking it" to a person trying to make a living to feed their family. Also, you're trying to solve a non-issue. If the software is so bad that nobody buys it then it will either die out in time or improve to a usable point. There is no in-between where anybody is forced to buy software that is good for nothing. Feb 6, 2011 at 23:18
18
votes

Quality

Having the source code open, quality can improve drastically. Think other programmers improving the code, think automated source code analyzers.

Durability

Closed source tends to get lost when there is some better/more competitive product. Open Source can be shared forever.

Sharing...

is caring. Now everyone in the world is enabled to use the functionality in your app, including third-world countries.

Self improvement Feedback from fellow programmers is now more possible, is free and is offered by fellow programmers who actually care.

Freedom

I hate getting locked in by companies. Likewise, I don't want to produce software aiming for the same.

CV building

Instead of emailing a CV, you can now email a bunch of links referring to projects/patches I contributed. Cut the crap, no more bullshit bingo on the CV. Just a list of contributions.

Bible mindset

A greedy man brings trouble to his family, but he who hates bribes will live. (Proverbs 15:27, New International Version)

A business model based on selling apps is usually greedy, a business model based on free software and providing services with them less so.

Viral

Open source software is (depending on the license) more likely to get included in other software packages.

Decrease business risk

Basing software on open source components, decreases dependence on third party businesses. When a business goes down, your business is still able to gain support for the code/software. Android is a great example of how disruptive open source can be, and how current businesses carry higher risk when using certain non-open source software.

Fun

I have a project which is just fun to do. No need to require a business around it, with all the hassle coming with it.

Recognition

You can hardly be recognized by closed source. Open source opens up lots of possibilities to become recognized.

Create services market

Change the market from a per-copy based revenue model to a services-based revenue model. Example: Lots of software around the Google app engine stack is free as in beer. Google makes money from providing the infrastructure.

For the children

Piles of money disappear, but your shared source code never disappears. Future generations will be thankfull for your contribution.

Reinventing the wheel sucks

We stand on the shoulders of giants. What if Alan Turing kept his design proprietary? Would we have a software ecosystem like we have today?

Customization model

Give the software away for free, charge for customizations. For example, offer free CMS software but charge for specialized modules appropriate for custom business requirements.

Winning

Charge less for your product, and you gain customers. Going lower then asking no monetary compensation is hard. You increase chances to outcompete others.

Independence

Charging for software means becoming dependent on paying clients or paying advertisers. You might not want to need money from businesses with unethical practices.

5
  • 2
    We stand on the shoulders of giants. Reminds of a great quote I read on SO once, but I can't find it anymore. It pretty much describes free software (and the concept) for me: You can stand on the shoulders of a giant, or on a big enough pile of dwarfs...works either way.
    – Bobby
    Feb 7, 2011 at 16:22
  • @Bobby: Attribute Newton. He said that and it's one of my favourite quotes (en.wikiquote.org/wiki/Newton), it goes more precisely like this: If I have seen further it is only by standing on the shoulders of giants.:)
    – phresnel
    Nov 23, 2011 at 9:51
  • 1
    @phresnel: Yes, the original one. The modified one originates from somewhere on SO, most likely on a deleted question. I'm unable to find it, I mean, it's quoted multiple times through out the web, sometimes even mentioning Stack Overflow, but no attribution or link...makes me sad somehow.
    – Bobby
    Nov 23, 2011 at 10:04
  • +1 (I would give 100 upvotes if possible) "Reinventing the wheel sucks": I think we can hardly quantify how often the wheel is reinvented (re-implemented) in the software industry. I think we could save billions of dollars of development if we only used open source software.
    – Giorgio
    Nov 30, 2012 at 10:11
  • Selling apps now is greedy? Bummer, because the thngs i need to survive are not free.
    – Andy
    Sep 12, 2015 at 18:40
14
votes

Programming can also be a hobby

Many people treat programming as a hobby, writing programs for fun when they get home, and sharing them on the net, or participate in open source projects.

This is just like photographers like to take pictures and share them with the world on sites like picasa or flickr, and musicians that like to create music and share it with the world on sites like myspace.com or mp3.com, then some programmers also like to share their work with the world.

1
  • Superb. Exactly my vision of spare time coding (and I also do photographing from time to time).
    – phresnel
    Nov 23, 2011 at 9:49
14
votes

Software is free, because it's information. The expression is that "Information wants to be free."

Why is that? Why does information want to be free? Consider Stack Exchange. Do you see how Stack Exchange crushed ExpertSexChange? Why? Because the user interface is superior. What's the biggest way in which the user interface is superior? You can ask a question and get an answer without a credit card.

Money adds friction to the flow of information. Everything about charging money requires you to try to get a monopoly on information and then erect some sort of obstacle or barrier to the smooth flow of that information. It's the same with downloading a movie from the Internet. The movie is worth something, but charging for the movie adds friction to the flow of the movie's bits, and frictionless always beats friction.

Free software isn't about cheap bastards trying to ruin your business. It's about a fundamental law of information flow inexorably crushing the payware software business model. You can try to ascribe motivations to people, we can talk about joy and pain and morality if it amuses us, but the deep reason is that we have a system where information that is frictionless beats information that has friction, and inexorably the frictionless information wins.

Frictionless software beats software with friction. Sure it may be deficient in other terms, but the power of frictionless is so great that entire markets will reorganize around frictionless. If they don't, they shrink and frictionless markets beat the markets with friction.

All is not lost for you. These things take a long time to happen. Windows is still with us, Linux hasn't driven it from the face of the Earth, and iOS is very successful even though it is fighting a difficult battle against Android. But if you want slow down your losses such that you can enjoy a good living or get rich in your lifetime, I advise you to think of yourself as being in the business of information, and see friction as being an obstacle to your success. If you must charge for software, try to think of ways to do it with the least friction possible.

p.s. http://github.com/raganwald

4
  • That was right out of Anderson's "Free"... Who, btw, has restated his tune: "...Free is not enough. It also has to be matched with Paid. Just as King Gillette's free razors only made business sense paired with expensive blades, so will today's Web entrepreneurs have to not just invent products that people love, but also those that they will pay for."
    – red-dirt
    Feb 7, 2011 at 3:32
  • +1 for the first sentences. I also consider source code as information, and I want to live in a world in which information/technology is freely shared.
    – Bobby
    Feb 7, 2011 at 16:24
  • Then comes the interesting question. How do Stack Exchange feed their employees?
    – user1249
    Nov 27, 2011 at 10:29
  • "If you must charge for software, try to think of ways to do it with the least friction possible". Cue the freemium model, pioneered by that most unscrupulous of gaming monopolists, Zynga. Apr 16, 2012 at 6:17
11
votes

One of the main reasons why I'd consider releasing an app for free is because it's a surefire addition to my portfolio for future endeavors (potential job opportunities, promoting your name in the programming world). That's more than enough payment if you ask me.

1
  • Came true in my case :)
    – phresnel
    Nov 23, 2011 at 9:49
11
votes

As an entrepreneur/programmer who makes a good living from writing and selling software,

You are not a programmer, at least not one sharing the scientific and engineering that makes most programmers choose their field. You are an entrepreneur who uses programming to make a living (not a bad thing by the way.)

I'm dumbfounded as to why developers write applications and then put them up on the Internet for free.

Sense of charity? Sharing? Common good will? Scientific and engineering desire to advance technology and knowledge?

You've found yourself in one of the most lucrative fields in the world.

Inconsequential, even for industries outside of software. How many companies, profitable in other fields, actively engage in charity and community support?

A business with 99% profit margin,

Only if you are working on the small, playing tax games or doing something under the table. The idea of a business that is that profitable, continuously and in a manner that is sustainable is not supported by the laws of economics.

where you have no physical product but can name your price;

You can only name your price when you

  1. are dealing with a very desperate (and uninformed) client,
  2. you are a technical ace (say a MSEE specialized in RF and MW circuit design or FPGA programming or a very experienced software architect.)

Otherwise, no, you don't get to name your price because there are a lot of very capable people competing with you for contracts.

a business where you can ship a buggy product and the customer will still buy it.

And that's why you will never understand why programmers, scientists and engineering alikes (as opposed to money whores), do contribute to open source.

I would actually state that I doubt what it entails to have a successful, sustainable company, independently of the industry.

You ask Nike and they'll tell you they are in the business of making good shoes. They are not in the business of shipping a shitty product.

You ask Apple and they'll tell you they are in the business of combining the best technology with the most exquisite of user-experience aesthetics. They are not in the business of shipping shitty products.

You ask AstraZeneca and they'll tell you they are in the business of medical advancement, not on shipping a shitty product.

And those are not examples of empty rhetoric.

And so on and so on. And though it is always possible for defective products to be put on the market, all successful companies define themselves by a particular goal of excellence. Profit is a side-effect of it, and certainly the primary objective. But it is certainly not their primary drive that get things moving.

There is nothing greater than working in an environment like that. And there is nothing shittier than working with people who see profit as their main drive. Quality takes a dive completely.

You should do some reading on Warren Buffet's work or on Henry Ford's drive for quality and work ideology. Then you'll understand not only what open source is all about, but you might learn a bit or two about sustainable, successful businesses.

Entrepreneurs that don't understand that aren't really entrepreneurs. They are just peddlers riding a for-the-moment speculative wave.

1
  • 2
    I like everything about this post. Feb 7, 2011 at 12:01
7
votes

Toolmakers

Personally, I release the tools I use. My assumption is that the things that I build with these tools should be where I make my money. Programmers hate hassle, and most of use who live by the Unix Philosophy know that there is no need to reinvent the wheel over and over again. So, we develop tools that help us in our day to day chores, release them to the public hoping that others will find them useful, and, if we're lucky contribute to making them better. Most programmers don't want to be involved in doing mundane things over and over, we want to write NEW things that use our skills to their full potential, we don't want to write editors, parsers, databases, etc etc, and most of the time the community created versions of these tools are better anyway (ie, Linux vs M$). So when the community rises up and allows people with specializations in specific areas to do what they're best at we come up with some really cool projects that make all of our lives better.

Responsible Citizens

If you use enough free software you eventually begin to feel indebted to the community, and if you have the ability you WANT to contribute. Also, there's value in doing. I've learned more by writing software for free than I ever have being paid to do so. It's a great way to learn, and I love to program. I love to solve problems and I love being able to do it however I want. When I'm releasing the product for free there's no expectation as to what it has to do, that's completely up to me.

Nobody Wants to Pay Me

I'm still in school, so when I work on open source projects, or create my own free projects it's experience I can put on my resume. It's how I taught myself several languages, and it's what makes me a better programmer than my peer who have only worked on coursework during the duration of their education.

7
votes

Start them off with a free version.

Then by version 4 start charging.

If the product is any good, people will continue to buy it.

Alternatively, go the Google route and offer a cut-down version for free, with a pro version costing a small amount extra.

1
  • "If the product is any good, people will get angry!" I had this too when Xcode became paid. Even though it was only five dollars, it really pissed me off as I need to pay for something that once was free. It's free again now, though. Same goes for FaceTime for Mac OS X.
    – user4595
    Aug 30, 2011 at 9:11
6
votes

One reason is, that many software developers hate to reinvent the wheel. If all software were closed, there would be a lot more of that going on.

Open source gravitates much to infrastructure level software, like system and tools, that enable the developers to focus on the actual problem solution rather than reimplementing simple library functions a zillionth of time.

4
votes

You might find a lot of insight in Chris Anderson's Wired article Free! Why $0.00 Is the Future of Business.

You will however find many examples where the developers accept donations, and maybe Flattr will succeed where micropayments have failed.

There is also other transactions being made here, although it does not involve cash:

  • Labor: Debugging and testing effort on platforms and in usage scenarios never envisioned by the original developers. By automatically tracking usage the developers get valuable information.
  • Reputation: For many programmers, programming is ever so much about the positive feedback from making the software in the first place and people cherishing the result.
  • Altruism: Making software products is relatively easy these days because of the availability of free and good developer tools and libraries. Releasing software back for free is one way of paying back to the community.
4
votes

If you're writing a platform instead of a product, making it open source assures that people can build on it with confidence. So that's one reason.

1
  • Plenty of people confidently build on the Windows platform, without the source.
    – Andy
    Sep 12, 2015 at 18:44
4
votes

Because obscurity is far more damaging than not making money on one idea. Because programmers may not be living in a vacuum of living in a coding box, their own source of income may be covering their needs. Because free from price allows you to be free from support and free from obligations. Because payments mean you accept a certain liability as a provider of a service or product. There are more arguments in favour of not charging for software if your primary motivation is not to be rich.

Finally, because money, whilst a great incentive, is also a poor motivator.

3
votes

I've "released" (well uploaded to my website) a couple of desktop applications for free because I didn't think anyone would be prepared to pay for them.

They're very small applications and I couldn't justify charging more than £10 or so for them anyway. I didn't expect to get many users (I know I have at least one) so it didn't seem worth setting up the PayPal integration on my website to collect payments.

If I ever write something larger that I think will have a market then I will look harder and longer at getting payment for it.

3
votes

I shared my application for free. In fact, it helped my potential customers to see how it is working and they contacted me with a proposal of buying and with some additional features to implement. Free distribution of software helped my customers to see how much beneficial it is for them.

3
votes

I write code because I enjoy writing code. Not because I want to be rich, or because I want to change the world, or anything like that. I enjoy writing code, and I like it when people get to benefit from this fact. Why should I charge them lots of money for that?

I also get to benefit from lots of people who feel the same way, and it's a way of giving back to them. I get to use Linux, and Firefox, and .... for free every day, so if I can do something that somehow benefits others then why not?

1
  • “I've been rich and I've been poor. Believe me, rich is better.” -Mae West
    – Ken
    Sep 14, 2010 at 17:12
3
votes

Because good software tools need some time to develop.

So you start your project and are aware that no one would pay for it, as it is.

But if you give it away for free people might start using it, provide feedback and free testing, development ideas, etc...

Finally, if all goes well you can create a non-free version and sell it.

3
votes

The free software movement insures, basically, innovation on it's most competitive scale.

Things change every day in the programming world and there needs to be a checks and balances system to make sure that everyone is up to par. Otherwise, we would be stuck with a lot of crappy programs just because people made a "Standard"(Microsoft Anyone?).

The fact of the matter is that YOU don't feel like you have the time or the resources to keep up with a free competitor. You have this complaint because it actually forces you to work to MAKE YOUR PROGRAM WORTH THE MONEY. You have to innovate and improve your program(Insert Takei "OH MY!").

Sorry, your vanilla version you planned on riding on for the next five years just isn't going to cut it. You have to constantly develop. That is what it takes.

Don't be upset because you are too lazy to work to make your product decent while people who work harder than you give it up for free.

2
votes

Because I have the feeling that my knowledge can help others in improving their daily work. I also think that public projects increase your visibility across the globe and companies will be interested in you and possibly want to hire you. The latter of course requires that your code base is good and the project becomes popular.

2
votes

People are less willing to pay for virtual stuff like programs, plus, there are many other free programs, so your commercial program, even for 1 cent, won't sell. Also, programs can be copied easily.

"money is the human word for quatloos", that's why some programmers avoid it.

Not the answer you're looking for? Browse other questions tagged or ask your own question.