The Business of PHP

Perhaps an anomaly in the PHP landscape is, despite the massive adoption of PHP as a software development platform, the relatively small ecosystem of commercial software offerings that exist within it. One might easily put this down to PHP being an open source – and largely free – product. People who use a “zero cost” platform generally have little inclination to pay for software that runs on it.

But as the argument so often goes in the Land of Open Source, we all need to eat and – perhaps failing that – buy iPods and fixed gear ‘cycles. Many of the great software engineering minds tinker on well known projects while getting paid for it. For the rest of us, though, a commercial motive needs to exist somewhere in our day to day activities.

I’d venture that the majority of professional PHP developers (and I use that term loosely; referring to people who earn a living coding PHP) work with / in some kind of client services entity. That is, building PHP web sites and applications on behalf of a client for a fee.

(As a side note, I propose that this may be a cause of the PHP community’s unquenchable desire for reinventing the wheel – but I’ll save that for another blog post.)

Close behind that group would be those developers who build solutions “in-house” for an organization, which are leveraged for that company’s operations and hence commercial goals. I, myself fall into this category.

Nonetheless, there is a small – and growing – section of the PHP community which focuses on developing proprietary software for the platform. I find their business models, and the challenges they face, fascinating.

vBulletin

The first great proprietary PHP success story? I’d wager that few PHP developers out there have not heard of (or indeed used) Jelsoft’s vBulletin forum software.

They’ve been around for five years now and certainly seem to be happily heading off the “for-free” challengers in their space.

On the face of it, this does seem surprising given that bulletin-board software has been heavily commoditized, and a large number of very mature applications exist.

Cerberus Helpdesk

Another mature, proprietary PHP web application, this one dealing with the customer support / helpdesk scenario. This particular category appears to have fewer free competitors, and aims directly to reduce a substantial business expense: Customer support. Easily understandable, then, that people are happy to pay for such an application.

Applications vs libraries

There are a plethora of other “full-blown” commercial PHP applications available; turn key solutions that come with installers and generally require little interference from the customer. In contrast I’d like to look at another segment of the software industry: Libraries and components.

Developers who come from a proprietary platform background – obviously with Windows being an example – are used to a rich and diverse ecosystem of pre-built components to use in their applications.

Many of these are rather pricey and well out of reach of lower end developers and hobbyists. It’s long been an advantage in the PHP community that an enormous amount of functionality that one might need to pay for within, say, the Microsoft ASP platform, is available free and open source in the PHP variety.

This has, however, led to very limited uptake of the manufacturing of proprietary PHP components and means that if you need an obscure middleware problem solved, you might well be on your own. Open Source as a community tends to solve only common problems.

I did, however, manage to find two proprietary PHP libraries:

JpGraph

JpGraph – being largely the definitive graphing library for PHP – is offered in an open source guise for non-commercial use, but requires payment of a license fee for any kind of commercial use.

PHP AdWords API Lib

This is an interesting one; an enterprising fellow, Georgi Mirchev, anticipated the demand that Google’s AdWords API release would create and was first-to-market with a well documented, feature complete implementation of their web services API in PHP.

One has to expect, though, that an open source clone can’t be far away in such a heavily demanded application.

On source code protection

It’s very interesting to note that the major players in proprietary PHP applications do not encode or obfuscate their source code.

Admittedly the available options for doing so are limited at best, but it proves that licensing and protecting intellectual property do not have to be a hindrance to a viable business.

I’d wager that most Microsoft-centric developers would run to the hills in fear of providing their entire source code to customers!

So who out there uses proprietary PHP software? And who among you develop and sell such software?

Free book: Jump Start HTML5 Basics

Grab a free copy of one our latest ebooks! Packed with hints and tips on HTML5's most powerful new features.

  • http://www.olate.co.uk Olate

    I’ve been involved in both sides. My company (it wasn’t a company at the time) originally developed a free, now LGPLd download manager in PHP. Now we also have 2 commercial PHP products, one of which plugs into the free download manager and the other allows othgers software developers to sell their software! I think it is useful to have experience from both sides and to continue work on free, open source products at the same time as developing commercial applications.

  • pdxi

    Ha ha – nice fixie tie-in with the article :)

  • http://norbert.mocsnik.hu/ norbert_m

    I’m working on multiple open source PHP solutions targeting the Enterprise. Its too early to talk about them now but they look very promising. I definitely plan to come up with usable products for this fairly new, growing segment.

  • http://www.appointmind.com/ NameNick

    We started devoloping an online booking system back in the year 2000. Although the software has been commercial since the beginning, we kept the prices on a low level in order to target small and middle sized businesses.

  • http://www.lowter.com charmedlover

    I’ve developed (and working on the next versions) a content management system used by many of my website’s members. It is free and open source.

    As I develop the next version I constantly debate whether or not to keep it open source. I need to make money off of it, and really prefer open source. I’m thinking of doing something similar to what Olate did (as I’ve seen their licensing software and actualy plan to use it) by offering a license with viewable source and others that are encoded. I’d rather keep it all open source, but then people would just remove licensing code. What binds it would have to be things such as customer agreements and such. You cannot have open source with a few encoded files ;)

  • http://www.divbyzero.org Div By Zero

    We are working on booth GPL code and proprietary code and think that there’s enough space for booth of them. Lot’s of interesting OS projects are often afflicted by poor GUI and for libraries (see all the Ajax framework born this month) they’re often too immature too be used at an enterprise level. This is a good compromise since developers and small company have free good products that just need some fixes while enterprise can find a large number of company willing to develope (or sell) commercial product with better assistence and more tuning on GUI and bugs.

  • http://www.olate.co.uk Olate

    Yes, that is the problem for many companies – they feel that open source means that it is always volunteers doing it in their spare time with no real guarantee that the project with continue or that they’ll get support. In my experience, this is often true; but it is also true for commercial products too. It helps to have a company behind an OS product.

  • http://www.deanclatworthy.com Dean C

    Some good points raised. I think there are still huge gaps in the market for commercial PHP software :) It’ll be interesting to see what the market is like come 5 years time ;)

  • http://www.solutionsphp.com/ solutionsphp

    Well-timed post, as we look back on 10 years in the life of PHP.

    I firmly believe in the philosophies behind open source. As a web developer, I’ve always looked to open source to provide cost-effective solutions for clients. For some projects, we’ve kicked back funds but surely not nearly enough to even come close to covering the time and expertise of open source developers.

    As another way of giving back, we’re currently working on the development of several open source apps for web developers’ use. We can then turn around and offer these apps to web development clients, still as free software but upsell their installation, configuration and customization. For at least 2 of the apps we’re developing, we’ll be creating both lite and pro versions. The pro versions will be marketed independently and made available under a commercial license.

    Overall, our strategy was developed with the goals of supporting the open source movement, while also monetizing some of our efforts. It’s not an original business model, but one that will hopefully pay off for us while also contributing to the open source community.

  • Dr Livingston

    > As a side note, I propose that this may be a cause of the PHP community’s unquenchable desire for reinventing the wheel – but I’ll save that for another blog post.

    You could be right on this point, but I can’t see it changing anytime soon. I want to make a living and yes I also want to prosper not just finiancally but as a developer.

    If I had to make my code base public domain then to me personally this would defeat the purpose. I strive to better myself as a developer, I don’t strive to better other developers in a commercial sense.

    Is that being selfish? I don’t know…

  • http://www.rideontwo.com z0s0

    [quote=charmedlover]What binds it would have to be things such as customer agreements and such. You cannot have open source with a few encoded files ;)[/quote]

    Interestingly, this is Cerberus’s approach. The GUI and pretty much the entire application is clear-code PHP, but a key component (the email < -> GUI interface) is a binary executable which validates the customers’ license key. Seems to work well for them.

  • http://www.bn23.com b0rdslide

    Invision Power Services are also a pretty big commercial php company. Their Invision Power Board is unrivalled in terms of features and customisation, coupled with their rapidly evolving blog and gallery add-ons they look to get even bigger, especially with their up-and-coming AJAX interface.

  • John Ginsberg

    We have offered a PHP-based web and emarketing software suite as a commercial product for about 4 years now and it’s a healthy business. We don’t offer any of our proprietary code as open source and prefer to target mid to large sized companies as they aren’t afraid to pay for good quality software, regardless of the programming language.

    We encode our software using Zend’s products and include our own proprietary licensing system to protect usage.

    Just because it’s PHP doesn’t mean it has to be free – it’s more than possible to have both models in the same industry without conflict.

  • George W

    Everyone has to eat so i don’t blame folks for prospering off their creations. Therefore, I thank every PHP or GPL developer(a million times) for their effort and generosity. I can’t afford to develop GPL software currently but i certainly hope i can one day. I also hope i can inspire other developers as i’ve been inspired by the GPL community.

  • Elaine Nelson

    We use Alex King’s Tasks Pro — http://www.taskspro.com — for our workorder & job management system, and it’s been an excellent solution for us. (per-user license cost, but the code can be modified)

    In my research, it was the best balance of design and functionality, and cheaper than spending weeks of my salary continuing to hack on our old system.

    Two features were particularly important to us, and I think these have something to do with where one might or might not spend money:

    * it’s attractive, which is important working with graphic designers.
    * the license allows for modifications, which means that we can make the custom tweaks that our environment needed…in the language that I already know.

    I think there will be places for a variety of models in the PHP development community, and that’s a great thing!

  • Chris

    I’d wager that most Microsoft-centric developers would run to the hills in fear of providing their entire source code to customers!

    Related to this statement, I can only say one thing.
    Microsoft-centric code IS freely available and can be quite useful. I’ve seen, and used code from CodeProject, as well as placed code into their repository (some 2-3 years ago) for many years now.
    Microsoft’s own site has many items that can be quite useful.

  • Phil Davison

    (As a side note, I propose that this may be a cause of the PHP community’s unquenchable desire for reinventing the wheel – but I’ll save that for another blog post.)

    I’m sure most people start to reinvent the wheel because they are learning to code in whatever language they are using. Most of my PHP started that way. So you can probably blame people who write books which make people like me realise we can do the coding ourselves from scratch.

  • Ben

    I, too, develop both open source projects like phpBugTracker (http://phpbt.sf.net/) and commercial projects like Tesly (http://www.tesly.com/), a web-based test plan management system.

    I enjoy giving back to the community with the OS projects, and I hope to make a little coin on the side, too. :)