Whining by a Barrel of Rocks

Summary: Eric Sink introduces himself and his new MSDN column about the business challenges of developing software products as an independent software vendor.

First Post

Spanning everything from the one-person shareware shop to some of the largest firms in the world, a lot of great careers have been made by building and selling software products.

I am thankful to count my own career in that group. My name is Eric Sink, and I am a code-aholic. I love building and selling software products. I like the strategic marketing analysis. I like design and architecture. I like writing code. I like the smell of a freshly killed bug.

But most of all, I like the satisfaction of hearing from real people who use my products to get real work done. That's the moment when I know it was all worthwhile. When I get to the point where I'm just doing this for the money, maybe I'll stop. But right now it's hard to imagine doing anything else.

I run a small ISV (independent software vendor) called SourceGear. We sell developer tools to the Microsoft Visual Studio world. We're almost seven years old, we've currently got about 25 employees, and we are located in Illinois.

This is the first article in my new monthly column entitled "The Business of Software." I'll be writing about the business challenges of software products today.

In general, software product companies are chock full of technical people who routinely get involved in business decisions. Many programmers are involved in marketing and don't even realize it. In smaller companies where people tend to wear multiple hats, the line between development and business gets very blurry. People don't like to admit it, but geeks are making decisions that have important business implications.

I am one such geek, trained in computer science, not in business. Life as an entrepreneur has taught me some great lessons, mostly through a long stream of truly boneheaded mistakes I've made. If you are involved in the building or marketing of a software product, this column is for you.

Remembering the Good Old Days

The appearance of independent software vendors is a relatively recent one on the business stage. The first computer language, Fortran, was born in 1957. I can't think of a single software product company from the 1960s. I'd say that our industry was in its infancy in the 1970s, and became real in the 1980s. So to one significant digit, our field is just 30 years old. But for such a short history, we have experienced an amazing pace of change.

Think back a mere ten years to 1993. Things in the software industry were very different than they are today. Nobody had heard of 28.8 modems, much less Web browsers. The Mac was still on the 68040 CPU. SQL Server was a new product, and Visual Studio didn't exist yet.

Ten years ago I was at the 1993 Microsoft Professional Developers Conference (PDC) in Anaheim. After years of coding for MacOS and X11, I was becoming a Windows programmer. I couldn't bear the thought of coding for an OS without real pointers, so the advent of Win32 seemed like the time to jump in. My product was being developed using a subset of the Win32 API called "Win32S". I remember installing the application in one of the PDC machine labs and bragging to people that it ran under Windows 3.1, Windows NT, and "Chicago," without a recompile.

Ten years later, I am headed to the 2003 PDC in Los Angeles, and the landscape looks very different. Those pointers which were so important to me are now gone, replaced by object references and a garbage collector that really works. MacOS is now a flavor of Unix, running on a new chipset. The Internet has gone mainstream. I send e-mail to my Mom. I do my Christmas shopping on Amazon. I roll my eyes in disdain at any news site that still doesn't have an RSS feed.

We have tools and technologies that would have seemed like science fiction ten years ago. But have our business strategies kept pace with the advances on the technology side?

Teaching new tricks to old dogs

Some of us still live in the software industry of the late eighties and early nineties (or perhaps a hindsight-enhanced version of same). We remember when the market for applications was more like an open frontier, with opportunities in all directions, as far as the eye could see. The world seemed to be overflowing with problems where software had yet to be applied.

The challenges of selling a software product are very different now. The market is maturing. Personal computers are prevalent in homes and in every professional occupation. Some of the hot technologies of 1993 are commodities today. New killer apps are tough to find, and the known ones are owned by established players who defend them with nine-figure budgets.

If you are planning to start tomorrow on your dream of building a billion-dollar software company from scratch, I hope you have a truly revolutionary idea or a truly stupid venture capitalist with very deep pockets. Mature markets don't welcome large new players.

But the smaller market segments remain a good place to find opportunities. My optimism for the small ISV remains high. A lot of great careers are still going to be made building and selling software products, but today's challenges call for some new strategies. Some of us old dogs need to learn a few new tricks.

Sadly, the fashionable trend today is to just blame the big vendors for dominating all the major market segments. We look at the marketplace and we see no opportunities. We proclaim that the ISV is dead. We complain that the big companies have covered every market position and "left nothing for the little guys". Raise your hand if you have indulged in this kind of whining. I have.

In our own defense, let's admit that these rants originate in a grain of truth. Given the size and maturity of today's leading software companies, some market positions are just not available in any practical sense.

But as much fun as it is, whining doesn't help us make software. The presence of big powerful players is a natural step in a maturing industry. It is silly to focus on the things we cannot control. Perhaps we should stop shouting at the rain and start finding the opportunities that do exist.

What's that, you say? There are no opportunities? Look again. Thousands of small software companies offer their existence as proof that the ISV is not dead. If we don't see any opportunities, perhaps there is something wrong with our eyes.

Or, perhaps we just need to learn to look for somewhat smaller rocks.

The Importance of Barrel Research

Niche opportunities are the place to thrive in software products today. I'm talking about specific market segments which are simply too small for the big players to pursue.

Software niches are a bit different than traditional markets. Software generally does not respect geographic limitations, especially now that the Internet is everywhere. Products like concrete and lumber tend to be extremely regional, but a software niche might be global.

The niches are great because they are relatively safe from the big vendors. It's just not all that feasible for large companies to pursue the smaller market segments. The top players in PC software today are companies like Microsoft, Adobe, Intuit, Symantec, and Macromedia. Remember that these firms are publicly traded and are accountable to their shareholders who expect regular double-digit growth rates each year. Even the smallest of these companies has annual revenues of several hundred million dollars. When they evaluate the potential opportunity of a new product, they're looking for the likelihood of tens of millions of dollars in annual revenue, at a minimum.

Now let's suppose we're considering a market opportunity with realistic potential for $3M USD annual revenue. The big vendors can't even consider pursuing a market that small. It's not worth their time. But a $3M annual revenue stream will easily sustain a small company of 15-30 employees. That niche is an opportunity, and somebody is going to build a nice company inside it.

Identifying all the opportunities for software products is like filling a barrel with rocks. We start by putting in the really big rocks like office suites and desktop operating systems. Soon the barrel is full and will hold no more large rocks. But smaller rocks can still be added easily. In fact, we have to add a surprising number of small rocks and pebbles before the barrel can be considered full.

In our long and storied 30-year history, I doubt it has ever been so important to carefully choose which products we create. Most of us need to learn how to see and pursue the smaller opportunities.

Why Don't We See These Opportunities?

All this stuff is easier said than done. Those smaller rocks are evidently somewhat difficult to see. We look at the market, and all we see is big rocks owned by big companies. If these small market segments really do offer opportunities, why don't we see them? I believe there are three main reasons why:

  1. We don't want to see them.

    Some of us are only interested in really big rocks. We don't look at niche market segments because we don't care about them.

    This posture makes sense as long as it is an informed one. Remember that in a small ISV with $3M annual revenue, the principals can earn very nice salaries.

    Finally, small companies can more easily stay focused on the fundamentals of serving customers with great products without the distractions of venture capitalists or quarterly financial expectations. I recommend not holding too much disdain for the small company world until you've looked closely at it.

  2. Nobody celebrates small companies.

    Let's face it--small software companies just aren't cool. The press does not typically write stories about small software companies. People like to read about high flying IPOs and the overnight creation of paper billionaires. People want to know what John Doerr's latest thing is. People want to know when the next bubble will arrive. Articles on this kind of glamour are the content that sells publications, so that's what the press writes about.

    But small companies are worth celebrating. There's something very cool about working in a small ISV. You have a lot of intimacy with your customers. The politics and Dilbert-ness of the larger environments are nearly absent. Small companies can be very lifestyle-oriented and still be quite profitable.

  3. We see everything in black and white.

    We're geeks. All of our training and experience happens in a world where there are no grays. A digital bit is either one or zero, on or off, nothing in between. This binary thinking tends to pervade the way we look at everything, including business opportunities. But not everything in the business of software actually works that way.

    When we discuss the potential of a new product idea, we tend to believe that the product will either sell it or won't. But markets don't work that way. We ask ourselves, "Will people buy this product?" Instead, we should be asking, "How many people will buy this product?" The difference is pretty important.

    I claim that every well constructed product will be purchased by someone. The only question is how many people will buy it every year. Multiply times the product price. Divide by your average salary (with overhead). That's how many employees you can have.

    I'm oversimplifying rather badly, but you get the idea. Binary thinking is great when you're coding, but it doesn't help you evaluate business opportunities.

The Business of Software Products in 2003

In the past when the barrel was empty, far less precision was required. We could simply try to sell whatever the geeks thought would be fun to build. But today we must understand how to carefully choose which rocks we want to try and fit into the barrel. Size does matter. If we are willing to look at smaller rocks, there are lots of cool opportunities.

The alternative is to stand around the barrel and fuss about our favorite large rock. Speaking for myself, I've been there and done that. It's more fun to make software.


Eric Sink is the non-legendary founder of SourceGear, a developer tools ISV located in Illinois. For more of Eric's writings on the business of software products, check out his weblog at http://software.ericsink.com/. He and his wife Lisa live out in the country with their two young daughters and one old cat.


This article originally appeared on the MSDN website.