10

I was trying to get a program when I found out that you had to pay for it. After some time I noticed that it was also open sourced. This confused me! After a bit more digging I found that I could download a non compiled version (for free) and compile it myself.

I did this and the program worked fine!

My question is:

What are the advantages to having an open sourced free product?

  • Aside from the illegality of compiling your own, yeah... – ArtOfCode Jun 26 '15 at 18:07
  • 5
    @ArtOfCode If it's illegal for you to compile some code, then that code isn't open source. – svick Jun 27 '15 at 0:19
  • @svick Yeah I meant legality - it should be legal but it's wise to check the license - but I realised the typo too late to correct it – ArtOfCode Jun 27 '15 at 18:54
4

You can pay for open source software. With Open Source, the source code must be made available, and provide options for forking and the like. Compiled versions can be paid for.

Like many other programs, open source software is generally similar to proprietary software. For developers, they can get their hands on code, and fork and experiment. For consumers, many might not see much of a difference, except that they may see it as open information.

  • "With Open Source, the source code must be made available, and provide options for forking and the like." - open source generally just means that you make the source code available. I've never seen a license requirement that you must "provide options for forking" when you distribute code. With the GPL, for instance, you are not even required to publish the source code publicly. You have the option of providing only an "offer" for source code upon request, an offer which can expire after a certain time. – Brandin Jan 15 '16 at 10:27
  • 1
    This provides an option for forking. A customer who buys the software, takes up the offer and receives a copy of the source code is within their rights to 'fork', starting a new software project based on your source code. – bdsl Mar 16 '16 at 15:06
26

Nothing prevents charging for open source software. In fact, if a license forbids charging for the software, it is not free/open-source, because it violates the freedom to distribute.

Charging for open source software may seem pointless, because once the author has sold it to someone, they can't prevent the buyer from making as many copies as they like and giving them out for free. However there are cases where it makes sense.

Some companies make money by writing custom software, tailored for a client's very specific needs. The resulting software may be open source, either because the client requires it, or the company prefers it this way, or the software is derived from some generic software with a license that doesn't allow closed-source derivatives. In such cases, the customer pays because they want this software that's purpose-built for their needs, that nobody would bother to write if they didn't pay. Typically there wouldn't be many other people who'd be interested in having a copy anyway, and even if there are, the customer could be paying just to be the first to have the software.

Some companies charge for their packaging of the software. People may be prepared to pay to get nice installers, or even just binaries for their platform. If the software has a permissive license that allows non-free derivatives, the seller may put a restrictive license on the binaries that doesn't limits the number of copies the driver may make and forbids redistribution. If the software has a copyleft license, the buyer is allowed to redistribute the binary, so it's a small market.

In the days before cheap Internet bandwidth, most people got their open source software on CDs. The CD distributors obviously charge for their work of pressing CDs, shipping them, etc. The CD itself may or may not be copied for free, depending on whether it also contains non-free software and whether the collection may count as a legally protected database (see Distributing an operating system DVD bundling proprietary and GNU-GPL software?).

Paying to install an open source program on a platform where deploying an application requires a fee is a more modern equivalent. iOS is a famous example: you need Xcode to make a package that you can install on your device, and you need a Mac to run Xcode; until recently you also needed a developer account with a yearly fee. Here the buyer is paying not because they can't obtain the software otherwise, but because they can't install the software otherwise.

  • What an amazing answer. This should be the accepted one :) – Zizouz212 Jun 27 '15 at 23:19
  • You might want to edit the last paragraph since it's not quite correct. Xcode is free and anybody can download the source code and compile/run it on their own devices. Users are simply paying for the convenience. A non-iOS equivalent is the Synergy project – it's open source but you have to pay to download the binaries. You can download the source code for free (or even binaries from the nightly build server). Again, paying just for convenience and to support the project. – Abhi Beckert Jul 15 '15 at 4:05
  • @AbhiBeckert Has this changed? Last I looked, you could install Xcode for free (assuming you'd paid for a computer from Apple in the first place), but in order to install a program that you compiled on a device running iOS, even if it's your own device, you needed to subscribe for the developer program, which wasn't free. – Gilles Jul 15 '15 at 8:05
  • With the custom software example, as I understand it the program has a fair chance of staying private to the client: they don't have to redistribute it to competitors, and so they won't exercise their right to. Depending on your business model, it's quite possible that none of your customers have an incentive to release the software to the world. – cpast Jul 15 '15 at 19:18
  • @Gilles yes it charged recently. You do need to be signed up as a developer but there has always been a free tier. What changed is people on the free tier can now deploy their code to iOS devices. My understanding is Apple is particularly interested in encouraging kids (who have no money) to learn how to make apps. Being a paid developer is only required to distribute to the app store now. – Abhi Beckert Jul 15 '15 at 23:35
3

There are many different succesful business models for Free Software and Open Source software. Wikipedia even has a long article devoted to the subject.

I am not going to reproduce that long WikiPedia article here, but rather focus on one of these business models - Selling professional services - with a bit more detail that what is provided by Wikipedia.

The problem for many small software companies is to actually get anyone to look at their amazing software. If the brand is not well not known, or the software not generally acknowledged as "amazing", it may be real hard to get a customer to look at it. If the customer has to pay up-front to have a look, that hurdle is even bigger. Even if it is free, but crippled (free only for thirty days, etc.), many prospective customers will not bother. Their time is valuable, too valuable to spend on crippleware. Also, if your company is small, your customer cannot be sure you survive. If they pay good money for closed source software, and the company behind it implodes, there will be no more support and no more releases. This renders most software useless after some time.

Free software addresses all these concerns:

  • They can try it out for free.
  • It will not stop working after some trial key expires.
  • If your company implodes, they're not left high and dry. Since have the source code, and they get always get somebody else to support and maintain it.

However, so far I've only pointed out the advantages of free software for the customer. You, the author, haven't seen any money yet.

What may happen if you do this, if your software truly is good and generally useful, is that you'll see thousands of downloads. Most of those will indeed use the software for free, and never earn you a penny.

However, you have users (hopefully thousands), and some of these users will want professional services. That this:

  • they will be willing to pay you an annual support fee, in return for you supporting them (hot-line for user questions, first priority bug-fixes, etc.)
  • they will be willing to pay you for specific customizations that address specific use cases
  • they will be willing to pay consulting and custom development, where you adapt and integrate your free software to their specific ICT infrastructure

The business model for professional services is not unique to free software. This is the usually a profitable business model for proprietary software.

However, if you're a small software company, you may never see your software used by anyone if you go the proprietary route. There are too many barriers between you and any users. With free software, you may get thousands of users, and if only a fraction of those sign up for professional services, you still will have a healthy business.

  • "Even if it is free, but crippled (free only for thirty days, etc.), many prospective customers will not bother. Their time is valuable, too valuable to spend on crippleware." - not to mention that it's also so valuable that the first few minutes they can spare for trying it are typically on the 31st day after the minutes they managed to spare for installation. – O. R. Mapper May 2 '17 at 18:23

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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