Viewing by month: September 2008

Sep 13 2008

How to Drive Fusebox 5.5 - Book Review

I asked Niall O'Doherty (a fellow CF Developer) to give me his initial feelings on the book How to drive Fusebox 5.5, and he came up with an excellent review, that left me wanting the book even more. I asked him if he would mind me posting his review on my blog, as his website is still not ready; he kindly said yes. I just changed some of the styles, but the text is still exactly the same thing. Book reviewer Niall O'Doherty | Publisher: Proton Arts. Author(s): Jeff Peters The book is 110 pages, including Intro, TOC, Appendices and Indexes. In summary the book contains the following chapters: 1.Introduction
Provides a basic introduction to Fusebox 5.5 and the book itself. 2.Fusebox Basics
A quick introduction to the "what and why" of fusebox. This includes Code Organization, Managing and ways to think about your applications, technical principals of fusebox etc. Mainly content related to the architecture and flow control of your application and how Fusebox evolved from a Framework that did not simulate inheritance techniques to a more flexible framework enabling more independent circuits. 3.Traditional "modern" Fusebox
Reviews the Fusebox 4 approach to Fusebox, using XML to configure the application and circuits. By modern, Jeff pertains to FB4 or later versions of the Framework (configured using XML). Here a traditional application is dissected before moving into the chapters which use the same application and the different approaches available with the new Fusebox 5.5 version of the framework. 4.Going XML-less
Issues related to using Fusebox without the XML files and how Fusebox 5.5 goes about it. This is essentially where the book starts breaking down the actual main differences between traditional fusebox apps and new fusebox apps, for example, new method of setting Fusebox Parameters and omitting the Fusebox.xml configuration file etc. It then leads to the Implicit loading of Circuits and their precedence. 5.Other New Topics
Additional Features added in Fusebox 5.5 delves into the new features to Fusebox:

  • i.Dymanic Do: basically invoking the "do" method of the "myFusebox" object.
  • ii.The Event Object: Created by fusebox and handles the passing of attributes scoped var's into CFCs (expanded on from FB 5.1) i.e. event.getValue("variableName");
  • iii.Application.cfc support: basically Application.cfc can extend the fusebo5.Application object and invoke it's methods.
  • iv.myFusebox updates: to make keeping track of what's going on in your application easier.
  • v.showDebug property
  • vi.getApplication(), getOriginalCircuit(), getOriginalFuseaction() and variables() methods explained

6.Directories as Circuits: Circuit.xml
An overview of the Wegot Widgets reference application using directories for implicit circuits and circuit.xml. 7.Directories as Circuits: CFM Fuseactions
CFML Templates as Fuseactions: The Wegot Widgets reference application using directories for implicit circuits and CFML Templates for Fuseactions. 8.Directories as Circuits: CFC Fuseactions
CFCs as Fuseactions: The Wegot Widgets reference application using directories for implicit circuits and CFCs for Fuseactions. 9.CFC's as Circuits
The Wegot Widgets reference application using CFCs for implicit circuits and CFC methods for Fuseactions. 10.Summary
The previous book Fusebox 5 and FLiP provided a complete overview of the Fusebox and Fusebox LifeCycle Process, but this is more focused on the new approaches that are available using Fusebox 5.5.

There is a little Deja-vu when reading the early chapters of this book in terms of the analogies Jeff uses when describing the Fusebox framework characteristics, and illustrations (PHB and Start, Bus \ Ring networks).

Other than that though: If you do use Fusebox or plan on using Fusebox as one of your development frameworks, I would probably highly recommend BOTH books.

Links to the books can be found here

  comments - Posted by Marcos Placona at 9:50 AM - Categories: Books | Fusebox | Book Reviews | ColdFusion

Sep 10 2008

10 Dropbox Invites

Just a quick post to say that I have 10 7 dropbox invites I'm willing to give to anyone able to tell me why I should give it away. Update: Invites sent to everybody who commented. Except for those who already had it (dropbox tells you by the email address) Update2: Looks like dropobox has just opened it's subscriptions without invites. Just visit the website and subscribe

  comments - Posted by Marcos Placona at 6:43 AM - Categories: General Techie Stuff | Misc

Sep 10 2008

Railo 3 released!

Yes, I was really expecting for this new version, and now it finally came up. Take a look at here to see what's new, and download the FREE server here. Also, I'd like to encourage people to take some time and click on the donate button (paypal) on the top of the downloading page and give the guys some money. They've been doing an excellent job!

  comments - Posted by Marcos Placona at 5:30 AM - Categories: Railo

Sep 8 2008

How to Drive Fusebox 5.5

Just a quick post about a book I've just spotted. Jeff Peters from Proton Arts has (just??) released a book on Fusebox 5.5 called "How to Drive Fusebox 5.5" The book costs just $19,99 (a tenner) and has a delivery of $7,00 to England as far as I could see. I don't know about you guys, but I totally missed this one, and it's been a very long time I don't see a book release on Fusebox. Might be worth checking this one.

  comments - Posted by Marcos Placona at 11:53 AM - Categories: Books | Fusebox

Sep 8 2008

A couple of ColdFusion related links!

I came across this morning to two excellent ColdFusion related articles, and thought it'd be interesting to share it with my readers. The first one is an excellent article from Hal Helms about Object-oriented programming using ColdFusion Object-oriented programming: Using inheritance wisely The second one is really great news, and the title says it all! Why developers are dumping PHP for ColdFusion

  comments - Posted by Marcos Placona at 1:48 AM - Categories: ColdFusion | Adobe

Sep 5 2008

Learning JQuery - Book Review

Book reviewer Marcos Placona | Publisher: Packt. Author(s): Jonathan Chaffer and Karl Swedberg JQuery is one of the coolest JavaScript libraries ever released, and has been growing massively on the Web Development scene since it's release in early 2006. As a big fan of JavaScript libraries, I decided to write this book review. "Learning jQuery" is a great complement to jQuery's official documentation, having a nice and clean structure all the times within the book The book is divided in ten very illustrative chapters containing code samples, and excellent comments related to what is being presented. It also assumes that you have never had any contact with jQuery, but have some knowledge of JavaScript. The chapters are:

Chapter 1: Getting Started
Chapter 2: Selectors: How to Get Anything You Want
Chapter 3: Events: How to Pull the Trigger
Chapter 4: Effects: How to Add Flair to Your Actions
Chapter 5: DOM Manipulation: How to Change Your Page on Command
Chapter 6: AJAX: How to Make Your Site Buzzword-Compliant
Chapter 7: Table Manipulation
Chapter 8: Forms with Function
Chapter 9: Shufflers and Rotators
Chapter 10: Plug-ins
Appendix A: Online Resources
Appendix B: Development Tools
Appendix C: JavaScript Closures

The first chapter gives you a big overall about what jQuery is, and where it can help you; giving some day-to-day examples and telling you a little bit more about where to use jQuery to extract it's maximum performance. It will also give you all the basic explanation about how to install and configure jQuery. Moving on to the second chapter, we start to learn how to use jQuery selectors, which in my opinion are just one of the best features of jQuery. Using selector you can make changes to the DOM (Document Object Model) on the fly, and that means you will be able to put aside all the complex regular expressions you used in the past, and use something as simple as:
('a[@href^="mailto:"]')
If you move forward to chapter 5, you get information about DOM manipulation more in depth. Chapter 3 talks pretty much about how you can change stuff on page load. It's really useful to be able to do this kind of thing, as before we'd need to call a function on the onLoad event. With jQuery, you simply put all your code / functions inside the:
$(document).ready(function(){ ... });
And you can pretty much do all your changes surrounded by the code just posted above. It also shows how to attach and remove events, as well as a great coverage of cross browser techniques. Chapter 4 is more focused on the design side, and will show you lots of easy and interesting improvements you can do with jQuery when trying to give a better user experience. Pop-ups and alert validations are left behind here, and a whole new gamma of opportunities is opened, with some excellent examples, you will be able to remove all the ugliness and 90's feeling of your website, and launch a whole new and improved WEB 2.0 website.
Chapter 5
as said previously covers Chapter 3 more in depth Moving on to Chapter 6, you will learn a lot about how jQuery easily integrates with the so called AJAX, where you will learn how to access JSON objects, load content on demand, send data to server and serialize post requests. In my opinion, this chapter has to be read at least 3 times, as every time you read it, you realize that there's one thing you've missed on the last read. Although the book is pretty intuitive, AJAX is a very complex beast, and the more the merrier. It was one of the chapters I really enjoyed reading, and the Authors were sensible enough to think about security issues and security limitations the developers can find across the path. Chapter 7 is a massive reference about table manipulation, where you will learn a lot about how to perform changes on your tables, without actually have to fiddle with the code generated by the server request. It's very useful for designers as well.
Chapter 8 and 9
go towards the same direction of chapter 7, but telling you about how to interact with web-forms, as well as validation and also uses some AJAX calls to retrieve data from the server. Chapter 9 will give a full example of how to do things like banner rotators, how to consume web-services and how to give your end-user a better experience when navigation through your website. Up to here, a lot have been discussed about how to create your own code, but in most of the cases, it's not necessary to reinvent the well, as some other developers have already done that for, and that's when we move on to Chapter 10 It's a very well explained and exemplified chapter, giving you a very good grasp on how to use user defined plug-ins for pretty much anything. The book also gives you very nice URL's for resources on where you can find those plug-ins and how to extend them. There's also e very well covered part on how to create your own plug-in and how it can be made extensible. This used to be a very hard task when done with pure JavaScript, but turns out to be "piece of cake" here.

Sections A, B and C
cover lots of online resources, tools and some tips and tricks. Of course most of this information can be found on the Official Documentation, but in my opinion, it's a big puzzle, and you need to find most of the pieces of it, and will always start from the edges, when you sometimes need the middle of it. Those who tried to use it before, will know what I'm talking about, and see that this book is a must if you want to use jQuery on your applications.

I have learned a lot with this book, and although I was working with jQuery for some time, it was very good to recycle everything I knew as well as understand some technical points about why I was doing it that way.

I'd like to leave here my special thanks to the fine guys at Packt who sent me this book for evaluation and technical review

  comments - Posted by Marcos Placona at 4:47 AM - Categories: JQuery | Book Reviews | Javascript

Sep 4 2008

How I treat the links on my blog with JQuery.

This is a very quick and dirty example of how to treat links on your blog / website using JQuery.

I've been using JQuery for a while now to ease my life with some personal applications and at work. One of the greatest things about JQuery in my opinion is it's great interaction with the DOM, and ability to make global changes with very little effort.

Some time ago I've implemented a simple WYSIWYG editor on my blog to facilitate tasks like text format and link creation. Link creation will be the subject today.

All the links will basically have the same structure:

<code>
    <a href="/blog/foo.cfm">bar</a>
</code>

The problem I found was that I didn't want people to leave my blog when clicking on external links, but wanted them to have a new tab opened each time they clicked them. I could easily change my WYSIWYG editor to add a target="_blank" on all the links, but then, every time someone clicked on an internal link (or even on a JS link), a new tab would be opened.

Ok, bad idea! (period)

I then thought about the selectors from JQuery. How nice it would be if my script was clever enough to detect what's an internal or external link. Well there you go, there's a very easy way of doing that:

On the top of my main page (layout.cfm as it's blogCFC) I'm including this:

<code>
<!--- Include the jquery library previously downloaded from JQuery's website --->
<script src="/blog/jquery.js" type="text/javascript"></script>
<script type="text/javascript"><!--
        //Tell the browser to run it when the page loads
    jQuery(document).ready(function(){   
       
        //Use XPath selectors to find what I'm looking for
       
    jQuery("a:not([@href*=http://www.placona.co.uk])").not("[@href*=##]").not("[@href*=javascript]").attr({
            //Add a target where appropriate
                       
        target: "_blank",
            //Put a title on the link where appropriate

        title:"Opens in new window"
        })
                //prepend with pre prefix ext

        .prepend('-ext');
    });
// --></script>
</code>

Now, the code is pretty much self-explanatory. Basically what is does is "look" for any a tag and check it's href attribute reading the tag with XPATH Selectors. Everything returning true to this condition will have two new attributes added; target and title. The .prepend is used to prepend some text to your object, in this case, I'm prepending the text "-ext", but you could for example add an image by replacing the "-ext" with <code><img src="img.png"></code> for example; which would bring you a nice and clean link with an image. Needless to say that ColdFusion Developers in general love this JS library, as it's very versatile and compatible.

  comments - Posted by Marcos Placona at 6:35 AM - Categories: Javascript | JQuery | Adobe | ColdFusion







Related URLs

Subscribe

Categories

Search Archives

Monthly Archives