<?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>Borgar.net &#187; release</title>
	<atom:link href="http://borgar.net/tagged/release/feed/" rel="self" type="application/rss+xml" />
	<link>http://borgar.net</link>
	<description>All the wisdom of the rainbow.</description>
	<lastBuildDate>Tue, 23 Mar 2010 23:12:18 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0-RC1-15022</generator>
		<item>
		<title>Orðavinda</title>
		<link>http://borgar.net/s/2010/03/ordavinda/</link>
		<comments>http://borgar.net/s/2010/03/ordavinda/#comments</comments>
		<pubDate>Tue, 23 Mar 2010 22:23:35 +0000</pubDate>
		<dc:creator>Borgar</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[game]]></category>
		<category><![CDATA[icelandic]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[language]]></category>
		<category><![CDATA[release]]></category>

		<guid isPermaLink="false">http://borgar.net/?p=1472</guid>
		<description><![CDATA[Framlag mitt til keppninar Þú átt orðið var tölvuleikurinn Orðavinda. Hann byggir á þekktri hugmynd og reyndar langri sögu orðaleikja. Það kom mér skemmtilega á óvart að leikurinn hreppti fyrstu verðlaun í keppninni og að því er virðist af viðbrögðunum hefur mér tekist að stöðva skrifstofuvinnu á Íslandi. Leikurinn er búinn til í HTML og [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://borgar.net/programs/ordavinda/thumbnail.png" align="right" alt="Orðavinda" /></p>
<p>Framlag mitt til keppninar <a href="http://ordid.is/">Þú átt orðið</a> var tölvuleikurinn <a href="http://borgar.net/programs/ordavinda/">Orðavinda</a>. Hann byggir á þekktri hugmynd og reyndar <a href="http://en.wikipedia.org/wiki/Word_game">langri sögu orðaleikja</a>.  Það kom mér skemmtilega á óvart að leikurinn hreppti fyrstu verðlaun í keppninni og að því er virðist af viðbrögðunum hefur mér tekist að stöðva skrifstofuvinnu á Íslandi. </p>
<p>Leikurinn er búinn til í <acronym title="HyperText Markup Language">HTML</acronym> og JavaScript en notar Flash til þess að spila hljóð fyrir þá sem hafa það. Þeim sem eru forvitnir um innviðina er bent á <a href="http://github.com/borgar/ordavinda" title="Orðavinda á GitHub">heimili leiksins á GitHub</a> en leikurinn er útgefinn sem frjáls hugbúnaður undir skilmálum <a href="http://gplv3.fsf.org/"><acronym title="GNU General Public License">GPL</acronym></a> hugbúnaðarleyfisins.</p>]]></content:encoded>
			<wfw:commentRss>http://borgar.net/s/2010/03/ordavinda/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sōkoban</title>
		<link>http://borgar.net/s/2009/07/sokoban/</link>
		<comments>http://borgar.net/s/2009/07/sokoban/#comments</comments>
		<pubDate>Mon, 13 Jul 2009 22:57:14 +0000</pubDate>
		<dc:creator>Borgar</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[game]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[release]]></category>

		<guid isPermaLink="false">http://borgar.net/?p=1427</guid>
		<description><![CDATA[A few days without internet do strange things to a computer addict. In my case I start to rummage frenetically though old projects to see if there is anything I can finish, polish, or do something with that doesn&#8217;t require internet access. So I found my old Sokoban game. Originally a Windows application, I though [...]]]></description>
			<content:encoded><![CDATA[<p>A few days without internet do strange things to a computer addict. In my case I start to rummage frenetically though old projects to see if there is anything I can finish, polish, or do something with that doesn&#8217;t require internet access.</p>
<p><img title="Sokoban for windows" src="http://borgar.net/wp-content/uploads/sokoban.png" alt="sokoban" align="right" width="210" height="178" /></p>
<p>So I found my old Sokoban game. Originally a Windows application, I though it could be fun to try to remake it in JavaScript. <a title="Sokoban in jQuery" href="http://borgar.net/programs/sokoban/">So that&#8217;s what I did.</a></p>
<p>I wrote the bulk of it in about an evening, and spent a few more evenings applying spit and polish until I was satisfied that it worked the way I wanted. The <a href="http://borgar.net/programs/sokoban/js/sokoban.js">whole thing</a> is about  300 lines of mostly uncommented code running on top of jQuery &mdash; well, actually as a jQuery plugin.</p>
<h3>The interresting bits</h3>
<p>There are a few characteristics that make this implementation interesting. The first is that the game uses progressive enhancement methodology. The script runs through marked items on the webpage and makes valid Sokoban levels playable. If you don&#8217;t have JavaScript you can still read the level codes, which are normally written in a standard like this:</p>
<pre>####
# .#
#  ###
#*@  #
#  $ #
#  ###
####</pre>
<p>The <code>@</code> is the worker, <code>#</code> are walls, <code>.</code> are docks, <code>$</code> are boxes, and so on&#8230; </p>
<p>The symbols are image-replaced with <acronym title="Cascading Style Sheets">CSS</acronym> when the level is live, but the whole thing works without <acronym title="Cascading Style Sheets">CSS</acronym>. You can disable the styles if you desire to play the levels in pure ASCII.</p>
<p>This also means that the game is printable. At any moment in gameplay you can grab a hardcopy of your status and frame it. I am hard pressed to think of other printable games. Copying the level onto the clipboard also works just as it would any other text. Not really useful features for a game, but interesting side-effects nonetheless.</p>
<p>Because parsing all the levels immediately as the game loads up &mdash; especially on level collections that have very many levels &mdash; is quite labour intensive, I am applying a recent jQuery plugin of mine, <a href="http://borgar.net/svn/public/trunk/javascript/jquery.processEach/jquery.processEach.js">.processEach()</a>, to prevent the browser from locking up. In short, it works like <em>.each()</em> but yields the process every iteration to allow the browser some time to do other things. It&#8217;s perhaps a subject of another entry.</p>
<h3>Have fun</h3>
<p>Have fun with <a href="http://borgar.net/programs/sokoban/">the game</a> and the source (which are released under the <acronym title="GNU General Public License">GPL</acronym> v3). I suspect that it might one day be exactly what a Sokoban level blog is looking for, but for now it mostly remains a curiosity rather than a spectacular reproduction of the game, </p>]]></content:encoded>
			<wfw:commentRss>http://borgar.net/s/2009/07/sokoban/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JSON for old PHP installations</title>
		<link>http://borgar.net/s/2008/06/simplejson/</link>
		<comments>http://borgar.net/s/2008/06/simplejson/#comments</comments>
		<pubDate>Sun, 15 Jun 2008 14:30:07 +0000</pubDate>
		<dc:creator>Borgar</dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[json]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[release]]></category>

		<guid isPermaLink="false">http://borgar.undraland.com/?p=1014</guid>
		<description><![CDATA[I use PHP a lot. Mostly to work with existing products, or to create mockups of things that will get replaced with something else later. The great thing about PHP is that it is present in some form on nearly all servers. If you&#8217;re careful to avoid version 5 features then you can pretty much [...]]]></description>
			<content:encoded><![CDATA[<p>I use <acronym title="Hypertext PreProcessing">PHP</acronym> a lot. Mostly to work with <a href="http://wordpress.org/" title="WordPress">existing products</a>, or to create mockups of things that will get replaced with something else later.</p>
<p>The great thing about <acronym title="Hypertext PreProcessing">PHP</acronym> is that it is present in some form on nearly all servers. If you&#8217;re careful to avoid version 5 features then you can pretty much expect your code to run wherever.</p>
<p>For a recent prototype I needed <a href="http://www.json.org/">JSON</a> (which wasn&#8217;t introduced to <acronym title="Hypertext PreProcessing">PHP</acronym> until version 5) on a 4.3 system. Being a relentless do-it-yourself&#8217;er I have written a tiny JSON functionality &#8220;library&#8221; for older versions of <acronym title="Hypertext PreProcessing">PHP</acronym>.</p>
<p>It&#8217;s about 5k of mostly comments. Available under MIT licence from <a href="http://code.google.com/p/simplejson-php/" title="Simple JSON for PHP">Google code</a>. Have fun.</p>]]></content:encoded>
			<wfw:commentRss>http://borgar.net/s/2008/06/simplejson/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>WordPress plugin: Localized categories</title>
		<link>http://borgar.net/s/2007/08/localized-categories-plugin/</link>
		<comments>http://borgar.net/s/2007/08/localized-categories-plugin/#comments</comments>
		<pubDate>Mon, 27 Aug 2007 21:51:21 +0000</pubDate>
		<dc:creator>Borgar</dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[release]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://borgar.undraland.com/s/2007/08/27/21.51.21/</guid>
		<description><![CDATA[I write in two languages, my theme exists in both translations. Yet, theme (or WordPress) doesn&#8217;t care to fit one to the other. It was time to do something about that. What I basically wanted was to be able to place all my English entries into a category, and then attach a locale to that [...]]]></description>
			<content:encoded><![CDATA[<p>I write in two languages, my theme exists in both translations. Yet, theme (or WordPress) doesn&#8217;t care to fit one to the other. It was time to do something about that.</p>
<p>What I basically wanted was to be able to place all my English entries into a category, and then attach a locale to that category thus displaying entries in that category with the theme appropriately translated around them.</p>
<p>Other benefits include having an easy way to list out entries from a particular language &#8211; in the exact same way entries in other categories are listed out.</p>
<p>WordPress put up a bit of a fight. It really doesn&#8217;t like switching locales after the initial preparations are done, but lately the situation has improved to the point that hacking around it is possible.</p>
<p>My only irritation now is not having an action <q>&#8220;per entry&#8221;</q> to trigger per-entry checking if a swap is needed. But as you can see, if you care to examine this blog, I got around that too.</p>
<hr />
<p>Interested parties may grab the plugin from my subversion repo: <a href="/svn/public/trunk/wordpress/plugins/lang-cats/">Version 0.1b</a>.</p>
<p>Plugin probably requires at least a somewhat current version of WordPress and a translated, locale aware theme.</p>]]></content:encoded>
			<wfw:commentRss>http://borgar.net/s/2007/08/localized-categories-plugin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Javascript vs. Demoscene</title>
		<link>http://borgar.net/s/2006/12/javascript-starballs/</link>
		<comments>http://borgar.net/s/2006/12/javascript-starballs/#comments</comments>
		<pubDate>Sat, 09 Dec 2006 10:52:01 +0000</pubDate>
		<dc:creator>Borgar</dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[demoscene]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[release]]></category>
		<category><![CDATA[retro]]></category>

		<guid isPermaLink="false">http://borgar.undraland.com/s/2006/12/09/10.52.01/</guid>
		<description><![CDATA[What you are looking at is a javascript remake of a demoscreen from the world famous Union Demo (1989). The screen was originally designed and programed by the TNT-Crew. It firmly remains one of my all time favorite screens from my all time favorite demo. I built it yesterday as a test. The Starballs screen [...]]]></description>
			<content:encoded><![CDATA[<p><iframe width="320" height="200" frameborder="0" src="http://borgar.undraland.com/programs/demos/starballs/index.html"></iframe></p>
<p>What you are looking at is a javascript remake of a demoscreen from the world famous <a href="http://www.pouet.net/prod.php?which=11060" title="The Union Demo is downloadable from Pouet">Union Demo</a> (1989). The screen was originally designed and programed by the <em>TNT-Crew</em>. It firmly remains one of my all time favorite screens from my all time favorite <em>demo</em>.</p>
<p>I built it yesterday as a test. The <em>Starballs</em> screen was an easy pick, it was possible to reach some similarity to it with javascript, and I allready had it done as a java applet. Far from being any groundbreaking stuff, what I am doing is simply testing how different browsers cope with some javascript things.</p>
<p>My favorite browser for viewing this is <a href="http://www.opera.com/" title="Home of the Opera Browser">Opera</a>. My favorite browser Firefox doesn&#8217;t handle it so well.</p>
<p>Still, it&#8217;s a nice piece of geek nostralgia.</p>]]></content:encoded>
			<wfw:commentRss>http://borgar.net/s/2006/12/javascript-starballs/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
