Posted on 25 August 2008.
Posted in Web 2.00 Comments
Posted on 25 August 2008.
Posted on 25 August 2008.
Posted on 25 August 2008.
Posted in Web 2.00 Comments
Posted on 22 August 2008.
Posted in Development, Web 2.01 Comment
Posted on 21 August 2008.
Patrick Meenan has setup an IE7 instance in Virginia that we can poke to do an AOL Page Test.
You give it a URL and some options such as the number of runs, whether to see the first and repeat views, and off it runs.
When finished you get to see the results which give you high level data on load times, waterfall graphs, an optimization check list, and a screenshot of what the browser saw.
If the waterfall is hard to read, send it to Steve Souders. He reads them like Neo reads the Matrix :)
Posted in Web 2.02 Comments
Posted on 21 August 2008.
Ken Collins has rewritten his Homemarks application, a Rails app that "allows you to dynamically create and sort Columns, Boxes, and Bookmarks into your own custom start page."
What is interesting about the rewrite is the new approach that Ken took; the Ajax Head Pattern as he described it:
HomeMarks was built using the Ruby on Rails framework with a heavy emphasis on object oriented JavaScript to make AJAX requests to a RESTful back-end. Unlike most Rails applications it does not use any inline JavaScript helpers nor does it rely on RJS (Remote JavaScript) for dynamic page updates. Instead it is nearly 100% unobtrusive JavaScript which uses simple HEAD or JSON responses to communicate to the objects on the page. This has yielded very slim controller code which is decoupled from the views and easily testable in isolation at a functional level.
You end up with a lot of code that deals with HEAD:

Posted in Web 2.02 Comments
Posted on 21 August 2008.
We have all been talking about querySelectAll for awhile, but John Resig gives us a wrap-up that covers the state of play.
He talks about the browsers, and the libraries that wrap them and clean up shop via code like:
Less code. More speed.
Posted on 21 August 2008.
Rizqi Ahmad has created a data binding service for jQuery called Chain.js.
A simple example shows you where to start. When given HTML like:
The following JavaScript will add data as items to the list:
Check out the demos for more detailed examples.
Posted in Web 2.02 Comments
Posted on 20 August 2008.
Creating a lot of HTML using DOM methods can be a real pain. This is what students of the Juku training course that I held two weeks ago found out quite quickly and complained about the verbosity of it all. I listened to their concerns and came up with a framework for JavaScript applications called
ViewsHandler.
One of the tasks I had given the class is to create a thumbnail show with image information from a link pointing to Flickr using the JSON API. The following is a solution using and showing the options of ViewsHandler:
ViewsHandler is not another JavaScript templating solution but works on the assumption that in most cases you'll have to create a lot of HTML initially but you'll only have to change the content of some elements dynamically as new information gets loaded or users interact with the app. So instead of creating a lot of HTML over and over again all I wanted to provide is a way to create all the needed HTML upfront and then have easy access to the parts of the HTML that need updating.
The first thing you'll need to do to define your application is to create an object with the different views and pointers to the methods that populate the views:
ViewsHandler then creates DIV elements for each of these views and hides them for you. In your methods you create all the HTML the different views need to have and apply it with an add() method. You then define the parts of the HTML that should change later on as fields using the define() method and you can use the set() method to change the content of these fields and the view() method to change between views.
The benefit is that for setting the data you don't need to access the DOM any longer or use innerHTML or nodeValue. ViewsHandler created a pointer to the element all of this is cached. The set() method also allows you to either add a new node as the value or a string. In the latter case it'll create a text node for you.
One convenience method is linkto() which creates links pointing to the different views for you. None of this is rocket science, but it helped the class to create large applications with complex views without losing track of what they are doing. Maybe it can help you, too.
Posted in Web 2.00 Comments
