One of the side effects of the recent trend of "Lean" startups, and the app store era, is that consumers are more acclimatised to paying small prices for small games / products.


  • Online SAAS that charges ~$5 / month (the basecamp style of product)
  • Games which are short, fun, and cheap ($0.99 from the app store

This market has been defined by "doing one thing well, and charging people for it." DHH of Rails / 37 Signals fame argues that if your website isn't going to make money, don't bother making it.

Why doesn't the same rule apply to frameworks?

There are lots of software framework projects out there - many which are mature and feature-rich, which offer developers significant value, yet there doesn't seem to be a market or culture of paying for these.

It seems that the projects which do charge money are often things like UI component toolsets, and are often marginalized in favour of free alternatives.

Why is this?

Surely programmers / businesses see the value in contributing back to projects such as Ruby, Rails, Hibernate, Spring, Ant, Groovy, Gradle, (the list goes on).

I'm not suggesting that these frameworks should start charging for anyone who wants to use them, but that there must be a meaningful business model that would allow the developers to earn money from the time they invest developing the framework.

Any thoughts as to why this model hasn't emerged / succeeded?

Edit To be clear: This isn't a post about down playing the importance of free, open source software. This is a post about asking why a culture of paying for frameworks doesn't exist.

  • 5
    -1 Not everything is about money. Many people do things for fun, a sense of achievement and do not care to make money from those things.
    – Orbling
    Commented Feb 12, 2011 at 18:52
  • 7
    Did that warrant a downvote though?
    – Mchl
    Commented Feb 12, 2011 at 19:41
  • What frameworks would you expect to be viable for paying for?
    – user1249
    Commented Feb 12, 2011 at 19:56
  • 1
    @Orbling I didn't suggest everything was about money. This isn't about absolutes. I'm asking why there isn't a strong business model in this space. The two aren't mutually exclusive.
    – Marty Pitt
    Commented Feb 12, 2011 at 19:58
  • 1
    Even some websites aren't designed with the idea of directly making money. It's a form of self-advertisement to have a blog/portfolio site. Commented Feb 12, 2011 at 20:55

7 Answers 7


There is absolutely an ethic of trading value-for-value in free/open-source software.

In most of the economy, we trade money-for-product or money-for-service. It's very convenient to do so. Indeed, we do so in the commercial software part of the economy.

But we don't generally trade money-for-friendship or money-for-romance. We trade friendship-for-friendship and romance-for-romance.

Likewise, in free/open-source software, the ethic is to repay DHH and the contributors to Rails by: reporting bugs for, contributing patches for, writing/updating/fixing the documentation for, and evangelizing Ruby, Rails, Linux, and all of the free/open-source software projects in general. That is how we trade value-for-value.

Asking why "this model [charging money for frameworks] hasn't emerged / succeeded" is akin to asking why this same model hasn't emerged / succeeded when it comes to friendships or romance. Someone who is offering friendship doesn't want money - he wants friendship in return. Likewise romance. Likewise, in many cases, software.

  • 2
    Thanks for the reponse, but I'm not sure the metaphor holds true. People report bugs for, evangalize etc, Windows, Basecamp, etc. Likewise, many developers recieve more value from Rails than they do from Basecamp - in terms of saving them time & getting to their end-goal faster. I think the distinction between frameworks and products is pretty blurry - eg., Companies will pay for Oracle, but not for Hibernate.
    – Marty Pitt
    Commented Feb 12, 2011 at 15:12
  • 3
    Also, there's a fairly well established business model for trading money for romance - depending on your definition of romance.
    – Marty Pitt
    Commented Feb 12, 2011 at 15:15
  • 1
    And I most certainly would offer friendship for money. Sounds like a good business model to me.
    – Josh
    Commented Feb 12, 2011 at 15:18
  • 4
    There's a fairly well established business model for trading money-for-romance, just like there's a fairly well established business model for trading money-for-software. But some people who are willing to offer romance are only willing to accept romance as repayment, and some people who are willing to offer software are only willing to accept software (or bug reports, feature suggestions, work on documentation, translations, or evangelization) as repayment. It depends on the person who is offering romance, and it depends on the person who is offering software.
    – yfeldblum
    Commented Feb 12, 2011 at 16:22
  • 2
    @Marty Pitt: You have a very odd concept of romance.
    – Orbling
    Commented Feb 12, 2011 at 18:51

I think this question can be answered by answers in this question Why do programmers write closed source applications and then make them free? .

And i would just add to it:

What i believe is that by making framework free we allow beginner and hobby programmer to gain interest in serious programming. This makes the path easier for them. We have already seen that platforms which are not free are often less adopted then which are. Moreover free frameworks are usually developed by group of people who wanted to contribute back to community.


It always seems to come down to one of two different cultures. There's the "I pay for software with money" group and the "I pay for software with time" group.

Consider IT in an organization. Say a company wants to do network monitoring. It's either A) Mission critical and worthy of pumping tons of money into (Openview, Netcool). Or B) Tight budget, do what you can with less(Nagios, MRTG).

Likewise there are people that have "grown up" with the Microsoft/Apple way of approaching software. You pay money and stuff should work. You want new functionality, you pay for it. On the other hand there are people that have become accustomed to paying with their time. Unix, Open source, java, etc. If you want more functionality, you write it yourself or enable someone to fix it for you.

Consider Apple's app store to Android market. You buy Angry Birds on iPhone, but get it for free (with ads) on Android. Different cultures at work. Angry Birds is wildly successful on app store charging a measly .99 cents, however they knew that would have a very small market share if they charged even a .25 on Android Market.

I think the frameworks started in the latter camp, and so that's the way it is for now. You can't market a framework as a finished product grandma can use, someone has to invest time into making it a consumable. The people that are used to putting the time in are not accustomed to paying with both time and money.


Surely programmers / businesses see the value in contributing back to projects such as Ruby, Rails, Hibernate, Spring, Ant, Groovy, Gradle, (the list goes on).

From my experience with clients and employers, I have noticed several reasons why businesses that make strong use of Open Source software (and make or save a lot of money by using it) are not giving back as much as they could:

  • No understanding how the Open Source model works, and thus a missing awareness of the need for donations to keep projects strong

  • Often a lack of clarity what is going to happen with a donation

  • Tax issues, uncertainty about deductibility

  • Difficulties for technical people justifying donations (or other means of giving back like hosting events, etc.) in front of unenlightened management / controlling ("If we don't have to pay for it, why should we give them money? To be nice? We don't have the budget for that. Maybe next year")

I tend to think each of these issues could be addressed to some extent in any Open Source project, but is mostly not being done due to lack of expertise in how to communicate more clearly, and some reluctance to ask businesses for donations in a more forward way.

I love the "no money, no bureaucracy, no obligations" spirit of the Open Source community but I sometimes think - what if every business that uses, say, OpenOffice instead of a $200 MS Office workplace license would donate just $2 to OOo, or some other Open Source project?


The major risk of using open source software is the fact that it has no official support. Basically, you own the code. While at first it seems more profitable to use "free" software you have to take into account the possibility that in house maintenance costs may eventually out weigh the cost of a proprietary solution. Some organizations are not willing to take that risk.


Part of the question seems to compare frameworks against paying for applications (e.g. fun games, 37 signal products, online SAAS) but those are apples and oranges. Consumers buy applications whereas developers use frameworks to build applications for consumers. And sure, your developer might be a consumer if he or she is a user and buys applications, when they're not developing on frameworks.

Frameworks do nothing out of the box until they are turned into applications that can be sold.

However if we're just comparing developer tools, like frameworks vs component sets vs RAD suites, etc then I think there's some good discussion to be had about what kinds of things are paid for and not.

  • Good point - although I think it's a pretty fuzzy line distinguishing a product from a framework. People pay for Oracle DB, but not for Hibernate. At the end of the day, all these tools provide value to the people who consume them. I'd argue that Spring provides value in the same way that an IDE does - they are both tools that help their users get a job achieved quicker.
    – Marty Pitt
    Commented Feb 12, 2011 at 20:02

Let's imagine that I create a framework called "AwesomeWork" (original huh?). Now people have never used it and aren't sure if it will help them and wouldn't want to pay money for something that may not benefit them one bit (if they even like it!) so I release it for free. Now, am I a fool for losing on potential profits because I may have been able to get away with selling it for $5 a license? Nope, because as I get the word out and people start using my framework there is a secondary market that has now opened up: books. I can now write a book on AwesomeWork (let's call it "Do [Awesome]Work Son!", sorry had to through that in). So sales of the book are going steady, now I decide to make some updates to AwesomeWork and release it under AwesomeWork 2.0 and lo and behold I can sell "Do [Awesome]Work Son! 2nd Edition" and make more money from that. It is definitely possible to make money from distributing you framework for free.

I'm not saying the above scenario is the main reason that somebody would release their framework for free, but it does show that they can still make a buck from doing so.

Side Note: There are a few frameworks that do charge (although they may offer a community edition for free but with limited features). The one that comes to mind is WebSharper, which allows websites to be written fully in F#.

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