Is there a market for paid Django apps?

Jacob Kaplan-Moss

June 28, 2011

Here’s a thought that’s been rummaging around in my brain for some time now: is there a market for commercial, closed-source Django apps?

Suppose someone released a high-quality, well-documented, well-supported Django app… under a commercial license. Assume of course that this app does something you actually need, and that the commercial license isn’t odious. Would you pay for a Django app?

I think I would. I have no qualms about paying for good software: in the last month I bought some backup software (Arq), started using a commercial ticket tracker (Pivotal) and time tracker (Freckle). In all cases, free/libre alternatives existed, but the paid versions were easier, slicker, faster, or in some sense “better.” Enough so that they justified their prices (to me). I think if Haystack (to pick an arbitrary example) was commercial (and reasonably priced) I’d pay for it — the time required to build an alternative would almost certainly cost me more.

On the other hand, there’s also a definite anti-capitalist vein in the open source community. It waxes and wanes, and different sub-communities exhibit the trend more than others, but there’s always a certain resistance to paying for software. Most of us understand that “libre”” is more important than “gratis,” but there’s still a certain amount of attachment to “gratis.”

Beyond that, the Django community so far hasn’t seen any paid apps (other than Ellington, which sorta doesn’t count) so there’d be a certain resistance, I think, to the idea of paying for a plugin.

But on the… third hand (shut up), other open source communities have successfully integrated paid plugins — think Wordpress themes, or Drupal modules.

So — what do you think? Is there a market for paid Django apps?

Comments:

Javier Guerra:

sure, why not?
Of course, with a fee comes some responsibility. At the _very_ least some support and a reasonable trial period.
I'd hate to buy anything based solely on the vendor's pretty screenshots and only later find that it doesn't apply to my problem at hand, or that it conflicts with some previous choices I've made.

Luke Plant:

Personally I'm more ideologically inclined against non-free software, but on the practical and pragmatic level, my biggest fear would be about hitting the limitations of the app.

What do I do when I really need to customize, and fork if necessary, for some business reason? It would really suck to find, at that point, that some license was going to stop you getting business done.

David Sauve:

I know of at least one company that is licensing Django apps in sites they build. I'm not certain of all the payment details, but I do know that it involves a suite of "social" plugins they've created in-house to speed development of new sites.

So, I suppose that's a "yes", in my opinion.

Alex:

It's not a django app, but I believe there's a PDF creation library for Python that's under a commercial license. Do people buy it? (I have no idea), Django apps aren't special in this regard, I suspect there is precisely the same market for them as there is for any other Python module, I just don't know what that is.

Noah Kantrowitz:

Given the current quality level of some of the well-known Django apps (South, Celery, etc) I think it would be an awfully hard sell to explain why those can be free, but your awesome new app is worth $9.95. There is also the problem of logistics, dealing with stuff like license keys for dev vs. prod, code obfuscation, honestly seems like more trouble that it is worth compared to the seemingly already prevalent model of free software and paid consulting. That is just out of most peoples' price ranges though, so maybe we are back to talking about ticket bounties for small improvements? ;-)

Travis Fischer:

Absolutely. The market might be kind of small for several reasons. I believe the Django community as a whole places a high value on open source, so your app has to be good enough to compensate for the value that comes with being open source. It also has to be way better than any alternatives and stay better than the copy-cat apps that are likely to pop up after it is launched. A paid app is always going to create an instant market demand for the same exact functionality but open source and the Python/Django community is likely to meet that demand sooner than later.

I would love to see it happen though. Open source is an awesome ideal and massively beneficial. However, great software engineers should get paid to make great software.

Ian Bicking:

Wouldn't Ellison be an example of that? (If Ellison is the right name, I can't find anything about it now -- the newspaper content management system Lawrence Journal World was selling.)

I think it would be hard to make it a "market" because I have a hard time imagining a niche where the product was separate from support and consulting for the product. Once it's consultancy, it's more like you are hiring the consultant in part because of their neat bag of tools (maybe proprietary) that they bring with them.

Jeremy Dunck:

"But on the… third hand" - the phrase you were looking for was "on the gripping hand": http://books.google.com/boo...

As for the question: aside from the "share and enjoy" culture, I see two issues:

First, that you're selling to makers, who will view it as you did-- pricing at the cost to build, rather than at the value created. If you sell to non-makers, the "fair price" is much higher, because the alternative is an unmet need.

Second, you'd have to defend - attractive profits in software drive margins to zero. So you'd need to build around something that only you could offer. Github, for example, could probably charge for superpremium++ API access. Gnip is doing that now for Twitter APIs. I think a similar model is a crown-jewel algorithm, or a private corpus driving a public algorithm (as Netflix Prize). But APIs and data aren't the only things, just the most obvious forms of "unfair advantage".

Personally, I feel I owe such a debt to the value I've received from the community that I doubt I'd make an app for profit.

But I've seen bounties be successful on many occasions: Clojure's dev work in, I think, 2009 was funded entirely by donations.

And this, just today:
http://www.quirksmode.org/b...

Jeremy Dunck:

One more point - other comments seem to assume a commercial app would need to be closed source.

Not so - a license should suffice. Yes, there will be free riders, but those weren't your customers anyway.

Carlos Leite:

Not right now. The why is simple ... Supply X Demand
To be paid, the APP has to be well documented, well everithing... that means its quite expensive (proporcionally) so... there will be enouth demand to cover the costs , and keep the price low enough? And still, its not that simple. What about a huge and complete workflow app with State Machine , etc , very handle ... may it could be selled. But how many django developers are building a web application that will need it ?
I run a small company in Brazil, where 99% of projects are built in django. We sell servive, not software. I could pay for a good Pluggable Django App, to help in project of my own. Depends of the price, I could pay for south!
But right now, I cant think in an app that I can build complex enough to sell, that will have a number of copies that will pay the bill.

JM:

There's plenty precedent. One example is the Delphi ecosystem of third-party components that include full source code. We're prepared to pay thousands per year for quality, well supported components. Actually we prefer paid over free, i.e. the developers have significant skin in the game and are getting paid directly to work on the code.

Ask Solem:

I definitely think there is a market, but not sure how big a market there is. Would you be willing to pay for a considerably better admin, or a Django Debug Toolbar+? I think I would, and I wouldn't have any problems with recommending commercial software to people in our community.

Doug Warren:

Noah, why do you assume there needs to be code obfuscation? For $3,000 this app is yours to use, source included. Look at the cost of a software engineer, a designer, and a QA person. How much time would it take for them to work enough hours to burn through $3,000? Would they be able to accomplish as much as the app does in said time? If not then the app may be worth the money.

Marcin Mincer:

Standalone apps -- no way, for reasons mentioned earlier.

SaaS -- yes, I think there may be some market for professionall solutions supporting django development -- the rise o PaaS (like Gondor, ep.io etc.) indicates a start of a trend, as Django becomes more popular among newcomers to the webdevelopment community (at least in Central Europe it's quire remarkable).

Joe Drumgoole:

We built a commercial Django SaaS app called putplace.com and people paid for it. So its definitely possible.

Scott Bradley:

The Django license always seemed to me to be kind of prohibitive in this area. Specifically: "Neither the name of Django nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission." It is not really clear to me how one would provide Django apps and other add-ons without invoking the Django name. I like the idea of developers getting paid for their work, and I think lifting this part of the license restrictions would be a nice first step toward encouraging paid Django related work.

Almir Karic:

@Scott Bradley

that means you can't say 'Django supports <my paid app>' or 'Jacob supports <my paid app>'

as for the topic -- yes i think there is market for paid django apps. there are a lot of consultants and companies out there which would profit from such apps (spend less than they would building alternative)

i think http://www.highcharts.com/l... this is an example of excellent licence (we paid for this at one of my jobs). you can use it for free to develop and make sure this is really what you want, once ready to push to production you shell out reasonable price.

Noah Kantrowitz:

@Doug If we are talking about a price point that high, then sure you are probably fine. If you tried something lower like a $20 app (something more in the range of desktop software) you would have to do something or deal with a 99% piracy rate. If you are talking about several thousand a hit, I feel like you are no longer talking about an "average Django developer", and in that kind of enterprisey world this is already how most consultants work (you engage them, you get their toys).

Thomas Weholt:

I'll pay for good software, even if it's free, or perhaps - especially if it is free. I'd also pay for closed source software if it's the only solution to a specific problem or if it's way, way better than any free alternative.

Still, my dream would be some sort of system, a django/python market place, where developers could sell apps but under a free or permissive license. Perhaps what I'm describing would be a system for more active donation from the django community to worthy projects.

One of the main things I love about python and especially django is the absence of closed source software and one of the selling points of the "movement" or ideology behind open source and free software is that you can make more money by giving users access to the source code. I'd rather find other ways to pay and motivate developers than encourage them to develop closed source solutions.

Martin Winkler:

A couple of years ago I bought a commercial Zope module (i think it was named mxODBC) for a client, because there were no "libre" and "gratis" alternatives at that time.
Problem was, that every time python got updated, we needed a new verson of this module as well. It was quite annoying. And I also do not know how many of these licenses they sold.

I do not think that a real market exists for closed source Django apps, and if it would exist, then the hassle of updating your modules for multiple Python versions and various operating systems, along with some kind of serial number checks, keyfiles and whatnot would be worth the effort.

I'd probably build a complete ecosystem around my "app" (i.e. website with paid services, just like Pivotal and Freckle are doing), and try to sell not only to Django developers, but to any kind of person. Much larger market.
It could be sold as a webservice on your servers, or also e.g. as a solution running on your customers' server (think ready made VMWare or VirtualBox image)

Jannis Leidel:

Having spent a considerable amount of money (read: time) on free software development, I can't stress enough how violently I'm against tainting the Django ecosystem with the shareware ideology.

While I agree there are some great examples of shareware for the Desktop (which I've bought quite a few of), I've yet to see a sensible way for both developer and user to charge or even handle selling server software without giving up one of the most important aspect (to me) for doing open source: equality of use.

No matter what background, you can download my software from PyPI and use it for free. If I'm not mistaken it'll help you realize that I'm an okay software developer worth being asked to work on your commercial project. IOW, the free software I create is a reference, to show that I know my craft.

Claus Schwarm:

From a marketing point of view, the question is too general and too vague to be answerable, in my opinion.

Generally speaking: Yes. One can get people to pay for lots of things, so why should Django apps be an exception? Whether it's profitable is another matter.

Another question -- when we consider the usual four P's -- is about product: There's a fundamental difference between 'Pay-once' products such as classic, closed source desktop apps, and mixed models as used by Wordpress theme sellers.

For instance, theme sellers often use an additional club model: Pay for a one-year membership and use whatever you want during this time. With such a model, Django apps could be open-source, although not necessarily re-distributable. Customization and forks would be possible, and getting necessary updates wouldn't be a real problem. It could probably deal with most of the above objections.

In other words, it depends.

Eric Hutchinson:

I couldn't imagine paying for a django app like i'd pay for a wordpress plugin.

They're two entirely different beasts. Wordpress plugins you can drop in and they just work, you drag and drop them, and your work is done.

Django apps however usually require some heavy lifting, models need to be overridden, or backends need to be written, etc. The ability to apply the same 'polish' as the wordpress stuff gets just isnt there. The only kind of apps i could see not requiring me to do anything furthur then add them to INSTALLED_APPS I probably wouldn't pay for.

That said, I can see a chain of events where the results is me having a lighter wallet and kick ass django app. While I wouldn't pay for a app like i would for wordpress plugin, I would put up for a bounty for an app that would be really usefull, such as a well done, easy to use social login app, along with high quality docs. either through kickstarter or some kind of bounty system.

Issac Kelly:

I think that a django-opensource-bounty is one model where 'paid' django apps could succeed. Creating a list of requirements, and putting a bounty on development of an F/OSS package that hits those goals... Maybe I just stumbled on my djangodash project :)

It seems there are a couple of other opportunities as well.

Paid reusable apps, the licensing would be difficult to enforce, and you'll probably always be competing with free/open source competitors, if Haystack suddenly went paid, I would guess `Partsbin` would suddenly show up, and it's happened several times in the larger Open Source communities.

The second one is of the most interest to me. Paid applications. You buy a license to a finished django codebase, like say, a bug tracker, or a refined version of django-helpdesk. With that, you get the code, license to install it once (whatever that means for you/the project) and license to edit it however you see fit, but not to sell it. There are several options for the developer to make money, even recurring income, say by becoming an ep.io or gondor.io affiliate, and making the app ready to go on those platforms.

NiKo:

I'd personally prefer seeing people paying a little something on their own, "naturally". Of course, I'm a dreamer here.

This approach is more matter of education than economics or marketing strategies, and there's no simple plan to operate on this particular, vast topic. Just forcing people to pay to get things is the way our society wants our activities to work, but I'm terribly uncomfortable with this regarding software engineering — mainly because it always proved being a total disaster in my own experience, for several reasons I'd be happy to elaborate if I had more time.

But something is sure, waiting for people to reward OSS devs for the direct result of their work on their own initiative is pure utopia. A lot of company actually rewards them already by buying them consulting and training, though.

So all in all, I don't know what to think. But what's sure is that making apps "unfree" won't make them any better. But from a business point of view, that's another story — especially if the store takes, says, 30% of the revenue ;)

David Siedband:

There may be, but personally I hope that Django won't go in this direction. Seeing this model take hold in the Rails and Joomla communities always made me feel like they had lost the plot. One of the things that I really dig about Plone and Django (to date) is the culture of people releasing great free products. I hope it stays that way.

Zviki:

I would happily pay for commercial grade components. It's all a question of ROI and an old debate. That's a no brainer when it comes to tools ans peripheral software. However, when it comes to libs that I use in my source code, I would be very discouraged if the tool was closed source. It can be open source with a commercial license. I'm fine with that. I got very used to having no boundaries when it comes to debugging and reading the sources of the code that I use.

John Speno:

I hope that there is or will be someday. I think HelpSpot, which is a PHP application, is a good model. Setting up your own server to run it is nothing a reasonably educated IT person can't handle. I'm sure it can run on a variety of web hosting accounts out of the box. The source is "encrypted" in whatever way Zend Guard or IonCube Loader do these things, which isn't something that Python offers AFAIK so you can't make changes to the source. However the DB schema is open for viewing, and there's a web API, so users have options for customizations.

Geoffrey Jost:

What if Django community leaders started talking up donating the way they did with testing? "I used these great apps to make my site and I donated to the projects because that's the way I like to do things -- here are some donation links!"

With testing, enough people emphasized it as *the right thing to do* that I started writing tests. I freely admit that most of my code is still not properly tested but at least it's become part of my process. And clicking a project's donation link is a lot easier than implementing unit tests.

I've given quite a bit of money to open source projects over the years. Sometimes the amount is proportional to the value I get from the software, more often it's not. I've given money to projects that I hadn't even used and I've used other apps for years without donating. I don't think I'm a better human being because of this -- there are lots of times when I saw that donation button and didn't do anything -- but it makes me feel good and it's another way to contribute back to the community that has been really generous to me.

There have also been projects that I would have liked to support but there seemed to be no obvious way to do it. Donation buttons are great!

Glyn Moody wrote an interesting post on this topic last April: "Why Making Money from Free Software Matters" (http://www.h-online.com/ope...)

Thomas Hibbard:

Personally, the word "market" stirs up ideas of a restrictive central authority. Also I believe if there were a need for a market the community would already have fulfilled it. Sites like Django snippets and DjangoSites imo did just that imo.

Wes Winham:

I'd buy several commercial django apps if they were also open source and forkable. A good notifications app (with notification batching) comes to mind as something worth buying.

George Notaras:

I think closed source apps would turn out to be a real failure and a cause of many problems. People would try to develop open-source equivalent apps rather than pay you.

So, all we can do is find a way to fund an open source project without utilizing donations, which have never really worked for small projects. But, any such effort to fund an open source project has to utilize a non-free licensing scheme, which will have to survive the spasmodic reaction of the community, and also needs to overcome two big obstacles:

1) the "free" (as in "I don't want to pay") mentality of the vast majority of the members of the open source community of users and developers.

2) the lack of respect (by many developers) for the terms of the licenses small open-source projects (like django apps) are released under.

I've been thinking about these things for the last 6 years and what I have to say is that it's not going to happen unless the mentality of the community changes.

Nevertheless, I'll follow this discussion with great interest.

George Notaras:

Please note that in my previous message I refer to the open-source/free-software community in general and not specifically to the django community.

Albert O'Connor:

I agree with Luke that there practical issues. As others have suggested a SaaD model which could work is sell access to a service like Disqus, then the glue app would open source but API key for sustained service would cost money. Infact if you site is large enough this is how Disqus actually works I think.

Ivan Gromov:

Wow! Recently I had the idea to create a kind a "Django market". My friends told me that my idea is not so brilliant and I put it the back burner for the time.
I think it has much in common with your topic.
In a nutshell. A site with collection of Django apps, like djangopluggables and so on. All submitted apps have "recipe", which contains instructions how to automatically integrate app in project. Site audience is web-developers. User selects desirable apps from list by category and site design template. Site offer to download ready-to-deploy Django project.

Profits: site can contains extended paid plans, part of payment can be share with developers of used libraries.

There could be a market with social shade, something between github and android market.

Steven Elliott Jr:

I am working on a paid app as we speak! Hopefully it will be useful to the masses!

Leave a comment:

Use your real name, or risk deletion.

Optional.

No markup allowed. Linebreaks will be converted; links will be linkified.

Be nice; don't be that guy.