<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
    xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:wfw="http://wellformedweb.org/CommentAPI/"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:atom="http://www.w3.org/2005/Atom"
    xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    >

<channel>
    <title>Webmonkey &#187; JavaScript</title>
    <atom:link href="http://www.webmonkey.com/tag/javascript/feed/" rel="self" type="application/rss+xml" />
    <link>http://www.webmonkey.com</link>
    <description>The Web Developer&#039;s Resource</description>
    <lastBuildDate>Mon, 06 May 2013 17:29:19 +0000</lastBuildDate>
    <language>en-US</language>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <generator>http://wordpress.org/?v=3.4.2</generator>
    
    <item>
        <title>How to Dynamically Generate a Table of Contents</title>
        <link>http://www.webmonkey.com/2013/03/how-to-dynamically-generate-a-table-of-contents/</link>
        <comments>http://www.webmonkey.com/2013/03/how-to-dynamically-generate-a-table-of-contents/#comments</comments>
        <pubDate>Thu, 21 Mar 2013 14:43:47 +0000</pubDate>

                <dc:creator>Scott Gilbertson</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=61350</guid>
        		<category><![CDATA[JavaScript]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2013/03/toc-200x100.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2013/03/toc.jpg" alt="How to Dynamically Generate a Table of Contents" /></div>One of the great things about structured content like HTML is that you can manipulate the structure to generate little extras like a list of links or a table of contents. With long form writing making something of a comeback in the last year or so, we&#8217;ve started to notice more tables of contents on [...]]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled -->
<p><div id="attachment_61351" class="wp-caption aligncenter" style="width: 590px"><a href="https://secure.flickr.com/photos/58558794@N07/5712937716/"><img src="http://www.webmonkey.com/wp-content/uploads/2013/03/toc.jpg" alt="" title="toc" width="580" height="325" class="size-full wp-image-61351" /></a><p class="wp-caption-text"><em>Image: <a href="https://secure.flickr.com/photos/58558794@N07/5712937716/">Penn Provenance Project/Flickr</a></em></p></div>One of the great things about structured content like HTML is that you can manipulate the structure to generate little extras like a list of links or a table of contents. With <a href="http://longreads.com/">long form writing</a> making something of a comeback in the last year or so, we&#8217;ve started to notice more tables of contents on the web, offering a quick way to jump down the page to the sections you want to read. Check out developer <a href="http://stevelosh.com/blog/2012/10/the-homely-mutt/">Steve Losh&#8217;s blog for a great example</a> of a table of contents.</p>
<p>Some sites no doubt generate their TOCs by hand, or assemble them server-side somewhere in the CMS, but building a table of contents doesn&#8217;t need to be complex or low level. In fact, so long as your HTML is well structured, you can easily generate a table of contents on the fly, using JavaScript.</p>
<p>Chris Coyier, of CSS-Tricks fame, recently posted a nice tutorial <a href="http://css-tricks.com/automatic-table-of-contents/">walking you through the process of creating a table of contents</a> like the one used on Coyier&#8217;s <a href="http://blog.codepen.io/documentation/pro-features/professor-mode/">CodePen site</a>. The tutorial uses jQuery, but, with a little tinkering, you should be able to adapt the code to work with your favorite JavaScript library (or no library at all).</p>
<p>Here&#8217;s Coyier&#8217;s take on the benefits of using a dynamically generated table of contents:</p>
<blockquote>
<ol>
<li>It&#8217;s easier &#8211; write the JavaScript once and it can create the table of contents on every page you need it.</li>
<li>It&#8217;s more reliable &#8211; the JavaScript isn&#8217;t subject to authoring errors.</li>
<li>It&#8217;s still accessible &#8211; A table of contents is good for the general concept of accessibility, but it is a bonus (not having it doesn&#8217;t ruin the page) and nearly all screen readers run JavaScript.</li>
</ol>
</blockquote>
<p>For all the code, and a detailed explanation of what&#8217;s going on, head on over to <a href="http://css-tricks.com/automatic-table-of-contents/">CSS-Tricks</a>.</p>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2013/03/how-to-dynamically-generate-a-table-of-contents/feed/</wfw:commentRss>
        <slash:comments>0</slash:comments>

        
    </item>
    
    <item>
        <title>Emulator Brings the Bygone Era of Amiga to the Web</title>
        <link>http://www.webmonkey.com/2013/01/emulator-brings-the-bygone-era-of-amiga-to-the-web/</link>
        <comments>http://www.webmonkey.com/2013/01/emulator-brings-the-bygone-era-of-amiga-to-the-web/#comments</comments>
        <pubDate>Fri, 11 Jan 2013 21:04:23 +0000</pubDate>

                <dc:creator>Scott Gilbertson</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=60543</guid>
        		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Games]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2013/01/pinballdreams-200x100.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2013/01/pinballdreams.jpg" alt="Emulator Brings the Bygone Era of Amiga to the Web" /></div>The Scripted Amiga Emulator puts a circa 1980 Commodore Amiga in your web browser using only HTML5 and JavaScript.]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled -->
<p><div id="attachment_60544" class="wp-caption aligncenter" style="width: 590px"><a href="http://www.webmonkey.com/wp-content/uploads/2013/01/pinballdreams.jpg"><img src="http://www.webmonkey.com/wp-content/uploads/2013/01/pinballdreams.jpg" alt="" title="pinballdreams" width="580" height="399" class="size-full wp-image-60544" /></a><p class="wp-caption-text">Amiga pinball wizard.</p></div>Miss your <a href="https://en.wikipedia.org/wiki/Amigas">Amiga</a>? Now you can play <em>Prince of Persia</em>, <em>Pinball Dreams</em> and other Amiga hits right in your web browser thanks to the <a href="http://scriptedamigaemulator.net/">Scripted Amiga Emulator</a>, an Amiga emulator written entirely in JavaScript and HTML5.</p>
<p>To view the emulator, which was written by developer Rupert Hausberger, you&#8217;ll need a browser with support for WebGL and WebAudio, as well as a few other HTML5 APIs. I tested the emulator in the latest version of both Chrome and Firefox and it worked just fine.</p>
<p>If you&#8217;d like to see the code behind the Scripted Amiga Emulator, head on over to <a href="https://github.com/naTmeg/ScriptedAmigaEmulator">GitHub</a>.</p>
<p>Happy Friday afternoon time wasting.</p>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2013/01/emulator-brings-the-bygone-era-of-amiga-to-the-web/feed/</wfw:commentRss>
        <slash:comments>0</slash:comments>

        
    </item>
    
    <item>
        <title>Better JavaScript Development With &#8216;JSTerm&#8217; for Firefox</title>
        <link>http://www.webmonkey.com/2012/09/supercharge-your-javascript-development-with-jsterm-for-firefox/</link>
        <comments>http://www.webmonkey.com/2012/09/supercharge-your-javascript-development-with-jsterm-for-firefox/#comments</comments>
        <pubDate>Wed, 05 Sep 2012 16:03:25 +0000</pubDate>

                <dc:creator>Scott Gilbertson</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=58865</guid>
        		<category><![CDATA[Browsers]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[firefox]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2012/09/jsterm-w.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2012/09/jsterm-w.jpg" alt="Better JavaScript Development With &#8216;JSTerm&#8217; for Firefox" /></div>Mozilla developer Paul Rouget's "JSTerm" add-on makes Firefox's new built-in developer tools even more powerful for JavaScript coders.]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled --><iframe width="580" height="435" src="http://www.youtube-nocookie.com/embed/wiDBjsuX5NM?rel=0" frameborder="0" allowfullscreen></iframe></p>
<p>JSTerm, an experimental Firefox add-on for JavaScript developers, has hit version 2.0. </p>
<p>The <a href="https://addons.mozilla.org/en-US/firefox/addon/javascript-terminal/versions/">JSTerm Firefox add-on</a> &#8212; not to be confused with the <a href="http://www.webmonkey.com/2010/09/html5-telnet-emulator-conjures-the-pre-web-past/">HTML5 Telnet Emulator</a> by the same name &#8212; adds a &#8220;jsterm&#8221; button to Firefox&#8217;s Developer Toolbar. Click the button and you&#8217;ll get a JavaScript terminal for live coding, prototyping and quick JavaScript experiments. JSTerm behaves like a typical shell terminal with history, tab completion and plenty of key bindings.</p>
<p>Version 2.0 offers performance improvements, a new option to undock the terminal into its own window, global history shared across sessions and support for OS X&#8217;s fullscreen mode.</p>
<p>To try out JSTerm you&#8217;ll need Firefox 16 (currently in the Beta channel) since JSTerm uses the new <a href="https://wiki.mozilla.org/DevTools/Features/GCLI">Graphical Command Line Interface</a> we covered in our <a href="http://www.webmonkey.com/2012/08/latest-firefox-beta-offers-powerful-new-tools-for-web-developers/">Firefox 16 beta review</a>. JSTerm also takes advantage of the built-in Firefox Source Editor to highlight JavaScript and a sandbox to eval JavaScript. </p>
<p>If you&#8217;re thinking there are already several tools for Firefox that cover this ground, well, you&#8217;re right. The built-in Scratchpad and WebConsole both offer similar tools, though neither is quite as nice for quick prototyping and experimenting. Developer favorite Firebug also has a Console for JavaScript developers, but it lacks the nice syntax highlighting you&#8217;ll find in JSTerm. </p>
<p>For more details on JSTerm and a changelog of everything that&#8217;s new in this release, check out Mozilla developer <a href="http://paulrouget.com/e/jsterm.v2/">Paul Rouget&#8217;s blog</a>. To have a look at the code behind JSTerm, head to <a href="https://github.com/paulrouget/firefox-jsterm/">GitHub</a>.</p>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2012/09/supercharge-your-javascript-development-with-jsterm-for-firefox/feed/</wfw:commentRss>
        <slash:comments>0</slash:comments>

        
    </item>
    
    <item>
        <title>Speedy Chrome Tops Google&#8217;s New &#8216;Octane&#8217; JavaScript Test Suite</title>
        <link>http://www.webmonkey.com/2012/08/speedy-chrome-tops-googles-new-octane-javascript-test-suite/</link>
        <comments>http://www.webmonkey.com/2012/08/speedy-chrome-tops-googles-new-octane-javascript-test-suite/#comments</comments>
        <pubDate>Wed, 22 Aug 2012 16:47:01 +0000</pubDate>

                <dc:creator>Scott Gilbertson</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=58593</guid>
        		<category><![CDATA[Browsers]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[chrome]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2012/08/octanegaspumps-200x100.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2012/08/octanegaspumps.jpg" alt="Speedy Chrome Tops Google&#8217;s New &#8216;Octane&#8217; JavaScript Test Suite" /></div>Google has released a new set of JavaScript stress tests designed to push your browser's limits. Perhaps not surprisingly the company's own Chrome web browser takes top honors in the new suite.]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled --><div id="attachment_58595" class="wp-caption alignleft" style="width: 360px"><a href="http://www.flickr.com/photos/baha1210/1050939777/"><img src="http://www.webmonkey.com/wp-content/uploads/2012/08/octanegaspumps.jpg" alt="" title="octanegaspumps" width="350" height="306" class="size-full wp-image-58595" /></a><p class="wp-caption-text">Is your browser running on high octane? <em>Image: <a href="http://www.flickr.com/photos/baha1210/1050939777/">Barbara L. Hanson</a></em>/Flickr</p></div>
<p>The Google Chrome team has added a new set of JavaScript benchmarks to the web, dubbed &#8220;<a href="http://octane-benchmark.googlecode.com/svn/latest/index.html">Octane</a>&#8220;. Octane joins the ranks of other test suites like WebKit&#8217;s SunSpider test and Mozilla&#8217;s <a href="http://www.webmonkey.com/2010/09/the-kraken-awakes-to-test-your-browsers-javascript-powers/">Kraken</a>.</p>
<p>Google&#8217;s Stefano Cazzulani, Chrome Product Manager, <a href="http://blog.chromium.org/2012/08/octane-javascript-benchmark-suite-for.html">writes on the Chromium blog</a> that, despite a plethora of benchmarks on the web, Google wanted a new suite with &#8220;new benchmarks created from full, unaltered, well-known web applications and libraries.&#8221; The result, <a href="https://developers.google.com/octane/faq">says the company</a>, is a test suite that better reflects performance in &#8220;real web applications.&#8221;</p>
<p>Of course what constitutes &#8220;well-known web applications and libraries&#8221; is left to Google&#8217;s Chrome team to decide, and, perhaps not coincidentally, Chrome scores quite well on Octane&#8217;s hand-picked suite. That&#8217;s not to say that Chrome isn&#8217;t actually quite fast, but it does highlight the main problem with browser-maker benchmarks &#8212; the browser vendor creating them almost always seems to score the highest on them.</p>
<p>I ran the latest version of each of the major web browsers through Octane on a 2008 MacBook Pro (average of five runs each):</p>
<ul>
<li>Safari 6: 6007</li>
<li>Chrome 21: 8517</li>
<li>Firefox 14: 5351</li>
<li>Opera 12: 3330</li>
<li>Internet Explorer 9: (tested in VMWare, but IE9 didn&#8217;t render the page.)</li>
<li>Mobile Safari (iPad 3): 553 (incomplete test, typed arrays aren&#8217;t supported in Mobile Safari).</li>
</ul>
<p>Naturally the results will vary depending on your hardware, particularly your graphics card, but in all my tests Chrome won by a large margin.</p>
<p>To see the actual tests &#8212; which include a 2D physics engine, a 3D rendering engine culled from translated C++ along wit PDF.js and other libraries &#8212; head on over to Google Code where you&#8217;ll find <a href="http://code.google.com/p/octane-benchmark/">the source for the entire suite</a>. Also be sure to read through the <a href="https://developers.google.com/octane/faq">FAQ</a> for more info about the thinking behind Octane.</p>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2012/08/speedy-chrome-tops-googles-new-octane-javascript-test-suite/feed/</wfw:commentRss>
        <slash:comments>0</slash:comments>

        
    </item>
    
    <item>
        <title>What if Hemingway Wrote JavaScript?</title>
        <link>http://www.webmonkey.com/2012/08/what-if-hemingway-wrote-javascript/</link>
        <comments>http://www.webmonkey.com/2012/08/what-if-hemingway-wrote-javascript/#comments</comments>
        <pubDate>Mon, 06 Aug 2012 17:41:18 +0000</pubDate>

                <dc:creator>Scott Gilbertson</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=58294</guid>
        		<category><![CDATA[Humor]]></category>
		<category><![CDATA[JavaScript]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2012/08/hemingwaygun-200x100.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2012/08/hemingwaygun.jpg" alt="What if Hemingway Wrote JavaScript?" /></div>Ernest Hemingway probably would have hated programming, but Twitter's Angus Croll imagines a parallel universe where Hemingway, Dickens and others try their hand at writing JavaScript.]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled --><div id="attachment_58296" class="wp-caption aligncenter" style="width: 590px"><a href="http://www.webmonkey.com/wp-content/uploads/2012/08/hemingwaygun.jpg"><img src="http://www.webmonkey.com/wp-content/uploads/2012/08/hemingwaygun.jpg" alt="" title="hemingwaygun" width="580" height="413" class="size-full wp-image-58296" /></a><p class="wp-caption-text">Papa don&#8217;t code. <em>Image: <a href='https://commons.wikimedia.org/wiki/File:Ernest_Hemingway_Aboard_the_Pilar_1935.png'>Wikimedia</a></em>.</p></div></p>
<p>It&#8217;s unlikely Ernest Hemingway would have thought much of programming. Staring at a screen all day hammering out Perl doesn&#8217;t seem like something Papa would have enjoyed. A typewriter in the Cuban sun was more Hemingway&#8217;s bag.  </p>
<p>But what would it have looked like if Hemingway had cracked open Vim and written a few web apps? Angus Croll, an engineer at Twitter, has one answer in a great post that looks at <a href="http://byfat.xxx/if-hemingway-wrote-javascript">how some famous writers might have written code</a>. Here&#8217;s Croll&#8217;s take on how Hemingway might have written JavaScript:</p>
<blockquote>
<p>Code reduced to its essentials with no word or variable wasted. It&#8217;s not fancy; maybe it&#8217;s even a little pedantic &#8212; but that’s the beauty of Hemingway’s writing. No need for elaborate logic or clever variable names. It&#8217;s plain and it&#8217;s clear and it does what it has to &#8212; and nothing more.</p>
</blockquote>
<p>The whole post is funny and well worth a read, particularly if you happen to have come to programming from a background in liberal arts. Other authors Croll covers include Shakespeare, Dickens, Bolaño and my personal favorite, surrealist Andre Breton. Also be sure to check out <a href="http://javascriptweblog.wordpress.com">Croll&#8217;s JavaScript blog</a>.</p>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2012/08/what-if-hemingway-wrote-javascript/feed/</wfw:commentRss>
        <slash:comments>0</slash:comments>

        
    </item>
    
    <item>
        <title>Blow Up the Web With &#8216;Font Bomb&#8217;</title>
        <link>http://www.webmonkey.com/2012/07/blow-up-the-web-with-font-bomb/</link>
        <comments>http://www.webmonkey.com/2012/07/blow-up-the-web-with-font-bomb/#comments</comments>
        <pubDate>Fri, 06 Jul 2012 17:20:37 +0000</pubDate>

                <dc:creator>Scott Gilbertson</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=57882</guid>
        		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Humor]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[CSS Transforms]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2012/07/fontbombwired-200x100.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2012/07/fontbombwired.jpg" alt="Blow Up the Web With &#8216;Font Bomb&#8217;" /></div>Need to vent some frustration on the web? Font Bomb is a fun little bookmarklet that lets you "blow up" text on your least favorite web pages.]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled --><div id="attachment_57887" class="wp-caption aligncenter" style="width: 590px"><a href="http://www.webmonkey.com/wp-content/uploads/2012/07/fontbombwired.jpg"><img src="http://www.webmonkey.com/wp-content/uploads/2012/07/fontbombwired.jpg" alt="" title="fontbombwired" width="580" height="415" class="size-full wp-image-57887" /></a><p class="wp-caption-text">Wired.com Font Bombed. <em>Image: Screenshot/Webmonkey</em>.</p></div></p>
<p>We&#8217;ve already showed you how to <a href="http://www.webmonkey.com/2010/09/kick-ass-bookmarklet-turns-the-web-into-asteroids/">turn any webpage into a game of <em>Asteroids</em></a>; now you can add Font Bomb to the list of ways to destroy text of the web.</p>
<p><a href="http://fontbomb.ilex.ca/">Font Bomb</a> is a fun little JavaScript bookmarklet you can use to plant bombs all around a webpage. Just drag the bookmarklet to your bookmarks bar and then head to a page you want to destroy. Click the bookmarklet and then start clicking anywhere on the page to plant bombs. </p>
<p>Then, thanks to a little magic from CSS 2D Transforms, the text starts flying &#8212; perfect for a little Friday afternoon amusement. (It&#8217;s also not a half-bad way to take out some frustration on trolls: Don&#8217;t feed them, just blow up what they wrote and move on.)</p>
<p>Font Bomb was created by <a href="http://www.ilex.ca/">Philippe-Antoine Lehoux</a>. The code is <a href="https://github.com/plehoux/fontBomb/tree/master/src/coffee">available on GitHub</a> (CoffeeScript) and there&#8217;s some <a href="http://news.ycombinator.com/item?id=4208102">discussion on Hacker News</a> if you&#8217;d like to know more.</p>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2012/07/blow-up-the-web-with-font-bomb/feed/</wfw:commentRss>
        <slash:comments>4</slash:comments>

        
    </item>
    
    <item>
        <title>There&#8217;s Nostalgia in the Waters of Lake.js</title>
        <link>http://www.webmonkey.com/2012/04/theres-nostalgia-in-the-waters-of-lake-js/</link>
        <comments>http://www.webmonkey.com/2012/04/theres-nostalgia-in-the-waters-of-lake-js/#comments</comments>
        <pubDate>Wed, 18 Apr 2012 18:24:31 +0000</pubDate>

                <dc:creator>Scott Gilbertson</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=55712</guid>
        		<category><![CDATA[Humor]]></category>
		<category><![CDATA[JavaScript]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2012/04/weboflakes-200x100.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2012/04/weboflakes.jpg" alt="There&#8217;s Nostalgia in the Waters of Lake.js" /></div>Remember the days of Java applets, reflecting "lake" image effects and "under construction" banners? A Javascript library replicating the lake effect from the days of Geocities serves as a reminder of just how far the web has come since then.]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled -->
<p><div id="attachment_55721" class="wp-caption aligncenter" style="width: 590px"><img src="http://www.webmonkey.com/wp-content/uploads/2012/04/weboflakes.jpg" alt="" title="weboflakes" width="580" height="389" /><p class="wp-caption-text">Lake.js: It&#039;s lakes all the way down. <em>Image: <a href='http://alligator.github.com/lake.js/'>Lake.js</a></em></p></div>Remember when the best way to align table cells was with a one-pixel gif? For that matter, remember tables?</p>
<p>Sometimes it&#8217;s easy to forget how far the web has come in the last decade, which is why we like the otherwise somewhat useless <a href="http://alligator.github.com/lake.js/">Lake.js</a>. <a href="https://github.com/Alligator/lake.js">Lake.js</a> is a JQuery plugin that creates a shimmering reflection of an image, an effect that dates from <a href="http://www.webmonkey.com/2010/11/geocities-lives-on-as-massive-torrent-download/">the days of Geocities</a> &#8212; back when the web was nothing but one pixel gifs and under construction banners.</p>
<p>The appeal of Lake.js isn&#8217;t just about nostalgia though, it&#8217;s also a nice reminder that the web no longer needs to rely on terrible Java applets (the main source of cheesy lake reflections in the early days), or any other proprietary technologies to build shimmering lake effects. Today web standards like HTML, CSS and JavaScript can pull off not just lakes made of <code>&lt;canvas&gt;</code>, but things that were, until very recently, almost inconceivable.</p>
<p>Sure some of the web&#8217;s most common tools might still be hacks (CSS floats anyone?), but at least when we want cheesy rippling water we don&#8217;t have to download a 120 MB &#8220;applet&#8221; anymore. </p>
<p>Also, the first person to port Lake.js to pure CSS&#8230; please e-mail us when you&#8217;re done.</p>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2012/04/theres-nostalgia-in-the-waters-of-lake-js/feed/</wfw:commentRss>
        <slash:comments>0</slash:comments>

        
    </item>
    
    <item>
        <title>Mozilla Builds Video Chat App Using Nothing but Web Standards</title>
        <link>http://www.webmonkey.com/2012/04/mozilla-builds-video-chat-using-nothing-but-web-standards/</link>
        <comments>http://www.webmonkey.com/2012/04/mozilla-builds-video-chat-using-nothing-but-web-standards/#comments</comments>
        <pubDate>Mon, 09 Apr 2012 15:26:21 +0000</pubDate>

                <dc:creator>Scott Gilbertson</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=55468</guid>
        		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[Multimedia]]></category>
		<category><![CDATA[Web Standards]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[WebAPI]]></category>
		<category><![CDATA[WebRTC]]></category>
        <description><![CDATA[Mozilla is showing off a demo of what web-based video calls might look like. The entire app is built with HTML and JavaScript, no plugins or app stores necessary.]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled -->
<p><iframe frameborder="0"  width="580" height="300" name="vidly-frame" src="http://s.vid.ly/embeded.html?link=0l0x1b&#038;autoplay=false"><a target='_blank' href='http://vid.ly/0l0x1b'><img src='http://cf.cdn.vid.ly/0l0x1b/poster.jpg' /></a></iframe>Mozilla recently showed off a demo of a video chat app built entirely from web standards. Most of the demo runs on top of the proposed <a href="http://www.w3.org/TR/webrtc/">Web Real Time Communication (WebRTC) standard</a>, the W3C&#8217;s answer to the audio and video streaming capabilities once found only in proprietary plugins like Flash.</p>
<p>Mozilla&#8217;s demo movie shows two users signed in with BrowserID (<a href="http://www.webmonkey.com/2012/02/mozillas-persona-project-wants-to-help-manage-your-online-identity/">recently renamed Persona</a>) start a video chat right in the browser. The Persona features, combined with the <a href="https://github.com/mozilla/socialapi-dev">SocialAPI add-on for Firefox</a>, make the demo browser look a bit like Facebook or other social sites with a &#8220;buddy list&#8221; of currently signed in users available in the sidebar. Select a user from that list and just click the video chat link to start a call.</p>
<p>Currently Mozilla&#8217;s video chat demo requires <a href="https://hg.mozilla.org/projects/alder">an experimental build of Firefox</a> and actually uses &#8220;a custom API intended to simulate the getUserMedia and PeerConnection APIs currently being standardized.&#8221; In other words, video chat in Firefox is still a long way from replacing Skype, but Mozilla does plan to bring at least preliminary support to Firefox later this year.</p>
<p>The short-term goal, <a href="http://hacks.mozilla.org/2012/04/webrtc-efforts-underway-at-mozilla/">according to Mozilla hacker Anant Narayanan</a>, who narrates the video above, is to add WebRTC support to Firefox&#8217;s Nightly channel &#8220;by the end of this quarter.&#8221; Narayanan cautions that in the beginning support may be &#8220;limited to just getUserMedia and not the full PeerConnection.&#8221; </p>
<p>While the demo video focuses on making video calls work in the desktop browser, with help from some other elements in Mozilla&#8217;s larger <a href="https://wiki.mozilla.org/WebAPI">WebAPI project</a> &#8212; which is developing a set of APIs that will allow web apps to better compete with platform-native applications &#8212; web-based video chat could work on any device. We recently <a href="http://www.webmonkey.com/2012/04/picture-better-web-apps-with-mozillas-camera-api/">looked at Mozilla&#8217;s Camera API</a>, which gives developers access to your device’s camera, and, in conjunction with these video chat tools, could theoretically bring video chat to mobile browsers as well.</p>
<p>For more info on the video chat experiment, including the source code for the demo, head over to the <a href="http://hacks.mozilla.org/2012/04/webrtc-efforts-underway-at-mozilla/">Mozilla Hacks blog</a>.</p>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2012/04/mozilla-builds-video-chat-using-nothing-but-web-standards/feed/</wfw:commentRss>
        <slash:comments>0</slash:comments>

        
    </item>
    
    <item>
        <title>Google&#8217;s New &#8216;Dart&#8217; Language to Get a Starring Role in Chrome</title>
        <link>http://www.webmonkey.com/2012/02/googles-new-dart-language-to-get-a-starring-role-in-chrome/</link>
        <comments>http://www.webmonkey.com/2012/02/googles-new-dart-language-to-get-a-starring-role-in-chrome/#comments</comments>
        <pubDate>Fri, 17 Feb 2012 15:14:20 +0000</pubDate>

                <dc:creator>Scott Gilbertson</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=54434</guid>
        		<category><![CDATA[Browsers]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Chromium]]></category>
		<category><![CDATA[Dart]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2012/02/dart-w.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2012/02/dart-w.jpg" alt="Google&#8217;s New &#8216;Dart&#8217; Language to Get a Starring Role in Chrome" /></div>Google has added support for Dart, the company's attempt to improve on JavaScript, to experimental builds of the Chromium web browser. Despite a cool reception from other browser makers, Google says it plans to eventually add Dart support to Chrome proper.]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled -->
<p><img src="http://www.webmonkey.com/wp-content/uploads/2011/10/dartlogo.jpg" />Google has released an experimental version of the Chromium web browser with support for the company&#8217;s new Dart programming language. Dart, which is Google&#8217;s attempt to improve on JavaScript, has thus far not enjoyed much support outside of Google, but the company continues to push forward with its own efforts.</p>
<p>The new development preview version of the Chromium browser, the open source version of Google&#8217;s Chrome browser, contains the Dart Virtual Machine. This release, which Google is calling &#8220;Dartium,&#8221; can be <a href="http://www.dartlang.org/dartium/">downloaded from the Dart language website</a>. At the moment it&#8217;s available only for Mac OS X and Linux. Google says a Windows version is &#8220;coming soon.&#8221; Keep in mind that this is a preview release and intended for developer testing, not everyday use.</p>
<p>Google <a href="http://www.webmonkey.com/2011/10/google-throws-new-dart-programming-language-at-the-web/">originally created Dart</a> to address the shortcomings of JavaScript and ostensibly speed up the development of complex, large-scale web applications.</p>
<p>While there is much programmers might like about Dart, it is, like Microsoft&#8217;s VBScript before it, a nonstandard language from a single vendor created without any regard for the existing web standards process. The new Dartium release is the first browser to include a Dart Virtual Machine and, based on the response from other browser makers to the initial release of Dart, likely the only browser that will ever ship with a Dart VM. For its part Google says it plans to incorporate the experimental Dart VM into Chrome proper in the future.</p>
<p>The company also has a plan for all those browsers that aren&#8217;t jumping on the Dart bandwagon &#8212; a compiler that translates Dart to good old JavaScript. In this scenario Dart ends up somewhat like CoffeeScript, a JavaScript abstraction that makes more sense to some programmers.</p>
<p>For more details on the new Dartium browser and the latest improvements to the Dart VM, be sure to check out the <a href="http://googlecode.blogspot.com/2012/02/tech-preview-of-chromium-with-dart.html">Google Code Blog announcement</a>.</p>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2012/02/googles-new-dart-language-to-get-a-starring-role-in-chrome/feed/</wfw:commentRss>
        <slash:comments>0</slash:comments>

        
    </item>
    
    <item>
        <title>A Rose by Any Other Name Might Smell as Sweet, But it Would Probably Be Larger</title>
        <link>http://www.webmonkey.com/2012/02/a-rose-by-any-other-name-might-smell-as-sweet-but-it-would-probably-be-larger/</link>
        <comments>http://www.webmonkey.com/2012/02/a-rose-by-any-other-name-might-smell-as-sweet-but-it-would-probably-be-larger/#comments</comments>
        <pubDate>Mon, 06 Feb 2012 15:31:47 +0000</pubDate>

                <dc:creator>Scott Gilbertson</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=54172</guid>
        		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[JS1K]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2012/02/js1krose-200x100.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2012/02/js1krose.jpg" alt="A Rose by Any Other Name Might Smell as Sweet, But it Would Probably Be Larger" /></div>The JS1K contest seeks the web's smallest, most impressive JavaScript experiments. This year's love-themed entries include a remarkable 3D rose rendered with less than 1k of code.]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled -->
<p><img src="http://www.webmonkey.com/wp-content/uploads/2012/02/js1krose.jpg" alt="" title="js1krose" width="260" height="269" class="alignleft size-full wp-image-54174" />It may have started as a lark, but the annual <a href="http://js1k.com/">JS1K contest</a> has long since ceased to be a joke. This year&#8217;s contest is already in full swing and notable for a spectacular 3-D drawing of a rose rendered using less than 1,024 bytes of JavaScript. </p>
<p>The JS1K contest seeks the web&#8217;s best JavaScript creations, with one small catch &#8212; the code used must be less than 1k. It might sound insane considering that some JavaScript frameworks &#8212; just the frameworks! &#8212; are over 100k, but since it began several years ago, JS1K&#8217;s experiments have never failed to impress.</p>
<p>One of this year&#8217;s most jaw-dropping efforts to date is developer <a href="http://www.romancortes.com/blog/1k-rose/">Román Cortés 3-D rendering of a rose</a>. Relying on <a href="http://en.wikipedia.org/wiki/Monte_carlo_method">Monte Carlo</a> methods to keep the code size down, Cortés&#8217; code draws a very nicely shaded 3-D rose for the <a href="http://js1k.com/2012-love/">love-themed 2012 edition of JS1K</a>. You can check out <a href="http://js1k.com/2012-love/demo/1022">the live demo</a> on the JS1K website. </p>
<p>One word of warning: Part of what makes Cortés&#8217; rose so small is that much of the heavy lifting is handed off to the processor. The demo code brought my CPU use over 100 percent and kept it pegged there the entire time it was open in Safari. Firefox and Chrome both managed to keep the number down to roughly 93 percent, but suffice it to say that a procedurally generated 3-D rose will tax your CPU.</p>
<p>To see how Cortés created the code behind the rose, be sure to visit his blog which offers a very thorough <a href="http://www.romancortes.com/blog/1k-rose/">tutorial explaining how and why the code works</a>. There&#8217;s also a great write-up on Cortés&#8217; <a href="http://www.romancortes.com/blog/how-i-did-the-1kb-christmas-tree/">previous JS1K effort</a>, a 3-D Christmas tree. Also be sure to check out the <a href="http://js1k.com/2012-love/demos">other submissions to this year&#8217;s JS1K contest</a> on the JS1K website.</p>
<p>If you&#8217;ve got some impressive but terribly small bit of JavaScript code up your sleeve, fear not; the JS1K contest will continue accepting submissions through Wednesday, March 14, 2012. Details on the <a href="http://js1k.com/2012-love/rules">rules and submission process</a> can be found on the JS1K website.</p>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2012/02/a-rose-by-any-other-name-might-smell-as-sweet-but-it-would-probably-be-larger/feed/</wfw:commentRss>
        <slash:comments>4</slash:comments>

        
    </item>
    </channel>
</rss>
