Some projects are just plain fun...

Back in January when I started work in earnest on the web site project I have just completed for On-the-Go Foodservice Magazine, I had to build a special development box to use because the Ektron CMS400.Net Content Management System (CMS) we had selected for this project would not install properly on Windows Vista. That's all I run here on the real hardware. It was a bit of a frustrating start in some ways. But it proved to be a minor annoyance, as I was able to satisfy every single Phase I Launch Requirement (and then some) with this CMS, ASP.Net, the afore-mentioned development workstation, and a few creative moments by your's truly. I also had more of a supporting cast of characters than I usually do contributing to the success of this project in both the graphics and web designer (CSS) fields. Special thanks must go out to Ingo Chao, an extremely gifted CSS designer, who seems to know every browser strength and weakness off the top of his head. As a result of his contribution, the site renders almost exactly the same in every CSS 2 browser in the wild. We even have print and mobile device support. I also have to thank a few special folks at Ektron (you know who you are) who back-door accelerated my requests for support on certain key 'features', knowing that we were trying to push the envelope with their product, and that the site would have some real visibility after launch.

The site launched last week (3.19.08 in the EDT afternoon to be exact) with the fewest hiccups I've ever experienced with a site launch. While there were the usual last minute panic attacks, and anxiety over things possibly forgotten or yet-to-do, I have to say it went off pretty much without a hitch. It even involved a domain transfer of the existing placeholder home page, and that only took a few hours to propagate.

What was more interesting to me was that in my 15 years of building dynamic web sites (yes, you read correctly: 15 years) on a number of different platforms, I had never hosted any of my project sites with a hosting provider on a shared server. Enter ServerSide. They came recommended from Ektron, and proved to be more than competent in working out the various configuration changes that had to be made remotely to allow the site to come up in their environment. This included helping me understand the dreaded 'Medium Trust' environment, which had a potential showstopper impact because I used the popular and awesome SubSonic OR/M for some data access I needed to do outside of the CMS. MSDN articles didn't hurt either. Anyway, ServerSide is relatively small in the world of hosting providers, but their pipe is huge and they have experience with CMS400.Net. What that also means is that the person on the other end of the support line is almost always the same person, and so you can count on not having to recite all of the background information each time you send that support request email.

But where was I? What was the subject of this post? Oh yeah, fun. Sometimes you're working along slogging through requirements and getting nowhere, and you wish you were in the Bahamas. Sometimes, on-time payment is an issue (but that's the subject of another, future post). But sometimes, you manage to work on a project that you just check off one requirement after another, the client is fully engaged and happy to have you on the team, money is not an issue (although our budget was very tight), and it all just comes together. This was one such project. For a small team of 2 full-time (customer and me) and 5 part-time (other principals, graphics, web design, etc.), I am simply in awe of what we were able to accomplish in a little over two months of intense effort. So, where's the fun in all of this you may ask? All I can say is, if you don't 'get it', you might want to consider a line of work different from web software development. If my ramblings have been too obscure, perhaps this will enlighten: the fun is in the designing, the building, the launch, and the results, all produced with the help of a great team. Check it out: On-the-Go Foodservice Magazine.

Bob Baker

Internet Explorer 8 (thank goodness it's only) Beta 1

Microsoft has released Beta 1 of Internet Explorer 8, and tonight I installed it on a VMWare Virtual Machine to test it. If you've at all attempted to conform to W3C standards, as well as achieve some Search Engine Optimization by employing Cascading Style Sheets (CSS), and especially CSS Level 2) instead of good old HTML tables, you may either be a) pleasantly surprised, or b) unpleasantly staring at the prospect of many hours of hand-editing CSS to repair to your site(s). I develop sites for a living, and I prefer a). Fortunately, Visual Studio 2008 has Intellisense for CSS style sheets.

But it turns out that there is a quick (or temporary) fix. If you have all those special CSS selectors living in your iefixes.css file (or whatever you call it!), you can continue to use them by employing a single meta tag in all of your pages (this is especially nice if you use just a few master pages for a site, and can thus place the this tag in just a few places). At any rate, add this meta tag to your <head> section:

<meta http-equiv="X-UA-Compatible" content="IE=7" />

May your time be spent productively.

Update: Here are some additional results of testing. One of my more complex layouts totally broke with the above meta tag in place. So I tried the IE8 Internet Explorer 7 Emulation button, and after restarting IE8, the site came up like it does in IE7 (and other browsers). Fine, but how am I going to convince users to hit that button? There's a built-in user training issue for Microsoft! OK, what about complete IE8 standards mode? So I set the above meta tag to IE=8, and only two elements in my complex layout broke, and not catastrophically at that. So, maybe this new world won't be so bad. But I can also see the possibility of some more conditional style sheet loading, i.e., <!--[if gte IE 8]>. Sheesh, when will it ever end? As one respected observer noted, "Hardcoding a reference to a specific browser as a necessary part of the page’s markup feels plain dirty."

Bob Baker

Vista SP1 available for Partners and MSDN Subscribers

Vista Service Pack 1 is now available for Microsoft Partners and MSDN Subscribers. The download manager used is the Akamai torrent engine, so it comes down really fast. I had it downloaded, burned, and installed onto a test Vista Ultimate Virtual Machine within an hour and a half of finding out it was available via an MSDN Flash message. There is a combined x86 and x64 DVD image available. Everything went extremely smooth. Looks like SP1 (remember, this is a VM, so don't laugh at the performance index -- it's all constrained by the graphics emulation):

Vista OEM SP1 System Properties

Next up will be my beautiful wife's little half-height desktop workstation, which is almost identical to the headless XP Pro/VS2008 development box I built in January (details here). And then finally will be my Vista Ultimate x64 workstation. Life is good.

There is also a Vista SP1 Clean up utility that is installed by Service Pack 1 for the really brave. Simply run vsp1cln.exe from an Admin Command Prompt to immediately remove all of the backup files saved by the update process (about 800MB). Hard disks are cheap, but wasted space is wasted space! Now if only I could find a way to remove all those Windows Updates backup files that piled up over the last year or so. It's not as easy as it was in XP, so if anyone knows of a good way to clean out all the now-useless pre-SP1 updates, just click on the old email link below and shout it out.

Bob Baker

My new high-performance (2nd) Dev Box

I am currently working on a project that is using an (unnamed) Content Management System that refuses to install on Windows Vista, due mainly to IIS and Index Server security issues. So, I tried the Virtual Machine approach, and while that was OK, it just wasn't fast enough. And that was a 2 processor Windows Server 2003 VM with 2GB of memory. So, having built an Intel vPro® desktop system for $599 at Intel's latest Channel Partner workshop last fall, and watched my wife enjoy all of its speed running Vista Ultimate, I searched out most of the components for myself. I already had a Western Digital 74GB Raptor 10,000 RPM SATA II hard drive from my server spares drawer (add $149.99 for an OEM 74 GB drive or, better yet, $169.99 for a 150 GB drive from NewEgg, and there are frequent rebates and specials). I didn't need a monitor or keyboard/mouse because my intent was to run the new box headless over full-screen RDP from my nice 22" monitored workstation running Vista Ultimate 64-bit. Add $150 or so for a nice widescreen monitor and keyboard/mouse and you have a standalone system.

Because of the aforementioned Vista Issues, this is a Windows XP Pro SP2 (soon to be SP3) box. Here's the cost breakdown from my NewEgg WishList. This is a very sweet little box. It takes about 45 minutes to assemble if you've done any recent builds at all. Software installation takes a whole lot longer, but I already had an old XP dev box Acronis True Image disk image that I used to seed this build (but that's the subject of another post). PC Wizard 2008 reports a performance index on this build of nearly 18,000, and that's with integrated shared-memory graphics from the on-board Intel GMA3100! Plus, I was able to install Visual Studio 2008 side-by-side with Visual Studio 2005, and do my development for this project in Visual Studio 2008 with all of that CSS sweetness.

Product Description Unit Price Savings Total Price
IN WIN IW-BL631.300BLP Black Steel MicroATX Mini Tower Computer Case - Retail
Model #: IW-BL631.300BLP
Item #: N82E16811108065
$58.99   $58.99
Intel BOXDQ35JOE LGA 775 Intel Q35 Micro ATX Intel Motherboard - Retail
Model #: BOXDQ35JOE
Item #: N82E16813121094
$129.99   $129.99
Intel Core 2 Duo E6850 Conroe 3.0GHz LGA 775 65W Dual-Core Processor Model BX80557E6850 - Retail
Model #: BX80557E6850
Item #: N82E16819115028
$279.99   $279.99
G.SKILL 2GB (2 x 1GB) 240-Pin DDR2 SDRAM DDR2 800 (PC2 6400) Dual Channel Kit Desktop Memory Model F2-6400CL5D-2GBNQ - Retail
Model #: F2-6400CL5D-2GBNQ
Item #: N82E16820231098
$84.99 -$40.00 Instant   $44.99
LG Electronics Black LG Super Multi 18x SATA DVD Burner GSA-H62NK, 10x DVD+/-R DL, 6x DVD-RW, 8x DVD+RW, 12x DVD-RAM - OEM
Model #: GSA-H62NK
Item #: N82E16827136120
$28.99   $28.99
Antec 761345-75080-6 80mm Case Fan - Retail
Model #: 761345-75080-6
Item #: N82E16835209001
$5.99   $5.99
Subtotal    

$548.94

Bob Baker

Visual Studio 2008 now available on MSDN Subscriptions

Woo-hoo! Go get the goodness.

MSDN Subscriptions

Official Patch Available for Animated Cursor Flaw

Windows Update just prompted my Windows XP Pro x64 machine to download a critical patch. This one fixes the Animated Cursors flaw, as well as six other serious issues in GDI+ that relate to the way various file formats are handled.

I'd recommend that you open Automatic Updates and check for new updates now, and restart your computer. This affects computers all the way down to Windows 2000, so if you have anyone using an older system, make sure they're patched up too.

Bob Baker

Test of Feedburner PodCast remapping

This is an mp3 of a tune I wrote back in 1996. I'm testing whether or not Feedburner can take my atom feed and incorporate the tune for podcatchers.

Bob Baker

Fun with Social Networking - Technorati

I know I'm late to the game, but I had a few minutes waiting for a call, and so I dug into some of the social networking tags you see on so many blogs. This one is being posted to link my blog to my Technorati Profile.

Bob Baker

MicroApplications.com is really real

As many of you know, I have used the DNS4Me service to route all internet requests for microapplications.com to my server here at World Headquarters. Since I was still on a Dynamic IP address, I started to see more and more problems with email not being blocked when addressed to or sent from microapplications.com. So, after some finagling with my phone accounts (more on that below), I signed up for Brighthouse Business Class Standard service. Not only do I have a static IP address now, but also much improved bandwidth with some Quality of Service (QoS) guarantees.

Ah, what was that about some phone finagling? I was looking to abandon my land line at 407.647.6997, since it is forwarded to my cell phone 90% of the time. After several calls to my provider, Embarq, I got through to a very knowledgeable chap who informed me that I could convert my landline to a virtual number with Remote Call Forwarding to my cell number. So, you can still reach me on the land line for the time being, but eventually, I believe I will let that go. Remote Call Forwarding costs about $20 a month. Sure beats $70 per month for the basic land line plus another $30 a month for Long Distance. The money saved just about equaled not only the bump in Internet service, but also my unlimited data plan on my Cingular 8525 Pocket PC Smartphone. It was an awesome day all in all!

Bob Baker

Blog Migration - Check!

After quite a long time of wrestling with side-by-side .Net 1.1 and .Net 2.0 web sites (and now WPF/E) on my server, I finally took the plunge and upgraded my blog to SubText. I figured it would take me a couple of hours. Uh-huh. It took 10 minutes, thanks to Phil Haack's great import code he included to import my now-old .Text-based blog. He would probably give credit to others, but if it wasn't for him, I wouldn't have a .Net 2.0 blog engine running on my web server, and better yet, one that I can post to from a number of sources that I could not with the old .Text engine. This is being posted from Word 2007 on my Dell e1505 Vista Notebook. So, out with the old, and in with the new. Thanks, Scott Watermasysk for all you did for the .Net blogging community with .Text!

Update: Windows Live Writer indeed works with SubText -- it never did with .Text! Now I can easily post from my workstation with Windows Live writer, or my notebook with Word 2007. Another plus without having to do anything! Lovin' Life...

Bob Baker