You are here
Yesterday I shared my 2010 retrospective on Drupal along with some predictions for the new year. Today, I want to recap Acquia's accomplishments in 2010, just like I did last year with my 2009 Acquia retrospective.
It doesn't always feel like it, but Acquia is still a very young company; 2010 was only Acquia's second full year in business (i.e. revenue-bearing year), but for a young company 2010 has been nothing short of remarkable. Our business grew by more than 400% and we went from 35 to 80 full-time employees. Drupal Gardens grew from 0 to 30,000 sites, we added over 100 large hosting customers to Acquia Hosting, and our subscription business has over 600 customers. Our client advisors solved more than 6,000 support tickets, and our hosting team now manages 500+ servers, up from 100 servers at the beginning of the year. Together with our partners, we hosted more than 40 webinars in 2010. 2010 is also the year were we started to see some great successes in our partner program. Throughout the year, we got coverage in the New York Times, the Boston Globe, Forbes, Techcrunch, Mashable and more.
We beat our wildest expectations. Acquia is now one of the fastest growing start-ups in Boston. As a reward for exceeding our stretch goals, we're flying the entire company to Puerto Rico to celebrate. At the beginning of 2010, people doubted we'd even be able to get off of the ground, but by all accounts we're now soaring.
For me, a startup is a search for a scalable, repeatable business model. 2010 is the year where we arrived at several scalable, repeatable business models and as a result things started to really accelerate. In the summer of 2010 I moved to Boston so I could spend more face-to-face time with the team. By the fall of 2010 it was time to put the pedal to the metal and so we decided to raise additional capital. Much of the new capital will be used to help grow Drupal, to extend and improve our product offerings, and to grow our sales and marketing engine. In early 2011, Acquia will also expand to Europe.
I'm also particularly proud of Acquia's contributions to Drupal. We organized many code sprints, dedicated several of our best developers to Drupal 7, organized 4 free Drupal Business Summits to help promote Drupal in the enterprise, helped with the drupal.org redesign work, helped with the Drupal 7 upgrade and UX improvements of several contributed modules such as Media module and Webform module, created an open source social business software solution (Drupal Commons), and much more. The list goes on and on. Since Acquia's interests are so aligned with Drupal's, in everything we do, we try to raise the tide for the Drupal community at large. I'm proud of this because it is not trivial for a small company our size and stage.
Building a company is hard work and never without challenges. Fortunately, we have different challenges now than we had at the beginning of the 2010. When the first Acquia Network subscription renewals kicked in at the beginning of the year, renewal rates were below expectations. Today, our renewal rates are exceeding our expectations. Early in 2010, the rate of change of Drupal 7 APIs and number of critical bugs slowed down our progress on Drupal Gardens considerably. Today, Drupal 7 is almost ready to be released.
Going into 2011, there are two things impacting Acquia's future that still concern me; (1) the scarcity of great Drupal talent and (2) Drupal's growth. The demand for Drupal experts continues to be much larger than the supply -- it limits the adoption of Drupal by our customers, the growth of our partners, as well as our own ability to hire Drupal talent. Fortunately, it is not unusual in a fast growing segment and the community is launching many training initiatives to combat this scarcity. Together with our partners, we delivered 30+ training classes worldwide in 2010. It is still something that warrants further attention. Regarding Drupal's growth, it's great that we power 1% of the web, but considering the overall growth of web sites, we have to dramatically increase the number of sites being built just to even keep a 1% share, and we shouldn't settle for even that.
In general, I'm very optimistic about Acquia's future in 2011. In fact, I'm much more optimistic about 2011 than I was about 2010. The wind is blowing in the right direction. Cloud computing and Software as a Service (SaaS) continues to be on the rise. According to IDC, cloud computing will be a $55 billion USD market by 2014. I believe cloud computing and SaaS could be two of the most important changes in the history of computing -- it fundamentally changes how both small and large organizations operate. If they do, we made the right decisions three years ago. I expect that by the end of 2011, Drupal Gardens (SaaS) and Acquia Hosting (PaaS) will take off big time. Open Source adoption continues to become more mainstream too. For example, at the current rate, Red Hat will be a $1 billion USD revenue company in 2011, a milestone that very few software companies ever reach, and certainly one no open source company has yet to accomplish. It's good news for all of us in the Open Source business.
In all, 2010 was a great year for Acquia and Drupal, and 2011 promises to be even better. In the next week or so, I'll provide more insight into Acquia's product strategy and the vision we've been working towards since Acquia's founding three years ago. If you're interested in our plans for 2011, keep an eye out for that blog post. That said, expect us to invest heavily in Acquia Hosting (e.g. additional self-service tools, friction-less release management and lifecycle management capabilities, etc), the Acquia Network (e.g. visual refresh, new services, marketplace for third-party services, etc) and Drupal Gardens (e.g. Views, partner tools, etc).
Needless to say, Acquia wouldn't have made it this far without our customers, our partners and our friends. We wouldn't be much of a company without you. Thank you for 2010!
At Acquia, we spent a lot of time improving the Webform module, one of the top 10 most popular Drupal modules, as well as the Form Builder module, a companion module that provides an improved user interface for the Webform module. The Webform module and the Form Builder module allow people to create custom forms such as contact forms, online surveys and more.
Both modules are maintained by Nate 'quicksketch' Haug, one of the top Drupal contributors. Like anything Nate does, the modules are amazingly powerful and have great code quality. We wanted to add support for creating custom forms to Drupal Gardens and believed that the Webform and Form Builder modules were the right way to go. No need to reinvent the wheel.
Before making Webform and Form Builder available as part of Drupal Gardens, we wanted to try and see if we could make Webforms easier to use, without making it less powerful. We spent about 200 hours to explore various different design and interaction models. We used both paper prototypes and working prototypes to conduct usability tests, and used these to drive further optimizations. After we felt good about the direction, we ran it by quicksketch. With quicksketch's guidance, we helped upgrade both modules from Drupal 6 to Drupal 7, and implemented the new user interface on top of that. The new drag-and-drop interface puts some things in different locations on the page and has a number of different interaction patterns compared to the old user interface. To do so, we wrote a couple of modules that add our user interface on top of the Webform and Form Builder modules. It is layered like a stack: Webform → Form Builder → Alternate UI.
Fast forward 25 person-weeks, and we've now rolled out our improved user interface as part of the latest Drupal Gardens release. To see how it looks, take a look at the video below or create a free Drupal Gardens website if you prefer.
We're contributing everything back to the community -- some things we've already contributed back, other things we're in the process to. We're also helping to back port some changes to Drupal 6, even though we don't need them for Drupal Gardens. With these contributions, everyone in the community can benefit.
The new user interface is an incredible achievement that a lot of people deserve recognition for, including quicksketch who spent many years of getting Webform and Form Builder modules to where we were able to use them as a starting point.
I'm pretty excited about this user interface, and would love your feedback and suggestions. What do you think?
Update on January 10th, 2011: the Webform Alternate UI module is now available on drupal.org. This module provides an alternate user interface for the Webform module, allowing you to create and edit forms from within an easy-to-use form building tool.
I recently had the pleasure of serving as a thesis advisor on a work by Marc Seeger, who was completing a portion of his requirements for a Master of Science in Computer Science and Media at Stuttgart Media University. Marc's thesis was titled "Building blocks of a scalable web crawler".
Marc undertook a project for Acquia that I had originally started in 2006; a Drupal site crawler to catalog, as best as possible, the current distribution of Drupal sites across the web. That is a task for which there is no easy answer as Drupal can be downloaded and used free (in all senses of the word). The best way to find out how many Drupal sites exist, is to develop a crawler that crawls the entire web and that counts all the Drupal sites one by one.
With Marc's help, I was able to resurrect my crawler project. Marc spent 6 months working with me; 3 months were spent in Germany where Marc lives, and 3 months were spent in Boston where Acquia is based.
During that time, Marc explored suitable architectures for building out, collecting and managing website data on the order of many millions of domains. He examined different backend storage systems (Riak, Cassandra, MongoDB, Redis, CouchDB, Tokyo Cabinet, MySQL, Postgres, ...), contemplated the methods of collecting the data while simultaneously allowing search and access. As part of his work, Marc explored a variety of different database technologies, database schemas and configurations, and experimented with various configurations of Amazon's Elastic Cloud hardware (EC2). Issues common to any large deployment were investigated and analyzed in detail, including HTTP persistent connections, data locking and concurrency control, caching, and performant solutions for large-scale searches. HTTP redirects, DNS issues -- his thesis covers it all, at least in terms of how each of these items impacted the search for an acceptable algorithm.
The crawler has been up and running for a number of months now, and investigated about 100 million domain names. Now we crawled about 100 million domain names, I plan to start publishing the results.
Marc's work is available in PDF from his blog post, and it's a good read, even if I'm slightly biased. Thanks for the great work, Marc! Time to look for a couple new thesis projects, and thesis students that want to work with me for a few months. Ideas welcome!
During the past month, I've been trying New Relic on my personal blog. New Relic is a performance management tool. It can help to monitor, debug and optimize a site. It includes features like slow page request analysis, slow database query analysis, error tracking, scalability analysis, performance alerts, weekly e-mail reports, up-time monitoring and even very specialized features like Apache Solr profiling. It's a bundle of developer goodies that can be used on live production websites.
I'm a bit of a profiling geek. In my previous life, I spent a lot of time working on production profiling and performance optimization of Java applications. So when New Relic recently announced that they're working on support for PHP applications, I wanted to give it a try.
We began testing New Relic when the PHP version was still in beta. We believe it can make for a great service to add to Acquia Hosting and the Acquia Network. My site is hosted on Acquia Hosting which is why I have been testing it on my site. So far the testing has been good. We've helped New Relic fix a number of bugs during the beta test period, and in return New Relic has helped us to discover a performance problem in one of our deployment scripts on Acquia Hosting. Proof that New Relic is useful!
Now that we are past internal testing, I am excited to say that we will soon be bundling New Relic into the Acquia Network. Every Acquia customer will soon get access to a premium version of New Relic's monitoring tools at no additional charge -- whether you are hosting with us or not. Expect more detail from us soon on how to access New Relic as a subscriber.
New Relic requires a small 'agent' to be installed on your web server. The agent hooks into the PHP interpreter and sends the relevant information to a back-end for analysis and visualization. Because it hooks into the PHP interpreter, it can provide that deep, code-level visibility that is useful when debugging a performance problem. The New Relic agent also adds extra Drupal specific instrumentation -- and will probably add more over time.
I've only used it on my personal site, which currently runs on a regular Drupal 6. However, I'm quite keen to unleash it on a Drupal 7 installation to see what we can learn. In the mean time, I'm including some screenshots of what my personal blog looks like according to New Relic. If you're interested in improving the performance of your site and are a profiling geek like me, you should give New Relic a try.
New Relic uses <a href="http://en.wikipedia.org/wiki/Apdex">Apdex</a>, an industry standard for measuring the satisfaction of a user of an application or service.
New Relic conveniently separates database performance from PHP performance. On a busy system, that makes it easy to pinpoint bottlenecks.
New Relic tries to annotate performance problems to 'controllers' rather than to specific URLs. Thus, it automatically extracts 'Drupal page callbacks'. This is nice because when an application has thousands of unique URLs (<code>/article/11/19/why-mysql-is-cool</code> and <code>/article/11/19/postgres-is-cool</code> and so on) that are all handled by the same controller (e.g. <code>node_page_view()</code>).
This graph shows that most of my database time is spent reading and writing to the <code>accesslog</code> MySQL table. By disabling the access log feature in Drupal, I could reduce my database load roughly in half.
Things are heating up in the Drupal world as both CommerceGuys and SubHub raised venture capital money. We're still waiting for an official announcement, but word on the street is that CommerceGuys raised around 1 million euros to develop a number of e-commerce products and services for Drupal. SubHub raised more than 1.2 million euros to date to develop SubHubLite, a hosted service for Drupal 7 comparable to Drupal Gardens and Buzzr. In addition to CommerceGuys and SubHub, I know of at least two other Drupal companies that are in the process of raising money from investors ...
Selling a product has more upside potential than selling consulting and professional services which you can only bill by the hour. However, it is difficult to bootstrap a product based business without a major investment of funds -- usually from outside investors. I've seen many try and fail. In almost all cases, it failed because the company was under-capitalized. It takes a lot of resources to create a successful and defensible product. Furthermore, people tend to forget about sales and marketing. It's not enough to build your product -- you have to bring it to market as well. That is not trivial either.
I don't have a rich uncle, so I would not have been able to co-found Acquia without venture capital financing. We decided that we wanted to focus on being a support and software product company with a strong partner eco-system. Starting Acquia wasn't the easiest route for me, but looking back at the past three years of Acquia, I believe that I made the right decision. Based on how much Acquia has contributed to Drupal and what it has enabled me to do, I like to believe it would have been a loss if I had taken a more conventional route -- or had I decided to continue to work on Drupal as a hobby project.
It's refreshing to see that more and more Drupal companies aspire to become successful product companies and that they are seeking venture capital. I always admired the Ruby on Rails community for its seemingly entrepreneurial attitude. I'm glad to see more of it in the Drupal community as well. There is a good deal of fear surrounding venture capitalists but if Drupal is going to grow, we should expect to see more venture-backed companies building Drupal products. Venture capital financing can be good, especially if these companies give back to Drupal and if they build products and services that make our life easier. We all benefit from that.
In this post, I want to focus on one of the most difficult questions for entrepreneurs raising money from investors: what is the right amount of capital to raise? We debated this question extensively in each of the three rounds of raising venture capital at Acquia. It's particularly a tricky question for people like me who are relatively new to venture capital. I spent plenty of time thinking about this and talked about it with numerous successful entrepreneurs that have raised money before.
Based on my own thoughts and my informal survey, my current best answer is the following: the right amount of money to raise is somewhere between the following two choices: (1) enough to build the business that you want to build and (2) as much as you can without being insane or irresponsible. Unless the company does incredibly well, the difference won't be that large.
Raising less money than you actually need can be really destructive. First, it could cause you to miss opportunities because you won't be able to expand fast enough. Second, the company might not survive unexpected setbacks. Last but not least, without sufficient capital you might not be able to attract or retain the right talent you'll need.
Conversely, raising too much money unnecessarily dilutes the ownership of both the founders and the employees. It also makes it difficult to raise more money later on. And it makes it harder to sell the company: the more money you raised, the bigger the price tag becomes as the investors will look to make a multiple on their investment. At a minimum (worst case), you will have to sell the company for at least the total liquidation preference -- hopefully a 1x non-participating.
When in doubt, raise more money rather than less. Growing a start-up is hard as it is. You don't want to introduce more risk by not having enough capital. You want to be able to run a few experiments, make a few mistakes or be able to take advantage of unexpected opportunities.
Being able to project how much cash you'll need is an important discipline to master. Cash is the lifeblood of any company. Making financial projections and forecasts is obviously more difficult when the company is pre-revenue or just starting to take in revenue. You'll have to make many assumptions.
Trying to determine how much money you need feels like trying to solve an equation with too many unknowns. It's a balance between the size of the opportunity, increasing the likelihood of success, optimizing for the financial outcome of all employees, the business' situation relative to the market, and so forth.
At Acquia, we made assumptions about the number of customers, average sale price, customer acquisition cost, product mix, etc. We used these assumptions to estimate our costs and revenues. To help ensure that we weren't fooling ourselves, we tried to validate as many of our assumptions by talking to other entrepreneurs and comparable companies. So we talked to key people from other open source companies (e.g., MySQL and jBoss) that are in the commercial support business.
The better your assumptions, the better you can estimate how much capital it takes to build your company. In each of our funding rounds, we raised at least enough money to achieve our goals and some extra beyond our plans to handle bad surprises or unexpected opportunities. So far, that has been a good strategy for us.
Movember has come to an end, and soon I will remove the moustache that I groomed so carefully during the month of November. Before I shave, though, I want to thank everyone who sponsored my moustache.
The Acquia team, of which I am a part, raised a whopping $23,500 USD, and donations are still coming in. That puts us in the top 25 teams nationally. When we first started talking about doing a Movember campaign at Acquia, no one would have thought we'd have the impact that we did since we conducted the program with a relatively small team. I continue to be amazed by what this team can do when we put our minds together to achieve something.
Myself, I raised a total of $699 for the team. When I wrote my Movember announcement post, I jokingly said that I'd humiliate myself publicly by posting pictures when I raised more than $500. While some people gave me money not to post any pictures, or to shave prematurely, I still owe it to many others to show the result of my mo' growing efforts. Pictures or it didn't happen.
Of course, the real "thank you" should go to the many people that donated money to our cause. Thanks to them a significant amount of money will go to cancer awareness and research. Thank you!