My Dev Kit
Update: Added missing profile.ps1 file.
The IronRuby team is getting ready for another major push for the PDC. To get ready for this (be careful what you wish for!) I'm upgrading my laptop's hard drive from the stock 160GB that it came with to a brand-spanking new Black Scorpio 320GB drive.
This also means that I'm repaving my Boot Camp partition (I had previously allocated a measly 40GB on the old drive). While waiting for software to install, I figured that folks out there might be interested in what my setup is for a computer. So, here it is:
Operating System and general productivity tools:
I run Windows Vista SP1, 32-bit. I had tried to get Windows Server 2008 64 bit installed in the BootCamp partition, but it was a lost cause. The combination of my pre-Santa Rosa 17" MBP hardware and the general lack of 64 bit drivers made it virtually impossible to do a native OS install on the Boot Camp partition. I should be able to get 64 bit Windows Server 2008 installed in a Fusion virtual machine. I'll report later how that goes.
I do have a mildly pimped out Vista Sidebar. I'm a huge fan of Christian's widgets. I use his CPU, Memory, and Network Traffic meters. I run WeatherBug, and Drive Activity as well. I don't find it nearly as useful on my laptop as I do on my desktop where I have two 21" panels.
I use Internet Explorer quite a bit, especially for browsing internal Microsoft sites. I leave it set as my default browser, since I've always loved its startup time vs. Firefox. I'm currently using IE 7, but I do have IE 8 Beta 2 installed on one of my desktops at the office.
I use Firefox 3 quite a bit as well, especially since it has Vimperator, which adds VI key-bindings to Firefox. IE should seriously consider building a Firefox compatible plug-in API so that it can run Firefox plug-ins.
I'm a big fan of PicLens, and I have it installed on both IE and Firefox.
As you might imagine, I spend a lot of time in Outlook 2007. While I have a hard time understanding why it needs to use 36 threads and open 3,319 OS handles to do its thing, it works quite well once I've pimped it out a bit with my three basic macros.
I use Windows Live Writer to compose all of my blog posts. It works great with TypePad, who is my blogging hosting provider. Life is too short to run your own blog engine on some random hosting provider (I used to use Dreamhost back in the day). I want it to be somebody else's problem to solve if my site goes down.
I use GridMove as a tiling window manager using its 2-part grid vertical template. CTRL-ALT-1 moves the active window to the left *half* of the screen, and CTRL-ALT-2 moves the active window to the right *half* of the screen. On my desktop, CTRL-ALT-3 moves the active window to the left half of monitor 2 and CTRL-ALT-4 moves the active window to the right half of monitor 2. It's easily the most useful utility that I've added in a long time.
Developer Tools
I use Visual Studio 2008 Team System, SP1. I configure it via a custom vssettings file that I've carried around from machine to machine.
I use multiple enlistments so that I can do work in parallel. Some of the devs on my team have 6 enlistments(!) Such is life when you have to battle the Troll to get your changes committed into the source repository.
I use ViEmu to enable VI key bindings in Visual Studio. Developer Division at Microsoft has a site license for it, but I'd definitely pay my own money for this.
My primary text editor is vim. I have a custom .vimrc file that I've carried around from machine to machine. It's not as pimped out as some other folks' vim setup, but it works for me.
I use Windows PowerShell for my day-to-day work. I have a mildly pimped out PowerShell console that uses a directory that I cloned from Scott Hanselman's machine. Like a lot of folks, I can't work without a good set of aliases. Those can be found in my profile.ps1.
I have a Tools directory that I carry around from machine to machine. There's lots of stuff in it, but here's a general breakdown of the tools I use most often:
- Keith Brown's Password Minder
- Most of Mark Russinovich's Sysinternals Tools
- Notepad 2 – it's awesome for viewing integrated diff files.
- Lutz Roeder's Reflector
- Beyond Compare 2.0
- AGREP
- RemapKey from the Windows Server Resource Kit (I remap Caps Lock to CTRL via this, reverse the Windows / ALT key mapping on the left side and re-assign my right Command key to DEL).
IronRuby uses Subversion for our external-facing source control. Our SVN repo lives on RubyForge, and I use a combination of Tortoise SVN and the command-line tools to do my day-to-day work.
IronRuby is using GIT for a few of our sub-projects. Eventually we'll be moving the primary source repository from SVN to GIT. Like most folks using GIT these days, we use the awesome github service. I use the MSysGit implementation on Windows with the option to run GIT from the Windows Command Prompt enabled.
The Cloud
More and more of my life is moving to the cloud. Here's a list of the services that I use, and the places where I go.
I use flickr for posting my photos. I've been a Pro member for quite some time. For $25 / year it's a bargain. I don't really use flickr as a social network like some other folks, but I'm quite happy with how well it works for me.
I use twitter to post random bits of status. The 140 character limit encourages posting. I'm pretty much only using the blog to post longer pieces.
I use Google Reader to consume my RSS feeds. I use multiple computers every day, and I like the fact that read / unread status is stored in a central location.
I use Google Apps for my domain for my personal email. I used to run my own Exchange Server back in the day, and the day I switched was an awesome liberating moment for me. I no longer run any servers in my house.
I have a facebook account that I don't use all that much. It's pretty much at the bottom of my list of places to go. My status updates are via twitter, which makes it look like I'm on facebook a lot more than I actually am.
What about you?
As you might have figured out by now, I'm a big fan of minimalist UI, black backgrounds and keyboard-driven UI's. What's in your dev kit, and why do you love it?


31. Aug, 2008 








I’ve been thinking about upgrading the hard drive on my MacBook Pro too. Last year I had to convert my Boot Camp partition to a virtual machine image to make room to the gigantic iPhone SDK.
I’m curious, are you going to upgrade the hard drive yourself, or pay someone to install it? Also, are you going to do a drive to drive copy, or re-install from scratch? Last year, ExtremeTech ran a how-to on changing the MBP hard drive. It seemed pretty tedious.
I took your challenge on and blogged about my own Dev Kit:
http://wildermuth.com/2008/09/01/My_Dev_Kit
@Edward – the procedure for replacing the MBP hard drive is as nothing compared to the procedure needed for my 14″ iBook. One case removal and you’re there? The iBook needed the lower case, upper case, lower shield and upper shield removing before I could get at the HDD.
My advice would be just do it, but be methodical and keep track of where all the different screws came from. Also, acquaint yourself with the guides @ http://www.ifixit.com/ – they’re very good, IMO.
John,
What grid template(s) do you use?
John,
Missed it above.
I love gear posts.
Last week, my dev machine hard drive died. Got a new machine and reinstalled this list of tools:
WinRar
Consolas fon pack
TestDriven.NET
GhostDoc for Visual Studio
Krypton Toolkit
Red Gate ANTS profiler
Lutz Reflector
RssBandit
Twhirl
Silverlight 2
.NET 3.5 SP1
Adobe Air
Live Mesh
Fiefox 3
CruiseControl.NET
SlickRun <– very handy
AVG antivirus
IE tab for Firefox
Flashblock for Firefox
Visual Studio 2005
Visual Studio 2008
@Judah – I was over in Hong Kong not that long ago (based in the UK), and I came across 7zip (http://www.7-zip.org/) – handles rars and most anything else you can throw at it, but without the horrible WinRAR GUI.
I might just be behind the curve, but it seems very popular out that way, I couldn’t live without it.
> Those can be found in my profile.ps1.
Is there a link missing to this file?
+1 on 7zip. I forgot to mention it in my tools list since I haven’t had to install it yet
The compression they achieve is stunning as well. We’ll be using it to package up IronRuby binaries for distribution.
@Norbert: Just uploaded it now. One knock on Live Writer is how I can’t simply attach files to blog posts and have them auto-uploaded to the blog engine.
> keyboard-driven UI
Do you use some keyboard macro/automator program like Autohotkey? I use it like WinKey of old, but I also make my own menus, and copy text modifiers, window mover functions, and macros.
You can do a lot with the scripts:
http://www.autohotkey.com/wiki/index.php?title=Script_Listing
though the syntax of the language is pretty bad.
Also some other programs:
Folder Guide – Jump to a folder in your Explorer window/Save Dialog box via a right-click menu.
“Windows Shell Extensions” by Synesis – Grab Path for pasting paths into dialogs or email, File Touch
ntfslink – Explorer extension for NTFS hard links
nircmd – interesting functions in one exe like “Turn Off Monitor”
dd for windows – when you need to make plain old ISOs of CDs and DVDs.
delegate – for network proxying
wget – a static one exe file version: http://users.ugent.be/~bpuype/wget/
htpdate – sync a computer’s clock to a HTTP server’s response headers
I see you use Subversion for IronRuby. What are you using as a ticket/work item system? Have you ever tried Trac. You can find Visual Studio integration for trac (and tortoisesvn) at http://tracexplorer.devjavu.com/
If you try it, let me know what you think…