<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/">
	<channel>
		<title>DOM Scripting Blog</title>
		<link>http://domscripting.com/blog/</link>
		<description>A place for thoughts and musings on JavaScript and the Document Object Model.</description>
		<language>en</language>
		<item>
			<title>One point four</title>
			<link>http://domscripting.com/blog/display/124</link>
			<description><![CDATA[<p>The latest version of <a href="http://jquery.com/">jQuery</a> has been released, just in time for the framework&#8217;s fourth birthday. <a href="http://jquery14.com/day-01/jquery-14">Version 1.4</a> looks like a speedy improvement on its predecessors.</p>

<p>If you have an iPhone or an iPod Touch, be sure to check out this very nifty <a href="http://www.mrspeaker.net/2010/01/14/jquery-iphone-reference/">jQuery reference app</a>. It doesn&#8217;t take long to install and, best of all, it doesn&#8217;t involve the app store at all&#8212;the whole thing is built with HTML, CSS and JavaScript using HTML5&#8217;s <a href="http://www.whatwg.org/specs/web-apps/current-work/#offline">offline storage</a>. Now, no matter where you are, you&#8217;ll always have access to jQuery documentation &#8230;as long as the battery in your phone lasts, anyway.</p>
]]></description>
			<pubDate>Fri, 15 Jan 2010 10:58:14 GMT</pubDate>
			<guid>http://domscripting.com/blog/display/124</guid>
			<comments>http://domscripting.com/blog/display/124#comments</comments>
		</item>
		<item>
			<title>Fully Frontalled</title>
			<link>http://domscripting.com/blog/display/123</link>
			<description><![CDATA[<p>Last Friday, the <a href="http://2009.full-frontal.org/">Full Frontal conference</a> took place here in Brighton. It was like having the circus come to town &#8230;but with fewer acrobatics and more closures.</p>

<p>In short, it was superb. I&#8217;ve been to quite a few conferences in my time so I can get pretty jaded but this was a textbook lesson in how to put on a great event.</p>

<p>The content was top-notch. The fact that the whole day was focused on a single technology gave it a very cohesive feel. That said, there was still a wide variety of topics covered: mobile, accessibility, performance, and even server-side JavaScript. The intensity and complexity increased as the day went on, finishing with Simon <a href="http://simonwillison.net/2009/Nov/23/node/">blowing everyone&#8217;s minds</a>.</p>

<p>All the speakers were great but special mention must go to <span class="vcard"><a href="http://www.jakearchibald.com/" class="fn url" rel="acquaintance met colleague">Jake Archibald</a></span> from the BBC. His talk on JavaScript performance was thoroughly entertaining <em>and</em> informative &#8212;a very tricky combination to do successfully. He made the presentation look effortless but there must have been months of preparation involved. That kind of spontaneity takes years of practice.</p>

<p>If you weren&#8217;t lucky enough to make it to Full Frontal, you can check out the speakers&#8217; slides <a href="http://2009.full-frontal.org/">on the website</a> but really, you should have been there.</p>

<p>Congratulations and kudos to <span class="vcard"><a href="http://remysharp.com/" class="fn url" rel="friend met colleague">Remy</a></span> for putting together such a world-class event. I sincerely hope there&#8217;ll be a Full Frontal 2010, but it&#8217;ll be hard to match the standard set by this year&#8217;s conference.</p>
]]></description>
			<pubDate>Wed, 25 Nov 2009 18:22:15 GMT</pubDate>
			<guid>http://domscripting.com/blog/display/123</guid>
			<comments>http://domscripting.com/blog/display/123#comments</comments>
		</item>
		<item>
			<title>November spawned a monster</title>
			<link>http://domscripting.com/blog/display/122</link>
			<description><![CDATA[<p>November is shaping up to be a very busy month for JavaScript.</p>

<p><span class="vevent"><a class="url summary" href="http://fronteers.nl/congres/2009/information">Fronteers 2009</a> is a two-day event in <span class="location">Amsterdam</span> on <abbr class="dtstart" title="2009-11-05">November 5th</abbr> and <abbr class="dtend" title="2009-11-06">6th</abbr>.</span> <span class="vcard"><a href="http://ejohn.org/" class="fn url" rel="acquaintance met colleague">John Resig</a></span> and <span class="vcard"><a href="http://crockford.com/" class="fn url" rel="acquaintance met colleague">Douglas Crockford</a></span>—that alone makes it worth the price of admission.</p>

<p><span class="vevent">Straight after that, <a href="http://jsconf.eu/2009/" class="summary url">JSConf.eu</a> takes place in <span class="location">Berlin</span> on <abbr title="2009-11-07" class="dtstart">November 7th</abbr> and <abbr title="2009-11-08" class="dtstart">8th</abbr>.</span> It’s a tight squeeze but it would possible to go to both events with a train ride in-between. I wonder if that’s what John is going to do; he’s speaking at both conferences.</p>

<p><span class="vevent">But the highlight of the month still looks like being <a href="http://2009.full-frontal.org/" class="url summary">Full Frontal</a> on <abbr class="dtstart" title="2009-11-20">November 20th</abbr>. That’ll be held right here in <span class="location">Brighton</span> which probably explains why I’m kind of biased.</span> But seriously, check out the line-up:</p>

<ul>
<li class="vcard"><a href="http://www.quirksmode.org/" class="fn url" rel="friend met colleague">Peter-Paul Koch</a>,</li>
<li class="vcard"><a href="http://www.wait-till-i.com/" class="fn url" rel="friend met colleague">Christian Heilmann</a>,</li>
<li class="vcard"><a href="http://simonwillison.net/" class="fn url" rel="friend met colleague">Simon Willison</a></li>
</ul>

<p>…and more.</p>

<p>You can still <a href="http://www.stubmatic.com/leftlogic/event/741">grab tickets</a> for the early-price of just one hundred squid.</p>
]]></description>
			<pubDate>Fri, 21 Aug 2009 17:16:26 GMT</pubDate>
			<guid>http://domscripting.com/blog/display/122</guid>
			<comments>http://domscripting.com/blog/display/122#comments</comments>
		</item>
		<item>
			<title>Full Frontal</title>
			<link>http://domscripting.com/blog/display/121</link>
			<description><![CDATA[<p>I remember when I spoke at the first @media conference in London in 2005, mine was the only talk related to JavaScript. Just a few short years later, there was an entire @media spin-off conference devoted to JavaScript: the slightly-inaccurately named @media Ajax. JavaScript has come a long way in the past few years.</p>

<p class="vevent">This year’s be-there-or-be-square JavaScript event is the newly-announced <a href="http://2009.full-frontal.org/" class="summary url">Full Frontal conference</a> to be held at the fantastic <a href="http://www.picturehouses.co.uk/cinema_home_date.aspx?venueId=doyb" class="location">Duke Of York’s Picturehouse in Brighton</a> on <abbr class="dtstart" title="2009-11-20">November 20th</abbr>:</p>

<blockquote>
<dl><dt>full-fron•tal (JavaScript):</dt>
<dd>with nothing concealed or held back.</dd></dl>
</blockquote>

<p>It’s being organised by <span class="vcard"><a href="http://leftlogic.com/" class="fn url" rel="friend met colleague">Remy Sharp</a></span>. Doesn’t this guy ever sleep? Not content with creating <a href="http://jsbin.com/">JS Bin</a> and <a href="http://api.jquery.com/">the JQuery API browser</a>, and writing a book on <a href="http://jqueryfordesigners.com/">jQuery for Designers</a>, now he’s going to organise a conference too.</p>

<p>It looks like being an absolute bargain. A mere £100 will get you a ticket to a day of <em>serious</em> JavaScript talks from some of the smartest people in the business: <span class="vcard"><a href="http://www.wait-till-i.com/" class="fn url" rel="friend met colleague">Christian Heilmann</a></span>, <span class="vcard"><a href="http://www.quirksmode.org/" class="fn url" rel="friend met colleague">Peter-Paul Koch</a></span>, <span class="vcard"><a href="http://www.kryogenix.org/" class="fn url" rel="friend met colleague">Stuart Langridge</a></span>, <span class="vcard"><a href="http://simonwillison.net/" class="fn url" rel="friend met colleague">Simon Willison</a></span>, and more.</p>

<p>Best of all, I don’t have to travel anywhere for this conference as it’s being held in my adopted hometown of Brighton. But if you do have to travel, I can think of now better place to travel to. Come along and I’ll make sure the geeks of Brighton welcome you.</p>

<p><a href="http://www.stubmatic.com/leftlogic/event/741">Tickets are on sale now</a>.</p>
]]></description>
			<pubDate>Mon, 20 Apr 2009 16:09:11 GMT</pubDate>
			<guid>http://domscripting.com/blog/display/121</guid>
			<comments>http://domscripting.com/blog/display/121#comments</comments>
		</item>
		<item>
			<title>Unobtrusify</title>
			<link>http://domscripting.com/blog/display/120</link>
			<description><![CDATA[<p>A little while back, <span class="vcard"><a href="http://www.hawksworx.com/" class="fn url" rel="friend met colleague">Phil Hawksworth</a></span>, a very smart web developer at Osmosoft, created <a href="http://unobtrusify.com/">Unobtrusify.com</a>. It&#8217;s a self-describing and rather lovely-looking ode to semantic markup, appropriate CSS and unobtrusive JavaScript.</p>

<p>You can <a href="http://www.hawksworx.com/journal/2009/01/05/unobtrusify-your-javascript/">read all about how it was made</a> or you can simply <a href="http://unobtrusify.com/">go and play around with it</a> &#8230;go ahead; click on stuff.</p>

<p>Phil&#8217;s co-worker <span class="vcard"><a href="http://blog.whatfettle.com/" class="fn url" rel="friend met colleague">Paul Downey</a></span> is responsible for such printed masterpieces as <a href="http://thewebisagreement.com/"><cite>The Web Is Agreement</cite></a> and <a href="http://www.flickr.com/photos/psd/2918889380/"><cite>The URI Is The Thing</cite></a>. He has now created <a href="http://www.flickr.com/photos/psd/3290532276/">a printable version of Unobtrusify</a>. Head on over to archive.org, <a href="http://www.archive.org/details/Unobtrusify">download and print</a> to your heart&#8217;s content.</p>

<p>Now I just need to find some sticky material so I can slap my copy up next to my desk.</p>
]]></description>
			<pubDate>Wed, 18 Feb 2009 17:23:47 GMT</pubDate>
			<guid>http://domscripting.com/blog/display/120</guid>
			<comments>http://domscripting.com/blog/display/120#comments</comments>
		</item>
		<item>
			<title>Happy birthday, jQuery!</title>
			<link>http://domscripting.com/blog/display/119</link>
			<description><![CDATA[<p>jQuery was first released on January 14th, 2006. Now, precisely three revolutions of planet Earth later, <a href="http://docs.jquery.com/Release:jQuery_1.3">jQuery 1.3</a> is out.</p>

<p>This release features some significant <a href="http://blog.jquery.com/2009/01/14/jquery-13-and-the-jquery-foundation/">changes and improvements</a>. There’s all the usual speed improvements, of course, but what I like in particular is the way that jQuery is ditching browser sniffing in favour of feature detection. That’s the way to do it.</p>

<p>The way the community is developing is as interesting as the code. <a href="http://sizzlejs.com/">Sizzle</a>, the CSS selector engine inside jQuery, has been spun off into its own standalone project so that it can be used by other libraries and frameworks. Meanwhile, the jQuery project itself is coming under the banner of the <a href="http://conservancy.softwarefreedom.org/">Software Freedom Conservancy</a> to formalise its standing as free and open software.</p>

<p>Congratulations to <span class="vcard"><a href="http://ejohn.org/" rel="friend met colleague" class="url"><abbr title="John Resig" class="fn">John</abbr></a></span> and the rest of the team. Congratulations also to fellow Brightonian <span class="vcard"><a href="http://remysharp.com/" class="url fn" rel="friend met colleague">Remy Sharp</a></span> for putting together the very handy <a href="http://api.jquery.com/">jQuery API browser</a>. The boy done good.</p>
]]></description>
			<pubDate>Wed, 14 Jan 2009 20:55:25 GMT</pubDate>
			<guid>http://domscripting.com/blog/display/119</guid>
			<comments>http://domscripting.com/blog/display/119#comments</comments>
		</item>
		<item>
			<title>Pasty</title>
			<link>http://domscripting.com/blog/display/118</link>
			<description><![CDATA[<p>A <a href="http://en.wikipedia.org/wiki/Pastebin" rel="tag">paste bin</a> is a very handy tool when you&#8217;re working as part of a team, especially if there&#8217;s any remote work involved. Basically, they&#8217;re web-based clipboards where you can paste in snippets of text&#8212;JavaScript, CSS, markup or whatever&#8212;and then share the URL in an email or a chat message (a lot cleaner than pasting code straight into an email or chat window). Often you can specify a life span for the snippet so, for example, if nobody visits the page for a three month period, the URL rots.</p>

<p>At <a href="http://clearleft.com/">Clearleft</a>, we often use <a href="http://pastebin.com/">pastebin.com</a> though I&#8217;ve also used <a href="http://dpaste.com/">dpaste</a> in the past. I like the way that pastebin allows you to create subdomains on the fly: just type in the URL to create it.</p>

<p>These services are great for collaborative debugging but they have one slight flaw when it comes to client-side work. JavaScript and CSS don&#8217;t exist in isolation; they are used to enhance an existing HTML document. So passing around a snippet of JavaScript or CSS might not be much good unless it is accompanied by the corresponding markup.</p>

<p>Enter <a href="http://jsbin.com/">JS Bin</a> from <span class="vcard"><span class="adr"><span class="locality">Brighton</span></span>&#8217;s own <a href="http://remysharp.com/" class="fn url" rel="acquaintance met colleague">Remy Sharp</a></span>, the man behind the superb <a href="http://leftlogic.com/lounge/articles/microformats_bookmarklet/">microformats bookmarklet</a>. This is a paste bin with a twist. As well as being able to share a snippet of JavaScript, you provide the markup that the JavaScript is acting on as well. If you&#8217;ve been sent a JS Bin URL, you can play around with the JavaScript and/or the markup, saving as you go.</p>

<p>There are some other nice touches too, like the ability to include a JavaScript library at the flick of a dropdown. For a proper explanation, be sure to <a href="http://jsbin.com/about">watch the screencast</a> that Remy has recorded.</p>
]]></description>
			<pubDate>Mon, 29 Sep 2008 17:22:35 GMT</pubDate>
			<guid>http://domscripting.com/blog/display/118</guid>
			<comments>http://domscripting.com/blog/display/118#comments</comments>
		</item>
		<item>
			<title>Standalone selector</title>
			<link>http://domscripting.com/blog/display/117</link>
			<description><![CDATA[<p><span class="vcard"><a class="fn url" href="http://ejohn.org/" rel="friend met colleague">John Resig</a></span> is a machine. Not content with dividing his time between working on <a href="http://jquery.com/">jQuery</a> and working on <a href="http://getfirebug.com/">Firebug</a>, he&#8217;s also got another few irons in the fire.</p>

<p>Just for kicks, John has created <a href="http://github.com/jeresig/sizzle/tree/master">a standalone selector engine called Sizzle</a>. It&#8217;s not quite ready for prime time yet but it looks very promising. It uses the CSS syntax that has helped make jQuery such a popular library. Right now, the code is coming in at less than 4<abbr title="Kilobytes">K</abbr>!</p>

<p>I really, really like this modular approach to writing JavaScript. Instead of bloating a library with <em>more</em> features, the components of the library are instead being split into separate standalone pieces. I wonder if the same thing will happen with event handling and effects. Those three actions (selector, event, effect) probably make up 80% of jQuery use cases:</p>

<pre><code>jQuery(selector).event(function() {
 effect();
});
</code></pre>

<p>For an event of a different kind, there&#8217;s a <span class="vevent"><a href="http://events.jquery.com/" class="summary url">jQuery Camp</a> scheduled for <abbr class="dtstart" title="2008-09-28">September 28th</abbr>, the day before The Ajax Experience in <span class="location">Boston</span></span>. The exact location has yet to be determined but given the number of jQuery fanboys out there, I&#8217;m guessing it won&#8217;t be &#8216;round at John&#8217;s house. There&#8217;s a nominal registration fee of $50 to cover lunch. If you use jQuery and you find yourself anywhere on the eastern seaboard of the United States at the end of September, you should probably register now.</p>

<p>In his spare time, John likes to relax by <a href="http://ejohn.org/blog/processingjs/">porting the Processing visualisation language to JavaScript</a>. Freak.</p>
]]></description>
			<pubDate>Mon, 25 Aug 2008 12:44:28 GMT</pubDate>
			<guid>http://domscripting.com/blog/display/117</guid>
			<comments>http://domscripting.com/blog/display/117#comments</comments>
		</item>
		<item>
			<title>The need for speed</title>
			<link>http://domscripting.com/blog/display/116</link>
			<description><![CDATA[<p>Another day, <a href="http://jquery.com/blog/2008/06/04/jquery-126-events-100-faster/">another incremental release of jQuery</a>. This one is sporting 13% faster CSS selectors and 103% faster event handlers.</p>

<p>Meanwhile, as the JavaScript libraries continue to evolve and improve, the browser engines are also focusing on speed improvements. Dave Hyatt and the WebKit gang have announced <a href="http://webkit.org/blog/189/announcing-squirrelfish/">a brand new JavaScript engine called SquirrelFish</a>. This looks like being about 60% faster than the previous WebKit interpreter so you can expect quite a speed boost in the next version of Safari.</p>

<p>If you&#8217;re interested in what happens under the hood with Squirrel Engine, Dave shares some of the philosophical underpinnings:</p>

<blockquote>
  <p>SquirrelFish owes a lot of its design to some of the latest research in the field of efficient virtual machines, including research done by Professor M. Anton Ertl, et al, Professor David Gregg, et al, and the developers of the Lua programming language.</p>
</blockquote>

<p>You can find plenty of gory details on <a href="http://webkit.org/blog/">the Surfin&#8217; Safari blog</a>.</p>
]]></description>
			<pubDate>Wed, 04 Jun 2008 16:57:54 GMT</pubDate>
			<guid>http://domscripting.com/blog/display/116</guid>
			<comments>http://domscripting.com/blog/display/116#comments</comments>
		</item>
		<item>
			<title>Radio on the TV</title>
			<link>http://domscripting.com/blog/display/115</link>
			<description><![CDATA[<p>I was in the illustrious surroundings of <a href="http://www.therissingtonpodcast.co.uk/">Rissington</a> last week to deliver a DOM Scripting workshop. My good friend <cite class="vcard"><a href="http://pixeldiva.co.uk/" rel="friend met colleague" class="url"><abbr title="Ann McMeekin" class="fn">Ann</abbr></a></cite> was in attendance. During the latter part of the workshop — which was deliberately more loosely structured than the rest of the day — she pointed me to a really lovely bit of JavaScript form enhancement.</p>

<p>Take a look at <a href="http://uk.tv.yahoo.com/">the UK and Ireland TV and radio listings on Yahoo</a>. See that search form in the upper right corner? It’s using the standard design pattern of allowing you to specify exactly where you’re searching. But unlike most implementations, this one is built on a rock-solid foundation of semantic markup.</p>

<p><a href="http://nascentguruism.com/journal/search-and-ye-shall-fail">Steve Marshall has the lowdown</a>. Under the hood the form is using radio buttons for choosing where to search. Then, using a combination of JavaScript and CSS, this default representation is augmented to look and behave as desired. Switch off JavaScript and you can still use the search form perfectly well.</p>

<p>What impresses me about this isn’t so much the code (although I’m sure it’s top-notch), it’s the thinking behind the implementation: start with solid semantic markup with good ol’ fashioned form elements for interaction; <em>then</em> think about how it can be enhanced. Nice one, <cite class="vcard"><a href="http://nascentguruism.com/" class="url" rel="friend met colleague"><abbr class="fn" title="Steve Marshall">Steve</abbr></a></cite>.</p>
]]></description>
			<pubDate>Sun, 11 May 2008 15:06:14 GMT</pubDate>
			<guid>http://domscripting.com/blog/display/115</guid>
			<comments>http://domscripting.com/blog/display/115#comments</comments>
		</item>
   </channel>
</rss>