In 2005, Alfresco was the first open source software company in the UK to capture venture funding, for its collection of enterprise document management applications. John Powell, formerly the COO of Business Objects, and John Newton, founder of Documentum, got together to launch Alfresco because they wanted to create a business that would have "global reach," according to Powell. Right from the start, Powell and Newton knew that the best way to do that was to create and market an open source product.
Powell says he knew that building a company that reaches to the four corners of the Earth would be difficult "when you've got big heavyweight US companies like EMC and Oracle out there to squash any little startup." But with a core team of experienced developers and a solid plan to improve on an already popular idea, Powell was confident it could be done. "We figured if we used an open source business model it would enable us to get the software into global distribution and overcome the challenge of competing with these very big monopolist players. It turned out to be a good choice."
Alfresco had over 500,000 downloads in its first year, and Powell calls it the "widest deployed content management software on the planet." That kind of popularity begins by building an application using trusted components, he says. "We built Alfresco using a set of technologies that are very well respected in the open source world: Red Hat, JBoss, SpringSource," to name a few. "We got our initial traction with Alfresco because it is a Java-based architecture and developers liked the product compared to the existing content management systems. Ours had a very lightweight, extensible architecture." Powell compares the popularity of Alfresco to that of the MySQL database. "The original users were people who weren't looking for a database -- they just wanted something to manage a list. We weren't trying to solve the most extreme CMS problems, but just the problems that every user wanted solved."
Powell says that his challenge is convincing small and medium-sized business owners that they should subscribe to Alfresco's enterprise edition. "How to communicate the value of why people should subscribe to the service. Open source is free as in puppies, but not as in dog food. Any good piece of infrastructure software, you have to spend money to look after it. That's the commercial side of Alfresco. It's what we're offering our customers to help them get the best use out of running it. We face a lot of people who don't understand why they should pay for the service."
Larger organizations don't need convincing, Powell says. "Most large companies want a partner to help them. The real battleground is small to medium-sized companies where traditionally Microsoft has been very strong. Microsoft is basically selling products but they don't support those products in the way that you and I understand. We try to explain to customers that acquiring a software license doesn't do anything for the business -- it's actually using the product that adds value."
Powell says Alfresco has made it a point to be active in the open source community. "When we started, we did a lot of work up front to make contact with and establish good working relationships with the other major open source projects. We contribute back a lot of information and helps and fixes. We do a lot of joint work with JBoss and that morphed more into Red Hat. Our general view is to work with the open source products, certify and recommend them, and give them prominence."
Alfresco's own developer community has more than 5,000 registered developers and 50,000 registered users. "Part of that comes down to the leadership and vision for the product. We've been lucky; the team we have has credibility in the content management world. Our number one objective is to lay out a strong, credible roadmap for the product. And what happens then is that the community is able to rally around that and contribute rather than fight against it and write their own versions of the vision. We've also gotten a lot of help from the community in filling out pieces of the product where we don't have the expertise or that are not mainstream parts of the roadmap."
Powell says the main benefit of building on open source is time to market. "We are able to reach a huge market, very rapidly, with minimal costs. As soon as you make the product free and give people a license, it allows them to use the product without fear. It's going to win out in that natural dissemination. With closed source, it takes a lot longer to get to use the product. By putting everything out there, it enables you to capitalize on that moment. You have a very big advantage. And you get the advantage that others share their opinion to help you make the software better.
"When a proprietary company starts, a couple of engineers come up with a really smart idea and they program it. Then the company starts marketing. They might have great success -- but not many engineers can then come up with a second great idea. By keeping your product secret, you limit the way that it can evolve and you shut off the path of free ideas from the outside world. If you look at our original roadmap, 50% of the roadmap is still there, but 50% has changed in two years because people in the community have had better ideas. We wouldn't have that sort of input if it were closed source.
"A closed source company expands its feature set by acquiring other companies. Most of the [proprietary] enterprise content management products are a mishmash of technologies that creates a huge problem in the quality of the software. You can't cut and paste software. The community approach enables you to get different ideas but blend the code in an efficient way."
For entrepreneur developers who want to build their own company on open source software, Powell has some advice. "The first thing to know is that not all software is suitable for the open source model. That doesn't mean that over a course of time a piece of software might not become suitable, but to be successful it has to be software that is relevant to thousands of developers. For example, let's say I dreamed up a piece of software that was fantastic at figuring out some sort of complex financial transaction. That software might be very valuable, but probably isn't going to set the open source community alight. A key characteristic of an ideal open source company is, am I going to be improving something where the concept is already very widely understood, as opposed to coming up with a completely new solution people aren't familiar with. Successful open source is not coming up with a completely unique paradigm. Successful open source is making existing software much better."