<?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/category/javascript/feed/" rel="self" type="application/rss+xml" />
    <link>http://www.webmonkey.com</link>
    <description>The Web Developer&#039;s Resource</description>
    <lastBuildDate>Fri, 05 Apr 2013 20:20:46 +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>Mozilla, Epic Bring Unreal 3 Gaming Engine to the Web</title>
        <link>http://www.webmonkey.com/2013/03/mozilla-epic-bring-unreal-3-gaming-engine-to-the-web/</link>
        <comments>http://www.webmonkey.com/2013/03/mozilla-epic-bring-unreal-3-gaming-engine-to-the-web/#comments</comments>
        <pubDate>Thu, 28 Mar 2013 13:48:10 +0000</pubDate>

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

        <guid isPermaLink="false">http://www.webmonkey.com/?p=61432</guid>
        		<category><![CDATA[Browsers]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Web Apps]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2013/03/unreal3web-200x100.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2013/03/unreal3web.jpg" alt="Mozilla, Epic Bring Unreal 3 Gaming Engine to the Web" /></div>Mozilla has partnered with Epic Games to bring the Unreal 3 gaming engine to Firefox. The result is a high-end gaming engine that could change the way you think of web-based video games.]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled -->
<div id="attachment_61433" class="wp-caption aligncenter" style="width: 590px"><img src="http://www.webmonkey.com/wp-content/uploads/2013/03/unreal3web.jpg" alt="" title="unreal3web" width="580" height="358" class="size-full wp-image-61433" /><p class="wp-caption-text">Unreal 3 engine in Firefox. <br /><em>Screenshot: Webmonkey</em>.</p></div>
<p>Mozilla has partnered with Epic Games to <a href="https://blog.mozilla.org/blog/2013/03/27/mozilla-is-unlocking-the-power-of-the-web-as-a-platform-for-gaming/">bring the Unreal 3 gaming engine to the web</a>. The result is a high-end gaming engine that could change the way you think of web-based games.</p>
<p>The Unreal 3 engine has previously been ported to Flash, but this is the first time a plugin-free (and therefore mobile-friendly) version has been built for the web.</p>
<p>Mozilla is hoping this project will help turn the web into a more serious gaming platform capable of running top-tier console titles. </p>
<p>Combining WebGL, <a href="https://github.com/kripken/emscripten/wiki">Emscripten</a>, a tool for compiling C++ apps into JavaScript, and the brand new <a href="https://blog.mozilla.org/luke/2013/03/21/asm-js-in-firefox-nightly/">asm.js</a>, Unreal 3 for the web can, according to Mozilla, &#8220;rival native performance.&#8221;</p>
<p>While the Unreal 3 port is incredibly cool, there are still some stumbling blocks on the path to the web as a top-tier gaming platform, not the least of which is that load times for most games would be massive. Think hours, not minutes, to stream the complex graphics from a server to your mobile device &#8212; probably not something anyone particularly wants to sit through.</p>
<p>In other words, while Mozilla and Epic have made some impressive progress bringing Unreal 3 to JavaScript, it&#8217;s still going to be a while before you&#8217;re playing your favorite console games on the web.</p>
<p>However, Mozilla says it is &#8220;working with premium game publishers such as Disney, EA and ZeptoLab who are using the same technology to bring performance optimizations to their top-rated games.&#8221; The company is also hoping other browsers will make it possible to run the Unreal engine in their own JavaScript engines. The Chromium project is already <a href="https://code.google.com/p/v8/issues/detail?id=2599">discussing</a> just how to do it.</p>
<p>For more on the project and to catch a glimpse of Unreal 3 running in the browser, check out the video below.</p>
<p><iframe width="560" height="315" src="http://www.youtube.com/embed/XsyogXtyU9o" frameborder="0" allowfullscreen></iframe></p>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2013/03/mozilla-epic-bring-unreal-3-gaming-engine-to-the-web/feed/</wfw:commentRss>
        <slash:comments>0</slash:comments>

        
    </item>
    
    <item>
        <title>WebRTC Is Hard, Let&#8217;s Go Demoing</title>
        <link>http://www.webmonkey.com/2013/03/webrtc-is-hard-lets-go-demoing/</link>
        <comments>http://www.webmonkey.com/2013/03/webrtc-is-hard-lets-go-demoing/#comments</comments>
        <pubDate>Thu, 21 Mar 2013 17:30:22 +0000</pubDate>

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

        <guid isPermaLink="false">http://www.webmonkey.com/?p=61341</guid>
        		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Web Standards]]></category>
		<category><![CDATA[WebRTC]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2013/03/conversatio-200x100.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2013/03/conversatio.jpg" alt="WebRTC Is Hard, Let&#8217;s Go Demoing" /></div>Barbie would probably give up on programming with WebRTC, but Mozilla isn't. The company has partnered with developers at &#038;yet to create two JavaScript libraries that greatly simplify working with WebRTC -- think jQuery for WebRTC.]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled -->
<div id="attachment_61343" class="wp-caption aligncenter" style="width: 590px"><a href="http://www.webmonkey.com/wp-content/uploads/2013/03/conversatio.jpg"><img src="http://www.webmonkey.com/wp-content/uploads/2013/03/conversatio.jpg" alt="" title="conversatio" width="580" height="481" class="size-full wp-image-61343" /></a><p class="wp-caption-text">Conversat.io, simple video chat in your browser.<br /><em>Image: Screenshot/Webmonkey</em>.</p></div>
<p>WebRTC is changing the web, making possible things which just a few short months ago would have been not just impossible, but nearly unthinkable. Whether it&#8217;s a <a href="http://www.webmonkey.com/2013/02/google-mozilla-team-up-for-skype-killing-video-call-demo/">web-based video chat</a> that requires nothing more than visiting a URL, or <a href="http://www.webmonkey.com/2012/12/mozilla-blends-social-api-webrtc-for-more-social-web-apps/">sharing files with your social networks</a>, WebRTC is quickly expanding the horizons of what web apps can do.</p>
<p><a href="http://www.webrtc.org/">WebRTC</a> is a proposed standard &#8212; currently being refined by the W3C &#8212; with the goal of providing a web-based set of tools that any device can use to share audio, video and data in real time. It&#8217;s still in the early stages, but WebRTC has the potential to supplant Skype, Flash and many device-native apps with web-based alternatives that work on any device.</p>
<p>Cool as WebRTC is, it isn&#8217;t always the easiest to work with, which is why the Mozilla Hacks blog has <a href="https://hacks.mozilla.org/2013/03/making-webrtc-simple-with-conversat-io/">partnered with developers at &amp;yet</a> to create <a href="http://conversat.io/">conversat.io</a>, a demo that shows off a number of tools designed to simplify working with WebRTC.</p>
<p>Conversat.io is a working group voice chat app. All you need to do is point your WebRTC-enabled browser to the site, give your chat room a name and you can video chat with up to 6 people &#8212; no logins, no joining a new service, just video chat in your browser.</p>
<p>Currently only two web browsers support the WebRTC components necessary to run conversat.io, Chrome and Firefox&#8217;s Nightly Channel (and you&#8217;ll need to head to <code>about:config</code> in Firefox to enable the <code>media.peerconnection.enabled</code> preference). As such, while conversat.io is a very cool demo, WebRTC is in its infancy and working with it is sometimes frustrating &#8212; that&#8217;s where the libraries behind the demo come in.</p>
<p>As &amp;yet&#8217;s Henrik Joreteg writes on the Hacks blog, &#8220;the purpose of conversat.io is two fold. First, it’s a useful communication tool&#8230;. Second, it&#8217;s a demo of the <a href="http://simplewebrtc.com/">SimpleWebRTC.js</a> library and the little signaling server that runs it, <a href="https://github.com/andyet/signalmaster">signalmaster</a>.&#8221;</p>
<p>Both tools, which act as wrappers for parts of WebRTC, are designed to simplify the process of writing WebRTC apps &#8212; think jQuery for WebRTC. Both libraries are open source (MIT license) and <a href="https://github.com/HenrikJoreteg/SimpleWebRTC">available on GitHub</a> for tinkering and improving.</p>
<p>If you&#8217;d like to learn more about SimpleWebRTC and signalmaster and see some example code, head on over to the <a href="https://hacks.mozilla.org/2013/03/making-webrtc-simple-with-conversat-io/">Mozilla Hacks blog</a> for the full details.</p>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2013/03/webrtc-is-hard-lets-go-demoing/feed/</wfw:commentRss>
        <slash:comments>0</slash:comments>

        
    </item>
    
    <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>Dropzone.js Adds Drag-and-Drop File Uploads to Any Site</title>
        <link>http://www.webmonkey.com/2013/02/dropzone/</link>
        <comments>http://www.webmonkey.com/2013/02/dropzone/#comments</comments>
        <pubDate>Tue, 26 Feb 2013 20:50:41 +0000</pubDate>

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

        <guid isPermaLink="false">http://www.webmonkey.com/?p=61015</guid>
        		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[JavaScript]]></category>
        <description><![CDATA[New web technologies tend to travel a trajectory that moves from &#8220;amazing demo with fiendishly complex code&#8221;, to &#8220;very cool product feature&#8221; and finally to open source library that takes 10 seconds to add to your page. Today&#8217;s cutting edge demo is tomorrow&#8217;s jQuery plugin. Take drag-and-drop file uploads for instance. The HTML5 File API [...]]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled -->
<p>New web technologies tend to travel a trajectory that moves from &#8220;amazing demo with fiendishly complex code&#8221;, to &#8220;very cool product feature&#8221; and finally to open source library that takes 10 seconds to add to your page. Today&#8217;s cutting edge demo is tomorrow&#8217;s jQuery plugin.</p>
<p>Take drag-and-drop file uploads for instance. The HTML5 File API ostensibly solves one of the most common complaints from web app users &#8212; why can&#8217;t I just drag and drop files like I do everywhere else? Well, then you could, but it <a href="http://www.webmonkey.com/2009/09/the_html5_drag_and_drop_api_is_no_panacea_for_developers/">wasn&#8217;t easy to build</a>.</p>
<p>Then <a href="http://www.webmonkey.com/2010/04/google-turns-to-html5-for-gmails-new-drag-and-drop-attachments/">drag-and-drop file uploads became part of Gmail</a>, which meant it was only a matter of time before a jQuery plugin appeared. In fact there are several jQuery plugins that cover this ground, but one particularly nice newcomer is <a href="https://github.com/enyo/dropzone">Dropzone.js</a>.</p>
<p>Dropzone.js makes it dead simple to add a drag-and-drop file uploader to any website, complete with previews of uploaded files. Dropzone also supports the traditional file-picker uploading as well; you don&#8217;t <em>have</em> to drag and drop. </p>
<p>Dropzone supports most modern web browsers, including Chrome 7+, Firefox 4+, IE 10+ and Safari 5.</p>
<p>If you&#8217;re interested, head on over to GitHub and <a href="https://github.com/enyo/dropzone">grab the source code</a> (obviously the plugin requires jQuery, but there is a version that will work with <a href="http://requirejs.org/">RequireJS</a> as well). Also be sure to read through this <a href="https://news.ycombinator.com/item?id=5247443">Hacker News thread</a> for some similar projects and possible alternatives for those who&#8217;d like to avoid the jQuery overhead.</p>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2013/02/dropzone/feed/</wfw:commentRss>
        <slash:comments>0</slash:comments>

        
    </item>
    
    <item>
        <title>New &#8216;Registry&#8217; Hopes to Simplify Finding, Sharing jQuery Plugins</title>
        <link>http://www.webmonkey.com/2013/01/new-registry-hopes-to-simplify-finding-sharing-jquery-plugins/</link>
        <comments>http://www.webmonkey.com/2013/01/new-registry-hopes-to-simplify-finding-sharing-jquery-plugins/#comments</comments>
        <pubDate>Thu, 17 Jan 2013 16:47:45 +0000</pubDate>

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

        <guid isPermaLink="false">http://www.webmonkey.com/?p=60625</guid>
        		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[jQuery]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2013/01/query_w.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2013/01/query_w.jpg" alt="New &#8216;Registry&#8217; Hopes to Simplify Finding, Sharing jQuery Plugins" /></div>The popular jQuery JavaScript framework has announced a new plugins site designed to make it easier to share and find useful jQuery plugins. Unfortunately, while there are some better back end tools for developers, finding the right plugin isn't much easier than it was before.]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled --><div id="attachment_58498" class="wp-caption alignleft" style="width: 360px"><a href="http://www.flickr.com/photos/verzo/3712406837/"><img src="http://www.webmonkey.com/wp-content/uploads/2012/08/frogking.jpg" alt="" title="frogking" width="350" height="252" class="size-full wp-image-58498" /></a><p class="wp-caption-text">JQuery, the crown king of JavaScript. <em>Image: <a href="http://www.flickr.com/photos/verzo/3712406837/">Roberto Verzo/Flickr</a></em>.</p></div>
<p>JQuery greatly simplifies working with JavaScript, particularly for newcomers, and that has long made it a favorite with developers &#8212; roughly <a href="http://www.webmonkey.com/2012/08/survey-finds-jquery-library-running-on-half-of-all-websites/">half of all sites on the web are using it</a>. However, while jQuery itself simplifies things, finding plugins on the site has always been a huge pain. </p>
<p>In an effort to clean up and simplify the process of finding the perfect jQuery plugin, the jQuery project is launching a new site, the <a href="http://plugins.jquery.com/">jQuery Plugin Registry</a>. In a blog post <a href="http://blog.jquery.com/2013/01/16/announcing-the-jquery-plugin-registry/">announcing the new registry site</a>, developer Adam Sontag says that the goal is to &#8220;reduce the&#8230; obstacles for plugin developers and consumers.&#8221; </p>
<p>Based on what&#8217;s currently available, the jQuery project has done a good job of building better back end tools for developers, but finding a plugin isn&#8217;t much easier than it was before.</p>
<p>Most of what&#8217;s new about the jQuery Plugin Registry is for plugin developers &#8212; namely Git support and very nice integration with GitHub. Developers can now publish their code to GitHub and the jQuery Plugin Registry will automatically be updated. </p>
<p>Unfortunately for those trying to find the perfect plugin to use on their sites the new Registry site has little in the way of new tools. </p>
<p>As with the old, much-neglected plugin site, each plugin gets a basic page that offers a download link as well as a link to past versions, documentation, the issue tracker, and the source code repository. However, actually browse through the site and you&#8217;ll discover that much of that info is often missing. Most jQuery plugins offer little in the way of documentation and the site still lacks any kind of preview images (if available there will be a link to a demo page).</p>
<p>The new site also ignores what could be helpful social tools &#8212; there are no user ratings, download counts, likes or anything else to indicate whether or not people actually like using a plugin. Of course now that the plugin registry code is on GitHub, it&#8217;s easy to see that issues regarding the <a href="https://github.com/jquery/plugins.jquery.com/issues/33">site search</a> and <a href="https://github.com/jquery/plugins.jquery.com/issues/21">lack of screenshots</a> have already been filed. When, or even if, they&#8217;ll ever make it to the site remains to be seen. For now the new site remains rough around the edges.</p>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2013/01/new-registry-hopes-to-simplify-finding-sharing-jquery-plugins/feed/</wfw:commentRss>
        <slash:comments>1</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>Find Tweetable Sentences With &#8216;Save Publishing&#8217;</title>
        <link>http://www.webmonkey.com/2013/01/find-tweetable-sentences-with-save-publishing/</link>
        <comments>http://www.webmonkey.com/2013/01/find-tweetable-sentences-with-save-publishing/#comments</comments>
        <pubDate>Fri, 04 Jan 2013 21:10:38 +0000</pubDate>

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

        <guid isPermaLink="false">http://www.webmonkey.com/?p=60443</guid>
        		<category><![CDATA[Blog Publishing]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[bookmarklet]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2013/01/savepublishing-200x100.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2013/01/savepublishing.jpg" alt="Find Tweetable Sentences With &#8216;Save Publishing&#8217;" /></div>Depending on who you ask "Save Publishing" is either the worst thing to ever happen to the web or a handy little bookmarklet for people who frequently post interesting links to Twitter.]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled -->
<p><div id="attachment_60446" class="wp-caption aligncenter" style="width: 590px"><a href="http://www.webmonkey.com/wp-content/uploads/2013/01/savepublishing.jpg"><img src="http://www.webmonkey.com/wp-content/uploads/2013/01/savepublishing.jpg" alt="" title="savepublishing" width="580" height="415" class="size-full wp-image-60446" /></a><p class="wp-caption-text">This post with tweetable sentences highlighted by Save Publishing. <em>Image: Screenshot/Webmonkey</em></p></div>Ever wish you could quickly scan an article and find all the 140 character or less sentences so you could figure out which to post to Twitter? The idea had never occurred to me, but now that I&#8217;ve used the Save Publishing bookmarklet I have to admit, it actually is pretty darn useful.</p>
<p><a href="http://www.savepublishing.com/">Save Publishing</a> is a bookmarklet that highlights any tweetable sentences on a given page. You can grab it from <a href="http://www.savepublishing.com/">SavePublishing.com</a> or head over to <a href="https://github.com/ftrain/savepublishing">GitHub</a> if you&#8217;d like to see the source (Save Publishing is written in CoffeeScript).</p>
<p>The bookmarklet is the work of former Harper&#8217;s editor Paul Ford, perhaps better known as <a href="https://twitter.com/ftrain">@ftrain</a>. Ford says the project started as a joke, but &#8220;now it&#8217;s serious and I use it all day.&#8221; </p>
<p>I expected the novelty to wear off quickly after I used it a few times, but now it&#8217;s been a few days and I still find myself using it. Sometimes the faintly ridiculous manages to become useful. What would make Save Publishing more useful is a way to use it within Twitter clients like Tweetbot, but thus far that&#8217;s not possible.</p>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2013/01/find-tweetable-sentences-with-save-publishing/feed/</wfw:commentRss>
        <slash:comments>0</slash:comments>

        
    </item>
    
    <item>
        <title>Add an HTML5 Webcam to Your Site With Photobooth.js</title>
        <link>http://www.webmonkey.com/2012/12/add-an-html5-webcam-to-your-site-with-photobooth-js/</link>
        <comments>http://www.webmonkey.com/2012/12/add-an-html5-webcam-to-your-site-with-photobooth-js/#comments</comments>
        <pubDate>Wed, 05 Dec 2012 20:14:53 +0000</pubDate>

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

        <guid isPermaLink="false">http://www.webmonkey.com/?p=60207</guid>
        		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Web Standards]]></category>
		<category><![CDATA[WebRTC]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2012/12/photoboothmonkey-200x100.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2012/12/photoboothmonkey.jpg" alt="Add an HTML5 Webcam to Your Site With Photobooth.js" /></div>Photobooth.js makes it dead simple to add a Photobooth-style webcam to any webpage. The magic behind Photobooth.js is WebRTC, a set of APIs being developed by the W3C that allow web developers to access device hardware -- your camera, microphone, accelerometer and more. ]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled -->
<p><div id="attachment_60208" class="wp-caption aligncenter" style="width: 590px"><a href="http://www.webmonkey.com/wp-content/uploads/2012/12/photoboothmonkey.jpg"><img src="http://www.webmonkey.com/wp-content/uploads/2012/12/photoboothmonkey.jpg" alt="" title="photoboothmonkey" width="580" height="371" class="size-full wp-image-60208" /></a><p class="wp-caption-text">WT Monkey is in your photobooth.js, changin&#8217; hues. <em>Image: Screenshot/Webmonkey</em></p></div>The big web development news for 2013 is shaping up to be <a href="https://developer.mozilla.org/en-US/docs/WebRTC">WebRTC</a>, a set of APIs being developed by Mozilla, Google and others at the W3C that allows web developers to access device hardware &#8212; your camera, microphone, accelerometer and so on. Even now hardly a day goes by without <a href="www.webmonkey.com/2012/12/mozilla-blends-social-api-webrtc-for-more-social-web-apps/">a new demo showcasing WebRTC</a> in some way.</p>
<p>The latest WebRTC hotness to catch our eye is <a href="http://wolframhempel.com/2012/12/02/photobooth-js/">developer Wolfram Hempel&#8217;s Photobooth.js</a>, a JavaScript library for working with a device&#8217;s camera. <a href="http://wolframhempel.github.com/photobooth-js/#Photobooth">Photobooth.js</a> allows users to take pictures directly on your website, for example, to add an avatar. It also acts a bit like the OS X Photobooth app, offering real-time adjustments for hue, saturation and brightness (one word of warning, hue can really slow down Firefox).</p>
<p>Want to add a Photobooth-style camera app to your site? Just <a href="https://github.com/WolframHempel/photobooth-js">download Photobooth.js</a> and add this code to your page:</p>
<pre class="brush: js">
myPhotobooth = new Photobooth( document.getElementById( "container" ) ); 
</pre>
<p>That&#8217;s it. Of course there&#8217;s a little more to do if you actually want to <em>do</em> something with your newly instantiated Photobooth &#8212; like capture images or resize and save them. But Photobooth.js makes the whole process pretty simple; see <a href="http://wolframhempel.github.com/photobooth-js/#Usage">the documentation</a> for more details.</p>
<p>Photobooth.js works in current versions of Chrome, Firefox, Opera, and any other browser that supports the WebRTC <code>getUserMedia</code> method. You can see a complete list of browsers that support <code>getUserMedia</code> over on <a href="http://caniuse.com/#search=getUserMedia">caniuse</a>. </p>
<p>Hempel&#8217;s code is <a href="https://github.com/WolframHempel/photobooth-js">available on GitHub</a> (BSD license) and can be used as a standalone app or a JQuery plugin.</p>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2012/12/add-an-html5-webcam-to-your-site-with-photobooth-js/feed/</wfw:commentRss>
        <slash:comments>1</slash:comments>

        
    </item>
    
    <item>
        <title>&#8216;Tis the Season &#8230; To Write Better Code</title>
        <link>http://www.webmonkey.com/2012/12/tis-the-season-to-write-better-code/</link>
        <comments>http://www.webmonkey.com/2012/12/tis-the-season-to-write-better-code/#comments</comments>
        <pubDate>Tue, 04 Dec 2012 18:37:29 +0000</pubDate>

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

        <guid isPermaLink="false">http://www.webmonkey.com/?p=60172</guid>
        		<category><![CDATA[APIs]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Tutorials]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2012/12/advent-200x100.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2012/12/advent.jpg" alt="&#8216;Tis the Season &#8230; To Write Better Code" /></div>Get into the holiday spirit with advent calendars for web nerds -- 24 tutorials to tide you through the holiday season.]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled --><div id="attachment_60173" class="wp-caption alignleft" style="width: 235px"><img src="http://www.webmonkey.com/wp-content/uploads/2012/12/advent.jpg" alt="" title="advent" width="225" height="300" class="size-full wp-image-60173" /><p class="wp-caption-text"><em>Image: <a href="http://www.instructables.com/image/FO0Y4APFOHTTVO7">Instructables, Altoids Advent Calendar/CC</a></em>.</p></div>
<p>The holidays are here and for web nerds that means only one thing &#8212; another wave of advent tutorials is hitting the web.</p>
<p>It doesn&#8217;t feel much like winter right now at the Webmonkey lair, but that&#8217;s okay because we mark the start of the holiday season by the launch of <a href="http://24ways.org/2012/" target="_blank">24Ways</a>, the grand poobah of advent calendars for web nerds. 24Ways has been an annual tradition since 2005, offering 24 articles packed with new tips and tricks showcasing some of the year&#8217;s best new ideas in web development.</p>
<p>This year&#8217;s 24Ways kicked off with a tutorial on <a href="http://24ways.org/2012/html5-video-bumpers/" target="_blank">HTML5 Video &#8220;Bumpers&#8221;</a> by 24Ways founder Drew McLellan. Other articles thus far include how to <a href="http://24ways.org/2012/starting-your-project-on-the-right-foot/" target="_blank">start a project on the right foot</a>, how to <a href="http://24ways.org/2012/being-prepared-to-contribute/" target="_blank">contribute code to the community</a> and Geri Coady&#8217;s excellent article on <a href="http://24ways.org/2012/colour-accessibility/" target="_blank">Color Accessibility</a>.</p>
<p>While 24Ways may be the biggest name in advent tutorials, it&#8217;s not lacking for competition these days. We also recommend the <a href="http://calendar.perfplanet.com/2012/" target="_blank">Performance Calendar</a>, which tackles the often confusing world of website optimization. There&#8217;s also <a href="http://advent2012.digitpaint.nl/" target="_blank">Digitpaint&#8217;s advent calendar</a> which we enjoyed last year and has already published some nice articles this year, including this <a href="http://advent2012.digitpaint.nl/4/" target="_blank">look at CSS filters</a>.</p>
<p>If you&#8217;re missing another favorite, the PHP Advent Calendar, fear not, it has returned, but with a new name and domain: PHP Advent is now <a href="http://webadvent.org/2012/">Web Advent</a>. The name may have changed, but Web Advent offers similarly great content, like this article on <a href="http://webadvent.org/2012/the-gift-of-sharing-what-you-know-by-heather-payne" target="_blank">Sharing What You Know</a> by Heather Payne, the founder of <a href="http://ladieslearningcode.com/" target="_blank">Ladies Learning Code</a>.</p>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2012/12/tis-the-season-to-write-better-code/feed/</wfw:commentRss>
        <slash:comments>0</slash:comments>

        
    </item>
    
    <item>
        <title>Mozilla Blends Social API, WebRTC for More Social Apps</title>
        <link>http://www.webmonkey.com/2012/12/mozilla-blends-social-api-webrtc-for-more-social-web-apps/</link>
        <comments>http://www.webmonkey.com/2012/12/mozilla-blends-social-api-webrtc-for-more-social-web-apps/#comments</comments>
        <pubDate>Mon, 03 Dec 2012 17:35:55 +0000</pubDate>

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

        <guid isPermaLink="false">http://www.webmonkey.com/?p=60150</guid>
        		<category><![CDATA[Browsers]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Web Standards]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[WebRTC]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2012/12/mozilla_w.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2012/12/mozilla_w.jpg" alt="Mozilla Blends Social API, WebRTC for More Social Apps" /></div>Mozilla's latest effort to bring the social web to Firefox taps the company's fledgling Social API to create a demo that puts real-time video calls, files sharing and chat right in the browser. It's one part Skype, one part Facebook and all parts open web.]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled -->
<p><iframe width="580" height="326" src="http://www.youtube.com/embed/S6-rAv6bU8Q" frameborder="0" allowfullscreen></iframe></p>
<p>Mozilla is making good on its promise to take its fledgling Social API beyond the simple Facebook integration it <a href="http://www.webmonkey.com/2012/11/mozilla-brings-social-to-the-browser-with-firefox-17/">showcased for the launch of Firefox 17</a>. In fact, the company&#8217;s <a href="https://blog.mozilla.org/futurereleases/2012/11/30/webrtc-makes-social-api-even-more-social/">newest Social API demo</a> removes the need for social websites entirely, tapping emerging web standards to create a real-time video calling, data sharing app &#8212; one part Skype, one part Facebook, all parts web-native.</p>
<p>The direct peer-to-peer video calls and file sharing features come from <a href="https://developer.mozilla.org/en-US/docs/WebRTC">WebRTC</a>, a <a href="http://www.w3.org/TR/webrtc/">proposed web standard</a> that Mozilla and others are working on in conjunction with the W3C. The RTC in WebRTC stands for Real-Time Communications, and the core of WebRTC is the <code>getUserMedia</code> JavaScript API, which gives the browser access to hardware features like the camera and microphone. </p>
<p>Much of the enthusiasm around WebRTC comes from the fact that it enables web apps to do many of the same things that, without WebRTC support, require platform-native APIs. WebRTC will help developers build web apps that can compete with native apps, but it has other tricks up its sleeve &#8212; like a whole new way to connect with your friends on the web.</p>
<p>&#8220;While many of us are excited about WebRTC because it will enable several cool gaming applications and improve the performance and availability of video conferencing apps, WebRTC is proving to be a great tool for social apps,&#8221; writes Mozilla&#8217;s Maire Reavy on the <a href="https://blog.mozilla.org/futurereleases/2012/11/30/webrtc-makes-social-api-even-more-social/">Mozilla blog</a>.</p>
<p>Reavy goes on to paint a picture of seamless social sharing through WebRTC and Mozilla&#8217;s Social API:</p>
<blockquote>
<p>Sometimes when you&#8217;re chatting with a friend, you just want to click on their name and see and talk with them in real-time. Imagine being able to do that without any glitches or hassles, and then while talking with them, easily share almost anything on your computer or device: vacation photos, memorable videos &#8212; or even just a link to a news story you thought they might be interested in &#8212; simply by dragging the item into your video chat window.</p>
</blockquote>
<p>Mozilla&#8217;s Social API-WebRTC mashup goes beyond previous demos, using a new WebRTC feature, one which Firefox is the first to support, DataChannels. DataChannels offer a way to send data from one WebRTC-enabled browser to another. DataChannels can send pretty much any data the browser can access, be it images, videos, webpages or local files. </p>
<p>For more details on how the DataChannel API works, check out <a href="https://hacks.mozilla.org/2012/11/progress-update-on-webrtc-for-firefox-on-desktop/">this earlier post</a> on the Mozilla Hacks blog. If you&#8217;d like to see exactly what&#8217;s happening behind the scenes of Mozilla&#8217;s Social API-WebRTC demo, the code is <a href="https://github.com/anantn/socialapi-demo">available on GitHub</a>.</p>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2012/12/mozilla-blends-social-api-webrtc-for-more-social-web-apps/feed/</wfw:commentRss>
        <slash:comments>2</slash:comments>

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