When we talk about Marketing for Geeks, we obviously talk a lot about marketing. But we also need to talk about geeks. After all, we chose software as our primary career field, and that choice says something about the way we are wired inside. When we do coding or design, that wiring is a strength, but it can be a weakness when we start getting involved in marketing.
What do customers want?
To be a successful small ISV, you have to build a product that your customers want. Sounds easy, right? But how do we know what they want?
Actually there are lots of ways to figure out what a market wants, none of which are terribly accurate, most of which are quite expensive. In the end, we can spend lots of time and money and still we have no guarantees. Wouldn't it be easier if our prospective customers just happened to want the same things that we want? Then we could simply build products for ourselves, comfortably assured that other people will like them as much as we do.
A friend of mine wants to sell a cool technology solution to the trucking industry. Unfortunately, he is a geek. He realized right away that it was going to be nearly impossible to sell technology to trucking companies unless he understood trucking. So he went to truck driving school. He got his truck drivers license. He got a job driving a load of paper every day between Chicago and Peoria. He got layed-off. He bought his own truck. He started his own freight company. His product idea is getting better because he is learning what the people in his market really need.
This approach may seem extreme, but it's a great example of an important concept: It is much easier to sell products to people who are not so different from yourself.
... although being similar to your customers is a powerful advantage, it is not enough. Your own preferences will never be an exact match for the wants of your market segment.
This is true even here at SourceGear. We are a company of software developers, selling tools for use by other software developers. Can a small ISV and its customers possibly be any more similar? It seems like our preferences should be a perfect match for the preferences of people in our market, but it just doesn't work out that way. We regularly hear from people who are trying to use our products in ways that never occurred to us.
If a developer tools company can see the gap between ourselves and our customers, think how much bigger that gap must be in any other market.
Getting Fooled by the Early Adopters
All too often, companies learn this lesson as they lie dead at the bottom of the chasm. Because of the way markets are divided into stages, it sometimes seems like our customers actually do have the same preferences that we do.
In every market, the first stage is the Early Adopters. A lot of these people are geeks, just like we are. If we build a product to match our own preferences, the Early Adopters might actually buy it, since they're not altogether different from us. We might even start to believe that we've built a great product which will be popular with the mainstream customers on the other side of the chasm. If so, we are in for a big shock.
This effect is perhaps most visible by cruising around the SourceForge website. There are thousands of small open source projects there, most of which have very few developers and very few users. Typically an open source project begins when a developer wants to "scratch his own itch". He creates an app for himself, specifically designed to solve some problem he is experiencing. He makes his app open source and expects hordes of people to start downloading it. A few people do notice the app and discover it is exactly what they were looking for. But the hordes don't come. There is a big differences between solving your own problems and solving mainstream problems.
Gauntlets of Fumbling
To reach mainstream customers, we sometimes need to ignore our own preferences and just do what the customers want. Non-geeks in marketing generally have no trouble with this. Once they decide what the market prefers, all they want to do is get that product into the customer's hands. They don't have strong opinions about technology, so they don't have trouble separating customer preferences from their own.
Not so with us geeks. We care too much about technology. We chose software development careers because we love technology for its own sake. We fight amongst ourselves in religious battles that seem arcane and irrelevant to normal people. We debate vi against emacs, Linux against Windows, C# against Java, RSS against Atom. We have strong opinions and we make them visible to everyone around us.
And when we get involved in marketing, we can stumble over those opinions. We need to talk about what customers want, but our own preferences get in the way. We bring our technology prejudices and biases to the discussion, often without ever being aware of the problems they can cause.
The whole situation is like wearing Gauntlets of Fumbling. Remember NetHack? If your character is wearing these useless gloves, everything is more difficult. A similar effect happens when we bring our weird technology opinions into a discussion about what customers want. We slow everything down, and we make the whole process very clumsy.
- During the Q&A part of my talk at Gnomedex, somebody asked me why anyone would buy SourceGear Vault when CVS is available for free. This question is a great example of the need to learn how to see through the eyes of customers. It comes from someone who sees CVS as sufficient, who cannot imagine paying money for anything else.
And yet, people do buy commercial version control tools. In fact, I can name at least a dozen version control vendors which I believe are profitable. The aggregate annual revenue in this market segment is a nine digit number.
An explanation of why all this revenue can coexist with an open source alternative is beyond the scope of this article. Suffice it to say that if you are completely bewildered at the fact that anyone uses commercial tools, then you might want to find a scroll of identify and see what kind of gloves you are wearing. :-)
- In a recent design meeting here at SourceGear, we talked about the possibility of adding Passport login features to Vault. One of the developers grimaced, shivered and said, "Passport makes my skin crawl".
This guy brings a negative bias about Passport into the discussion. Perhaps he got his opinions from stuff he sees in the press or on Slashdot. Perhaps those negative opinions are justified. But if a substantial fraction of our target market wants Vault to understand Passport authentication, we need to lay our bias aside and investigate the issue objectively. Our biases don't help us figure out how to make the best product for the market.
- I'm preaching this sermon to myself, as my own history is littered with examples of me trying to build the product I wanted. I've had the experience of building an app that I thought was so cool, only to realize later that nobody else thought the coolness was quite so evident.
- Our SourceOffSite Collab product was heavily affected by my own religious technology opinions. Our users do like the product, but we invested a lot of effort under the hood in things that don't benefit the user at all.
- Even Vault has suffered from my mistakes. As a result of my advocacy, the label feature in Vault is somewhat different from its SourceSafe counterpart. Our design is more "neato", but quite a few of our users really wish we had just done plain-old-boring SourceSafe-style labels.
My own Gauntlets of Fumbling are well-worn and comfortable. Someday I will learn that nobody else cares about my technology whims. :-)
Gauntlets of Dexterity
So it's important to learn how to set aside our own preferences when appropriate. However, we don't want to also set aside the deep technology understanding we have. Those two things come together, like the two sides of a coin. The religious preferences are inseparable from the expertise. The former is an obstacle to marketing discussions, but the latter is a tremendous asset. Stretching my NetHack analogy a bit further, using our understanding of technology in marketing is like wearing Gauntlets of Dexterity.
Lots of strategic marketing decisions are better made by someone who really understands the technologies involved. Joel Spolsky claims that "no software company can succeed unless there is a programmer at the helm". I am inclined to agree, and I further argue that "what's good for the CEO is good for the marketing team".
I write about Marketing for Geeks because, quite frankly, marketing needs us. Lots of marketing decisions are actually technology decisions in disguise. Geeks understand what is going on under the hood. Our technology depth allows us to process decisions with greater dexterity. We can see through the abstractions. We know the technical side effects of our choices, and we know how users are going to be affected. When marketing decisions get made without our expertise, big mistakes can happen.
A good example right now is deciding whether to migrate a desktop application from VB6 to VB.NET. Geeks want to be using the latest tools, but do users want to install the 20 meg .NET runtime? How will they get it? Do our customers have cable modems? Will something go wrong?
The Vault client is written in C# and therefore requires the .NET Framework on the desktop side. For us, this is no problem, since our customer base is very likely to have already installed it. But selling a desktop app to normal people would be an entirely different matter.
- As far as I can tell, many developers today are still waiting before they
require the .NET runtime in their apps. CityDesk 2.0 is about to be
released, still written in VB6.
- At Gnomedex I had the pleasure of meeting Nick Bradbury, the legendary programmer behind HomeSite. Nick is concerned about the impact of the .NET runtime on users, so he is writing FeedDemon in tried-and-true Delphi, and wondering if perhaps his next big product will be the right time to try C#.
This can be a tough decision for application developers today. It is a technology choice, so it really needs to be done with the help of geeks. But it has marketing implications, so it's important to set aside our own preferences and keep a pure focus on the user.
You're a geek, and before you can get competently involved in marketing you have to admit that you are not normal. :-)
Your geekiness is your strength, and it makes you a good developer. But there is a time to talk about what normal people want. When you do marketing stuff, wear the right gloves. Set aside part of your geekiness, just for a little while.
Let's close this piece with a bit of humor. For those of you who missed my talk at Gnomedex, here are a few clues to further help distinguish geeks from normal people. :-)
Clues that You Might be a Geek
0 -- You number things from zero instead of one, because that's what a C programmer would do.
1 -- You love numbers that are powers of two. Instead of "Top Ten" lists, you do "Top Eight".
2 -- The word "blog" doesn't sound stupid to you anymore.
3 -- You still don't understand why anyone would name a pharmacy after a version control system.
4 -- You plan to give all your children names which are expressible in hex.
5 -- You think the nominees for best actress this year should be Trinity, Mystique, Arwen, and T-X.
6 -- You know at least one person whose computer has less RAM than your video card.
7 -- This holiday season, instead of emailing your greeting cards, you're planning to just publish an RSS feed.