An Architect's View

CFML, Clojure, Software Design, Frameworks and more...

An Architect's View

Entries for month: January 2005

Frameworks - Refining My Sample App

January 30, 2005 ·

For my upcoming talk on frameworks, comparing Fusebox and Mach II specifically, I'm using a simple task manager application to demonstrate the pros and cons of each framework. I have three very different versions built with Fusebox (traditional, MVC and full OO model) as well as a 'simple' Mach II version. Although it doesn't add to demonstrating Mach II itself, I spent today creating a refactored version that actually has DAOs and Data Gateways and Beans etc. The refactoring process was pretty error-prone and it took me quite a while to debug one particular problem but in the end I got it all working. The end result was about 300 more lines of code and 17 CFCs instead of 7. The mach-ii.xml file is slightly shorter tho'. The app still works exactly the same (of course). The upside was that I tripped over a bug lurking in the original version - glad I found it before I distributed the code! (I had value="request.taskID" in an event-arg tag - it should have been variable="request.taskID").

Tags: coldfusion

CFEclipse 1.1.18.6 Available

January 30, 2005 ·

Spike just announced the availability of version 1.1.18.6 as a "nightly build". This is the first public outing for the all-new code partitioner (that provides syntax coloring etc) as well as extensive work by Chris Bradford that includes SQL syntax coloring (which works very nicely!)

Tags: cfeclipse · coldfusion

Jeff Peters' Blog

January 29, 2005 ·

Another CFDJ blog that should be worth following: Jeff Peters of Team Fusebox and Grok Fusebox fame.

Tags: coldfusion

April Fleming's Blog

January 27, 2005 ·

April Fleming - who did the cool XSLT talk at CFUN last year - has a CFDJ blog which should be very interesting. Sounds like she's overworked (which ought to be familiar to a number of us).

Tags: coldfusion

Hal Helms' New Blog

January 27, 2005 ·

Hal has taken advantage of CFDJ's free blog offer (powered by BlueDragon, apparently) and set up an occasional blog. His latest post talks about two different types of programmers and how they interact with others.

Tags: coldfusion

Citizenship - One Step Closer

January 27, 2005 ·

This afternoon was my civics exam at the INS and it was a breeze (fortunately the interviewer only wanted five of the original thirteen states names - I managed seven I think, maybe eight, off the top of my head). The next step is to provide the INS with yet more proof that my wife & I are really still in "marital union". Like we haven't bombarded them with enough proof yet. Oh well. My writing test consisted of being asked to write "The United States is the greatest nation ever." at the bottom of my application form. One of the questions was tricky for me: what is the head of your local government called (they expect people to be living in cities and answer "mayor"). I live in unincorporated land so I'm beholden to the county instead. Unlike a colleague of mine who was naturalized last year I did not have to spell Schwarzenegger (seriously!).

Tags: personal

Matt Woodward on Composite DAOs

January 27, 2005 ·

Matt talks about the tradeoffs involved with persisting composite objects. He offers up three options and settles on one of them but he explains the tradeoffs involved. There are quite a few comments as well that cover even more factors that might influence your decision.

Tags: architecture

If You Don't Learn From Your Mistakes...

January 26, 2005 ·

...you're doomed to repeat them. Joe Rinehart continues his excellent series of posts about OO by talking about the joys of learning lessons from your mistakes. It's a great post - and it reinforces why I tend to tell people that "close" is good enough for the first cut but be prepared to refactor, refactor, refactor!

Tags: architecture

Frames, CLIENT Scope and Multi-Threading

January 26, 2005 ·

Macromedia has posted a new Tech Note about some pitfalls when using CLIENT scope variables in a framed site. The key issue here is that when you use CF to render frame content you are immediately in the realm of multi-threading - because several requests can be made from the browser at the same time (one for each frame being refreshed). CLIENT variables are established and managed per-request. The Tech Note highlights two likely scenarios where you can get into trouble. Workarounds? Don't use frames. Don't use CLIENT scope. I always avoid both of these anyway and recommend others avoid them two. Frames really are unnecessary and they make for a horrible user experience in my opinion. CLIENT scope is pretty nasty too, either passing WDDX-encoded data back and forth as persistent cookies, cluttering up the server's registry or hitting the database all the time. Yuck!
This seems to be a hot topic :) I was interested to see Alan Williamson's take on this blog entry since he shares my views about CLIENT scope...

Tags: coldfusion

Battle-Hardened Breeze Live

January 26, 2005 ·

Just saw this announcement that the army are using Breeze Live to collaborate in the field. If you haven't used Breeze yet, you should try it out - it really is a great way to communicate and collaborate with remote resources. Of course, if you have used it, you know that already!

Tags: mx