Saturday, August 16, 2008

This is why I love American cars from the fifties...

When General Motors was dreaming:
http://www.nytimes.com/slideshow/2008/08/10/automobiles/collectibles/0810-motorama_index.html

Saturday, July 19, 2008

Google/iPhone Combo - Sweet!

A handy video guide to using iPhone and Touch devices online with google that highlights the classy integration of technologies built-in to your Apple device:

http://www.google.com/mobile/apple/

Assumes you have a google account and are already familiar with gMail, Maps and the app store. If not, check the video on the link.

Friday, April 25, 2008

Building Windows Clusters with VMware Workstation

Most of this comes from Geert Baeke's Blog on clustering in VMware Workstation 4.5 and some other sources I can't find any more. This should work with all versions of VMware from 4.5+, and I've tested this OK on v5 and v6.

1. Base Config VMs
For a two-node cluster, create one VM with a single 4Gb disk on SCSI bus 0 and 320Mb RAM. Add Ethernet adapter 1 (Bridged) and Ethernet 2 (Host-only)

2. Heartbeat Networking
Rename Ethernet 2 (Host-only) Connection to "Heartbeat" then remove both Client for Microsoft Networks and File and Printer Sharing from the adapter config and disable NETBIOS over TCP/IP and LMHOSTS lookup

3. Create VMs - O/S
Install Windows Server Enterprise Edition and VMtools then shutdown and clone the result so you have the original plus two clones one for each node.

4. Cluster Disk Config
Fire up the first VM which will be cluster node A, add two new SCSI disks (disk1 for quorum 0.5GB, disk2 for shared data 2.0GB) on SCSI bus 1 (SCSI1:1 and SCSI1:2), make them independent, persistent, and fully allocate the drive space so that the VMs don't compete for disk file.
Close down cluster node A

5. Hacks
Edit the .vmx file (see example attached) and add the following lines if not there already, the attached version was one used in the real world whereas the following may or may not be required depending on how you have configured your disks and in what order, here goes anyway:

scsi1.sharedbus = "Virtual"
disk.locking = "false"
diskLib.dataCacheMaxSize = "0"
diskLib.dataCacheMaxReadAheadSi
ze = "0"
diskLib.dataCacheMinReadAheadSize = "0"
diskLib.dataCachePageSize = "4096"
diskLib.maxUnsyncedWrites = "0

* Add the following lines to create a second SCSI channel:

scsi1.present = "TRUE"
scsi1.virtualDev = "lsilogic"

* Modify the additional hard drives to be attached to the new SCSI channel. Example:

scsi1:5.present = "TRUE"
scsi1:5.fileName = "I:\Cluster Shared\Quorum.vmdk"

scsi1:6.present = "TRUE"
scsi1:6.fileName = "I:\Cluster Shared\Data.vmdk"

* Add the following lines to disable disk locking and caching:

disk.locking = "false"
diskLib.dataCacheMaxSize = "0?

6. Add the same lines to the VMware Configuration of Cluster Node B.

7. Start VMware Workstation and start Cluster Node A. Configure the new disks as Basic disks, format them with NTFS and assign drive letters.

8. Start Cluster Node B and assign the same drive letters to the same disks.

9. Configure a new cluster with the Operating System by adding cluster services as usual with new cluster name and cluster IP.

10. You may want to allocate a cluster resource or just install SQL Server or IIS to see that it finds the cluster and operates as expected.

Let me know if there are any gotchas or stuff that needs clarification.

Friday, March 21, 2008

Web Design and New Browsers

Hi folks, it's been a long time between posts. We've recently seen a wave of new browsers including Firefox (soon to be FFv3), Safari (newly minted 3.1), Opera (9.5 is coming). Blimmin' heck, even the dreaded Internet Explorer people are dabbling with standards with the impending release of IE8.

So I thought I'd restart this blog with my experiences with web site development and internet browsers. Developing my own web site started simple enough and probably mirrors the path that many of us follow.

Crawling
The first version of my web site was hosted for free by my ISP and used a template based on frames. Yeah, I know, nasty huh?!

While this allowed me to build the interface I wanted, including a sliding menu, I was concerned that it wasn't accessible to all types of users that might come across the site. I knew that frames were also poorly regarded amongst the web developer community. It was only while I was testing the site from various devices and browsers that I noticed that frames were completely unsuitable.

Walking
Computers, phones and PDAs would all behave very differently. After a bit of research and more experimenting, I decided that a table-based layout would provide me with both the look-and-feel and the browser compatibility I wanted. Unfortunately, at that time, IE5.5 was common and IE6 was becoming a defacto standard so implementing a standards-based web site seemed too hard and too far out of reach of the part-time hobbyist developer.

However, with the release of Firefox Beta I was suddenly hooked on standards. Not only was Firefox faster than other browsers, it was also capable of displaying HTML using mysterious layout grammar called cascading style sheets or CSS.

Up and Running
With a lot more research and some serious testing I was convinced that separating the style from the content on my web site would make it more compatible, more accessible and more easily upgradeable that any other method.

At that point my web site had grown to several hundred pages and several thousands images so I was relying heavily on both Dreamweaver and the developer tools built in to Firefox to provide guidance. Most, if not all of the HTML authoring tools I tried had very poor support for CSS so development was very much a trial and error affair.

This was made a lot worse by the fact that many workarounds (hacks) were needed to make sure that various web standards-breaking Internet Explorer versions were able to view the site. However, it also provided a way of allowing devices that do not recognise CSS to view all the content without the layout, nice!

Brave New World
Now, even Microsoft are building browsers that are compliant with internet standards, but you'll have to wait until they release IE8 before that promise becomes a reality. I'm pleased to report that most new browsers released since 2001 have worked well with my web site. Initially most of the time taken in the conversion from tables was getting the site to look the same in all the mainstream browsers as they all implement the W3C standards differently and sometimes, not at all.

I encourage all readers to check out the new browsers from Mozilla, Apple and Opera. You won't be disappointed. Safari in particular has made huge steps forward in speed and usability and is also available for Windows. There are now no excuses for using an out of date browser :-)

Even though I'm always tweaking it, the site no longer needs the care and feeding it every time a new browser is released. This frees me to focus more on the content and less on the layout. If I want to change the layout, the content will no longer need to be changed just to make it look right . That's what I call, a win-win.