Now I know what a BO is

I started this morning reading through the new posts at "the Goog", and came upon a post by the CF JediMaster Raymond Camden, where he answers a question regarding how to handle validation in OO approached CF app. As always Ray makes a good answer.

But what really caught my eye, and made me wake up even before my first cup of tea, was a comment from Callum. He explains how he goes about doing validation in a BO (Busines Object), and in doing so also describes in a easy to understand way what a BO is. This is another one of those OO consepts/expresions that I yet had left to understand. Reading the comment by Callum just made a huge lightbulb appear above my head.

So Callum - Kudos to you!
I now (think I) know what a BO is.

Mach-ii multi step form tutorial by David Ross

David Ross has written a tutorial on how to deal with multi step forms in the contex of the mach-ii framework. Being that session façades is the next step I've been aiming to get into and understand when it comes to mach-ii/oo this is perfect. Thanks a lot David.

"Dead" is just a word

In the last couple of days it's been a lot of blogging and discution about the future of Mach-ii. I wont make the jump to deep into the discution, but I've made some observartions.

The discutions was fired of from Peter Farrels posts "Is Mach-ii dead", and the follow up "Mach-ii is dead". I think Peter voiced some really valuable concerns in his posts, but it seems like Peters use of the word "dead" blinded people from the content of the posts. Peter wrote what he did out of care and concern for a framework he's invested a lot of time and energy on. Was his use of the word dead wrong? Maybe. But Peter just put words to what I know that many have been thinking, and the objects of his concern is what should have speared the follow up discution rather than the dead/alive debate.

One other observation I've made is that many has picked up this as a Mach-ii vs Model-Glue discution. While there is some relevance in that discution as well, I feel it's gotten out of proportions. Luckily Joe made a post  that let the air a little out of that baloon.

To wrap it up I'd like to say that I think that all that has blogged/discussed the topic has made valid points, but that the focus on the issues might have come out a bit wrong/skewed.

A similar discution was going on in the Mach-ii mail list several months ago, but after it silenced down all was back to normal. I fear that it will be a week or two and the same will happen this time around as well. Now - I've not got any solutions to offer (and so actually should have just shut up ), but I hope something will come out of it this time. I've seen several suggestions around the other blogs.

So is Mach-ii "dead"? I would say no. Turning the table though - is it alive?  

Naming classes/cfc's

Via devnulled I was made aware of this post over at Hacknot about naming classes. As devnulled points out this is very adaptable to how we name ColdFusion cfc's.

Mach-ii tutorials files - zip

I was asked if it was possible to download the code for the guestbook example in my mach-ii tutorials. So here they are. This is however the code how it looks after completing part 2, and not the finished result.

Mach-ii tutorials in pdf

If you've seen the Mach-ii tutorials I've posted you might have found the formating of the tutorials a bit confusing/weird. I wrote and submited the tutorials as .doc files, and unfortuneatly the conversion to html was not too sucessfull.

So I've corrected some typos and made the tutorials into pdf files. Download them, send them around, whatever - just don't publish them as your own .

If you like them, you can still vote for part two over at http://www.easycfm.com/vote/

Ok - I'll shut up now. Here they are:

Breakin up your Mach-ii application

Tracy Logan has written an interesting piece on breaking up a Mach-ii application. The initial goal was to reduce the size of the config file (mach-ii.xml), but Tracy also explains a couple of other benefits. Read the article here.

Flash forms and mach-ii

I'm currently working on an application (more details later) which will make heavy use of flash forms, and will be made with the mach-ii framework. I needed a method to trigger diferent mach-ii events from the same form - let me explain.

I have a list with items in a cfgrid. Now I wanted to mark one item, and click one of two buttons: "Properties" and "Delete". The first thing I tried was to have the two buttons named "event" and asign different values to them:

<cfinput type="submit" name="event" value="Properties">
<cfinput type="submit" name="event" value="Delete">

However I learned that you can not have two form fields with the same name in a flash form. It won't render at all.

So I got the idea to have a hidden field called "event", and then have onclick functions on the buttons asigning different values to the hidden field. However I could not make it work. So I fired of an email to Mike Nimer, the guy behind the before mentioned cfform.com. He answered me, sugesting a small change of the syntax in my onclick function, and behold, it worked. Here's a rough example:

<cfform name="form1" action="index.cfm" method="post" preloader="yes" format="flash" height="500" width="710">
<cfinput type="hidden" name="event" value="">
<cfinput type="submit" name="eventone" value="Properties" width="100" onclick="form1.event='properties'">
<cfinput type="submit" name="eventtwo" value="Delete" width="100" onclick="form1.event='delete'">

Looking at it now I can't beleive I did not figure out the syntax my self (I left out the name of the form). A big thank you to Mike!!!

Great free tool for configuring mach-ii.xml files

A xml file is just plain text, and could easily be maintained with notepad (or similar). However having the right tool for the job helps a lot (I guess most of you use DW, Eclipse, HS+ or something like that rather than notepad, for your cf development as well).

Not being able to fork out for a profesional edition of XMLspy or similar, I deceided to try out the different free xml editors I could find. I ended up using a program called XMLmarker. And since I started with mach-ii I like it even more. Lacking several advanced features making it a bit short working with more advanced xml tasks it really shines through when working with configuration files

Give it a spin. It won't cost you anything but some minutes of your time (which you quickly catch up when you start to use the program).

The program can be found at http://symbolclick.com

Mach-ii for newbies - part 2

As some might know I wrote a tutorial called Mach-ii for newbies earlier on. The tutorial was posted at easycfm.com, and for that I won an Apple iPod. A big thank you to all that voted for me.

The tutorial can be found at http://tutorial345.easycfm.com/

I have now finished "Mach-ii for newbies - part 2". It is already submited to easycfm and should be published there shortly. Thanks to my friend Jared for a little proof reading.

As the situation stands it seems that the new tutorial will have a shot at getting me another iPod. If you like it please vote for it. My wife would be happy to get an iPod as well :)