It's been a year and a half since my last post and over two years since my last truly technical post. I promised myself I'd get back to writing this year, but life and work kept getting in the way. Fortunately, I've been able to get a number of things back on track over the last few months. This blog is one of them.

Blogging in the Cloud

My blog is now on a Rackspace Cloud server, running ColdFusion 9 on CentOS 5.5. I basically spun up one of their LAMP images, then consulted Aaron West's excellent guide, made a few adjustments for ColdFusion Standard and was up and running in short order.

Upgrading BlogCFC

Previously, I was running BlogCFC version 5.9.001. There have been a number of upgrades since then related to both security and functionality. I exported the MySQL database from my previous host, then installed the latest version of BlogCFC locally, including the latest MySQL schema.

Thankfully, most columns in the BlogCFC database have default values set. Once I had the newest version of the database, I just ran the INSERT scripts from the MySQL dump file in order to populate the database. After that, I updated the single record in "tblusers", changing the username to that from my live site.

If you've run the blog application before making all of these data changes, you'll not see your data correctly. Re-initializing the blog application won't help, you'll have to restart the CF server. At least, that's what I had to do.

Twitter Bootstrap

At this year's Adobe MAX conference, I gave a presentation at the ColdFusion Unconference. The presentation was titled, "Laying the Foundation for Modern ColdFusion Applications". Really, it continued, "using HTML5, BluePrintCSS, jQuery, jQueryUI, jQuery Validate" and so on, but I only had 50 minutes.

After the presentation, someone (and I apologize for not recalling your name) came up and asked if I'd looked at Twitter Bootstrap, "a toolkit from Twitter designed to kickstart development of webapps and sites." I'd heard of it, but never used it. Until now.

It's very easy to get started with Twitter Bootstrap if you're worked with other CSS Grids. Using one of their example layouts, I had the blog styled within a few minutes. Currently, TB is not "reactive", meaning it doesn't use CSS Media Queries to re-size itself to whatever device is viewing it. Therefore, you'll have to switch out layouts programmatically to adjust to smaller displays.

Moving on up, to HTML5 . . .

While I was working on all of this, Adobe made their announcements about focusing on HTML5. I've been working with the HTML5BoilerPlate as a template for some other recent applications, so i decided to integrate pieces of it with Twitter Bootstrap in order to create my modern application foundation.

I was given a review copy of Hello! HTML5 and CSS3 by Rob Crowther from Manning Publishing a few months ago. I'll post a detailed review shortly, but I'll say now that after a quick read-through, it was a breeze to pick up on the parallels between how we've traditionally laid out HTML4 vs HTML5.


I've got a couple of years' worth of blog posts rattling around in my head as well as a few books. If there's anything you'd like me to cover, please use the Contact form and I'll do my best to respond quickly.

If you happen to see anything odd with the layout, please send me a note and include which browser you're using. I only tested this layout in Chrome, FireFox 3.6.x and MSIE 9.

During a Fishbowl session at the ColdFusion Unconference this year, Scott Stroz brought up the fact that as developers, we need to constantly evolve. I couldn't agree more.

I have been very fortunate to have worked in a wide range of industries. At each employer, I've learned concepts which I then applied as needed at subsequent employers. This has allowed me to evolve and, I hope, help others evolve. By getting this blog back up and running, I hope to do both again.