Hanging with my Aussie Drupal friends: let's meet up

To celebrate Drupal's tenth anniversary and the release of Drupal 7, I have decided to go on a Drupal tour, to celebrate, educate and spread the word on all things Drupal. I'm kicking-off my Drupal tour with a trip to Australia.

It's important for me to meet with other community leaders around the globe and promote Drupal. While down under I will be meeting with Drupalistas and non-Drupalistas, Acquia customers and partners, press and analysts. My goal is three-fold: (1) to promote Drupal, (2) to gain insight from users and prospects on the choices they make when it comes to choosing a web platform and building websites, and (3) to figure out how to further improve Drupal.

If you would like to meet to discuss Drupal, community building, web platforms, photography or anything else please let me know! I am currently in Brisbane (a little tired from the flight), I look forward to meeting you Down Under.

Here is where I will be and when:

For more details, keep an eye on the Drupal.org Australia group, my Twitter account and this blog. To schedule time with me please contact Laurie Vertuccio and Matt Ackley; they help manage my schedule while I am traveling. Looking forward to meet!

Ariving in Brisbane
About to land in Brisbane where I kick off my Australia tour.

Acquia retrospective 2010

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!

An improved Webform user interface for Drupal

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.

Building blocks of a scalable web crawler

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!

Playing with New Relic on Acquia Hosting

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 Apdex, 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 (/article/11/19/why-mysql-is-cool and /article/11/19/postgres-is-cool and so on) that are all handled by the same controller (e.g. node_page_view()).
This graph shows that most of my database time is spent reading and writing to the accesslog MySQL table. By disabling the access log feature in Drupal, I could reduce my database load roughly in half.

Drupal benefits from venture capital

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 know bootstrapping is hard because I'm bootstrapping Mollom. I know building a product is hard because every day at Acquia, I see how much time and effort goes into our different products.

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.

The right amount of venture capital to raise

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.

We raised a whopping $23,500 for Movember

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.

Acquia team collage

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.

Day thirty
Day thirty

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!

Stock options and employee equity

To my surprise, a lot of people that I interview at Acquia don’t understand stock options or have never heard of it. This blog post explains what stock options are about. It is a very technical topic but for the sake of this post, I am going to keep it really simple and make some over-simplifications.

In essence, a stock option is a right given to an employee to purchase stock at some point in the future at a set price.

When a company is founded, the founders own 100% of the company. When they raise money from investors, they give them a share of the company's stock in exchange for money. In addition to that, most institutional investors will require that you establish an "option pool" which usually accounts for 10% to 20% of the company. So if you sold 30% of your company to an investor for 2 million dollars, and you set aside 10% for the option pool, the founders still own 60% of the stock and have 2 million dollars to work with.

Having an option pool is very common for a venture backed startup, and fairly uncommon for most small companies. At Acquia, which is a venture backed company, we give our full-time employees stock options on top of a competitive salary. These options come from our option pool.

If you are an employee of a startup, stock options are a big deal as you are going to receive stock options as part of your compensation. It is a big deal because it means you have the option to be a shareholder and to share in the gains. It's a big part of the startup culture, and an important reason why top engineers prefer venture backed startups.

So what exactly does that mean for you as an employee?

When you join a startup as an employee, in addition to your salary, you might be granted 10,000 stock options at a strike price of $1 per share. Those options are taken from the stock option pool that is set aside especially for employees. In our example above, all employees together can own up to 10% of the company.

When the company is founded, the stock is basically worthless. The founders, the employees and the investors will want to steadily increase the value of the company, and by extension, the value of the company's stock.

At the time of an exit, the stock is hopefully worth $100 per share or more. So if you were granted 10,000 options at a strike price of $1 per share, you can buy 10,000 shares for $10,000. However, at that point, the shares are immediately worth $1,000,000 as over the years, the stock price has increased to $100 per share. In other words, the 10,000 shares that you got when you joined, can make you a $990,000 profit on top of your salary.

Granted, the value of the company might not always go up, or it might not go up that fast, but it certainly could. Hundreds of Google employees became millionaires overnight when Google went public. Hundreds of Google employees left to join Facebook -- not because they get a better salary but to get some of Facebook's pre-IPO stock options. When a startup is growing and successful, the price will go up over time. At the same time, if the company fails, the employee equity will be worthless.

The reason startups use stock options is because it allows them to attract and retain high-quality people at reasonable salaries. You can choose to go work for a startup for $85,000 per year in salary and 10,000 stock options granted over 4 years, or you can choose to work for a company for $90,000 in salary and get no stock options at all.

Do you want to take the reduced salary and some risk and swing for the fences, or you do you prefer predictability without the potential for a big upside?

My first job out of college I worked for a venture backed startup that granted me two rounds of stock options -- both grants were rendered worthless as the company didn't survive the bubble in 2001. Even so, I never regretted the choice to go work for this startup. I still got paid a fair salary, I learned a lot and just loved the start-up culture that we had created.

I firmly believe there is an entrepreneur tucked away in many of the best people. For those people, the daily satisfaction of working with high-quality colleagues in a fast-growing company, and the ability to share in the company's success as a shareholder, is worth a lot more than a bigger salary and predictability. I knew that was true for me when I was 21, and I know it is still true now that I'm 31.

Is it mouthwash or hand soap?

Last week in a restroom in New York city, I washed my hands inadvertently with mouthwash. It sounds silly, but it looked like the soap to me. The bathroom was so posh and the container it came in was deceptive: who expects to find mouthwash in a restroom? But, this wasn't a normal restroom.

I was at the Yale Club of NYC representing Drupal and Acquia, as well as trying to make the point that Drupal fits in the enterprise world.

The Yale Club of NYC with its twenty-two stories is without doubt the most impressive private club house I've ever seen. Access is restricted almost entirely to alumni and faculty of Yale University. Needless to say, it is not the usual location for a Drupal event. However, this was not a normal Drupal event.

This was the location for the first Drupal Business Summit run by Acquia. The Summit brought together business leaders from many leading companies, including a number of CIOs and Vice Presidents from public companies.

Drupal business summit reception
Picture taken in the library of the Yale Club at the reception of the Drupal Business Summit.

Despite my faux pas while washing my hands, the event was a nice reminder for me that Drupal has made its way to many large global organizations and is on the radar for business executives in a way it has never been before.

Last year, I wrote about how CIOs are starting to take notice of Drupal. Today, CIOs of hundreds of companies are actively evaluating or adopting Drupal. A lot has changed since I wrote that blog post, and the next eighteen months promise to be a roller-coaster ride. It's happening.

Acquia has organized three more Drupal Business Summits: one in Washington D.C. on November 18, another in Chicago on November 30; and a third in San Fransisco on December 2. As indicated by the event in New York City, it's an excellent way to spread the message about Drupal to communications and IT executives. Nothing is as effective as for people to hear about Drupal from their peers. It's not an event for developers -- unless you get a kick out of washing your hands with mouthwash.

Subscribe to Acquia

Updates from Dries straight to your mailbox