Scotch on the Rocks 2011 Day Two #sotr2011

Submitted by Falken on

Keynote
Mark Drew and Gert Franz of Railo
It's up to you to be proud of CFML, don't apologise for it ! Tweet it, blog it ! You cant convert .Net, PHP users, only tempt them.
But likewise, we should try other stuff and tell everyone the 10% you like about Scala or whatever. You might end up with them in ColdFusion (or Railo !). Incentivise your colleagues, especially the 9 to 5'ers.
Price and performance is not an issue any more for ColdFusion, been around for ages but updated every single year.
Gert also talked about some of the cool stuff in Railo.

JQuery Mobile
Ray Camden
Ray started of by saying JQuery mobile may but 'alpha 3', but it's stable and as a beta soon; it's "Built on JQuery, not fairy and magic dust". It already works on Nook, Playbook, Android, IPad etc. As with JQuery is degrades well, and is theme-able. Adobe sponsor it, as Spry is basically dead - the team at Adobe that did that are now working with JQuery.
The docs are terrible at this point, basically just a JQuery Mobile gallery, not so useful for 'how do I do?' but this is being addressed.

Ray showed, basically, a huge number of working examples you can get from his blog, but in summary the page structure is that after including the JavaScript and CSS files, there's then a bunch of DIV tags that use the 'data-role' attribute to get special stuff applied. This includes being marked as header footer or content. If you leave these out you get an empty page :-)

The main theme (and most awesome part for me) was there was no writing any JavaScript. You make multiple pages (complete with transitions) just by adding an 'id' to more DIVs. If you do link to a another page, it auto adds back button, bookmark-able urls and so on.

'A href' uses AJAX by default. So targets must be real JQuery pages (so include at least one data-role page DIV etc.).

data-role = listview of links, makes into accordion, can auto-add arrow at right. Nest LI items for drill downs!
All sorts of CSS classes to add annotations for things like gear icons, thumbnails, count numbers and many more to buttons. All looks ace by default.
You can make lists real-time searchable by just setting data-filter=true. Awesome.

Normal input buttons etc. get auto skin'ed, so there are nice ways to group them to make tool bars etc. Or flag A-href to look like button (data-role=button), add icons, align icons. Buttons span the whole page by default, option to turn that off too.

Forms again are AJAX by default, but all input fields are enhanced so textarea looses its scrollbar and gains expand as you type. Also has a few extra field types like sliders and a nice date picker. Still no JavaScript code needed ! There's also an iOS style toggle using nothing more than a CSS class on a select element.

For layout there are several types of grids rather than using table tags.

You can listen for orientation change, and change the layout. About 2 lines of JavaScript code for that.

Out of the box there are 5 themes, just colour changes really. Simply set data-theme to change.

There are events for swipe etc.

As a last piece of awesome, Google has a driving directions JavaScript API. Using this and geolocation (via JQuery Mobile) you can build driving directions (from where I am to the place) in no time.

Why it's taken till now for me to hear of this wonderment I have no idea, but I was so impressed I spent some time in the afternoon hacking at it !

Home for 5
Andy Allan
Developers main problem that makes them loose productivity is distraction. But also IDE clutter and talks at the water cooler.
More hours does not mean more productivity. So how to get the most out of the hours you do have ?
Most people in the room have heard of Mylyn, but only a few are using, interestingly.
Tasktop lets Mylyn track web pages, email and a bunch of other stuff. It also adds some time reporting, time sheet stuff.
Tasktop will add scheduled tickets to a (shared) Google calender. Time estimates and spent may reflect back to issue tracker depending on connector, something I'll have to look at for our own Trac install.
You can click a TODO comment to turn into a task in the issue tracker. I should probably stop writing TODO and start writing sub-tasks, because everyone forgets about TODOs.

We also discovered the 'feeling lazy' button that auto-assigns you a low priority ticket; it's under 'activate...' in the Mylyn task picker.

Hack time
At this point I may technically have been in AJAX Long polling and LiveCycle talks, but I was really learning JQuery mobile ready to try putting it through PhoneGap to make a mobile application next week at work :-) A full mobile website including a ColdFusion backend in less than an afternoon. This stuff is very cool...

Closing
We all need to book March 8 and 9th next year off.
There was also some madness with choosing a winner for a few prizes from randomly thrown conference passes. Some of which are never going to be found in the roof. I'm glad to say the awesome Sally Jenkinson won free tickets and accommodation !