An Architect's View

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

An Architect's View

Entries for month: September 2003

Want Some PIE?

September 30, 2003 ·

Craig Castelaz's Java blog looks at the relative importance we attach to polymorphism, inheritance and encapsulation. The comments on the post are mostly in agreement - with each other and with Craig - that encapsulation is the most important thing to think about when you're programming. Polymorphism is mostly an artifact of using interfaces in Java (for Craig and his readers) and inheritance is relegated to third place (composition is much more common than inheritance - see my earlier post about inheritance).
To paraphrase real estate then: encapsulation, encapsulation, encapsulation!

Tags: programming

Component Browser / Invoker

September 29, 2003 ·

Brandon Purcell has posted a superbly useful utility that not only lets you browse all the components installed on a server but actually lets you invoke methods to test them. It builds on the cfcexplorer component that comes with CFMX and adds the ability to invoke individual methods and specifying arguments - all determined by introspection. It doesn't require a CF Admin password so be careful not to leave it lying around on a production server - but it should be extremely useful for development.

Tags: coldfusion

Mach II : FAQ II

September 26, 2003 ·

The official website has an FAQ that is focused more on "Why Mach II?" than on "How Do I...?" so Robby posted this functional FAQ on the Mach II forum. In the absence of an actual web page containing this information, this thread is a good reference.

Tags: coldfusion

cf-talk : an update

September 26, 2003 ·

It was interesting to see the (very!) mixed reactions to my post about leaving cf-talk because of the HTML issue but in view of some of the comments being made (and I deleted one particularly nasty one out of hand!), I've decided to follow Charlie Griefer's suggestion to remove the original post and post this update (on which you cannot comment, thank you very much!).
It seems people took my comments as some sort of personal attack on Michael Dinowitz which was not my intent (Judith and I discussed the issue at some length when I unsubscribed so Judith and Michael know it was nothing personal!). I know Michael will iron out the kinks in the handling of HTML and plain text on the list - I'd already told Judith that I'd see how things were working out in a month or so and might re-subscribe.
cf-talk's pretty high traffic so being unsubscribed gives me a bit more time to work on other things - I probably spent an hour or two every day reading and replying to cf-talk. Seeing that extra time, I decided to unsubscribe from flashcoders too, freeing up more time. I'm using that free time to work on Mach II documentation (and spend a bit more time with my wife!).

Tags: coldfusion

Mach II Filters

September 25, 2003 ·

Robby @ OhSoGooey has a Mach II page that offers a number of filters for download. I haven't checked any of these out yet (although one is based on my RequestToEvent filter in the MachWiki application) but figured it was worth giving other Mach II developers a heads up about this resource!

Tags: coldfusion

Top Ten CFC Tips

September 25, 2003 ·

Rob Brooks-Bilson has a great article on O'Reilly's ColdFusion Development center called Top Ten Tips for Developing ColdFusion Components. He recommends always providing an init() (good, although where he shows calling it in the pseudo-constructor won't work since his example requires an argument to be passed that is not available in the pseudo-constructor) and goes on to cover a number of other best practices. Essential reading!

Tags: coldfusion

Macromedia Central - Public Beta

September 25, 2003 ·

Finally, everyone else can get their hands on what a few of us have been very excited about for a while: Macromedia Central is now in public beta! Mike Chambers has more to say about this in his blog but I'd urge you to install it and take it for a spin. Bear in mind that it's beta software so go and read the FAQ and other product information first!

Tags: mx

XSLT Too Hard?

September 22, 2003 ·

A while back, Tim Bray wrote about XML being too hard for programmers. Not everyone agreed with him but there were some interesting comments in his original post.
Now Martin Fowler has effectively written that XSLT is too hard. Hopefully, this is a much less contentious position than Bray's because, if you ask me, XSLT isn't just hard, it's downright impenetrable! One of my team is our resident XML / XSLT expert and he can make XSLT do amazing things but it really does have a horrible syntax and, as Fowler says, some things are nigh-impossible to program purely in XSLT.
Fowler thinks scripting languages may help us here. He's using Ruby (which I'm not familiar with) to good effect. Whenever I need to work with XML, I jump into ColdFusion because it has good XML support and it's easy to work with.
What do people think - is XSLT viable or do you also jump into a scripting language of some sort when you need to manipulate XML?

Tags: programming

Reserved Function Names in CFMX6.1

September 22, 2003 ·

Ray Camden's blog alerted me to this important new Macromedia Tech Note about names you cannot use for functions names. When you think how CFMX compiles code to Java, it makes sense that you can't define methods or functions that collide with the public members of the Java base class Object but I'm sure it's pretty frustrating if you get the error message and don't understand why.

Tags: coldfusion

Mach II 1.0.6

September 22, 2003 ·

The latest core files (1.0.6) are now available for download from the Mach II website. These fix all of the bugs that had been posted on my bug fixes and enhancements page. I've also posted an updated version of the MachWiki application. All the official sample applications have been updated so I'll be downloading ContactManager again and ensuring my anatomy page is accurate.
I've updated the anatomy page to reflect the latest version of the ContactManager application. I'd already account for the change of view in the XML to view-page in the event-handler and to page-view in the page-views definition section but I hadn't accounted for the addition of access="..." to the event-handlers.

Tags: coldfusion