← Back to the blog

June 2008 Archive

Where will I be @ Scotch on the Rocks

Here’s a summary of my intended sessions from the Scotch agenda:


  • Keynote Session with Ben Forta

  • General OO with Matt Woodward

  • Requirements and Estimating with Peter Bell

  • BOF’s

  • Railo with Gert Franz

  • Fresh AIR with Mark Drew

  • Architecting Apps for Multiple UI Technologies with Matt Woodward

  • Flex Client Architecture and Best Practises with Borre Wessel

There’s a few gaps where I’m still undecided, and a couple of session where I haven’t got much choice, but overall it’s looking good for the three days…

How about you?

Posted by Neil Middleton on 01 Jun 2008


Getting Flex and Rails talking nicely with AMF

As a ColdFusion developer, integration with Flex is a very easy thing to do. ColdFusion understands Flex, and Flex understands ColdFusion. But what if we want to use another tool? What if we want to use the super-productive Ruby on Rails to build our backend? Well, thanks to the MidnightCoders that’s now nice and easy to integrate with thanks to their WebOrb Product (which is free of charge thankfully).

So, how is it done? Well, let’s walk you through it:

First up, check you have Ruby and Rails installed:

rails --version


If you get back a response giving you a version number, you’re good to go. If not, consult the Rails documentation. Now let’s create a rails app:

rails myrailsapp


…and install WebORB into it…

cd myrailsapp


ruby script/plugin install http://themidnightcoders.net:8089/svn/weborb


Easy so far? OK, Well let’s take a look at it:

ruby script/server


Browse to http://localhost:3000/examples/main.html and you should be presented with a testsuite for your app and it’s WebORB install. Easy.

So, what does this mean for you from the Flex point of view?

Well, WebORB basically pretends to be Flex Data Services, thus making the configuration nice and easy for you. Your root folder becomes your rails app config folder (myrailsapp/config) and the root URL is your webORB controller (http://localhost:3000/weborb).

For the output side of things, you should output your flex content to the /public folder of your flex app (/public/flex for instance), and point the URL to that same location (http://localhost:3000/flex).

Once you’ve done this you can go through the normal steps as you would with any FDS application. Setting up the destination/source in your remoting-config.xml etc. Once you’re done, you’re done. You can now talk to Rails as you would a CF application.

For example, Flex application declares a remote object using the RemoteObject API (for a getComputerInfo method):

[viewcode] src=“2008/06/rails_amf_sample_1.txt” geshi=actionscript[/viewcode]

When a user clicks the ‘Get Computer Info’ button, the following function executes a remote method invocation:

[viewcode] src=“2008/06/rails_amf_sample_2.txt” geshi=actionscript[/viewcode]

When an invocation response is available, Flex invokes a response handler specified in the tag. The response handler in the example, populates the text fields with the data available in the returned object:

[viewcode] src=“2008/06/rails_amf_sample_3.txt” geshi=actionscript[/viewcode]

The source code for the server-side rail as object is below:

[viewcode] src=“2008/06/rails_amf_sample_4.txt” geshi=Ruby[/viewcode]

and that’s pretty much it. You can now do what you want with Flex and Rails.

Posted by Neil Middleton on 02 Jun 2008


Railo 3.1 goes open-source

As of tomorrow, Railo 3.1 is an open source product as announced today by Gert Franz from Railo at Scotch on the Rocks 2008.  Hosted by JBoss.org, the product will be supported by a much larger community than can be provided purely by the CFML community.

So, now we are left with only two cost-option CFML engines, Bluedragon and Adobe’s ColdFusion 8.  Everything else is now open-source : OpenBD, Railo (excluding Enteprise) and Smith.

I dare say more information will appear as time goes on (the keynote is still in progress)

In the meantime, please look here

Posted by Neil Middleton on 05 Jun 2008


Railo 3.0 Review

Railo joins JBoss.org

OK, so now that the dust has settled and everyone has had the oppourtunity to take a good look at what has been going on with the open sourcing of Railo (and we’ve had a chance to talk to Gert Franz about it) let’s review some of the facts:


  1. Railo is now a LGPL2 licensed projectThis was one of the bad bits about OpenBD. OpenBD is a GPLv3 license, which basically means that if you want to distribute your code with OpenBD, you must also be running against a GPLv3 license – not good for distributing your CFML apps with a built in engine. Railo is a LGPL2 license which essentially means you can do whatever the hell you want with Railo. You can bundle it with whatever other licenses you want. It’s helluva lot more flexible.

  2. Railo has a load of new featuresSee below for the new features

  3. Railo Enteprise will not intially be OSS due to some of the software contained withinGert Franz of Railo was saying during his presentation that they intend Railo to be fully OSS, and once they have got round the licensing issues with tags such as CFVIDEO, that too will be fully OSS

  4. Railo is now a fully fledged part of the jBoss.org community.This means that there is a big brother looking after it, and it’s a considerable one. JBoss.org is a massive amount of tools with a very large and vibrant Java community (for instance, there were around 8 million downloads of JBoss AS last year alone). This puts Railo not in a nice safe environment, but also puts it into a position whereby it can be seen by a whole load more people, which can only be good for CFML.

This morning, I grabbed my copy of Railo and gave it a quick look. Installation was a piece of cake (it comes as a Jetty install), and things ran first time and worked perfectly. I used the nice admin interface (a feature missing from OpenBD) and deployed the Feed-Squirrel.com codebase onto it. A couple of minor tweaks later, and it was running fine. It fact, it was runing better than I’ve ever seen it run on ColdFusion 8

So, to summarize what’s the headlines in Railo 3.0? Well, in short, the following:


  • Amazon S3 resource

  • Cluster Scope

  • Instance synchronization

  • Spooler with frontend in the admin for mail, thread-tasks, instance synchronization

  • Definition of constants in the Railo XML

There are also a few new tags:


  • cfapplication (attribute mappings, customtags)

  • cfdbInfo (type users)

  • cffunction (returnformat=“serialize”)

  • cfhttp (addtoken = yes)

  • cfthread (attribute type, retryinterval)

  • cfvideo

  • cfvideoPlayer

  • cfvideoPlayerParam

Once the public drop is made, whenever that may be, download it, take a look and see what Railo can do for you. If you’re considering purchasing some CF8 licenses – hold off on that until you’ve given it a look – it could save you a fortune.

Posted by Neil Middleton on 06 Jun 2008


jQuery 1.2.6 drops, and it's even faster

Yup, 1.2.6 is now out (and is still just primarily a bug fix drop for 1.2),  and the events handling functionality is 103% faster.  But wait, that’s just the headline:


  • CSS Selectors are 13% faster

  • .offset() is 21% faster

  • The DImensions plugin is now part of the core

  • toggle() can now accept more functions

  • attr() has had an overhaul

  • You can now unbind bound toggle() and one() functions

  • .index() supports jQuery collections

  • jQuery.makeArray can convert ANYTHING into an array

  • beforeSend() can cancel AJAX calls

  • You can now define your own animation speeds with the jQuery.fx.speeds object

For more information please see the release notes.

Posted by Neil Middleton on 06 Jun 2008


Are New Atlanta genuine about CFML?

I was just browsing around some of the feeds that I follow catching up after three days at Scotch, when I came across a post from Vince Bonfanti of New Atlanta – the people behind Bluedragon.

Nothing much you might think, being a post about BlueDragon 7.1 at Microsoft’s TechEd conference except for one thing. At the end of the post, Vince mentions New Atlanta’s new CFML migration services for those that want to migrate from CFML to Java or .NET (which are implied to be more modern web application platforms)

So, what does this say about New Atlanta? For me it suggests that they have no real interest in boosting CFML or making the world a better place for CFML developers, but are more interested in selling licenses and consulting to those who want to take their applications elsewhere.

For me, the CFML market now has two vendors I would do business with: Adobe and Railo. Anyone see this differently?

EDIT: To make things clear:  I am completely behind the Open Bluedragon project ( as with any free and open project ), I just have some minor issues with New Atlanta themselves.  I have no idea what happened with the OpenBD Steering Committee mailing list posts.

Posted by Neil Middleton on 07 Jun 2008


The Railo 3.0 Press Release

Railo goes Open Source on JBoss.org

“Swiss software company Railo announced today plans to release an open source version of the Railo CFML engine hosted at JBoss.org, the website of the leading provider of open source Java middleware. This will provide developers with a top-quality CFML engine available for free under the LGPL license. The open source version of Railo will be launched in late 2008, and will be available for download from the JBoss.org community website.

“JBoss has been a driving force behind the Open Source ecosystem built around the Java platform and in legitimizing Open Source Java middleware in the Enterprise”, said Gert Franz, CEO of Railo, “and we believe that having JBoss.org as a community partner will dramatically increase the adoption and use of CFML in the enterprise market”.

CFML (ColdFusion Markup Language) is a programming language that allows for rapid creation of high performance, scalable web applications. Railo is a CFML engine that converts CFML code into executable Java byte code which can be deployed and run on any standard Java Servlet engine. This provides programmers the productivity gains of CFML development with the performance and scalability of the Java server environment.

As part of the partnership with Railo, the JBoss.org community will be working on several enhancements to provide CFML developers tag-based access to JBoss core functionalities, including JBoss Cache and Messaging.

Sacha Labourey, CTO at JBoss added: “The JBoss.org community has repeatedly proven to be a powerful launch-pad for propelling exciting and innovative technologies into mainstream adoption”.

In the following days they will build their websites with all the information about the 3.0 and 3.1 release. In addition their blog will aggregated on www.jboss.org/railo/blog. If you like to have a look at the video from the keynote, here you can see it again.

Bring it on.

Posted by Neil Middleton on 08 Jun 2008


jQuery and Unit Testing at Scotch on the Rocks 2008

During Scotch last week I presented two sessions. One was jQuery in a nutshell and the other Unit testing and Continuous Integration with ColdFusion. In both I said I would post the presentations themselves and sample code so here it all is:

jQuery in a nutshell

Presentation Slides

Sample Code

Unit Testing and Automation with ColdFusion

Presentation Slides

Sample Code

Any questions, please give us a shout.

Posted by Neil Middleton on 08 Jun 2008


Flex vs Silverlight (in my eyes)

I’ve been spending a bit of time recently taking a look at the RIA market as a whole and the tools that are available within.  During this time, I’ve been spending most of that looking at Adobe’s Flex and Microsoft’s Silverlight.

For a little context, for those of you that don’t know, I am mainly a server-side developer, with a background in tools such as ColdFusion, Rails and Flash.  I have some knowledge of Flex, but not enough to make me truely dangerous (yet).

So, what’s the deal?  Well, in short, Flex is simply a library of components that are used to develop applications using Adobe’s flash runtime.  This gives you a massive amount of scope for what’s possible, as well as a fairly safe bet that any users you might have have the flash runtime ready to roll.  Development is done by writing MXML and Actionscript 3, preferably inside the Flex Builder tool (based on Eclipse) that you can buy from Adobe.  Flex runs on Windows, Mac’s and Linux in some form, and can be developed for free due to the fact that the runtime itself is open-source.  One feature definitely worth a mention is the support for AMF – a highly compressed binary format for data transport.  This protocol makes it highly performant when chucking data around the place.

So, let’s quickly mention silverlight.  Silverlight is Microsoft’s attempt at Flash, but with a .NET backdrop.  In it’s simplest form, Silverlight is a subset of WPF, the Windows Presentation Foundation, that a whole stack of Windows UI is now built with.  This means that any .NET developer worth his salt should be able to adapt and develop silverlight applications fairly easily.  Now there’s a problem here – I’m a Mac user at heart, and although I have a windows laptop available at the office, OS X is where I prefer.  However, as a Silverlight developer, you are bound into Windows as you’ll be needing tools such as Visual Studio 2008 and/or Expression Blend.  This doesn’t sit too well with me – if you’re developing for the web (any platform), you should be able to use any platform to do so.

So, what are the key differences other than those mentioned above?  Well, for me, Flex appears to be a bit more developer friendly – I can do all the things that Silverlight can do as well as use AMF, and the Flex Builder tools (when combined with Adobe’s creative suite) seem a little nicer than the Microsoft offering.  I can develop Flex apps on any platform, and run them pretty much anywhere.  I also like the way that Flex can seemingly sit with whatever tools you might use elsewhere, Silverlight definitely lends towards .NET due to the fact that the IDE and languages are used elsewhere in the platform.

On a side note there is something that bugs me about Silverlight apps, and that is the look of them, when using the default styles and skins, for instance, let’s take a look at a flex and silverlight app side by side (using the default skin):

First up, Flex:

and Silverlight:

Flex just seems to look smarter and less “Tonka”.  Silverlight has the look of a Fisher-Price “My First RIA”.

One other big thing worth mentioning, although slightly off topic, is Adobe AIR – I don’t see anything from Microsoft, yet, that appears to offer what AIR does.  AIR allows me as a web developer, to create desktop apps using Flex, Flash, HTML, JavaScript etc, and deploy them whereever I like.  Microsoft does have WPF, but that’s pretty much limited to recent windows installations and doesn’t really suit itself to web developers.  AIR is a huge selling oppourtunity for small agencies, and Microsoft just don’t have anything to offer as an alternative.

Lastly, it’s worth mentioning the vendors themselves.  Both are great companies, with good product lineups, but there’s one thing worth noting.  MIcrosoft seem to understand developers and the creative agencies out there better than Adobe by a long shot.  For instance, the partner programs that the two companies offer are leagues apart, the Adobe one being hard to justify the ROI on.  Micosoft are genuine about working with partners, and helping them to help themselves, providing support, software and training where needed.  Adobe on the other hand seem to show no interest at all unless you are shifting LiveCycle licenses, which is a damn shame as they win in almost other respects for the budding RIA developer.

So, in summary, my views are this – Flex beats Silverlight.  I prefer the development story and the fact that I can develop it how I like and where I like.  If I were starting up an agency with guaranteed work I would go for the Adobe products every time…

BUT, and there’s a few buts, I don’t have guaranteed work, I need some help getting it – so Microsoft comes in to play.  With their awesome partner program, I have the resources available to me that help me be more successful as a business.  The question is, does grinning and bearing the slightly poorer tools make it worth it?

Posted by Neil Middleton on 29 Jun 2008


www.flickr.com

Archives

Posted by Neil Middleton on 01 Jan 1910

blog comments powered by Disqus

From our portfolio

Jo's Trust
Website
JoTrust-Thumbnail
Charis Grants
Application
charis_thumbnail
iMoneymanager
Application
imoneymanager_small
www.flickr.com

Archives

From our blog

We're hiring! Are you a talented Rails developer? Come join us!

Posted by Niklas Richardson on 07 Jul 2011

Monochrome is a web application development company based in Epsom, Surrey and a Heroku partner. We are looking for two experienced and enthusiastic Ruby on Rails developers to join the team...

The need for applications just keeps on growing

Posted by Adrian Munn on 24 May 2011

After 12 years in the industry experience has always told us to adapt and modify strategies in your business in order to survive and thrive. Monochrome are not adverse to taking on new challenges...

Places we would like to go...

Posted by Neil Middleton on 21 Jan 2011

Quite often in the office we will end up having a conversation about some particular company, that does something on a massive scale, and has a relevance to either technology or some sort of large...