jQuery Conference 2009. A loose assortment of slides and other info from the jQuery conference the other day. Some useful gems in there including sessions from Yehuda Katz, John Nunemaker and Paul Irish. I wish I could have gone!
Posts tagged with “javascript”
Sammy JavaScript Framework. Built on top of jQuery, this is a little Sinatra-inspired library for structuring web app development with JavaScript, centered around responding to pre-defined URL ‘routes’ in combination with custom events. I really like the look of this.
Building Evented Single Page Applications. This is exactly the route I have been starting to use recently for building apps and adding in more complex complex functionality to sites (not necessarily single pages, however.) I got the idea of doing it this way from learning Objective-C, where there is a ‘messaging’ system between objects that can be effectively replicated by using custom event triggers and binds in jQuery.
Some interesting JavaScript projects…
Some nice (mostly) JavaScript projects that I have been using recently that have impressed me (in no particular order):
DD_belatedPNG – Finally, someone thinking out of the box on the issue of ‘fixing’ 24-bit PNGs in IE6, and the result is by far and away the best solution going. So much less resource intensive than the other offerings, has full background-position and background-repeat support and is super-easy to implement. I just wish this had been around before!
Bluff – really nice JavaScript port of Ruby’s Gruff graphing library. Straightforward to implement and gives nice looking results.
SWFUpload – JavaScript/Flash mulitple file uploader, which can be set up to give visual feedback on the progress of uploads, can cancel queued uploads and more. A bit of a learning curve if you want to customise it away from the provided demos, but well worth the effort. This sort of functionality should be built into browsers by default.
Typeface.js – another fresh take on a problem, this time the issue of cross-browser font embedding. Clever stuff, and has real potential to knock sIFR off it’s throne.
Cufon is everything Typeface.js should have been, and more. Fantastic.
SoundManager2 – Another JavaScript/Flash hybrid, this time providing a simple API to play MP3s using only JavaScript calls. Useful if you need to do this sort of thing at all.
That’s it for now… It’s certainly quite interesting to see the number of JavaScript plus Flash/canvas/VML etc solutions cropping up that are providing unique ways of addressing age-old problems. Many thanks to all those working on the above projects for all your hard work!
From the Cappuccino blog:
Cappuccino is essentially a port of the GNUStep frameworks (or Cocoa as more people are familiar with them), and it aims to fundamentally change the way applications are written on the web.
This is a really exciting development in JavaScript framework land, with a completely different take on the matter. It’s hard to think that Apple aren’t kicking themselves that this didn’t come out before they built all their MobileMe web apps using SproutCore.
PPK on the event handling in Mobile Safari:
They have to redesign the triggers for these events in terms that make sense to their interface, even if that means that the event names don’t make sense any more. — Peter-Paul Koch
I’m excited by what PPK sees as the decline of heavy mouse-based interaction on the web. But it sounds like the mapping of events such as :focus onto ‘finger down’ events is going to get very confusing (linguistically speaking) long before any new standard for event handling on the web is formulated to take into account the new touchscreen devices.
From John Resig’s blog:
A fantastic new improvement to Mozilla’s JavaScript engine (SpiderMonkey) has landed. Code-named TraceMonkey this engine utilizes a techniques, called trace trees, which adds just-in-time native code compilation to SpiderMonkey. — John Resig
This is exciting news, and combined with Safari’s upcoming SquirrelFish javascript interpreter it means JavaScript-heavy web pages and applications are going to be getting a big performance boost in the near-future.
How JavaScript is quietly taking over the world
Note: This is the first of a few articles that I will be cross-posting from my employer’s blog, where this was originally published earlier this month.
Most people, if they have heard of JavaScript at all, know it as the web scripting language that allows web pages to have nice effects on them – show/hide, fades, ‘accordion’ effects and other animations.
Those with a bit more knowledge on the subject might also be aware that JavaScript can be used to get data from a web server without refreshing the page – a technique dubbed Ajax that enhances many of today’s web-based applications and makes the whole web experience a bit smoother.
But what not many people know is that JavaScript is actually quietly taking over the world.
The fact is that JavaScript, (the standardised version of which is called ECMAScript) which was hurriedly released around 1995, is now more prevalent than you might imagine. And equally importantly, it is cropping up in different places and in forms that people never thought of way back in it’s early years.
The traditional area for JavaScript is on the web, and here it has matters pretty much sewn up in terms of market dominance. Yes, there is Adobe’s Flash, which competes for the web application/ interactivity slice of the pie. However, unlike Flash, JavaScript does not require a plugin, is supported by the W3C, and is considered an integral part of the ‘web standards’ trio of frontend web development languages. And the scripting language that powers much of modern Flash development today, ActionScript, is actually a subset of the ECMAScript standard and is closely related to JavaScript.
All of the major mapping applications such as Google Maps, Yahoo maps etc are powered by JavaScript, as are almost all of Google’s other web offerings, such as Google Mail and Google Docs. Apple’s new MobileMe service gives a desktop application-like interface whose UI is created using a JavaScript framework called SproutCore, and the extremely impressive 280slides.com online presentation-maker application is written in Objective-J, a port of Apple’s Objective C programming language to JavaScript. The growing popularity of these JavaScript frameworks is making the language more accessible to novice developers (although not without bringing their own sets of problems) and removing most of the cross-browser issues that were the bane of developers lives in the early years of it’s implementation.
These applications all make use of client-side JavaScript. However it is now showing up on the server-side (1) as well, with pure solutions such as the Aptana Jaxer project bringing the power of JavaScript to bear on server architecture, creating solutions optimised to today’s heavy use of Ajax in web sites an applications. It’s ‘embeddability’ means that it can also be easily embedded in other server side languages such as PHP (PHP-JS), Java (Rhino), and Perl (JE) amongst many others.
But that’s not ‘taking over the world’ – that’s just taking over the web. Where else does JavaScript feature outside of websites?
Lots of places, as it happens. Still on a web-related theme, Mozilla’s Firefox browser uses JavaScript to power its Graphical User Interface (GUI), and developers can create extensions for the browser using JavaScript. On the desktop, Mac OS X’s dashboard widgets are all powered by JavaScript, as are Microsoft’s Vista Gadgets, Yahoo’s Widgets and Google’s Desktop Gadgets. Adobe released the 1.0 version of AIR, their cross-platform runtime environment for creating desktop applications, in February this year; this allows developers to use web technologies such as HTML and JavaScript to create rich desktop applications.
JavaScript is also showing up as a way for people to add functionality to existing applications, as companies build scripting capability into their products to allow for greater customisation. For example, Adobe’s ever-popular Photoshop application allows users to write scripts in JavaScript, a plugin for Illustrator allows JavaScript to be used to create and manipulate images and tools, and PDFs now support JavaScript scripting and interaction.
This use of JavaScript outside of the web browser looks set to increase – through web development many people already have the skills needed to write the scripts, and it is a language that is well suited to manipulating graphical elements in the interfaces that the modern desktop operating systems provide. There is also a good sense of convergence here: As more and more applications are becoming web based (or at least are offering web-based versions of their desktop software), the desktop is starting to become powered by technology that was born for use in the web.
So it looks like we are going to be seeing a lot more of JavaScript in the coming years, both on and off the web. Not bad for a language that has be derided over the years by ‘real’ programmers, who considered it an ‘amateur’ language because of its unstructured nature and early use to provide whizzy effects for web pages. You’ve come a long way, baby.
——————-
(1) The web is based on a client/server model – there are lots of web servers being run in the ‘cloud’ that process requests from the ‘clients’, the browsers that we use to view the web. Traditionally JavaScript has been run on the client side of this equation, processed by the browser.
Tags:
(x)HTML @font-face Amazon analogue analytics Apple apps atheism books browsers canvas code CSS css3 dConstruct drag and drop eco electricity email events fail foundries freelancing Google HTML5 IE iphone javascript jQuery miscellaneous mobile MySQL performance personal php programming projects recommendations running Tea The Web tools UI webfonts web standards