<?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>yonkeltron &#187; JavaScript</title>
	<atom:link href="http://yonkeltron.com/tag/javascript/feed/" rel="self" type="application/rss+xml" />
	<link>http://yonkeltron.com</link>
	<description>Temporary Exile</description>
	<lastBuildDate>Fri, 16 Jul 2010 18:45:41 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>HTML5 has custom data attributes</title>
		<link>http://yonkeltron.com/2010/03/25/html5-has-custom-data-attributes/</link>
		<comments>http://yonkeltron.com/2010/03/25/html5-has-custom-data-attributes/#comments</comments>
		<pubDate>Thu, 25 Mar 2010 15:16:35 +0000</pubDate>
		<dc:creator>Jonathan Magen</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Computing]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://yonkeltron.com/?p=627</guid>
		<description><![CDATA[So, I know that the Microformats project has has varying degrees of success in their endeavor to embed data in HTML such that it does not violate web standards.  As John Resig pointed out, others have used things like XML namespacing in XHTML to achieve similar goals. The most notable usages of this technique are ]]></description>
			<content:encoded><![CDATA[<p>So, I know that the <a href="http://microformats.org/">Microformats</a> project has has varying degrees of success in their endeavor to embed data in HTML such that it does not violate web standards.  As <a href="http://ejohn.org/blog/html-5-data-attributes/">John Resig pointed out</a>, others have used things like XML namespacing in XHTML to achieve similar goals. The most notable usages of this technique are most likely to be found in the <a href="http://www.w3.org/TR/xhtml-rdfa-scenarios/">applications</a> of <a href="http://en.wikipedia.org/wiki/RDFa">RDFa</a>. However, when looking at the new <a href="http://blog.solnic.eu/2009/09/08/unobtrusive-javascript-helpers-in-rails-3">unobtrusive JavaScript helpers</a> in the forthcoming Rails 3, I was tipped off to the huge scope of the new data- attributes in <a href="http://html5.org/">HTML5</a>. The custom data- attributes excite me.</p>
<p>In HTML5, including any arbitrary attribute may be included in any element provided that it is prefixed with data- and doesn&#8217;t interfere with the rest of the standard. Anything. So I can do the following and have it be perfectly valid:</p>
<pre>&lt;div data-panda="bamboo"&gt; Whatever &lt;div&gt;</pre>
<p>How awesome is that?</p>
]]></content:encoded>
			<wfw:commentRss>http://yonkeltron.com/2010/03/25/html5-has-custom-data-attributes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ES5 is finally here, JavaScript geeks rejoice!</title>
		<link>http://yonkeltron.com/2009/12/15/es5-is-finally-here-javascript-geeks-rejoice/</link>
		<comments>http://yonkeltron.com/2009/12/15/es5-is-finally-here-javascript-geeks-rejoice/#comments</comments>
		<pubDate>Wed, 16 Dec 2009 01:03:56 +0000</pubDate>
		<dc:creator>Jonathan Magen</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Computing]]></category>
		<category><![CDATA[F/OSS]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://yonkeltron.com/?p=599</guid>
		<description><![CDATA[So, earlier this week, it was announced that ECMAScript 5 has finally been released. This is a good thing and I caught the highlights on InfoQ. The full draft is a 252 page PDF  beast of a document which covers basically about everything there is to cover. The things which strike me as interesting are ]]></description>
			<content:encoded><![CDATA[<p>So, earlier this week, it was announced that <a href="http://en.wikipedia.org/wiki/ECMAScript#ECMAScript.2C_5th_Edition">ECMAScript 5</a> has finally been released. This is a good thing and I caught the highlights on <a href="http://www.infoq.com/news/2009/12/ecmascript5">InfoQ</a>. The full draft is a <a href="http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf">252 page PDF  beast of a document</a> which covers basically about everything there is to cover. The things which strike me as interesting are the improved Array functions (like map, filter and reduce), some (finally) ways to harden Objects (in the form of freeze and seal) and <a href="http://json.org">JSON</a> in the language. The other big deal which has me excited is the availability of a strict mode which has been spoken about by <a href="http://www.youtube.com/watch?v=hQVTIJBZook">Douglas Crockford in his Google Tech Talk</a> as well in his book <a href="http://amzn.com/0596517742">JavaScript: The Good Parts</a>, which you should buy. Honestly, it makes you appreciate JavaScript so very, very much as D-Crock highlights the best and worst features of JavaScript.</p>
<p>In reality, this has been a big month for JavaScript with Google open sourcing its internal JS toolkit, <a href="http://code.google.com/closure/">Closure</a> along with much attention being paid to to projects like <a href="http://nodejs.org/">NodeJS</a> (for network stuff) and <a href="http://commonjs.org/">CommonJS</a> (for everything else).</p>
]]></content:encoded>
			<wfw:commentRss>http://yonkeltron.com/2009/12/15/es5-is-finally-here-javascript-geeks-rejoice/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Data visualization on a web page</title>
		<link>http://yonkeltron.com/2009/11/01/data-visualization-on-a-web-page/</link>
		<comments>http://yonkeltron.com/2009/11/01/data-visualization-on-a-web-page/#comments</comments>
		<pubDate>Sun, 01 Nov 2009 21:06:07 +0000</pubDate>
		<dc:creator>Jonathan Magen</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Computing]]></category>
		<category><![CDATA[F/OSS]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://yonkeltron.com/?p=588</guid>
		<description><![CDATA[Quickie: Two of my favorite ways to get data visualized on a web page are the Google Chart API and flot, the amazing canvas-based plotting library built on top of jQuery. The Google Chart API provides a rediculously clever way to get high-quality information graphics which are generated on the back of the clearly-amazing Google ]]></description>
			<content:encoded><![CDATA[<p>Quickie: Two of my favorite ways to get data visualized on a web page are the <a href="http://code.google.com/apis/chart/">Google Chart API</a> and <a href="http://code.google.com/p/flot/">flot</a>, the amazing canvas-based plotting library built on top of <a href="http://jquery.com/">jQuery</a>.</p>
<p>The Google Chart API provides a rediculously clever way to get high-quality information graphics which are generated on the back of the clearly-amazing Google infrastructure. You just use the URL layout provided and it sort of just works. All types of charts can be created. It&#8217;s very nice if you&#8217;re willing to take the time to piece together the URLs in the proper format. There <a href="http://keith-wood.name/gChartRef.html">are</a> some <a href="http://www.maxb.net/scripts/jgcharts/include/demo/#1">abstractions</a>, though.</p>
<p>Then there&#8217;s <a href="http://code.google.com/p/flot/">flot</a> (which I&#8217;m told is Swedish for &#8220;pretty&#8221;). Flot is a library written in JavaScript on top of jQuery which produces very nice charts inside a canvas element. The <a href="http://people.iola.dk/olau/flot/examples/">demos are quite gorgeous</a> and it&#8217;s operation seems straightforward enough. As a side note, <a href="http://liftweb.net/">Lift</a> has a <a href="http://scala-tools.org/scaladocs/liftweb/1.0/net/liftweb/widgets/flot/Flot$object.html">built-in flot widget</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://yonkeltron.com/2009/11/01/data-visualization-on-a-web-page/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Good talk about DSL construction in JS</title>
		<link>http://yonkeltron.com/2009/10/11/good-talk-about-dsl-construction-in-js/</link>
		<comments>http://yonkeltron.com/2009/10/11/good-talk-about-dsl-construction-in-js/#comments</comments>
		<pubDate>Mon, 12 Oct 2009 01:25:36 +0000</pubDate>
		<dc:creator>Jonathan Magen</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Computing]]></category>
		<category><![CDATA[Education]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://yonkeltron.com/?p=582</guid>
		<description><![CDATA[Neat talk, should remind everyone about the joys of doing cool stuff in the browser. Plus, it made me think about DSLs in general which is good because of all the Scala goodness I&#8217;ve been messing around with recently. The talk is on Info]]></description>
			<content:encoded><![CDATA[<p>Neat talk, should remind everyone about the joys of doing cool stuff in the browser. Plus, it made me think about DSLs in general which is good because of all the Scala goodness I&#8217;ve been messing around with recently. The <a href="http://www.infoq.com/presentations/dsls-in-javascript">talk is on InfoQ.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://yonkeltron.com/2009/10/11/good-talk-about-dsl-construction-in-js/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Talks I am willing to give</title>
		<link>http://yonkeltron.com/2009/07/20/talks-i-am-willing-to-give/</link>
		<comments>http://yonkeltron.com/2009/07/20/talks-i-am-willing-to-give/#comments</comments>
		<pubDate>Mon, 20 Jul 2009 13:29:22 +0000</pubDate>
		<dc:creator>Jonathan Magen</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Computing]]></category>
		<category><![CDATA[emacs]]></category>
		<category><![CDATA[F/OSS]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://yonkeltron.com/?p=560</guid>
		<description><![CDATA[The following are possible talks I am willing to give at a future SCOSUG meeting. Emacs concurrency (or lack thereof) XSLT for fun and profit Programming with distributed objects in Ruby Unit testing JavaScript That is all]]></description>
			<content:encoded><![CDATA[<p>The following are possible talks I am willing to give at a future <a href="http://scosug.org">SCOSUG</a> meeting.</p>
<ul>
<li>Emacs concurrency (or lack thereof)</li>
<li>XSLT for fun and profit</li>
<li>Programming with distributed objects in Ruby</li>
<li>Unit testing JavaScript</li>
</ul>
<p>That is all.</p>
]]></content:encoded>
			<wfw:commentRss>http://yonkeltron.com/2009/07/20/talks-i-am-willing-to-give/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The trouble with USE</title>
		<link>http://yonkeltron.com/2009/07/15/the-trouble-with-use/</link>
		<comments>http://yonkeltron.com/2009/07/15/the-trouble-with-use/#comments</comments>
		<pubDate>Wed, 15 Jul 2009 18:25:27 +0000</pubDate>
		<dc:creator>Jonathan Magen</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Computing]]></category>
		<category><![CDATA[F/OSS]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Lisp]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Testing]]></category>

		<guid isPermaLink="false">http://yonkeltron.com/?p=553</guid>
		<description><![CDATA[Today, I was caught a little off-guard by a question regarding the USE directive in SQL. While, it stumped me, it did give me pause to think. First and foremost, it occurred to me that part of the reason that I was caught off-guard was because, in the past, I&#8217;ve been advised to stay away ]]></description>
			<content:encoded><![CDATA[<p>Today, I was caught a little off-guard by a question regarding the USE directive in SQL. While, it stumped me, it did give me pause to think. First and foremost, it occurred to me that part of the reason that I was caught off-guard was because, in the past, I&#8217;ve been advised to stay away from USE or similar directives in any language for a variety of reasons. For example, in languages like Ada, a use directive is a perfect way to completely clobber a namespace. Regarding the usage of JavaScript&#8217;s equivalent <code>with</code> operator, guru <a href="http://www.youtube.com/watch?v=hQVTIJBZook">Douglas Crockford has dire warnings</a> about actually writing programs which use it. Note, that the <code>using</code> directive from C#, is equivalent to an <code>import</code> in other languages (Python, Java) or even a <code>require</code> (Lisp, Ruby).</p>
<p>The perils of clobbering namespaces for the sake of convenience in any language are well know. Now, in some languages, a <code>use</code> directive is not always the culprit when namespaces get clobbered. Languages which also have an <code>as</code> clause can be dangerous as well because they obscure the true origin or name of a given object. </p>
<p>Part of the reason is that using USE or one of it&#8217;s friends is dangerous due to the fact that programmers risk forgetting that they used it. This kind of error is not restricted to the USE statement, however. For example, in Lisp, global variables are typically enclosed in asterisks by convention. So what, right? Well, early on in Practical Common Lisp, Peter Seibel points out that redirecting something like *standard-output* to point to another source, it would be all too easy to forget to put it back! Just like it&#8217;s easy to screw up redirection by forgetting to put it back, USE in most languages makes it quite easy to make trivial mistakes. </p>
<p>Now, I am not suggesting that these examples are directly equivalent. I am, however, making the point that, in this day and age, we are well aware of how easy it is to make careless mistakes and USE directives only make it easier. Say we have an example instance of an SQL server and there are a couple of databases in there. We want to work with two of them (called <code>panda</code> and <code>bamboo</code>) each but we&#8217;ve got quite a lot to do with one. For an example such as this, <a href="http://dev.mysql.com/doc/refman/5.0/en/use.html">databases like MySQL, provide USE</a> only to be compatible with <a href="http://en.wikipedia.org/wiki/Sybase#Products">Sybase</a> and even then only as a utility function.</p>
<p>In any case, we&#8217;re going back to the example. We&#8217;re at the prompt and we&#8217;re going to work with with our first database, panda. So to save ourselves trouble, we go forth with a <code>USE panda;</code> and then go about our business. Then, we&#8217;re ready to go ahead and delete a whole bunch of records from bamboo so we run our <code>DELETE * FROM trees;</code> and all should be well, right? WRONG! We forgot to switch to the right database by using <code>USE bamboo;</code> so now we&#8217;re in trouble. While this is a simplistic example, the world would be hard-pressed to find a competent programmer who&#8217;s never been tripped up by the most simple of errors.</p>
<p>It is for this reason that I am wary of USE and it&#8217;s friends. Unless there is a very good reason to USE USE, I suggest that programmers be very careful AS well AS when we USE AS. Together, they can be a tricky combo.</p>
]]></content:encoded>
			<wfw:commentRss>http://yonkeltron.com/2009/07/15/the-trouble-with-use/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Compile JavaScript to Java classes with Rhino</title>
		<link>http://yonkeltron.com/2009/03/24/compile-javascript-to-java-classes-with-rhino/</link>
		<comments>http://yonkeltron.com/2009/03/24/compile-javascript-to-java-classes-with-rhino/#comments</comments>
		<pubDate>Tue, 24 Mar 2009 13:26:54 +0000</pubDate>
		<dc:creator>Jonathan Magen</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Computing]]></category>
		<category><![CDATA[F/OSS]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://yonkeltron.com/?p=519</guid>
		<description><![CDATA[Can you compile JavaScript to Java classes? Why, yes! Yes, you can! Rhino lets you do exactly that. Example here]]></description>
			<content:encoded><![CDATA[<p>Can you compile JavaScript to Java classes? Why, yes! Yes, you can! <a href="https://developer.mozilla.org/en/Rhino_Overview">Rhino</a> lets you do exactly that. <a href="https://developer.mozilla.org/en/Rhino_JavaScript_Compiler">Example here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://yonkeltron.com/2009/03/24/compile-javascript-to-java-classes-with-rhino/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JSLint: Oh, what a wonderful thing</title>
		<link>http://yonkeltron.com/2009/03/15/jslint-oh-what-a-wonderful-thing/</link>
		<comments>http://yonkeltron.com/2009/03/15/jslint-oh-what-a-wonderful-thing/#comments</comments>
		<pubDate>Sun, 15 Mar 2009 16:17:37 +0000</pubDate>
		<dc:creator>Jonathan Magen</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Computing]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://yonkeltron.com/?p=514</guid>
		<description><![CDATA[Just discovered JSLint. It is very good, but it does hurt your feelings somewhat. I intend to use it heavily on my code from now on. Wish there was a stand-alone version, though. Still, it&#8217;s marvelous so use it often]]></description>
			<content:encoded><![CDATA[<p>Just discovered <a href="http://www.jslint.com/">JSLint</a>. It is very good, but it does hurt your feelings somewhat. I intend to use it heavily on my code from now on. Wish there was a stand-alone version, though. Still, it&#8217;s marvelous so use it often.</p>
]]></content:encoded>
			<wfw:commentRss>http://yonkeltron.com/2009/03/15/jslint-oh-what-a-wonderful-thing/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Readability, it matters</title>
		<link>http://yonkeltron.com/2009/03/04/readability-it-matters/</link>
		<comments>http://yonkeltron.com/2009/03/04/readability-it-matters/#comments</comments>
		<pubDate>Wed, 04 Mar 2009 14:34:56 +0000</pubDate>
		<dc:creator>Jonathan Magen</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Computing]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://yonkeltron.com/?p=503</guid>
		<description><![CDATA[Just got a tip from my dear friend and colleague, Red Beard the Pirate, who showed me the wonderful new world of Readability. The guys at Arc90 labs have a live demo and you can put your own readability button on your toolbar to instantly reformat any page for maximum readability. I am pretty blown ]]></description>
			<content:encoded><![CDATA[<p>Just got a tip from my dear friend and colleague,<a href="https://twitter.com/bstt"> Red Beard the Pirate</a>, who showed me the wonderful new world of <a href="http://lab.arc90.com/experiments/readability/">Readability</a>. The guys at <a href="http://lab.arc90.com/">Arc90 labs</a> have a live demo and you can put your own readability button on your toolbar to instantly reformat any page for maximum readability. I am pretty blown away, not going to lie.</p>
]]></content:encoded>
			<wfw:commentRss>http://yonkeltron.com/2009/03/04/readability-it-matters/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>My Ubiquity commands</title>
		<link>http://yonkeltron.com/2009/03/01/my-ubiquity-commands/</link>
		<comments>http://yonkeltron.com/2009/03/01/my-ubiquity-commands/#comments</comments>
		<pubDate>Sun, 01 Mar 2009 18:31:51 +0000</pubDate>
		<dc:creator>Jonathan Magen</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Computing]]></category>
		<category><![CDATA[F/OSS]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Ubiquity]]></category>

		<guid isPermaLink="false">http://yonkeltron.com/?p=500</guid>
		<description><![CDATA[I have written some Ruby scripts (using ERB + Rake to build and git to track+publish) to maintain my personal repository of Ubiquity commands. In addition to automagically generating pages for me, there is also a consolidated command feed which contains all of the commands I use personally. You can check out my commands at ]]></description>
			<content:encoded><![CDATA[<p>I have written some Ruby scripts (using <a href="http://en.wikipedia.org/wiki/ERuby">ERB</a> + <a href="http://en.wikipedia.org/wiki/Rake_(software)">Rake</a> to build and <a href="http://en.wikipedia.org/wiki/Git_(software)">git</a> to track+publish) to maintain my personal repository of <a href="http://en.wikipedia.org/wiki/Ubiquity_(Firefox)">Ubiquity</a> commands. In addition to automagically generating pages for me, there is also a consolidated command feed which contains all of the commands I use personally. You can <a href="http://static.yonkeltron.com/ubiquity/">check out my commands at their new location</a> and subscribe to all or some of them as you see fit. Feature requests, improvements, bug reports and patches are welcome.</p>
]]></content:encoded>
			<wfw:commentRss>http://yonkeltron.com/2009/03/01/my-ubiquity-commands/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
