What are tools for the job, and what job am I talking about ?
Following jeff's article the-programmers-bill-of-rights.html
I spent some serious time trying out various equipement to help me get things done better and faster.
Some set of gear is a must for every software developer, be it professional work or in house development.
So the job target definition is: Achieving completion of pieces of technologies that work together to perform particular tasks.
But this can be applied to other computer based work such as web design, text editing or other long and tedious cycles that millions of people experience every day.
When I realised the productivity I gained by buying myself better equipment, I started enumerating every pieces which would be ideal to optimise work.
This can be finding a keyboard making one typing faster - but also improving the overall experience of doing some work which also, in the end, increase productivity as there is a gain of focus and some non-coincidental willingness to work a bit longer...
HeadphonesHeadphones help gain focus. I find that both in the office environment, which can be noisy, and at home in total silence, having some music or white noise going on helps getting in a mind cocoon and get the work the attention it needs.
Non lyrical music being a particular choice.
Some over the head, or in-ear buds are more or less comfortable. With the convenient Amazon return policy, trying out a model for a few days helps pick the right set as wearing those for a couple of hours can become irritating.
The right KeyboardIt's a very personal thing, I find scissor and mechanical types the best. See my other article here that discuss the different keyboard technologies.
I favour the gaming mice as they offer the best dpi, with a cable so that I never have to worry about batteries, but I also recently used some wireless min-mice from Logitech that I found pretty good, and more convenient to carry outside.
My choice goes for one of those china-made models that
Coffee shops are a good fit these days to do real work. My preference goes with no doubt to the macbook pro 13'. I struggle to find non mac hardware doesn't have to make a compromise.
Battery life, solidity, power, and the ability to run all osx, windows, and linux for testing simply makes it the perfect developer laptop
Internet connectionI see too many IT enthusiasts, or even professionals who are not interested or knowledgeable when it to home broadband connections.
Get the facts straight: latency, downstream vs upstream bandwidth, network shaping and get yourself a quality hook to the cloud.
Also make sure that WiFi equipment internet provider sent you is reasonable. I find quality routers/WiFi to be a little hard to find for free.