jQuery Code Magazine Editorial Posted
My jQuery editorial for the Code Magazine Newsletter went live today. It turned into a rather lengthy affair (what else is new?) even though it's a high level editorial and so doesn't show code. The piece discusses jQuery's functionality, benefits and some considerations for ASP.NET integration, but keep in mind that this is an editorial discussion rather than a 'how to article' (which will follow soon). You can also post comments here if you like.
It's kind of funny - my editor Erik was poking me when I handed in my original draft that I didn't mention my usual 'downsides'. I didn't really think about it when I wrote the piece originally, but when he did I started giving this some thought. The funny thing is for me jQuery really hasn't had any issues that I would seriously consider as downsides. There are a few issues that can be problematic like versioning and there have been a few issues with the API documentation not being kept up to date with the latest releases, but either these issues haven't affected me or they are too minor to even worry about. Maybe that's just me, but I also didn't find any serious dissing of jQuery in searching around the Web trying to dig up some dirt on jQuery other than a few pointless rants.
What do you think? Are there any major issues with jQuery that I'm simply overlooking or am I just running around in my rose colored glasses subconciously ignoring shortcomings?
Other jQuery News: jQuery 1.2.6 and jQuery UI released
Also, in case you missed it: jQuery 1.2.6 was released two weeks ago and jQuery.Ui released over the weekend. The last couple of jQuery releases (1.2.4 and 1.2.5) were short lived due to some distribution issues, but 1.2.6 has been out for a bit now and I've been running it since it came out without any problems with existing apps. jQuery 1.2.6 includes a few significant performance improvements as well as - finally - all the features of the original Dimensions Plugin integrated directly into the jQuery core. Dimensions provides a number of functions for determining and setting position and sizes of elements in a variety of different ways.
jQuery UI 1.5 also has been released finally and it really rocks. I've been using a bunch of the features - especially the drag and drop features and Sortables - and I'm glad to see this library finally come out after a long beta period and what I think was a botched 1.0 release that sucked. If by any chance you played with jQuery UI 1.0 and were turned off by bugs and inconsistent APIs, be sure to give Version 1.5 another look because it's been cleaned up and the API consolidated to provide consistency across the various components. Note that there are a few minor changes in library names in features from the beta versions, but they are really minor. The biggest is the file name changes for a few of the libraries especially if you were using earlier versions of the beta.
Also very cool is the dynamic library builder (which is something I always loved about the MooTools library) which lets you pick the components you need for your app and have the library builder create a single JS file with everything you need for those components. The tool figures out dependencies for each component, which is also useful if you plan on just picking and choosing which of the components to use and embedding them individually into the page.
On the downside the full jQuery.UI docs are still missing in action. There are older docs, but they're fairly incomplete and that's a bit disappointing given that some components require configuration with themes and css that need to be set up. Luckily there are examples that work and apparently the new jQuery.UI docs are coming shortly. I always wonder why any publisher considers documentation so secondary as to push out a release without adequate documentation? This is silly as it leaves a potentially bad impression on new developers rushing to check out a tool.
But I disgress... Regardless, jQuery.UI is great. If you're already using jQuery I think jQuery UI will be a no-brainer to check out and get friendly with.
The Voices of Reason
# re: jQuery CoDe Magazine Editorial Posted
Validation, Ajax, Form support, input masking, file uploads, tables, table sorting, table paging, etc... just to name a few.
Powerful, easy to use, now I just wish my Visual Studio would give me jQuery refactoring support :)
# re: jQuery CoDe Magazine Editorial Posted
I read your editorial but we had a bit of a problem working with jQuery along with ASP.NET AJAX in our projects, we ended up choosing jQuery because our developers had more controls over some of the neat client-side tricks. But we realized that some of the things like implementing 'cascading dropdowns' for example are really simple with ASP.NET Ajax but a pain to implement with jQuery.
Can you show us an example of this "...the two libraries can seamlessly interact without stepping on each other.".
# re: jQuery Code Magazine Editorial Posted
My point is that there are no conflicts and not a lot of feature overlap between the AJAX Client Library and what jQuery provides.
Let's hope that in the future Microsoft gets wise and adds similar functionality into the Microsoft AJAX Client library so another external tool may not be necessary if you are already using ASP.NET Ajax.
In the end using jQuery is a more low level approach and you need to think about it that way. You can certainly build integration between client features and server controls, but in many cases this may not even be necessary once you accept that you are willing to write some JavaScript to make your UI work and not rely on getting everything generated by an ASP.NET component automatically.
# re: jQuery Code Magazine Editorial Posted
There are no .aspx pages in this app, so would jQuery even be an option?
# re: jQuery Code Magazine Editorial Posted
It's been a while since I've done any Web Browser control development - but it'd be interesting to see what you can now accomplish using jQuery to provide some easier manipulation of the browser and for effects in the markup.
# re: jQuery Code Magazine Editorial Posted
I hardly run into situations where that I am like "i wish jQuery did this differently", but when i do, it's so easy to tweak and extend that it's a non issue...
and the Google Group for jQuery is fantastic (lots of great questions and more importantly, lots of greater answers to said questions)
This framework has really changed the way i think about everything since i ditched MS Ajax and started using jQuery back in November.....
# re: jQuery Code Magazine Editorial Posted
FYI - Cascading drop downs (in Zubair's context i believe) are a set of drop-down lists [DD] with chained dependencies. In other words, the later DDs will have different items depending on the selected values of the earlier DDs. After selecting an item in the first DD, the second DD will load, and so on..there is a convenient pre-built cascading DD component in the asp.net ajax toolkit.
We also rode the fence between asp.net ajax and jquery (and even developed some hybrid solutions) for a short while before we weaned ourselves off the update panel and also chose jquery exclusively.
As far as I know, jquery hasn't tripped us up at all, nor do we see any deal-breaking shortcomings.
All in all, we're excited to see the new version in action.
Thanks for the post,
Mike
# re: jQuery Code Magazine Editorial Posted
It's rare that at tool has such a cascading effect on changing perspective and usage scenarios at least for me.
# re: jQuery Code Magazine Editorial Posted
Regards...
# re: jQuery Code Magazine Editorial Posted
The thing about jQuery is that it's fairly non-intrusive so even if you have your own stuff it'll still fit right in and not feel out of place or make your stuff feel out of place. I just wish I had the time I could rewrite my library with jQuery and cut about half of the size :)...
# re: jQuery Code Magazine Editorial Posted
# re: jQuery Code Magazine Editorial Posted
# re: jQuery Code Magazine Editorial Posted
I do indeed get some satisfaction out of being able to use my own code, partly because I know what it does, having written it, and because I learn about writing good code at the same time.
I have written a small library with commonly-used utility functions, and it works well for me. I can reuse the library on other projects, and sometimes add another function to it if I find I am doing some particular code frequently enough.
# re: jQuery CoDe Magazine Editorial Posted