|
Oct 23: Seoul:
WebAppsCon Oct 27: Boston:
SD Best Practices Feb 24: Miami:
Future of Web Apps |
|
Wanted: A letter to the web developer who can work anywhere...
at Abraxas Applications (Reston, VA).
See this and other great job listings at
jobs.joelonsoftware.com.
NewsThis item ran on the Joel on Software homepage on Monday, May 02, 2005One of the most crucial tools in our toolbox is VMware Workstation, which I've been recommending for years. The basic idea is that it lets you run a whole PC inside a window, with its own operating system and hard drive. Here's an old picture so you get the general idea:
Since 4.0 you've been able to run multiple machines in tabs, a nice addition. Anyway, they've recently released version 5.0, which is a big leap forward. It has the very slick ability to store multiple snapshots and build up a tree of systems with slightly different configurations, sort of like object-oriented inheritence. That saves a ton of disk space when you need to test systems with only small variations. Here's an example. The first thing that FogBugz Setup does when you run it is to test that all kinds of prerequisites are installed, like IIS and MDAC and VBScript. In order to develop and test that code, I need virtual machines that are missing the prerequisites, so I can test all the code paths. With VMware 5, I can build a stripped down virtual machine containing, say, a minimum Windows 2000 installation without any of the prerequisites. Then I can take a snapshot of that, and install prerequisite 1. Then I can take another snapshot of that, and install the prerequisite 2. Eventually I end up with a bunch of snapshots with different configurations and I can go back or forwards to a particular configuration in one step. Here's another example of why VMware is critical. Let's say I'm testing the upgrade code in FogBugz for upgrading, say, from FogBugz 2.0 to FogBugz 4.0. In about one minute I can be running a pristine copy of Windows 2000 that looks just like the day it was installed. Two minutes later, it's running FogBugz 2.0, and I take another snapshot. Now I run my upgrade code on that, and, of course, it fails, thanks to Murphy's law, but it leaves FogBugz in a "half-upgraded" state. The brilliant part of VMware is that I can click to go back to the 2.0 snapshot and in about 30 seconds I'm back to a pristine FogBugz 2.0 installation. Our other major use for VMware at Fog Creek is for supporting Linux. FogBugz runs on all kinds of different distros and we use VMs to develop and test with them all. Over the coming months our four summer interns are going to be developing a product that requires a server and two clients, so we'll need three VMs to simulate the complete environment. We bought high-end, dual-Xeon Dell workstations with dual monitors and 2 GB of memory each (that's our new standard developer workstation) which will make it easy and fast to simulate the complete production environment on every intern's computer. It's probably overkill and you can run VMware happily on less pumped-up computers, but if you're simulating a network of three machines VMware definitely benefits from lots of RAM and CPUs. My new book is here! Apress has just published a new collection of 36 essays from Joel on Software, aptly named More Joel on Software. Get yours today! Available from Amazon.com or wherever fine cheese is sold. About the Author: I’m your host, Joel Spolsky, a software developer in New York City. Since 2000, I've been writing about software development, management, business, and the Internet on this site. For my day job, I run Fog Creek Software, makers of FogBugz—the smart bug tracking software with the stupid name, and Fog Creek Copilot—the easiest way to provide remote tech support over the Internet, with nothing to install or configure. Enter your email address to receive a (very occasional) email whenever I write a major new article. You can unsubscribe at any time, of course. |
I'm your host, Joel Spolsky, a software developer in New York City. Since 2000, I've been writing about software development, management, business, and the Internet on this site. More about me.
There's a complete archive of everything going back to 2000. The home page is reserved for minor, ephemeral thoughts, but occasionally I write a longer article. You can sign up to receive email whenever this happens at the bottom of this page. We also have one of those RSS thingamajiggies. If you don't know what that is, consider yourself lucky.
This site is actively translated by volunteers around the world into more than thirty languages.
Want to hire great developers? Looking for a job that doesn't suck? Over 200,000 great programmers read my job board at jobs.joelonsoftware.com.
Have feedback? There are several popular discussion boards on this site: Joel on Software
Business of Software Design of Software .NET Questions TechInterview.org CityDesk FogBugz Fog Creek Copilot You can also email me directly, although my mailbox is an official disaster area.
For my day job, I'm the CEO of Fog Creek Software, a bootstrapped software company in New York, NY.
We also make Fog Creek Copilot, which lets you control someone else's computer (with their permission, of course) over the Internet. It's the best way to fix someone's computer problems remotely. There's nothing to install, it's simple as heck, and it works through any kind of firewall, NAT, or proxy situation with zero configuration. More
If you're in college, Fog Creek Software has a very cool paid internship program (last year's interns developed Copilot in one summer). We also run a Software Management Training Program, an intensive two year program for college graduates to learn about managing high tech that combines a Masters in Technology Management with extensive hands-on experience in a variety of positions.
Wondering what it's like to develop software at Fog Creek? The documentary Aardvark'd covers the story of the development of Copilot. It's available on DVD.
Fog Creek co-founder Michael Pryor has his own site on Technical Interview Questions.
© 1999-2008 Joel Spolsky. All Rights Reserved. Linking, quoting and reprinting
|
|
| Home | Email | Bug Tracking Software | Remote Assistance | Complete Archive | ||