<?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>maxpagels.com &#187; Programming</title>
	<atom:link href="http://www.maxpagels.com/category/programming/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.maxpagels.com</link>
	<description>Est. MMVIII</description>
	<lastBuildDate>Tue, 31 Jan 2012 18:36:48 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
<cloud domain='www.maxpagels.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
		<item>
		<title>FXAA</title>
		<link>http://www.codinghorror.com/blog/2011/12/fast-approximate-anti-aliasing-fxaa.html</link>
		<comments>http://www.maxpagels.com/2011/12/12/fxaa/#comments</comments>
		<pubDate>Mon, 12 Dec 2011 16:01:59 +0000</pubDate>
		<dc:creator>Max Pagels</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[algorithms]]></category>
		<category><![CDATA[antialiasing]]></category>
		<category><![CDATA[fxaa]]></category>

		<guid isPermaLink="false">http://www.maxpagels.com/?p=4416</guid>
		<description><![CDATA[Coding Horror&#8217;s excellent overview of not only FXAA, but SSAA and MSAA as well.]]></description>
			<content:encoded><![CDATA[<p>Coding Horror&#8217;s excellent overview of not only FXAA, but SSAA and MSAA as well.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.maxpagels.com/2011/12/12/fxaa/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dart</title>
		<link>http://www.dartlang.org/</link>
		<comments>http://www.maxpagels.com/2011/10/11/dart/#comments</comments>
		<pubDate>Tue, 11 Oct 2011 16:07:41 +0000</pubDate>
		<dc:creator>Max Pagels</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[dart]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[programminglanguages]]></category>

		<guid isPermaLink="false">http://www.maxpagels.com/?p=4366</guid>
		<description><![CDATA[Google&#8217;s new, optionally typed web programming language that can run in a VM or be translated directly to JavaScript.]]></description>
			<content:encoded><![CDATA[<p>Google&#8217;s new, optionally typed web programming language that can <a href="http://www.dartlang.org/docs/technical-overview/index.html#howtouse">run in a VM or be translated directly to JavaScript</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.maxpagels.com/2011/10/11/dart/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Keymaster.js</title>
		<link>http://mir.aculo.us/2011/09/08/insanely-easy-keyboard-shortcuts-for-your-web-apps-%E2%80%94-keymaster-js/</link>
		<comments>http://www.maxpagels.com/2011/09/09/keymaster-js/#comments</comments>
		<pubDate>Fri, 09 Sep 2011 09:39:17 +0000</pubDate>
		<dc:creator>Max Pagels</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[keymaster]]></category>
		<category><![CDATA[libraries]]></category>

		<guid isPermaLink="false">http://www.maxpagels.com/?p=4257</guid>
		<description><![CDATA[Keymaster is a simple (100 LoC or so) micro-library for defining and dispatching keyboard shortcuts. It has no dependencies on any libraries so you can just drop it in your app and it will work, cross-browser. Thinking of using this on the website.]]></description>
			<content:encoded><![CDATA[<blockquote><p>Keymaster is a simple (100 LoC or so) micro-library for defining and dispatching keyboard shortcuts. It has no dependencies on any libraries so you can just drop it in your app and it will work, cross-browser.</p></blockquote>
<p>Thinking of using this on the website.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.maxpagels.com/2011/09/09/keymaster-js/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Scripting Languages: PHP, Perl, Python, Ruby</title>
		<link>http://hyperpolyglot.org/scripting</link>
		<comments>http://www.maxpagels.com/2011/08/18/scripting-languages-php-perl-python-ruby/#comments</comments>
		<pubDate>Thu, 18 Aug 2011 11:55:40 +0000</pubDate>
		<dc:creator>Max Pagels</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[cheatsheets]]></category>
		<category><![CDATA[perl]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[scripting]]></category>

		<guid isPermaLink="false">http://www.maxpagels.com/?p=4197</guid>
		<description><![CDATA[A side-by-side comparison cheatsheet for scripting languages. Very useful if you&#8217;re familiar with one language and wish to learn another. (via the ever awesome kottke.org)]]></description>
			<content:encoded><![CDATA[<p>A side-by-side comparison cheatsheet for scripting languages. Very useful if you&#8217;re familiar with one language and wish to learn another.</p>
<p>(via the ever awesome <a href="http://kottke.org/11/08/scripting-language-comparisons">kottke.org</a>)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.maxpagels.com/2011/08/18/scripting-languages-php-perl-python-ruby/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Over ten thousand downloads</title>
		<link>http://www.maxpagels.com/2011/08/17/over-ten-thousand-downloads/</link>
		<comments>http://www.maxpagels.com/2011/08/17/over-ten-thousand-downloads/#comments</comments>
		<pubDate>Wed, 17 Aug 2011 12:53:27 +0000</pubDate>
		<dc:creator>Max Pagels</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[mostpopulartags]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.maxpagels.com/?p=4173</guid>
		<description><![CDATA[It&#8217;s been a couple of years since I developed the Most Popular Tags plugin, and I&#8217;m extremely happy to announce that it has been downloaded over ten thousand times from the WordPress plugin directory. Special thanks to anyone that&#8217;s tried it or, even better, liked it.]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s been a couple of years since I developed the <a href="http://www.maxpagels.com/projects/mptags/">Most Popular Tags plugin</a>, and I&#8217;m extremely happy to announce that it has been downloaded over ten thousand times from the WordPress plugin directory. Special thanks to anyone that&#8217;s tried it or, even better, liked it.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.maxpagels.com/2011/08/17/over-ten-thousand-downloads/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PlayStation Vita development kit priced at €1900</title>
		<link>http://www.next-gen.biz/news/vita-dev-kit-priced</link>
		<comments>http://www.maxpagels.com/2011/08/17/playstation-vita-development-kit-priced-at-e1900/#comments</comments>
		<pubDate>Wed, 17 Aug 2011 12:48:23 +0000</pubDate>
		<dc:creator>Max Pagels</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Video games]]></category>
		<category><![CDATA[devkits]]></category>
		<category><![CDATA[playstation]]></category>
		<category><![CDATA[vita]]></category>

		<guid isPermaLink="false">http://www.maxpagels.com/?p=4165</guid>
		<description><![CDATA[Sony has revealed that Vita development kits will cost just €1900 plus VAT, making the upcoming portable a viable proposition to smaller studios. I really want the Vita to succeed, as it has many things going for it: attractive hardware, especially the addition of a second analogue stick; a competitive price point, helping it to compete [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p>Sony has revealed that Vita development kits will cost just €1900 plus VAT, making the upcoming portable a viable proposition to smaller studios.</p></blockquote>
<p>I really want the Vita to succeed, as it has many things going for it: attractive hardware, especially the addition of a second analogue stick; a competitive price point, helping it to compete with Apple&#8217;s and Nintendo&#8217;s offerings; and a cheap devkit with which to entice indie developers.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.maxpagels.com/2011/08/17/playstation-vita-development-kit-priced-at-e1900/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Java 7 has been released</title>
		<link>http://jdk7.java.net/</link>
		<comments>http://www.maxpagels.com/2011/08/01/java-7-has-been-released/#comments</comments>
		<pubDate>Mon, 01 Aug 2011 18:32:41 +0000</pubDate>
		<dc:creator>Max Pagels</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[java7]]></category>
		<category><![CDATA[jdk]]></category>
		<category><![CDATA[oracle]]></category>

		<guid isPermaLink="false">http://www.maxpagels.com/?p=4135</guid>
		<description><![CDATA[It&#8217;s the first major release of Java in five years; many additions have been made to the language, including Strings in switch statements and the try-with statement.]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s the first major release of Java in five years; <a href="http://www.oracle.com/technetwork/java/javase/jdk7-relnotes-418459.html">many additions have been made to the language</a>, including Strings in switch statements and the try-with statement.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.maxpagels.com/2011/08/01/java-7-has-been-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mikko Hypponen: Fighting viruses, defending the net</title>
		<link>http://www.ted.com/talks/mikko_hypponen_fighting_viruses_defending_the_net.html</link>
		<comments>http://www.maxpagels.com/2011/07/22/mikko-hypponen-fighting-viruses-defending-the-net/#comments</comments>
		<pubDate>Fri, 22 Jul 2011 09:58:07 +0000</pubDate>
		<dc:creator>Max Pagels</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Videos]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[tedtalks]]></category>
		<category><![CDATA[viruses]]></category>

		<guid isPermaLink="false">http://www.maxpagels.com/?p=4128</guid>
		<description><![CDATA[A great TED Talk that shows some of the earliest PC viruses, including the Brain virus whose authors Mikko Hypponen actually met in Pakistan.]]></description>
			<content:encoded><![CDATA[<p>A great TED Talk that shows some of the earliest PC viruses, including the <a href="http://en.wikipedia.org/wiki/Brain_(computer_virus)">Brain virus</a> whose authors Mikko Hypponen actually met in Pakistan.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.maxpagels.com/2011/07/22/mikko-hypponen-fighting-viruses-defending-the-net/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rage deliberately allows screen tearing to improve performance</title>
		<link>http://www.eurogamer.net/articles/2011-06-16-john-carmack-the-future-now-interview</link>
		<comments>http://www.maxpagels.com/2011/07/08/rage-deliberately-allows-screen-tearing-to-improve-performance/#comments</comments>
		<pubDate>Fri, 08 Jul 2011 09:53:58 +0000</pubDate>
		<dc:creator>Max Pagels</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Video games]]></category>
		<category><![CDATA[computergraphics]]></category>
		<category><![CDATA[idsoftware]]></category>
		<category><![CDATA[rage]]></category>

		<guid isPermaLink="false">http://www.maxpagels.com/?p=4109</guid>
		<description><![CDATA[Due to to the way that double buffering works, a v-sync enabled game that drops below 60 frames per second reverts to 30FPS, but id Software&#8217;s upcoming Rage intentionally allows screen tearing at the top of the screen when the frame rate drops slightly below the 60FPS threshold. So what we do on the consoles, [...]]]></description>
			<content:encoded><![CDATA[<p>Due to to the way that <a href="http://en.wikipedia.org/wiki/Multiple_buffering#Double_buffering_in_computer_graphics">double buffering</a> works, a <a href="http://en.wikipedia.org/wiki/Vertical_synchronization#Vertical_synchronization">v-sync</a> enabled game that drops below 60 frames per second reverts to 30FPS, but id Software&#8217;s upcoming <em>Rage</em> intentionally allows screen tearing at the top of the screen when the frame rate drops slightly below the 60FPS threshold.</p>
<blockquote><p>So what we do on the consoles, where we have this tight control, is we say, OK, you&#8217;re going 60FPS, it&#8217;s v-syncing, there are no tear lines. But if you miss by a tiny little bit, we&#8217;ll let it tear at the top of the screen and we adjust the resolutions dynamically to let it catch back up.</p></blockquote>
<p>It&#8217;s a really novel idea, and one that id managed to convince vendors to implement:</p>
<blockquote><p>We were able to convince all of the vendors to go ahead and implement that extension on Windows, so we&#8217;re now able to do that at 60FPS as long as you&#8217;ve got the horsepower. But if you get a hiccup, where it slows down a little bit, it reverts to tearing, which is exactly what we want for gameplay reasons.</p></blockquote>
<p>You just have to love how id always strives to push graphical boundaries as far as possible.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.maxpagels.com/2011/07/08/rage-deliberately-allows-screen-tearing-to-improve-performance/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>First commerical use for SPDY</title>
		<link>http://www.technologyreview.com/web/37772/</link>
		<comments>http://www.maxpagels.com/2011/06/13/first-commerical-use-for-spdy/#comments</comments>
		<pubDate>Mon, 13 Jun 2011 18:53:25 +0000</pubDate>
		<dc:creator>Max Pagels</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[protocols]]></category>
		<category><![CDATA[spdy]]></category>
		<category><![CDATA[webdevelopment]]></category>

		<guid isPermaLink="false">http://www.maxpagels.com/?p=4046</guid>
		<description><![CDATA[Google&#8217;s SPDY is a web protocol designed as an improvement over HTTP. Website optimization company Strangeloop has built SPDY into its flagship product Site Optimizer, software that sits in between a website and its users, and adjusts the site&#8217;s code to make pages load more quickly. Mainstream adoption may prove difficult for Google; the protocol requires [...]]]></description>
			<content:encoded><![CDATA[<p>Google&#8217;s <a href="http://www.chromium.org/spdy">SPDY </a>is a web protocol designed as an improvement over HTTP.</p>
<blockquote><p>Website optimization company Strangeloop has built SPDY into its flagship product Site Optimizer, software that sits in between a website and its users, and adjusts the site&#8217;s code to make pages load more quickly.</p></blockquote>
<p>Mainstream adoption may prove difficult for Google; the protocol requires changes to both browsers and server software. Currently, the only browser to support SPDY is Google Chrome.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.maxpagels.com/2011/06/13/first-commerical-use-for-spdy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Comments on the Windows Phone 7 SDK</title>
		<link>http://www.maxpagels.com/2011/06/01/comments-on-the-windows-phone-7-sdk/</link>
		<comments>http://www.maxpagels.com/2011/06/01/comments-on-the-windows-phone-7-sdk/#comments</comments>
		<pubDate>Wed, 01 Jun 2011 09:31:16 +0000</pubDate>
		<dc:creator>Max Pagels</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[mobilephones]]></category>
		<category><![CDATA[sdk]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[wp7]]></category>

		<guid isPermaLink="false">http://www.maxpagels.com/?p=3970</guid>
		<description><![CDATA[I recently took a university course where we worked in small teams to create a Windows Phone 7 application in five days. This post highlights some of the pros and cons mentioned about the SDK and related tools (pre-Mango update). Pros The freedom to choose either C# or Visual Basic as a programming language The [...]]]></description>
			<content:encoded><![CDATA[<p>I recently took a university course where we worked in small teams to create a Windows Phone 7 application in five days. This post highlights some of the pros and cons mentioned about the SDK and related tools (pre-Mango update).</p>
<h3>Pros</h3>
<ul>
<li>The freedom to choose either C# or Visual Basic as a programming language</li>
<li>The simultaneous use of Expression Blend and Visual Studio 2010 makes it easy to work on UI design independently of underlying application logic</li>
<li>Two-way data bindings</li>
<li>Automatic memory management</li>
<li>Every single Windows Phone 7 handset adheres to a set of <a href="http://en.wikipedia.org/wiki/Windows_Phone_7#System_requirements">baseline requirements</a></li>
<li><a href="http://www.microsoft.com/windowsazure/">Windows Azure</a></li>
</ul>
<h3>Cons</h3>
<ul>
<li>Known issues with the SDK, e.g. <code><a href="http://forums.create.msdn.com/forums/p/65662/505156.aspx">IsolatedStorage.ApplicationSettings</a></code></li>
<li>APIs yet to be implemented, e.g. <code><a href="http://msdn.microsoft.com/en-us/library/system.device.location.civicaddressresolver.resolveaddress.aspx">CivicAddressResolver.ResolveAddress</a></code></li>
<li>No proper multitasking on handsets</li>
<li>The Windows Phone emulator: no support for GPS, multi-touch gestures on normal displays etc.</li>
</ul>
<p>The disadvantages are relatively minor and will likely be addressed in the Mango update. With my limited five-day experience, I&#8217;d say Microsoft is off to en encouraging start with its mobile phone initiative.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.maxpagels.com/2011/06/01/comments-on-the-windows-phone-7-sdk/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A BitTorrent visualisation</title>
		<link>http://mg8.org/processing/bt.html</link>
		<comments>http://www.maxpagels.com/2011/05/31/a-bittorrent-visualisation/#comments</comments>
		<pubDate>Tue, 31 May 2011 21:52:19 +0000</pubDate>
		<dc:creator>Max Pagels</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[bittorrent]]></category>
		<category><![CDATA[visualisations]]></category>

		<guid isPermaLink="false">http://www.maxpagels.com/?p=3967</guid>
		<description><![CDATA[Not only informative, but also beautiful.]]></description>
			<content:encoded><![CDATA[<p>Not only informative, but also beautiful.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.maxpagels.com/2011/05/31/a-bittorrent-visualisation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>text2re</title>
		<link>http://txt2re.com/</link>
		<comments>http://www.maxpagels.com/2011/05/31/text2re/#comments</comments>
		<pubDate>Tue, 31 May 2011 21:12:35 +0000</pubDate>
		<dc:creator>Max Pagels</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[regularexpressions]]></category>
		<category><![CDATA[text2re]]></category>

		<guid isPermaLink="false">http://www.maxpagels.com/?p=3958</guid>
		<description><![CDATA[This system acts as a regular expression generator. Instead of trying to build the regular expression, you start off with the string that you want to search. You paste this into the site, click submit and the site finds recognisable patterns in your string. You then select the patterns that you are interested in and [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p>This system acts as a regular expression generator. Instead of trying to build the regular expression, you start off with the string that you want to search. You paste this into the site, click submit and the site finds recognisable patterns in your string. You then select the patterns that you are interested in and it writes a fully fledged program that extracts those patterns from that string.</p></blockquote>
<p>A time-saver if ever I saw one.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.maxpagels.com/2011/05/31/text2re/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Bubble sort explained as a dance</title>
		<link>http://www.maxpagels.com/2011/04/12/bubble-sort-explained-as-a-dance/</link>
		<comments>http://www.maxpagels.com/2011/04/12/bubble-sort-explained-as-a-dance/#comments</comments>
		<pubDate>Tue, 12 Apr 2011 17:06:51 +0000</pubDate>
		<dc:creator>Max Pagels</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[algorithms]]></category>
		<category><![CDATA[dance]]></category>
		<category><![CDATA[sortingalgorithms]]></category>

		<guid isPermaLink="false">http://www.maxpagels.com/?p=3915</guid>
		<description><![CDATA[The AlgoRyhmics YouTube channel has a few more algorithms such as shell sort. [via Neatorama]]]></description>
			<content:encoded><![CDATA[<p><object width="458" height="283"><param name="movie" value="http://www.youtube.com/v/lyZQPjUT5B4?version=3" /><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><embed src="http://www.youtube.com/v/lyZQPjUT5B4?version=3" type="application/x-shockwave-flash" width="458" height="283" allowscriptaccess="always" allowfullscreen="true" /></object></p>
<p>The <a href="http://www.youtube.com/user/AlgoRythmics">AlgoRyhmics YouTube channel</a> has a few more algorithms such as shell sort. [via <a href="http://www.neatorama.com/2011/04/11/sorting-algorithms-explained-with-a-hungarian-folk-dance/">Neatorama</a>]</p>
]]></content:encoded>
			<wfw:commentRss>http://www.maxpagels.com/2011/04/12/bubble-sort-explained-as-a-dance/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PetitComputer</title>
		<link>http://smileboom.com/special/petitcom/</link>
		<comments>http://www.maxpagels.com/2011/04/04/petitcomputer/#comments</comments>
		<pubDate>Mon, 04 Apr 2011 20:01:16 +0000</pubDate>
		<dc:creator>Max Pagels</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Video games]]></category>
		<category><![CDATA[basic]]></category>
		<category><![CDATA[dsiware]]></category>
		<category><![CDATA[nintendods]]></category>
		<category><![CDATA[petitcomputer]]></category>
		<category><![CDATA[smileboom]]></category>

		<guid isPermaLink="false">http://www.maxpagels.com/?p=3886</guid>
		<description><![CDATA[A BASIC-programmable computer, recently released on DSiWare in Japan. Completely pointless, but I would buy it in a heartbeat.]]></description>
			<content:encoded><![CDATA[<p>A BASIC-programmable computer, recently released on DSiWare in Japan. Completely pointless, but I would buy it in a heartbeat.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.maxpagels.com/2011/04/04/petitcomputer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Shortcode update</title>
		<link>http://wordpress.org/extend/plugins/shortcode/</link>
		<comments>http://www.maxpagels.com/2010/12/17/shortcode-update-2/#comments</comments>
		<pubDate>Fri, 17 Dec 2010 12:11:38 +0000</pubDate>
		<dc:creator>Max Pagels</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[shortcode]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.maxpagels.com/?p=3281</guid>
		<description><![CDATA[Version 0.5.7 of the Shortcode WordPress plugin adds a new shortcode, totalwords, that counts the total number of words in published posts. Note that the count is only an approximation: the total is calculated in SQL as the  sum of LENGTH(post_content) - LENGTH(REPLACE(post_content, ' ', '')) + 1, i.e. the sum of the length of [...]]]></description>
			<content:encoded><![CDATA[<p>Version 0.5.7 of the Shortcode WordPress plugin adds a new shortcode, <code>totalwords</code>, that counts the total number of words in published posts. Note that the count is only an approximation: the total is calculated in SQL as the  sum of <code>LENGTH(post_content) - LENGTH(REPLACE(post_content, ' ', '')) + 1</code>, i.e. the sum of the length of all posts (including spaces) minus the length of all posts without any spaces (plus one). Words may not be counted properly if they are separated by more than one space, but the result should be sufficient in accuracy nonetheless.</p>
<p>As always, <a href="http://www.maxpagels.com/shortcodes.txt">www.maxpagels.com/shortcodes.txt</a> lists all of the shortcodes offered by the plugin, sorted by version.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.maxpagels.com/2010/12/17/shortcode-update-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Shortcode update</title>
		<link>http://www.maxpagels.com/2010/12/01/shortcode-update/</link>
		<comments>http://www.maxpagels.com/2010/12/01/shortcode-update/#comments</comments>
		<pubDate>Wed, 01 Dec 2010 15:17:13 +0000</pubDate>
		<dc:creator>Max Pagels</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Site updates]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[shortcode]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.maxpagels.com/?p=3163</guid>
		<description><![CDATA[A new version (0.5.6) of the Shortcode WordPress plugin has been released, allowing you to get the total number of images attached in all posts &#38; pages with the code photosingallery. As always, look at the text file located at www.maxpagels.com/shortcodes.txt for all available shortcodes.]]></description>
			<content:encoded><![CDATA[<p>A new version (0.5.6) of the <a href="http://www.maxpagels.com/projects/shortcode/">Shortcode WordPress plugin</a> has been released, allowing you to get the total number of images attached in all posts &amp; pages with the code <code>photosingallery</code>.</p>
<p>As always, look at the text file located at <a href="http://www.maxpagels.com/shortcodes.txt">www.maxpagels.com/shortcodes.txt</a> for all available shortcodes.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.maxpagels.com/2010/12/01/shortcode-update/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Trouble with Checked Exceptions</title>
		<link>http://www.artima.com/intv/handcuffs.html</link>
		<comments>http://www.maxpagels.com/2010/11/24/the-trouble-with-checked-exceptions/#comments</comments>
		<pubDate>Tue, 23 Nov 2010 21:30:35 +0000</pubDate>
		<dc:creator>Max Pagels</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[csharp]]></category>
		<category><![CDATA[exceptions]]></category>
		<category><![CDATA[microsoft]]></category>

		<guid isPermaLink="false">http://www.maxpagels.com/?p=3144</guid>
		<description><![CDATA[A well-written article from back in 2003 where chief architect Anders Hejlsberg defends the lack of checked exceptions in C#. It is funny how people think that the important thing about exceptions is handling them. That is not the important thing about exceptions. In a well-written application there&#8217;s a ratio of ten to one, in [...]]]></description>
			<content:encoded><![CDATA[<p>A well-written article from back in 2003 where chief architect Anders Hejlsberg defends the lack of checked exceptions in C#.</p>
<blockquote><p>It is funny how people think that the important thing about exceptions is handling them. That is not the important thing about exceptions. In a well-written application there&#8217;s a ratio of ten to one, in my opinion, of try finally to try catch. Or in C#,&nbsp;<code>using</code> statements, which are like try finally.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.maxpagels.com/2010/11/24/the-trouble-with-checked-exceptions/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Java: generics &amp; superclasses</title>
		<link>http://www.maxpagels.com/2010/11/16/java-generics-superclasses/</link>
		<comments>http://www.maxpagels.com/2010/11/16/java-generics-superclasses/#comments</comments>
		<pubDate>Tue, 16 Nov 2010 16:59:30 +0000</pubDate>
		<dc:creator>Max Pagels</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[generics]]></category>
		<category><![CDATA[java]]></category>

		<guid isPermaLink="false">http://www.maxpagels.com/?p=3112</guid>
		<description><![CDATA[Generics in Java have always been both a source of fascination and frustration for me. I&#8217;ll openly admit that I still don&#8217;t know enough about the subject, even though I&#8217;ve worked with Java for four years now. The very first thing that puzzled me is that contrary to &#8220;regular&#8221; classes in Java, generic elements don&#8217;t [...]]]></description>
			<content:encoded><![CDATA[<p>Generics in Java have always been both a source of fascination and frustration for me. I&#8217;ll openly admit that I still don&#8217;t know enough about the subject, even though I&#8217;ve worked with Java for four years now.</p>
<p>The very first thing that puzzled me is that contrary to &#8220;regular&#8221; classes in Java, generic elements don&#8217;t really have superclasses to speak of. Consider the following example:</p>
<pre>Object obj;
String str = "Hello";
obj = str;</pre>
<p>Naturally, a <code>String</code> has <code>Object</code> as it&#8217;s highest superclass. Thus, it&#8217;s legal to assign a <code>String</code> to an <code>Object</code> &#8212; obviously, one can only call the methods of the <code>Object</code> class after such an operation.</p>
<p>Now consider this example:</p>
<pre>ArrayList&lt;Object&gt; listOne;
ArrayList&lt;String&gt; listTwo = new ArrayList&lt;String&gt;();
listOne = listTwo;
listOne.add(new Integer(1));
String str = listTwo.get(0);</pre>
<p>In this example, we attempt to assign a list of Strings to a variable with the type &#8220;list of Objects&#8221;. If this would work, we could add another type of object (say, an <code>Integer</code>) to the list. After this, <code>listTwo</code> doesn&#8217;t just contain Strings anymore, which leads to trouble on the last line of our code. Thankfully, Java doesn&#8217;t allow this to happen &#8212; line <del>2</del> 3 in our example will give us an error if we attempt to compile the code.</p>
<p>The best quick explanation of generics/superclasses in Java that I&#8217;ve found is in a book called <em>Generics in the Java Programming Language</em> (<a href="http://java.sun.com/j2se/1.5/pdf/generics-tutorial.pdf">PDF link</a>), written by Gilad Bracha:</p>
<blockquote><p>For example, if the department of motor vehicles supplies a list of drivers to the census bureau, this seems reasonable. We think that a <code>List&lt;Driver&gt;</code> is a <code>List&lt;Person&gt;</code>, assuming that <code>Driver</code> is a subtype of <code>Person</code>. In fact, what is being passed is a copy of the registry of drivers. Otherwise, the census bureau could add new people who are not drivers into the list, corrupting the DMV’s records.</p></blockquote>
<p>The book is a comprehensive Java generics resource, and discusses even the most advanced concepts in a highly understandable form. Don&#8217;t forget to read <a href="http://anders.janmyr.com/2006/11/essential-java-generics.html">The Tapir&#8217;s Tale blog post</a> or <a href="http://www.angelikalanger.com/">Angela Lanker&#8217;s website</a>, either.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.maxpagels.com/2010/11/16/java-generics-superclasses/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JavaScript: The Good Parts</title>
		<link>http://www.youtube.com/watch?v=hQVTIJBZook</link>
		<comments>http://www.maxpagels.com/2010/04/28/javascript-the-good-parts/#comments</comments>
		<pubDate>Wed, 28 Apr 2010 08:46:41 +0000</pubDate>
		<dc:creator>Max Pagels</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Videos]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[techtalks]]></category>
		<category><![CDATA[tutorials]]></category>

		<guid isPermaLink="false">http://www.maxpagels.com/?p=2357</guid>
		<description><![CDATA[By Doug Crockford. One of the best Tech Talks I&#8217;ve ever watched. (via Mr.doob&#8217;s blog)]]></description>
			<content:encoded><![CDATA[<p>By <a href="http://www.crockford.com/">Doug Crockford</a>. One of the best Tech Talks I&#8217;ve ever watched.</p>
<p>(via <a href="http://mrdoob.com/blog">Mr.doob&#8217;s blog</a>)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.maxpagels.com/2010/04/28/javascript-the-good-parts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.338 seconds -->

