9

A colleague of mine wrote a post a while ago asking Do you own your tools. It raises an important question. Do you? I answered way down in the comments. As an independent, I do own my tools. Even when I wasn't independent, I had my own (fully licensed) tools that I used for personal development. I don't think buying your own tools are something to puff your chest up about (just because you can buy a $100 pair of basketball sneakers they won't make you as good as Michael Jordan), but it IS an investment in yourself that shouldn't be taken lightly.

What do you think good people?

11 Answers 11

19

The problem between traditional craftsmen and programmers is that traditional tools don't typically expire after a year. My dad works on cars, the house, and more in his spare time and has amassed tons of tools over the years. The difference I see is that he's still got the same awesome hammer since the 90s, the same power saw he had from 10+ years ago, the same workbench since I was born. Let's say I want to buy Resharper. That's 100 bucks. After a year I need to buy it again so I can get a licence for the next year...and again and again. Tools change so often, and licenses need to be repurchased so often that it really doesn't make sense many times to buy your own tools besides basics. Only if you're doing contract work does it make sense because legally, you can't steal the tools and you probably need that IDE to get the job done in a competitive amount of time.

4
  • You make a great point! Having to constantly upgrade your tools makes maintaining your own collection more expensive. Feb 5, 2011 at 0:39
  • 1
    It does make it more expensive. But it is an investment in your craft, a bit like those craftsmen all used to pay their fees for membership of the craft guilds. You don't get something for nothing. And if you make a profit from those tools that you keep paying for, you should be able to offset that expense against your income. At least its paid for in before-tax $. Feb 5, 2011 at 2:06
  • 1
    that is all true, but not complete ;) For programmers there are awesome free tools, so sometimes you get that fancy hammer for free. Feb 6, 2011 at 0:30
  • 1
    Or, if the fancy hammer doesn't exist, as programmers we can try to find other programmers, band together, and develop a new and improved hammer to replace them all. We should call it a... "Screwdriver!" :-) Feb 6, 2011 at 2:07
16

At previous employers, I didn't think too much about spending up to $100 out of my own pockets on a software tool. However, since the early 00's, most companies that I've worked at have had policies prohibiting this. So while I didn't mind spending the money, it has since become against the rules to do so.

Furthermore, with many companies quite happy to immediately walk you to the door and prohibit your access to the computer you worked with when you give notice (or get fired or laid off), you won't be able to recover your tools that you've paid for. And by leaving them installed you probably violate a number of license agreements.

My rule of thumb these days is:

  • If it goes on my personal machine, then pay I for it, I install and I use it.
  • If it goes on the company's property, then the company should be paying for it.
  • If the company is unwilling to pay for the tool, then that means they want me to spend the time doing it the hard/long way.
0
7

If you're independent, then yes, you should. If I hire a contractor to come in and fix my drywall, I'd expect him to bring his own tools. If I started a drywall repair company, I might supply some standard-issue tools to everyone, for consistency, and if they want their own tools, they can spend their own money.

If you want to go ahead and buy your own dev tools for your own purposes, go right ahead!! :)

7

I work for a company. The company insists that they own everything I produce. I think it is absolutely unreasonable for them not to provide all my tools. There is no way I would spend up $15,000/yr for tools and give them everything I produce with those tools.

Additionally, that's about 33% of my annual take home pay. There's no way I can justify that kind of expenditure.

6

Collectively the tools I use to do my work would cost about $80,000 to purchase. If I was expected to buy those, I'd also expect to be paid a considerably more hourly rate.

4

This is tangential to the OP's question, but applies to several of the answers:

If you're a freelancer/contract worker in the US, and a company provides your tools, there may be tax consequences: good ones for you, but not for the company.

The IRS has guidelines on figuring out if you're an Independent Contractor (Self-Employed) or Employee. One of the factors is "who provides tools/supplies."

It may be in the company's financial interest to call you a freelancer, but if they provide your tools and tell you when, where, & on what to work, you may be getting ripped off.

See Permatemp (Wikipedia) for additional background.

[Note: Not a lawyer, not an IRS agent, not a tax pro, not legal advice, consult someone who knows what they're talking about, etc.]

1
  • 2
    Yeah a lot of companies do questionable things to shirk their tax responsibility. Feb 6, 2011 at 2:07
3

I think it depends as much on the policy of the company one works for and what the IT department is willing to support as anything else. I had to buy pretty much all of my own tools because I needed to get work done, and, at the time, getting the money authorized to purchase what I needed either was more trouble than it was worth or there simply was no budget. Since then I've gotten them to open the coffers and buy their own licenses, but those coffers are closed again and a couple apps are due for significant upgrades.

Do I feel better—proud even—about owning my own tools? Not entirely. While I do have a sense of ownership over the products I create for my company, the work was ultimately done for them and not for me, so they should have been paying for it. At the same time, if I wanted to use my tools for stuff at home as well as work, then I never had the moral crush of borrowing (stealing) the company's licenses for my nefarious purposes, and I learned a lot outside of the harried workday, so I don't mind that much. Still, it can get pricey and I've been forced to drop a couple tools out of lack of funding.

1
  • If the company won't provide you the tools, then you can't do the job. What are they going to do? Fire you? On what grounds? I'd love to be a fly on the wall at the unfair dismissal trial :-) Apr 16, 2015 at 12:20
2

As a freelance, you definitely should, otherwise you're dependent of what your client provides which may not always be best for your workflow, if they have any tool at all (are consultants even covered in VL licences ?)

As an employee, it could be interesting if it's a tool the company has no licence for, however if it's boosting productivity, you should push getting management to licence it for everyone, that way the others would benefit from it and you don't have to spend your own money on it (and it definitely helps if everyone are using the same development tools).

1
  • I'd qualify this: If you are a freelancer the employer can if it chooses provide tools. In this case you should be charging a lower rate than if you provide the tools yourself. If the employer (or you the contractor / freelancer) engages you on the grounds that you have all the tools and understands you will use your own, you should be charging a suitable rate that compensates you for the expenditure you have to make. You don't always have to disclose this difference of your charge-out rates. The employer might have that conversation with you, or not. Feb 5, 2011 at 2:10
2

I don't think it's unreasonable to expect your employer to buy your tools, but I also think the best developers will eventually have their own tools for their personal projects - once they have a little extra money post-college.

In the post, his dad says, "Yeah, I’ve got about $6000 of my own tools." The tools provided for me at work probably run closer to $15,000 and probably only lasts a year or two before another payment needs to be made for a new version (vs. hardware tools that last decades, as long as they are any good). Also, developers often "buy their own tools" in the form of library books, technological equipment, and other investments that are more difficult to have employers pay for. Finally, there is much more variety in developer tools - starting with Microsoft vs. open source, and including source control, CI, and so much more - which really needs to be selected from by the person making the business decisions, usually the employer (unless you are freelance). So I think it's reasonable to not own your own tools for your day job.

At the same time, putting time aside for personal projects is key to becoming one of the best developers, and part of that investment is buying the tools for your own projects.

2

I like a lot of your third paragraph @Michael Kohne. Basically for me it comes down to two things:

  • If its me doing things, then Open Source rules, because almost everything that I need is open sourced (gcc/llvm, cmake, doxygen, python, ruby and eclipse) (I mainly program in C/C++, python, java, ruby and occasionally I do some web development)

  • If its an company that I (will) work for, then its the company problem, I just want to do my thing, the best I can (I'm only a stupeed developer);

1

As a freelancer I could see it going either way, but if you're being hired to handle a project (as opposed to being one more warm body in a seat), then you'd probably need your own tools.

As a regular employee, your employer is going to have to provide the tools because they are going to be using a particular tool chain (often not of your choosing).

For personal work, obviously you'll need your own tools, but for many people that consists of an open-source tool-chain. Honestly, most folks personal projects don't touch on the sorts of things you'd need a high-end toolchain for.

Not the answer you're looking for? Browse other questions tagged or ask your own question.