+11  Q: 

Tools Budget

Does anyone work at a place that offers developers a "tools budget?"

I would like to argue that something like that would not only make for happy developers but more efficient use of resources. I was trying to ask about getting a copy of TimeSnapper and with a cost around $20 it seemed like in between me stopping my boss to ask, and doing "approvals" it was a huge waste of time and effort that cost a lot more than $20 to the "bottom line".

The argument I have against purchasing it on my own is that I definitely resent the attitude some companies have of people having to pay for the tools they need to do their job - $20 isn't a huge expense but it sets a bad precedent. (Perhaps the fact that at my first job I paid out of pocket for the laptop I used for the job has put a permanent bad taste in my mouth).

But beyond the small tools and utilities we use, wouldn't it make sense that rather than haggling over "which tool to use" a company could just have a baseline of tools and then give devs $2000 per year to get what they need w/o questions or approvals or bureaucracy?

One other example of a different type of tool that is something like XmlSpy or oXygen. It's a more sophisticated tool with a much higher price - beyond the threshold of a personal purchase for a lot more people. However, if you're a dev who knows how to use it and you do a lot with xml, you can be fiendishly productive. Far more over time than the company's investment - at a typical American company a few hundred dollars is insignificant next to even a typical payperiod's worth of wages.

I am not against certain boundaries such as making sure the tool puts no proprietary overhead on whatever is being developed as well as adding cruft for other devs to sift through - and if a tool really works making it a "standard" that other devs use. I'm just for saying to a dev: here is a sum of money to use on tools that will help you do your job without bureaucratic overhead.

Any thoughts? Anyone work at a place that does this? How does one make the case for this as part of the "developer abstraction layer?"

+1  A: 

Well, the way they have done it at my company is that they have given the decision making power to a senior developer (and a budgetary guideline).

We are able to get third party controls as well as certain tools, if this person determines that it is worth while (all factors considered) to make the purchase.

+1  A: 

I find that most managers are motivated by deadlines and profits. Im lucky to work in a place where my managers realise that its useful to have programes like TextPad etc.

The tactic I generally try to use is by pointing out that in the time taken to discuss these 'little tools' (~$50) you've ,pretty much wasted that amount of company time and money, so the company manage well save some money and actually buy the tool.

Also a little demonstration of the tool usually helps your cause, if you can demonstrate in front of the manager's eyes the effeciency benefits, then I'll imagine that they would be much more receptive. Don't forget to throw in some percentages and some airy-fairy stats as you watch their eyes glaze over.

In all seriousness, cool calm logic and demos are the best way I find.

+3  A: 

For my team (of seven), I put a line item into my budget for "miscellaneous software tools" and it's split out over the course of the year at $100-120 per month. So we basically have that available for things like this that fall into the "miscellaneous tools" category.

That category gets used for things that not every person on the team needs/wants, but that can make a huge difference to someone's productivity for certain tasks. They're also expenses that make aren't typically planned for or expected during annual budget planning. A Snag-It license, TestDriven.NET, a favorite shareware text editor, etc. Some developers don't want/need anything except a plain vanilla Visual Studio install, while others really appreciate having access to that little utility that makes all the difference.

That's said, it's not a per-developer thing or the type of thing where each person can just do whatever they like with up to a certain amount. It's more the software equivalent of the "petty cash drawer" that many offices have.

Of course, if it's an item that the entire team is using (e.g., MSDN subscriptions, licenses to 3rd party libraries, etc), then it's a line item of its own and a completely separate type of expense.

Jeff Donnici
+2  A: 

My manager has the philosophy that if we need any support (be it other developers, or tools) then its probably best for everyone if we get it (within reason of course - our servers are running ColdFusion, so obviously asking for Visual Studio 2008 is out of the question).

When I made the case for RegExBuddy, I wrote an email specifying:

  1. What a Regular Expression actually is, and why we use them (with one or two examples)
  2. The reason why RegExBuddy could improve productivity
  3. The cost of a liscence compared to the hours of work it will save
  4. The link to the site for more information

I recieved the application within 20 minutes.

Bottom line: demonstrate that the tool will eventually pay for itself, and thus save the company money.

Jeff Winkworth

For my company, it all depends on the justified need of the tool, the upgrade, or whatever. We had a PDF generator on our web site. A project I did required a more fully functional tool, which I found. At first it was hard to justify the purchase, but at the end of the day the VP of the requesting department said he wanted the nicer PDFs, so we bought the software.

Contrast that with our use of Photoshop. We still use Photoshop 6.0, and our design consultants, who tend to use Photoshop CS3, need to downgrade their source files so we can open them later should we need to make minor modifications. It's not deemed necessary to purchase the CS3 tool (and we're way outside the upgrade window, I checked), so we don't purchase it.

So I think it might be nice to have a "tools" budget where we can get what we think we need, but at the same time I like having to know what I'm asking for will do the job before spending the money. While it does leave me behind the curve in some cases, it ensures that I know what I'm asking for and I'm willing to stand behind my recommendation. I've worked other places where it was basically a free-for-all and we ended up with more software than we wanted or needed, with lots of dollars, in the end, wasted.

Besides, I tend to lean towards tools like Eclipse and that sort, so I don't spend money anyway!