jQuery performance
TODO: write a series of test cases that illustrate ways to write high-performance jQuery.
Projects in progress
I have many projects in progress...
1) "Anybody can program" book, have half of the outline for the first draft done
2) Stylometry web app, have some of the backend services done that calculate stylometry stats
a) Dictionary looker upper, reasonably complete for Merriam-Webster only
3) Blog application, just a few thoughts on paper and a few lines of code
4) Notepad, a note-keeping application, could pass for done
5) Merb Google RSS feed sample application, could pass for done
6) jQuery_merb, a javascript library bridging the gap between jQuery/javascript and merb. limited scope, but could pass for done
7) merb_solitary_part, a merb slice for hitting parts outside of "regular" requests. Needs some renaming/refactoring and some docs, but could pass for done
8 ) Kollaba, a site for finding collaborators to work on...anything. fair bit of progress on it, but probably dead.
9) merb-rails upload benchmark application, basically creating the same simple application in both versions. done enough to be used for benchmarks, at least (and yes, merb's faster).
Phew. I need to finish some stuff! But new ideas are so much more exciting...
introducing…jquery_merb (sort of)
I love jQuery. I love Merb. I thought, so why not work on both? I tried this previously from the merb side with the now gone merb_multi_js plugin, which I had made a substantial amount of progress on before I killed it. It was designed to mimic rails and generate handy JavaScript for you not using Prototype.js, but whatever web framework you wanted (I of course had jQuery, Prototype.js, and I think YUI). Alas, I realized that because of some of its design principles, it would never be performance-friendly.
Enter jquery_merb, or jquery.merb.js.
merb_multi_js
I'm writing a plugin right now to add some built-in JS functionality to Merb. It's coming along pretty well, but is still pretty raw and not specced, though it does have SOME documentation. It's available at http://github.com/nanodeath/merb_multi_js/wikis/home. If you have questions, you're encouraged to send me a message at Freenode#merb.
jQuery :(
I wish Rails wasn't so intimately tied with Prototype+scriptaculous. It makes jQuery that much harder to use. Even so, using page << and jQuery is much easier than trying to use Prototype to achieve the same end. Not to be a fanboy or anything, but is there any other library out there that can remove a specific option from a dropdown select box in one short line of code?
jQuery and Javascript Hijacking
I stumbled upon this XSS exploit that Fortify published a little over a year ago that jQuery has failed to account for, even now. Sort of worrisome, since that's the javascript framework I prefer most. Prototype, however, has "fixed" it, as you can tell from the bottom of this page. Anyway, sort of a long read.
Fortify publication (pdf)