How much is enough?


How many computers do I need to get my job done?


 


When I was new to Microsoft, I new that my first goal was to collect as much hardware as possible.  I figured that with more computers, I could do more cool stuff. 


 


With two development machines, I could work on two problems at once.  If one machine was running a build, the other one would be available. 


 


If I’m not sure that today’s drop is good, I only have to roll the dice on one machine, and keep working on the other.


 


Maybe I could implement distributed builds.  With 20 machines, even slow ones, maybe I could build in a fraction of the time. 


 


Then a dedicated machine for email, web browsing, etc., since the dev machines were often corrupted, being rebooted, or had their CPUs fully loaded.


 


And another machine as a file share, which would never be rebooted, to share out my batch files & utilities to the other machines.  I didn’t want to work to keep them in sync.



 


And another to run as a rolling build over our sources, which helped the team find build breaks more quickly.



 


To keep the noise in my office from getting out of hand, I checked out Terminal Services for Windows NT4.  I started pushing these machines out of my office, into a lab upstairs.  My office ended up with just a single, low-powered machine, with 2 video cards.



 



I also implemented an automated checkin verification system for the team to use.  It has grown to ~35 machines, that run a series of builds and tests over every checkin.  They’re certainly NOT in my office; I TS to them remotely.


 


 


These days, I also use a laptop.  I go to a lot more meetings.  I use my laptop on the bus to/from work.  It makes it easy to take work home, and I can keep up with email while watching a movie. 


 


But sometimes I leave the laptop at home.  Or I need something with more CPU power.  So, I still have a dedicated email machine at work.


 


Then my manager gave unto me a new Toshiba Portege M200 Tablet PC.  I like it a lot.  I started to use it, but I keep finding things that are on my old laptop.



 


I’ve been thinking about how much the stuff in my life creates a drain on me.  I have some stuff I don’t use, and that I should of course get rid of.  But there’s other stuff that I do use, and maybe should get rid of, too.  (All my life I’ve been in ‘acquire’ mode, so this will take getting used to.)


 


Can I get rid of some of my machines?  What’s the simplest thing that could possibly work?


 


Here’s my goal:



 


 


Get rid of the laptop.


 


Use the Tablet PC for email, browsing, listening to music.


 


My dev machine has 3 displays, get rid of 2.


 


Keep the file server where it is.  It requires near-0 effort for me, and it adds a lot of value.


 


Stop using the dedicated mail machine.  I’ll keep it on for a while, just in case, but try not to use it.  In a couple weeks, I’ll turn it off.  



 


 


What’s next?  


 

Comments (6)

  1. Justin King says:

    Personally, we have started to just use beefier boxes in the office and have vmware take care of multiple machines, you setup a nice powerful server (multiple cpu’s wouldn’t hurt). then set up half a dozen or some virtaul machines, then you have only one noisy box and lots of configs for dev testing etc. Can still use TS to connnect.

    Obviously if you are adding more machines for more CPU such as a render farm then not ideal. But for development environments where you need a database server, web server etc separate it works great.

    Also for Small Business you have less machines, save about $4 million in electricity bills per year and the need for heaps of rack space.

  2. David Cumps says:

    Don’t get rid of the two screens? multi monitor is too good to do away 🙂

  3. Joku says:

    I agree w/Justin, vmware is great, every developer should have beefy enough machine to run it! With just 1 GB of memory you can run a XP so fast in the vmware that you could forget you are in a vm. Or perhaps a couple VM if you are willing to take some hits to page file. With some copying of the snapshot files it’s possible to return back like with undo, i don’t understand why vmware only allows for 1 snapshot in the UI though.

    I would also have a dual lcd or laptop+one lcd for debugging and desk hungry apps.