News Roundup: Okay, this week is all about jQuery. Sue me.

jQuery Mobile

Without a doubt the biggest news of the week has to be the announcement of jQuery Mobile. While the project hasn’t been particularly secret until now, this is the first official announcement of the project, and the first concrete information about what kinds of capabilities the framework will offer and what devices will be supported.

Basically, the framework is still mostly targeting very high-end mobile browsers (the overwhelming majority of which are WebKit-based), and it offers a lot of mobile UI widgets (themeable via the jQueryUI Themeroller).

Personally I’d say the most exciting thing about the announcement is the graded browser support chart that accompanied the announcement. A lot of companies are using data like this internally, but so far none have been inclined to share it. The fact that the jQuery folks have actually published the results of their mobile browser testing is pretty exciting.

I tend not to think too highly of javascript frameworks for mobile devices, but provided the jQuery team can keep the footprint as small as possible (22k is way too big for mobile), it could be a real boon to developers to be able to use the tools their used to on the desktop on mobile devices.

For a ton of concept images showing what the various UI widgets will look like, take a look at the planning wiki. They’re aiming to release something in “late 2010,” which is coming up quickly.

Large jQuery Applications

Speaking of jQuery, there’s been a pretty far-reaching conversation among Javascripters about how well-suited jQuery is to building large-scale (”enterprise”) jQuery applications. It started with posts from the JavascriptMVC team and JSMag’s own Rebecca Murphey on the problems with architecting large applications on top of jQuery.

In a nutshell, all of the arguments come from the realization that a lot of jQuery code starts out by grabbing a piece of the DOM, doing something to it, and then building on top of that with more DOM-intensive code. The end result tends to be an extremely brittle mess of anonymous functions that: breaks as soon as the markup changes even slightly, is unreadable even by the developer who wrote it, and is utterly impossible to maintain. There’s almost no way for a project that progresses in this way to scale to the enterprise level.

So is the answer just to avoid jQuery altogether except for toy apps? Alex Sexton says it’s probably not. This week he came out with a blog post that really ought to settle the issue. His argument is that jQuery is just a tool, and you can build great things with it, or you can build a mess of spaghetti with it. If you’re a strong Javascript developer, you’re in a better position to do the former. Otherwise, there’s a good chance you’re going to be dealing with the latter case. Sexton’s point is that the question isn’t whether jQuery or Dojo (or YUI or…) is well-suited to build large applications. The question is whether you understand Javascript well enough to build something scalable and maintainable regardless of the tool you use.

The discussion has turned out to be a very productive one in that it brought up a lot of important issues regarding Javascript community’s reliance on abstraction. Hopefully the moral that we all need to make sure we’re Javascript developers first and framework users second (or 5th) will be well taken.

Share and Enjoy:
  • Digg
  • del.icio.us
  • Facebook
  • Google
  • description
  • Reddit
  • TwitThis
  • Simpy
  • StumbleUpon

Leave a Reply




© webdevpublishing 2011