For the first time in my professional career, I’ve found myself working without any type of laptop. I can still work from home on my own machine, but given how easy it is to telecommute as a software developer, it struck me as odd that my work machine would be just a desktop. It led me to think about just what the reasons could be that I have a desktop for working, and why everywhere else I worked chose to make sure that I had a laptop capable of doing development work, or at the least could remote desktop into my development machine.
The case for the desktop:
For starters, desktops generally run cheaper than laptops. But 1 area where you can really stand to save money is that desktops are easier to upgrade piecemeal. If your computer is mostly fine, but the processor is a little dated, you can swap out just that component. The same thing applies about boosting RAM, adding more cache, tweaking a bus, or upgrading your hard drive. With laptops, you had to wait for all of that stuff to be insufficient and then buy a whole new machine. As Google makes clear, it’s not that hard to learn how to do this either. This keeps your equipment costs down over the long run.
Another advantage to going with the desktop vs. a laptop is that if you’re willing to put the money into it, you can put a lot of power into a desktop box. If you believe in giving developers the best tools you can afford, the desktop route is the way to go. There’s a reason people who are big into PC gaming build desktops rather than order tricked-out laptops given the opportunity – and that reason is “moar powerz!” In addition to the affordability of upgrading machines piecemeal (and the ease with which you can upgrade machines piecemeal), the desktop is the way to go if you want the most power for your buck.
A third point in the column for “give employees desktops” column is the fact that you’re buying all the desktop peripherals anyways. Sure, they come built-in with laptops, but it’s a pain in the butt to do development on just a laptop. If you have an actual workspace for your developers, then there’s no reason to not have a keyboard, mouse, and at least 1 monitor connected – at a minimum. If you’re going to buy all this stuff anyways, you might as well put your money into plugging all of those “extras” into something that doesn’t duplicate all that other stuff you bought and focuses on raw computing.
The case for the laptop:
You can’t talk about using laptops as work machines without pointing out the obvious – laptops enable your developers to work from anywhere. Employees will no longer be tied to the office, which (in theory) increases their ability to sally forth and do productive stuff for you. Chance of bad weather? No problem, make sure you tell the minions to take their laptop home, make sure the development servers that will still be up, and it’s like the employees came in that day. Need to work from home because you have a sick kid, are waiting on a repair man, or an asteroid hit your car? If you have a laptop you bring home every day and broadband, that won’t even phase you. It’s a huge convenience for employees and helps employers have some flexibility with employees whose lives don’t seem to solely consist of work.
Another reason to not feel tied down to desktop is that corporate lease programs mean that regularly upgrading your laptops doesn’t involve having a lot of pieces and old equipment just laying around. Get a fresh box for a few years, then copy some data over and trade it in for a better model once it’s badly outdated. No wasting time doing upgrade work yourself, and there’s also a nice little psychological something to seeing a new computer at your desk periodically.Sure you don’t have spare parts handy if something breaks (and it’d be a pain in the butt to do the repairs if you did), but you also don’t have a cluttered IT department floating either. Besides, we’re talking leases, you’re not meant to do the repairs anyways, just switch it out for a working version.
Laptops are also space savers at employee work areas, be they cubicles or offices. This may not seem like a big issue at first, until people decorate their areas, try to keep useful references handy, want to write and reference notes, keep a drink within arm’s reach, and well, you can see how space sort of disappears in a hurry can’t you? And if you’re 1 of those places where you have a lot of people working very closely together (i.e. at the same table), space-saving is 1 of those things you really need to pay attention and put some effort into.
Something, possibly tangentially-related, to consider:
With the “consumerization of IT”, this debate may quickly become irrelevant. Sure right now that’s really about cell phones, but how long until that’s about computers too? Lots of people have laptops. And the fact of the matter is that while desktops can easily pack a lot more punch, it’s pretty easy (and not insanely expensive) to get a laptop that’s good enough for development. What if I could bring in my personal machine to the office and make it my development machine? It’s happening with cell phones, it’s only a matter of time before it starts happening with computers. If you really want every day to be “bring your desktop to work” day (or even just the first day of work), then go right ahead, you desktop-lover you. Sure the “1 box” thing during a layoff may need some tweaking for the desktop crowd, but that’s just minor details. It saves people from taking a work and personal computer with them if they have to go out of town but still need to be productive, and it saves people from wasting time trying to get their work machines set up just the way they like them. If they’re bringing their own machines to work, that’s done already. The machines will also get upgraded at the user’s desired pace, without having to wait on IT or trying to coordinate the work with when you’re not busy trying to make your company money. If the PC really does become “just another device” like Apple’s hyped in the past, you’ll start to see this sooner rather than later.
The answer to “Desktop vs. Laptop” at work really comes down to a few key questions. The first is “Where are developers expected to work?” If the answer is “Just the office”, or “The office, and rarely from home”, go with desktops. If the answer is “The office and at home when needed”, you need laptops. Another question is “How badly do the developers need as much computing power as possible?” If the answer is “they absolutely have to have everything we can throw at them”, you should get a desktop. Otherwise, go with whatever strikes your fancy. Lastly, there’s “How much time and expense do we want to put into maintaining equipment?” If you’re willing to do it all yourself, desktops are fine, and can probably save you money. If you don’t want to bother, a laptop lease program can let you swap out old equipment for newer equipment as needed, saving you the hassle, if not necessarily money.
Like most of the questions in life, there’s no one true canonical answer, so you have to just go with what works best for your situation. However, all of this being said, my personal advice is when in doubt, use laptops – they’re enough of a workhouse machine to get the job done, and it’s easier to have the portability and not need it rather than not have the ability to take your machine home and have to try to do something productive.