Tuesday, January 15, 2008

Design Patterns

I'm not really sure when it happened, but the folks in the Coldfusion community have begun speaking a completely different language. Brian Kotek has a post announcing his release of a Transfer Decorator Bean Injector Observer. Yikes! That's a mouthful, and it gets even worse as you read the post. Most of the concepts talk about a few different design patterns. Thanks to Head First Design Patterns, I have started down the track of learning about design patterns. However, there is still a lot in Brian's post to wrap my head around for a design pattern noob, like I.

There is one thing I've definitely learned lately, it hurts to try and expand your knowledge in an unfamiliar area, but it hurts even more if you don't.

Tuesday, January 1, 2008

Coldfusion Blog Aggregator

My site has been added to coldfusionbloggers.org, which is a fabulous aggregator of most of Coldfusion centric blogs. This is a must visit site for any serious Coldfusion programmer.

While you are at it, check out Coldfusion Community which is another great site! It's amazing how the CF community has grown in the past year or so. Perhaps I should say, it's amazing how much more of the CF community I have been exposed to over the past year or so.

Happy New Year and IE Fun

One of my 2008 resolutions is to restart my blog and focus it on software development. Mostly Coldfusion, javascript, AJAX and general web development.

To kick off the new year, I'll discuss something I learned about IE today that was making my life miserable. Actually, it's something IE did right and everyone else does wrong.

I had some javascript that would check a radio button or check box and enable (or disable) an "Other (Specify)" box on a survey. Being the smart guy I am, I figure I can use the onChange() function since I only care when the field has changed value. Works great in all the browsers I tested except IE. It turns out that IE has a slightly different implementation of onChange(). To make a long story short, in IE, onChange() doesn't fire until an INPUT element loses focus and has changed it's value. This means that the element firing the event is the old radio button or checkbox, not the new one that was just clicked! This is actually the correct behavior (as far as I can tell) and the other browsers have it wrong. My problem was easily corrected by using onClick() .