Why are we so cheap with software?

On twitter today, Ayende asked the question:

should I offer a personal edition for NH Prof? If so, at what cost?

If you’re not familiar with NHibernate Profiler, it’s Ayende’s for-profit, non-OSS NHibernate profiling tool.  Honestly, it looks like it could save Ayende probably 10 support emails a day, given the level of detail the profiler gives (and prescriptive guidance).

Right now, a beta license comes in at $195, full version at $280.  The interesting part in all this is Ayende’s public foray into commercial product development, where he asks questions like:

  • Should this be open source?
  • Should I use a licensing server?
  • How much should I charge?

For some strange reason, cost of software seems to be an issue with developers.  I talked to a few designer buddies, and they’ve spent thousands of dollars on software licenses, per seat.  An MSDN license isn’t cheap, and many companies go after partner status just for the licensing benefits.  But why?  I’ve worked at companies where I had to justify a purchase of ReSharper, but they were more than happy to send me out on a week-long pointless WCF training, costing thousands of dollars.

When I was in the semiconductor industry, software licenses dwarfed individual salaries.  One tool I used for laying out gates and such was well into the hundreds of thousands of dollars per seat.

Some of the concerns people forwarded Ayende included the TestDriven.NET example – if you offer a personal edition of free, 95% (unscientific) of your downloads will be from developers using at work, but angling to get a free tool.

So while developers are cheap, so too are our archaic purchasing departments, who have ridiculous training budgets but balk at buying a tool that offers an immediate increase in productivity.

I spend hundreds and hundreds each year on technical books, but I pause before buying a personal VisualSVN license.  I have no idea why, but I also dropped a couple hunny on all sorts of FPS games I play once and drop, or never even finish (looking at you, Doom 3).

So what’s going on, are we conditioned to get software for free?  Are companies afraid of purchasing software, for fear of needing to buy it for everyone?

I remember a company that didn’t have the cajones to purchase a real merge tool, even though a senior lead was wasting his time merging with TFS’s inadequate merge tool.  It would have paid for itself within a day, given rates and salaries.

Why so cheap?

About Jimmy Bogard

I'm a technical architect with Headspring in Austin, TX. I focus on DDD, distributed systems, and any other acronym-centric design/architecture/methodology. I created AutoMapper and am a co-author of the ASP.NET MVC in Action books.
This entry was posted in Rant. Bookmark the permalink. Follow any comments here with the RSS feed for this post.
  • Wow, I’ve been thinking about this for a long time and can’t seem to figure out the reason.

    I think Ayende has chosen a good price point for this software, but I can’t afford to purchase a personal version right now.

    What I do notice is that sometimes one tool creates a need for another tool. Visual Studio is a good example of this… just by installing VS means that I need a license for Visual SVN (albeit I’m getting by with AhknSVN), Resharper (haven’t tried any of the free tools), and TestDriven.Net.

    Perhaps if there was a way to measure the productivity gained we would purchase more software.

  • I believe it’s a simple answer: the Linux operating system. I remember walking through CompUSA after installing Linux for the first time and laughing in the software aisles. I didn’t need to spend any money.

    I believe Oren needs to finally be paid for his services to the community. He releases quality software and should be compensated.

    My $0.02

  • Lubos

    I don’t think developers are cheap with software. It’s those purchasing departments that are making it so difficult that developers will rather find something for free or something so cheap that nobody will question their choice.

  • Another factor might be developers’ notoriously short attention span. Why spend for a tool when a shiny new tool will come along ia a couple of months?

  • Steve Sheldon

    From the corporate side… because as you note, it’s near impossible to purchase tools. Legal wants to review the license, then someone will get the idea that you know maybe we should look at a site license… By the time that initiative even has a meeting scheduled it’s been six months and I’ve given up trying to obtain the tool. This is what happened to me when I asked for the ANTS Profiler.

    From the personal side… The one thing that really holds me back, rational or not, is the realization that whatever tool I buy is going to be obsolete in a year and I’m going to have to pay nearly full price for an upgrade or support or something. So the only tools I buy are ones which are durable. What does durable mean? Well, I’ve purchased things like WS-FTP, UltraEdit and BeyondCompare. Why durable? Because they worked as well with VS.NET 2002 as they did with 2005 and 2008. Of those, the only one I’ve upgraded is UltraEdit and that one I’m kicking myself because when I first bought it if I’d paid double the initial price I’d have gotten unlimited upgrades for life.

    So I find alternatives, skip the functionality, or wait. Not sure what I’m waiting for, but I wait. For instance, I thought about buying Resharper, but with VS 2010 coming out soon maybe I should wait for a version that supports that. That’s my thinking, rational or not.

    I’d say the price holds me back, but hell I don’t even have VisualSVN and it’s $50. So I don’t know if that’s it. Although at this point I’m probably much more likely to pick up VisualSVN then I am Resharper.

    I’d say it really has to do with the initial price, and the fact that upgrades are usually about 75% of the initial price. So since I’m not going to benefit with an upgrade might as well wait for the next version. It’s just this waiting never stops.

  • Steve Sheldon

    One more thing on companies and tools.

    My computer at home is about 3-4 times the power of the one at work they gave me. It takes me 15 minutes to boot up in the morning.

    You think they really care about the efficiency of doing a merge in TFS?

  • If you include the time-cost of filling out forms and getting things through purchasing, even modestly priced software costs thousands of dollars. The administrative cost dwarfs the actual cost. The way budgets and purchasing works in companies is not set up for how software dev teams should work. If I ever become a manager…

    I usually end up buying tools < $200 myself. If I can later figure out some way to finagle it so I get reimbursed, I do, but I kind of like having a personal license for things, in case I ever move on.

    If I buy something myself, I have my household purchasing department to go through, but they’re way cooler than corporate purchasing. I usually get authorization (or denied) in a few minutes, or do the “ask for forgiveness” thing, and don’t have to float them the cost for two months waiting to get reimbursed.

    I think a lot of developers don’t consider buying software for themselves because:

    A. It’s only relatively recently that there has been an abundance of sub $200 useful tools. I would never consider shelling out $3,000 for software, from my own pocket. So there is some getting used to that needs to happen.

    B. You can learn from a book. You can remember stuff you learned in a training course. Those things improve you. Software doesn’t work like that. (but I still think it improves your work, just like a new power saw improves someone that works with wood.)

    C. Software isn’t fun. Books, going to training or conferences, those types of things are kind of fun.

    Finally, I really like Steve’s point. I am usually in the same boat, wherever I work. I wish I could just bring my own computer in. I’d get so much more work done. That’s the single greatest improvement they could make in my productivity. It’s simple. It’s easy. It involves no risk to anyone. Clearly there is some other motivation at work that prevents us from realizing our potential efficiency. It’s not just the tools we buy, it’s so many other things.

  • Steve, you’re spot on about new versions putting people off. A new version usually has 90% the same functionality as the version you paid for, so it feels like a kick in the teeth paying 80% of the full price for the upgrade. In fact you’re paying 8x as much per unit of ‘feature’ as you did when you bought it the first time.

  • Steve G

    My company doesn’t buy me software direct nowdays. After asking to purchase this, I never got a response.

    (And since I’m a contractor, I must buy my laptop as well)

    So I end up footing the bill myself.

  • @Jason

    Linux, eh? Well that’s cause you’re communist :)

  • @Steve

    OK now that’s just a depressing story. I’ve definitely run into that on the corporate side, but it was just a symptom of weak management that didn’t want to “rock the boat” and get things done.

    I think you might be on to something on putting things off.

  • Along with Jason’s point, I think open source & free software have devalued software in our minds. Developer tools especially, since they get so much focus from the open source community. Just look at all of the amazing stuff you can get for free – it raises the bar significantly for something worth paying for.
    In your semiconductor software example, NOT using the software isn’t even a viable choice. I’d guess that a majority of people that use it wouldn’t even know how to do their jobs without it. Compare that with VisualSVN, which mostly just saves you from some tedium around file renames (don’t get me wrong, its worth the price, its just not essential).

  • chris

    What do you recommend for replacing TFS merge?

  • Stu

    From corporate, its like getting blood from a stone for dev tools but they have budget for training because its a requirement where I am…

    personally.. I’d love to buy visual slickedit but at $360 a pop (60 maintenance fee for the cheapo upgrades!) of personal money is ridiculous, moreso in this economic climate. Now if they billed me $50 a month till it was paid off, I could live with it.

    Its that who piecemeal vs lump sum feeling.

  • @chris

    The built in one isn’t bad. Another one to try is P4 merge, from perforce (free). Yet another is Araxis merge, a bad ass product, and not free.

  • m4bwav

    When something isn’t free and your not paying for it personally, you know that there has to be at least one talk with someone about how you need such and such. Probably more, and then the purchase may get sidelined in the middle of the beaucracy and everyone forgets about it for a while.

    When something is free, your like “cool”, you can immediately pick it up and use it then and there. There’s no meetings or beaucracy or anything, you just use it, right after browsing the page you got it from.

  • Steve G

    Update on my story.

    I did find out that if the customer on working on a project for will buy the software then I can use it.

    So I need to goto my current customer and ask him to buy NHProf so we can use it against his application we are contracted to build for him.

    Resharper is another product I buy, but I found it easier to justify it because I use it every second that I develop with it and can’t imagine not having it :)

  • When I was young and starting out, several of my friends were starting out in other careers, including being an auto mechanic. My mechanic friend was expected to show up at their first job with a complete set of hand tools: wrenches, screwdrivers, etc.

    To properly equip one’s self with those automotive tools could easily run into the thousands of dollars. This for a job with a starting pay much lower than the starting pay for software development.

    As a result of seeing that in other fields, I’ve always considered it gravy if a company DID pay for workstation-level software. My MSDN subscription, ReSharper license, copies of Photoshop, etc. are the tools of being a professional journeyman software developer.

    To that end, as an employee, I would ask for workstation equipment. If I was told “no”, I’d just buy it myself. I’ve bought better chairs, better monitors, bought and installed RAM, hard drives, etc. I also didn’t worry about whether I got it back or not. I certainly don’t worry about whether I get back the cost of gas going to work and that usually dwarfs these kinds of expenses.

    I’ve moved on from being an employee and do mostly on-site contract/consulting work and at this point I request that I NOT be given a workstation when I work on a project, just access to the network and a list of the tools the team is using.

    From their, I’ll either just use my laptop or purpose-build a machine for the project that lets me actually get things done.

    When I need something to move a project forward, I ask once nicely, a second time with a bit of a push and then I just take care of it myself.

  • Chris

    I have see too many places that take the attitude of: you have Visual Studio why would you really need anything else. Hey new guy, none of our current developer ever asked for that. They blow you off.

    Now I always ask during interviews…

  • I can’t comment on how much research Oren has done into his price points, but they don’t sound like they are accidents. One reason why we are so cheap with software is that there is usually an OSS or free vendor tool that is “good enough”.

    The second reason, IMO, is that vendors price their tool knowing that their primary buyers will be people spending company money, not their own money. Who cares if that fancy DataGrid costs $1950/year when it’s not your money.

    Some vendors provide free use for OSS developers. Not the “personal use” loophole, you have to prove you own or contribute to an open source project. Not saying Oren should do that, but it’s an option I appreciate.