software costs money

In light of the news that the Sparrow guys got bought out by Google, there’s been a lot of hand-wringing.  Comments threads about this news have been full of people whinging about Sparrow “selling out”.  But here’s the thing: software costs money.  People who make software are a relatively rare breed — and I’m saying this from Silicon Valley, where we’ve got to have a higher concentration of software engineers than anywhere else in the world.

It used to be that you’d spend a hundred bucks or more on software.  This is still true in rare cases: Amazon says that the cheapest version of Office:Mac is $100 (the version with Outlook adds another $50), OmniGraffle costs $100 from the App Store.  Sparrow rang in at $10, or $3 for the iPhone version, and I saw plenty of people whinging about its high cost.

Software does not just magically occur.  Good software takes a lot of time and expertise.  If it were easy to create good software, there’d be a lot more of it out there, and I wouldn’t’ve burnt so much time trying to find a reasonable replacement for Quicken for Mac1, or a desktop calendar app that supports CalDAV2.  For software to be really good, you need the following:

  • a software engineer or two
  • a tester or two
  • someone to write the documentation3
  • someone to make sure that your application’s architecture supports future growth

Now, in some cases, you can get away with all of this being the same person.  But that’s a lot of work for a single person.  It’s a lot of work for multiple people if the app gets complex enough, and I’ll tell you from a lot of experience that a mail app like Sparrow is a lot more complex than is obvious on the outside4.

But let’s just assume that this is a single software engineer.  There’s two ways to go about this.  You can do it in addition to your day job, which means that you don’t have a lot of time to focus on your side project, and it also means that you’re giving up much of your personal life so that you can have this side project going.  Your day job pays your bills, your side project is something that you love and think is awesome, and that you really hope will take off enough one day so that you can quit your day job.  Or you can quit your day job and try to live off of savings for awhile (or your partner’s income, if applicable), and work full-time on this so that you can make it into something self-sustaining.

Neither case is sustainable unless the app really takes off.  And by “really takes off”, I mean “can pay your bills at least as well as your day job”.

The other thing is that consumer software sells in cycles.5  You’ve got two major events where most of your software is sold: one in the late summer as students prepare for the upcoming school year, and one late in the year for holiday shopping.6  You’ll get another spike for a new version, but most software doesn’t have a new version every year, and software vendors often try to time their new versions to line up with either the school or holiday shopping seasons to take advantage of the time when consumers are already in the shopping mood.  Smaller spikes occur, such as when you get some good press from a positive review, but usually reviews are clustered around release time.  So you make most of your money during those two spikes, and that money has to last throughout the whole year, plus help you make investments on the next version.

At some point, we as consumers stopped wanting to pay money for software.  Some of that is that our computers were bundled with a lot of software so that we didn’t have to pay for apps that we use every day, like mail apps and web browsers.  Some of that is that companies who don’t primarily make their money elsewhere (say, on selling you computers) started selling their software at a steep discount, which depressed the overall market.  Some of it is that some software is now supported by ads, which reduces the out-of-pocket expense for the consumer (although there’s obviously the cost of having to view ads all the time).  And some of it is just that we as consumers have become a lot of whiners who have come to think that software should just come to us magically, continue to work on any hardware that we buy, and get updated with new features regularly.

David Barnard at App Cubby wrote a great post about this called The Sparrow Problem, which discusses his own experiences in selling software via the App Store and includes his own back-of-an-envelope calculations about what it takes for an app to be sustainable for an indie developer.

I don’t blame Sparrow for accepting a Very Large Cheque from Google.  They hit the hard reality of software development: software costs money.  For the software developers, there are always bills to pay (both their own and those associated with making the software).  A good software engineer is never lacking for offers to go elsewhere, because good experienced engineers are hard to come by, and software recruiters are relentless7.  There’s always an opportunity cost associated with spending your time on something — you could be spending it on something else and, quite possibly, making more money in doing so.  When you’re not making enough money on your application to be self-sustaining, it’s not hard to understand why they would accept that Very Large Cheque.

And I say: good on ’em.  Gmail could use the talent of some smart IMAP and UI engineers.  Google made a good decision in buying them out, and I think that Sparrow made a good decision in accepting their offer.  I hope that Gmail improves because of it.

  1. My final answer: Fusion + Windows 7 + Quicken for Windows.  None of the Mac-native apps came anywhere near covering my use case.  I’m not happy continuing to support Intuit, but they’re the only ones who support my use case, and Quicken for Windows is so much better than Quicken for Mac.
  2. iCal sucks, BusyCal isn’t quite there yet but is a lot closer.  I was happy to pay the $50, since that was much cheaper than whatever hospital bills I would have incurred when I stabbed my eyes after using iCal for too long.
  3. Even if it’s just the tooltips on the screen, otherwise you end up with useless tooltips
  4. IMAP isn’t a very well-written standard, resulting in a lot of work getting your client to work with the various IMAP servers out there.  If you start off by focusing on a server that doesn’t do a very good job following the not-very-well-written standard *cough*Gmail*cough*, then you’ve got a big job ahead of you in trying to extend your client to other IMAP clients.
  5. Disclaimer: This is my experience from working at Microsoft on Office:Mac.  I don’t work on consumer software at VMware.
  6. Black Friday isn’t good for just retailers.  It’s good for software vendors and others who are selling their merchandise through retailers, too.
  7. Which reminds me – I should write a post about the clueless recruiter who recently contacted me.

pay attention to your users

One of my colleagues, Ben Goodman, wrote a great post on the VMware end-user computing blog that essentially says “pay attention to your users”.  Okay, he titled it “what rogue users and cloud services can tell IT”, but my little researcher heart went pitter-pat when I read the post and saw that it was all about listening to your users.

Consider this paragraph:

Each time employees make a decision to choose a cloud service outside of the IT department, it’s an opportunity for IT to learn where those users are being underserved and to develop solutions that do fit the enterprise security, governance, and compliance requirements. So, in that sense, rogue services are a great opportunity for IT and they need to see it that way. Instead of looking at these service, tools and devices as unwanted invaders, IT needs to see them as what they are, leading indicators of their real customers’ needs.

And he’s totally right.  Pay attention to what your users are actually using, and you’ll learn a lot about what they need, what they want, and what hoops they’re willing to jump through to get what they want.  This will help you provide better IT services, better software, and a better user experience.

security policy-management user study

It’s research time!  In addition to the troubleshooting study that my team is conducting (and please, check out my blog post for more information, we’re still looking for participants for that), we’re also conducting research about security policies.

My team is conducting a study next week on security policy management in a virtual infrastructure. We would like to talk to people who manage and/or implement security policies in their virtual environment to learn about their work and get some feedback on our current initiatives.  If you are interested in participating, fill out this very short survey to answer a few questions and give us your contact information.

news cat gifs

Yes, I know, the title sounds like it’s spam, but bear with me.  The coolest tumblr that I’ve found lately is News Cat Gifs: animated .gifs of reporters cats reacting to news events.  It’s hysterical, and I have to say that no small number of them apply to my job as a researcher …

Okay, that’s enough animated gifs for now, go find your own favorites.

VMware acquires DynamicOps

Last year, my co-workers and I were joking that we seemed to be acquiring half the Valley.  And then it felt like acquisitions slowed down, but now we’ve got a new one: VMware has signed an agreement to acquire DynamicOps, a company that has some awesome applications that help get you to the cloud faster.  More information about it is available from a blog post from DynamicOps, a blog post from VMware, and a press release too.

Welcome, DynamicOps!  (And if you work in UX at DynamicOps, ping me.  I’d love to get together with you and introduce you to UX at VMware!)

research participants needed

Edited on Friday 7/13 at 11am: Thanks for your interest!  We now have all of the participants that we need.  But we’re still looking for people who would like to participate in research about security policies … 

My team is conducting some research about troubleshooting in virtual environments.  If you’re a virtual infrastructure architect or senior admin who does a lot of troubleshooting, we’d love to hear from you.

For this study, we are looking for people who perform troubleshooting tasks in their VMware environment and are willing to share their experiences with us.  For those of you who are local to the Bay Area, we can either come to you and chat with you in your environment, or we can do a conference call.  For those of you outside of the Bay Area, we’ll do a conference call.

Our research will be conducted beginning on July 9.  If you’d like to participate, please email me with the following information:

  1. Your name, email address, and telephone number.
  2. How big is your virtual environment?  (number of hosts, number of VMs, etc)
  3. What kind of issues do you troubleshoot?
  4. What tools do you use for troubleshooting?
  5. Does your organization use vCenter Operations? (We’re looking for a mix of people who do and don’t use it.)
  6. Would you be willing to show our researcher the tools you use for troubleshooting your environment via during an online screen-sharing session (such as WebEx)?

Feel free to share this blog post with anyone you know who might be interested in chatting more with VMware about troubleshooting.