SXSWi 2010 Voting is on! Votes needed!

getify | Ajax, Misc, RIA | Friday, August 21st, 2009

Vote for 'Dude, where's my UI architecture?' Go vote for “Dude, where’s my UI architecture?” for SXSWi 2010! That’s right, your’s truly is hoping to speak about improving UI architecture for the SXSWi 2010 event.

This is a topic I’m very passionate about and I hope I can count on your support to help the talk get picked for the event. There’s over 3000 submissions for only 300 spots, so every vote counts!

Also, there’s lots of other great technical topics to vote on. I’ve started a list of a few I’m stoked about on this linked-in thread, so if you’re feeling generous, lend some votes their way as well.

Bookmark and Share

Improved event support for flXHRproxy plugins for jQuery, Dojo, Prototype, and Mootools!

getify | Ajax, flXHR, flensed | Thursday, July 9th, 2009

Thanks to Zohaib (MaXpert), flXHR now has a flXHRproxy plugin for Mootools! If you’re using Mootools and doing cross-domain Ajax, flXHRproxy is your new best friend!

Also, inspired by the code we worked out for the Mootools plugin, I have released updates to the jQuery plugin, Dojo plugin, and the Prototype plugin. These three plugins now play nicely with each respective framework’s built in error mechanism for normal Ajax calls.

Prior to this release, error handling was only possible by manually setting the “onerror” property in the flXHR instance configuration properties. This same functionality is still supported. But now the recommended approach is to specify your error callbacks directly in your Ajax/Xhr calls as you normally would. Note: Do only one or the other, not both, to avoid duplicate callback execution in some circumstances.

Now that flXHRproxy is more tightly integrated with each framework’s event mechanism, the ease with which you can make cross-domain Ajax calls just keeps getting better and better! Really, what excuse do you still have for not using flXHR for your next cross-domain Ajax call?

One last note: the jQuery update also includes one additional change. The “success” callback function signature is now extended to include a third parameter, which is set to the flXHR instance (XHR) that generated the call/response. This makes it much easier to determine which specific Ajax call the response comes from.

Bookmark and Share

Some Javascript/Ajax projects: “LABjs” and “mpAjax”

getify | Ajax, Misc | Monday, June 29th, 2009

I wanted to slightly diverge from flensed project discussions for this post to talk briefly about two other projects I’ve recently released. The reason for talking about them here is that one or both of them may find some cooperative use or even code sharing with flXHR/flensed in the next version releases, so there is a symbiotic relationship between them.

The first project is called LABjs (Loading And Blocking JavaScript). Put simply, this is a little tool (2.5k compressed) that lets you load Javascript assets dynamically, in parallel, but still allows you to define “blocking”, which is to wait for one or a set of scripts to load before executing other code, such as perhaps loading more scripts.

The main purpose of LABjs is to load scripts dynamically, in parallel, instead of old-school <script> tags which only load one at a time, and block everything else on the page. This significantly speeds up your page load. At the same time, you do sometimes still need to block and wait for some script to get loaded before doing other things. So, you get both in one simple loader API.

For instance, say you’re on a page that needs jQuery, but also needs a number of jQuery plugins. You need to load jQuery core itself, blocking on that download, and the ideally load all the other plugin files afterwards, in parallel, to get the page rendered and functional as quickly as possible. LABjs makes this type of functionality drop-dead simple.

So, this old style of <script> tags:

<script src="http://www.flensed.com/jquery.js"></script>
<script src="http://www.flensed.com/jquery.myplugin1.js"></script>
<script src="http://www.flensed.com/jquery.myplugin2.js"></script>
<script src="http://www.flensed.com/jquery.myplugin3.js"></script>

Becomes:

$LAB
.script("jquery.js")
.block()
.script("jquery.myplugin1.js")
.script("jquery.myplugin2.js")
.script("jquery.myplugin3.js")
.block(function(){
    // init myplugin1, 2, and 3
});

LABjs is now in v0.7, and is demo’d and hosted on: http://labjs.com.

As I said, this type of loading logic is powerful and clean, and will probably replace the code loading logic in flensed/CheckPlayer/flXHR projects for their next releases.

Joe McCann wrote a great blog post describing and showing off the LABjs tool.

Next up, I’m gonna talk about mpAjax, which allows for easy parsing of multi-part Ajax responses.

Bookmark and Share

Page 1 of 12123...Last »