Monday, January 14, 2008

More on going virtual, more experience

As I told you in this blogpost I was thinking about moving my production environment into a virtual machine. I got some really great feedback on that post, thanks for that!

Executing on that thought, I made two VM's. Here is my experience so far:

My hosting Laptop
My laptop (Dell Inspiron 9300) is two years old with the following specifications:
- Windows XP pro
-Processor: Intel running at 1,86 Ghz (Don't know exact type)
-1,5 GB memory
-Max memory available for VM 512MB
I do most of my development on this laptop.

My hosting PC
-Window Vista Business
-Processor: Intel Duo Core
-2GB memory
-Max memory available for VM 1024MB

My Delphi VM (Windows XP pro)
I made a 'Delphi' VM with Delphi 7 (for older projects), BDS2006 (for Winforms development) and RAD Studio 2007.
Currently I am using Microsoft Virtual PC 2007 to make the virtual machine. Why? Simply because it is free and I am still in an experience state here, just making the big picture on going virtual. I believe VMWare has more options, and, as I found out, Virtual PC is no good for Linux distributions. (Use Virtual box for that).
I installed all that was necessary for Delphi, the IDE, third party components etcetera in the VM.
I use Visual SourceSafe for version control and keep the source files within the VM because I had some trouble keeping the shared folders alive. This was probably a low memory issue. So my source database is on my hosting laptop, which is backed up as usual.
Currently I 'synchronize' the sources through SourceSafe between the VM and the host. (I still develop on the host...)

Performance
On my hosting laptop (512MB) Delphi 7 works fine, but BDS2006 and RAD Studio 2007 are slow. Most annoying in BDS2006 and RAD Studio is the slow typing, which makes it kind of unworkable.
On my hosting PC, with twice the available memory RAD Studio performance is OK.

My Ubuntu VM (Ubuntu 7.1)
Well since we are going virtual it is easy to test some OS from the other side of the fence. Installing Ubuntu into Virtual PC did not work (black screen). So I used Virtual Box instead, as someone suggested in the feedback of the last post.
Installing Ubuntu is amazingly easy, did not expect that so I was suprised.
Kylix 3:
I tried to install Kylix 3, but with no luck so far. This has probably most to do with my (missing) Linux skills. ;-) (Have to investigate this further)
Lazarus:
I managed to install lazarus pretty easy. Cool I can make an application for Linux now. ;-)

Conclusion
At this moment I will not go virtual completely. First I will have to upgrade the internal memory of my laptop upto at least 2 GB. But more memory, of course, would be better. (4GB?)
However it is nice to know that if my laptop, or installation, crashes I now have a complete installed development environment as backup, making the downtime almost zero.
The choice for the right virtual machine software is depending on what you do within the VM. However you could use more than one product. Virtual Box is a great alternative for both Windows and Linux VM's.
Possible future scenario:
Buy a new laptop without a preinstalled Windows (Vista). Install Ubuntu (or another Linux distro) on that laptop and run Windows XP in a VM..........

Use an image as your UIBarButtonItem

Using an image as your UIBarButtonItem in your navigationcontroller bar can only be achieved by using a common UIButton as the BarButtonItem...