<?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>visual77</title>
	<atom:link href="http://visual77.com/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://visual77.com/blog</link>
	<description>Ramblings from Stephen Phillips</description>
	<lastBuildDate>Fri, 02 Jul 2010 17:35:04 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>MySQL dump of every country and state in the world</title>
		<link>http://visual77.com/blog/2010/07/mysql-dump-of-every-country-and-state-in-the-world/</link>
		<comments>http://visual77.com/blog/2010/07/mysql-dump-of-every-country-and-state-in-the-world/#comments</comments>
		<pubDate>Fri, 02 Jul 2010 17:35:04 +0000</pubDate>
		<dc:creator>visual77</dc:creator>
				<category><![CDATA[visual77]]></category>
		<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://visual77.com/blog/?p=625</guid>
		<description><![CDATA[As part of a recent project, I needed to compile a list of every country and first level administrative subdivision in the world. I started with the ISO 3166-2 list, but later cleaned up certain countries that had inaccurate data. I also needed timezones for every state, so I put all of those in as [...]]]></description>
			<content:encoded><![CDATA[<p>As part of a recent project, I needed to compile a list of every country and first level administrative subdivision in the world. I started with the ISO 3166-2 list, but later cleaned up certain countries that had inaccurate data. I also needed timezones for every state, so I put all of those in as well.</p>
<p>This zip file contains a single SQL dump for two tables &#8211; region and subregion.</p>
<p>Region contains 248 entries, with the following data for each country: ISO code, 3 digit ISO code, fips code, country name, continent, currency code, currency name, phone prefix, postal code regex, languages and geonameid. Subregions contains region ID, name and timezone. The timezone format is &#8220;America/Los_Angeles&#8221;, &#8220;Europe/Madrid&#8221;, etc. Unfortunately, some states have multiple timezones and this is not taken into account.</p>
<p>There might still be some issues with some countries not having an accurate state list, but this list is more comprehensive than anything I was able to find online.</p>
<p>Download the list: <a href="http://visual77.com/blog/wp-content/uploads/2010/07/region.sql_.zip">region.sql</a></p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center">
<ul class="socials">
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://visual77.com/blog/2010/07/mysql-dump-of-every-country-and-state-in-the-world/&amp;title=MySQL+dump+of+every+country+and+state+in+the+world" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://visual77.com/blog/2010/07/mysql-dump-of-every-country-and-state-in-the-world/&amp;title=MySQL+dump+of+every+country+and+state+in+the+world" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-facebook">
			<a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://visual77.com/blog/2010/07/mysql-dump-of-every-country-and-state-in-the-world/&amp;t=MySQL+dump+of+every+country+and+state+in+the+world" rel="nofollow" class="external" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="shr-reddit">
			<a href="http://reddit.com/submit?url=http://visual77.com/blog/2010/07/mysql-dump-of-every-country-and-state-in-the-world/&amp;title=MySQL+dump+of+every+country+and+state+in+the+world" rel="nofollow" class="external" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://visual77.com/blog/2010/07/mysql-dump-of-every-country-and-state-in-the-world/&amp;title=MySQL+dump+of+every+country+and+state+in+the+world" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=MySQL+dump+of+every+country+and+state+in+the+world+-+&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://visual77.com/blog/2010/07/mysql-dump-of-every-country-and-state-in-the-world/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Build 20100609</title>
		<link>http://visual77.com/blog/2010/06/build-20100609/</link>
		<comments>http://visual77.com/blog/2010/06/build-20100609/#comments</comments>
		<pubDate>Wed, 16 Jun 2010 04:40:13 +0000</pubDate>
		<dc:creator>visual77</dc:creator>
				<category><![CDATA[gaming]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[sc2build]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[starcraft]]></category>

		<guid isPermaLink="false">http://visual77.com/blog/?p=622</guid>
		<description><![CDATA[The newest iteration in my StarCraft II Build Order Calculator is a minimalistic approach, in comparison to the previous builds. Unlike the last few ambitious builds that attempted time and resource calculation, this is an attempt at the absolute basics. It is also my first build calculator that is somewhat usable right at the moment, [...]]]></description>
			<content:encoded><![CDATA[<p>The <a href="http://sc2build.com/id/20100609/">newest iteration</a> in my <a href="http://visual77.com/blog/category/sc2build">StarCraft II Build Order Calculator</a> is a minimalistic approach, in comparison to the previous builds. Unlike the last few ambitious builds that attempted time and resource calculation, this is an attempt at the absolute basics. It is also my first build calculator that is somewhat usable right at the moment, as opposed to merely offering a glimpse at where I want to go with this system.</p>
<p>This calculator contains all units for all 3 races and allows for race changing and resetting the build. It also begins to toy with styles and the UI, although I didn&#8217;t spend much time other than getting elements in the rough position that I would like them to be.</p>
<p>I dropped back to a more minimal approach because I felt like the more advanced approaches I was working on were going in the wrong direction. I&#8217;d ultimately like a more advanced system, but I want to rewind a bit and go back to basics and consider alternative approaches to the other systems, that relied heavily on large data structures to store data, at times storing it repeatedly for different purposes.</p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center">
<ul class="socials">
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://visual77.com/blog/2010/06/build-20100609/&amp;title=Build+20100609" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://visual77.com/blog/2010/06/build-20100609/&amp;title=Build+20100609" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-facebook">
			<a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://visual77.com/blog/2010/06/build-20100609/&amp;t=Build+20100609" rel="nofollow" class="external" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="shr-reddit">
			<a href="http://reddit.com/submit?url=http://visual77.com/blog/2010/06/build-20100609/&amp;title=Build+20100609" rel="nofollow" class="external" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://visual77.com/blog/2010/06/build-20100609/&amp;title=Build+20100609" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Build+20100609+-+&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://visual77.com/blog/2010/06/build-20100609/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Build 20100524</title>
		<link>http://visual77.com/blog/2010/05/build-20100524/</link>
		<comments>http://visual77.com/blog/2010/05/build-20100524/#comments</comments>
		<pubDate>Sun, 30 May 2010 21:27:56 +0000</pubDate>
		<dc:creator>visual77</dc:creator>
				<category><![CDATA[gaming]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[sc2build]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[starcraft]]></category>

		<guid isPermaLink="false">http://visual77.com/blog/?p=617</guid>
		<description><![CDATA[I completed the third JavaScript iteration of the StarCraft II Build Order Calculator this morning and put it online. It took a few days longer than I expected, but I also drastically changed how the data is being stored for the build order. In my previous builds, I stored the data with the time as [...]]]></description>
			<content:encoded><![CDATA[<p>I completed the <a href="http://sc2build.com/id/20100524/">third JavaScript iteration</a> of the <a href="http://sc2build.com">StarCraft II Build Order Calculator</a> this morning and put it online. It took a few days longer than I expected, but I also drastically changed how the data is being stored for the build order. In my <a href="http://visual77.com/blog/category/sc2build">previous builds</a>, I stored the data with the time as the lowest level element, whereas this build stores the unit as the lowest level element. This makes it easier to see what the unit is doing (and thus, what it is allowed to do), but makes it harder to display the timeline.</p>
<p>I also stored unit actions (such as build Probe, warp in Pylon, etc.) as functions within each unit. As I wrote the functions, it quickly became apparent that a huge number of functions are identical and should only be written in one place.</p>
<p>This build shows me the viability of storing unit actions within the function and keeping track of unit timelines within the unit, but also shows the weaknesses of displaying the timeline when I have to scan every unit for every second to see what has been done. It still does not take into account that you need a Gateway before you can make a Zealot, but I chose to not pursue that in this build when all of the flaws of this build became apparent. It does, however, take into account queuing and will not let you build more than 1 Probe from a Nexus at any one time.</p>
<p>I will begin my next iteration very soon and hope to have that online within the next few days. Each iteration definitely teaches me a lot about what will and will not work. I am still very far from a final build, but I still think it is possible to get the final build online before the game launches on Jul 27, 2010.</p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center">
<ul class="socials">
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://visual77.com/blog/2010/05/build-20100524/&amp;title=Build+20100524" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://visual77.com/blog/2010/05/build-20100524/&amp;title=Build+20100524" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-facebook">
			<a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://visual77.com/blog/2010/05/build-20100524/&amp;t=Build+20100524" rel="nofollow" class="external" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="shr-reddit">
			<a href="http://reddit.com/submit?url=http://visual77.com/blog/2010/05/build-20100524/&amp;title=Build+20100524" rel="nofollow" class="external" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://visual77.com/blog/2010/05/build-20100524/&amp;title=Build+20100524" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Build+20100524+-+&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://visual77.com/blog/2010/05/build-20100524/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The next iteration of the S2BOC is online</title>
		<link>http://visual77.com/blog/2010/05/the-next-iteration-of-the-s2boc-is-online/</link>
		<comments>http://visual77.com/blog/2010/05/the-next-iteration-of-the-s2boc-is-online/#comments</comments>
		<pubDate>Tue, 25 May 2010 03:27:40 +0000</pubDate>
		<dc:creator>visual77</dc:creator>
				<category><![CDATA[programming]]></category>
		<category><![CDATA[sc2build]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[starcraft 2]]></category>

		<guid isPermaLink="false">http://visual77.com/blog/?p=612</guid>
		<description><![CDATA[In my last update on the StarCraft II Build Order Calculator, I said that I was going to have this next version work on building queues, but I decided to work on the URL sharing instead. The newest version of the S2BOC still doesn&#8217;t account for queues, but you can now send someone the URL [...]]]></description>
			<content:encoded><![CDATA[<p>In my<a href="http://visual77.com/blog/2010/05/first-interactive-prototype-of-sc2build-is-online/"> last update</a> on the StarCraft II Build Order Calculator, I said that I was going to have this next version work on building queues, but I decided to work on the URL sharing instead. The newest version of the S2BOC still doesn&#8217;t account for queues, but you can now send someone the URL to share build orders.</p>
<p>This URL sharing is one of the most critical requirements of this system. This calculator is designed to aid strategy discussions and a key part of that is showing a friend your strategy. As you update your build order, the URL will be modified, so you can send the build order at any time and anyone going to that URL will see what you see.</p>
<p>This calculator also allows you to switch between <a href="http://sc2build.com/id/20100521-1/#T">Terran</a>, <a href="http://sc2build.com/id/20100521-1/#P">Protoss</a> and <a href="http://sc2build.com/id/20100521-1/#Z">Zerg</a>, albeit in a clunky way that will be addressed before the final build. In order to change race, change the URL to start the build order string (from # to the end of the URL) with T, P or Z. In both FireFox and Chrome, I had to refresh the page after changing the URL before the new race properly appeared.</p>
<p><a href="http://sc2build.com/id/20100521-1/#P">StarCraft II Build Order Calculator</a></p>
<p><a href="http://sc2build.com/id/20100521-1/#PAAAbAAAc">Sample Build</a> (9 Pylon / 12 Gateway Protoss build)</p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center">
<ul class="socials">
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://visual77.com/blog/2010/05/the-next-iteration-of-the-s2boc-is-online/&amp;title=The+next+iteration+of+the+S2BOC+is+online" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://visual77.com/blog/2010/05/the-next-iteration-of-the-s2boc-is-online/&amp;title=The+next+iteration+of+the+S2BOC+is+online" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-facebook">
			<a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://visual77.com/blog/2010/05/the-next-iteration-of-the-s2boc-is-online/&amp;t=The+next+iteration+of+the+S2BOC+is+online" rel="nofollow" class="external" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="shr-reddit">
			<a href="http://reddit.com/submit?url=http://visual77.com/blog/2010/05/the-next-iteration-of-the-s2boc-is-online/&amp;title=The+next+iteration+of+the+S2BOC+is+online" rel="nofollow" class="external" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://visual77.com/blog/2010/05/the-next-iteration-of-the-s2boc-is-online/&amp;title=The+next+iteration+of+the+S2BOC+is+online" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=The+next+iteration+of+the+S2BOC+is+online+-+&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://visual77.com/blog/2010/05/the-next-iteration-of-the-s2boc-is-online/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>First interactive prototype of sc2build is online</title>
		<link>http://visual77.com/blog/2010/05/first-interactive-prototype-of-sc2build-is-online/</link>
		<comments>http://visual77.com/blog/2010/05/first-interactive-prototype-of-sc2build-is-online/#comments</comments>
		<pubDate>Fri, 21 May 2010 21:51:08 +0000</pubDate>
		<dc:creator>visual77</dc:creator>
				<category><![CDATA[sc2build]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[starcraft]]></category>

		<guid isPermaLink="false">http://visual77.com/blog/?p=609</guid>
		<description><![CDATA[I have finished the first interactive prototype of the StarCraft 2 Build Order Calculator and placed it online with the rest of my iterative development tests. This JavaScript prototype is just a proof of concept and is missing many required features, but it does show the possibilities of the system.
This build is the first JavaScript [...]]]></description>
			<content:encoded><![CDATA[<p>I have finished the <a href="http://sc2build.com/id/process/20100519-3/">first interactive prototype</a> of the StarCraft 2 Build Order Calculator and placed it online with the rest of my iterative development tests. This JavaScript prototype is just a proof of concept and is missing many required features, but it does show the possibilities of the system.</p>
<p>This build is the first JavaScript prototype of the S2BOC. I decided at the very start that I would be building this in a client side language to reduce server strain, and so doing tests in PHP is very impractical. It uses the jQuery library and contains a custom extension to generate the build order. It shows off the abilities of the system to add units and calculate the amount of minerals available at any given time, as well as calculate the earliest moment that a unit can be built.</p>
<p>My next iteration should be online and viewable this weekend. This iteration will contain features not shown in this version, like taking queues into account and building requirements. I estimate there will be another 10-12 iterations before I consider writing the final version.</p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center">
<ul class="socials">
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://visual77.com/blog/2010/05/first-interactive-prototype-of-sc2build-is-online/&amp;title=First+interactive+prototype+of+sc2build+is+online" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://visual77.com/blog/2010/05/first-interactive-prototype-of-sc2build-is-online/&amp;title=First+interactive+prototype+of+sc2build+is+online" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-facebook">
			<a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://visual77.com/blog/2010/05/first-interactive-prototype-of-sc2build-is-online/&amp;t=First+interactive+prototype+of+sc2build+is+online" rel="nofollow" class="external" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="shr-reddit">
			<a href="http://reddit.com/submit?url=http://visual77.com/blog/2010/05/first-interactive-prototype-of-sc2build-is-online/&amp;title=First+interactive+prototype+of+sc2build+is+online" rel="nofollow" class="external" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://visual77.com/blog/2010/05/first-interactive-prototype-of-sc2build-is-online/&amp;title=First+interactive+prototype+of+sc2build+is+online" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=First+interactive+prototype+of+sc2build+is+online+-+&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://visual77.com/blog/2010/05/first-interactive-prototype-of-sc2build-is-online/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Iterative Development for Economy Calculator</title>
		<link>http://visual77.com/blog/2010/05/iterative-development-for-economy-calculator/</link>
		<comments>http://visual77.com/blog/2010/05/iterative-development-for-economy-calculator/#comments</comments>
		<pubDate>Wed, 19 May 2010 17:45:13 +0000</pubDate>
		<dc:creator>visual77</dc:creator>
				<category><![CDATA[gaming]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[sc2build]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://visual77.com/blog/?p=605</guid>
		<description><![CDATA[This iterative build was to test the economy calculator at different time intervals. I created an array to store information on 5 basic protoss units &#8211; Nexus, Pylon, Gateway, Probe and Zealot. I then wrote some quick calculators to accept a time, in seconds, and return the amount of minerals available at that time. The [...]]]></description>
			<content:encoded><![CDATA[<p>This <a href="http://sc2build.com/id/process/20100519-1/">iterative build</a> was to test the economy calculator at different time intervals. I created an array to store information on 5 basic protoss units &#8211; Nexus, Pylon, Gateway, Probe and Zealot. I then wrote some quick calculators to accept a time, in seconds, and return the amount of minerals available at that time. The display is fairly minimal, just showing economy, but various units and builds were constructed at certain times.</p>
<p>The calculation is based on finding out how many probes exist at this time, how long they have existed, and multiplying that by 5/6. 5/6 is the number of minerals gathered per second per harvester (before saturation, at least). Once I have found the total minerals gathered, I get a list of all units that have begun construction at that time and subtract it from the total and return it.</p>
<p>The formula for calculating wealth seems okay, but the initial array contained far more data than I ended up using and the formulas were a bit too hard coded. Things like MULE and Chrono Boost are not being accounted for, and supply count is ignored as well.</p>
<p>I like the idea of a function being passed a time value and returning a snapshot of the build status at that time, and the array storing the build information also containing when each item was started. This system would fairly easily allow new commands to be inserted mid way through the build.</p>
<p>I definitely need to make the calclations more dynamic, though. I&#8217;m also still unsure of how to handle the starting Nexus and 5 Probes. This system puts the build time at -100 and -17, respectively, and always adds 700 minerals to the mineral count.</p>
<p>All in all, this iteration did show some interesting ideas, particularly with where to store data on all of the units. I ended up sliding it in as an array inside the build class, but that seems impractical. I should probably set a race as a class, units as a class, buildings as a class and special abilities as a class. My next experimentation will involve testing those methods for viability.</p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center">
<ul class="socials">
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://visual77.com/blog/2010/05/iterative-development-for-economy-calculator/&amp;title=Iterative+Development+for+Economy+Calculator" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://visual77.com/blog/2010/05/iterative-development-for-economy-calculator/&amp;title=Iterative+Development+for+Economy+Calculator" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-facebook">
			<a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://visual77.com/blog/2010/05/iterative-development-for-economy-calculator/&amp;t=Iterative+Development+for+Economy+Calculator" rel="nofollow" class="external" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="shr-reddit">
			<a href="http://reddit.com/submit?url=http://visual77.com/blog/2010/05/iterative-development-for-economy-calculator/&amp;title=Iterative+Development+for+Economy+Calculator" rel="nofollow" class="external" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://visual77.com/blog/2010/05/iterative-development-for-economy-calculator/&amp;title=Iterative+Development+for+Economy+Calculator" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Iterative+Development+for+Economy+Calculator+-+&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://visual77.com/blog/2010/05/iterative-development-for-economy-calculator/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>StarCraft II Build Order Calculator</title>
		<link>http://visual77.com/blog/2010/05/starcraft-ii-build-order-calculator/</link>
		<comments>http://visual77.com/blog/2010/05/starcraft-ii-build-order-calculator/#comments</comments>
		<pubDate>Wed, 19 May 2010 04:27:08 +0000</pubDate>
		<dc:creator>visual77</dc:creator>
				<category><![CDATA[gaming]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[sc2build]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[starcraft]]></category>

		<guid isPermaLink="false">http://visual77.com/blog/?p=602</guid>
		<description><![CDATA[I&#8217;ve recently begun work on a new project that should see the light of day in time for StarCraft II to launch on July 27. The project, being hosted over at http://sc2build.com, is the StarCraft II Build Order Calculator. The project aims to take the ease of use and share-friendly nature of World of Warcraft [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve recently begun work on a new project that should see the light of day in time for StarCraft II to launch on July 27. The project, being hosted over at http://sc2build.com, is the StarCraft II Build Order Calculator. The project aims to take the ease of use and share-friendly nature of World of Warcraft talent calculators and apply it to StarCraft II build orders.</p>
<p>The project is just beginning the iterative development phase, with some small scale tests of single aspects of the system. I began writing my notes on the site in plain text, but it quickly became apparent that I will have enough notes to require a full fledged blog.</p>
<p>Expect to see a flood of posts in the coming days as I think aloud on how to build this system and test various methods of implementation. I will be building it through iterative development, and as such there will be many micro tests in the coming weeks of single aspects of the system.</p>
<p>The first test that has already been pondered upon and attempted once is how to store the build order data in a URI without that URI becoming ungainly in length. You can see my <a href="http://sc2build.com/id/parse/20100518-1.php">notes on that test</a> and see a <a href="http://sc2build.com/id/parse/20100518-1a.php?build=PZZZZ1ZZZ3">sample of this one attempt</a> in the iterative development section of that site.</p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center">
<ul class="socials">
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://visual77.com/blog/2010/05/starcraft-ii-build-order-calculator/&amp;title=StarCraft+II+Build+Order+Calculator" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://visual77.com/blog/2010/05/starcraft-ii-build-order-calculator/&amp;title=StarCraft+II+Build+Order+Calculator" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-facebook">
			<a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://visual77.com/blog/2010/05/starcraft-ii-build-order-calculator/&amp;t=StarCraft+II+Build+Order+Calculator" rel="nofollow" class="external" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="shr-reddit">
			<a href="http://reddit.com/submit?url=http://visual77.com/blog/2010/05/starcraft-ii-build-order-calculator/&amp;title=StarCraft+II+Build+Order+Calculator" rel="nofollow" class="external" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://visual77.com/blog/2010/05/starcraft-ii-build-order-calculator/&amp;title=StarCraft+II+Build+Order+Calculator" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=StarCraft+II+Build+Order+Calculator+-+&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://visual77.com/blog/2010/05/starcraft-ii-build-order-calculator/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Setting up dynamic themes on Kohana</title>
		<link>http://visual77.com/blog/2010/04/kohana-dynamic-theme/</link>
		<comments>http://visual77.com/blog/2010/04/kohana-dynamic-theme/#comments</comments>
		<pubDate>Wed, 14 Apr 2010 18:43:22 +0000</pubDate>
		<dc:creator>visual77</dc:creator>
				<category><![CDATA[programming]]></category>
		<category><![CDATA[kohana]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://visual77.com/blog/?p=584</guid>
		<description><![CDATA[It&#8217;s been a little over six months since I first began to use Kohana framework for all PHP development, and I thoroughly love the system. The only issue I&#8217;ve had with Kohana is the lack of built in, intuitive support for dynamic themes. I was unable to find an easy method to set up a [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s been a little over six months since I first began to use <a href="http://visual77.com/blog/tag/kohana">Kohana</a> framework for all <a href="http://visual77.com/blog/tag/php">PHP</a> development, and I thoroughly love the system. The only issue I&#8217;ve had with Kohana is the lack of built in, intuitive support for dynamic themes. I was unable to find an easy method to set up a theme that automatically wraps itself around all pages, while remaining dynamic enough to change certain elements on a page to page basis.</p>
<p>Over the past few days, I have been exploring methods to do this, with the following requirements:</p>
<ul>
<li>Keep <em>all </em>theme files separate from the application</li>
<li>Require <em>no</em> changes to existing controllers and views to implement or change a theme</li>
<li>Allow multiple applications on the same Kohana build to use the same theme</li>
<li>Provide support for cascading themes</li>
</ul>
<p>After a few failed attempts, I have <a href="http://visual77.com/blog/tag/tutorial">found a solution</a> that covers all four requirements and is pretty easy to implement. Of course, it is easier to implement this from the start, but if you have an existing Kohana site, it shouldn&#8217;t be too difficult to integrate this theming setup into the site. <strong>The concept of the theme is simple: create a theme as a module and then  use hooks to implement the theme elements as appropriate.</strong></p>
<p><span id="more-584"></span></p>
<h3>Step 1 &#8211; Enable hooks</h3>
<p>Without hooks, this theming set up won&#8217;t be able to execute at the proper time, and timing is essential. In order to enable hooks, <strong>open up application/config/config.php and change $config['enable_hooks'] to TRUE</strong>. With hooks enabled, all files within a hooks directory are included. This will be the starting point for inserting the theme content around the template.</p>
<h3>Step 2 &#8211; Create a theme folder</h3>
<p>One of my stated goals for the theme was to keep all theme files inside a single folder. This encapsulation allows for very easy modification, copying and replacing of themes. <strong>Make a folder called themes, and a subfolder named after the theme.</strong> This theme folder will operate just like a module folder, containing config, controllers, hooks, views, etc. My directory tree now looks like this:</p>
<pre>/httpdocs
    /application
    /modules
    /system
    /themes
        /visual77
            /config
            /controllers
            /css
            /hooks
            /images
            /views
    /index.php
</pre>
<h3>Step 3 &#8211; Add the theme folder to the list of enabled modules</h3>
<p>In order to use the theme folder just as a module folder, you need to register the folder in the list of modules being used by your application.<strong> Open up application/config/config.php and add the theme folder to your list of modules at the end.</strong> This lets Kohana make full use of the directory.</p>
<pre class="brush:php">$config['modules'] = array
(
    DOCROOT.'themes/visual77',
);</pre>
<h3><strong> </strong><strong>Step 4 &#8211; Create a hook for adding theme content</strong></h3>
<p>The most important step is creating a hook to add your theme content around your template content. You want to let your template proceed as normal, and after completion, add your theme data.</p>
<p>To create hooks in Kohana, just create a file inside your hooks directory. All files in that directory will be loaded automatically. For instance, <strong>make a file called theme.php inside themes/&lt;theme-name&gt;/hooks.</strong></p>
<p>In order to do the theming, the ideal hook to use is <em>system.post_controller</em>. The previous hook, <em>system.post_controller_constructor</em>, is before the controller has executed; the following hook, <em>system</em>.<em>send_headers</em>, is after <em>system.execute</em>, and therefore can&#8217;t manipulate the controller.</p>
<p>The goal is then to create a hook on <em>system.post_controller</em> and manipulate the controller to take the template data and move it within the overall theme. To access the controller, call Kohana::$instance and begin manipulating. My hook file looks like this:</p>
<pre class="brush:php">&lt;?php defined('SYSPATH') or die('No direct access allowed');

// set my hook up to execute at the appropriate time
event::add('system.post_controller', 'visual77_theme');

function visual77_theme() {
    // grab the controller
    $controller = Kohana::$instance;

    // pull the original template aside
    $temp = $controller-&gt;template;
    // replace the template with my theme template
    $controller-&gt;template = new View('visual77/index');
    // put the original template into the content section of my theme
    $controller-&gt;template-&gt;content = $temp;
    // free up some memory by unsetting the temp variable
    unset($temp);
}
</pre>
<h3><strong>Step 5 &#8211; Begin building the theme</strong></h3>
<p>Now that the hook is in place, the only thing left to do is build your theme. In my example, <strong>create an index.php file in themes/&lt;theme-name&gt;/views/&lt;theme-name&gt;</strong>. This index file will contain the wrapper HTML for your theme, leaving the original template to drop neatly inside the content section that you define. When you begin adding css and images, you can keep it inside the theme directory. The usual .htaccess restriction on modules only applies to the module directory, which is why I put the themes outside of the module folder.</p>
<p>While building, remember to keep all theme related content, such as views and controllers, inside the theme directory. This makes the theme ultra portable and easily removed. To change themes, just change the name of the theme from Step 3 to the new theme directory.</p>
<p>In a system like this, you can even cascade themes. One great example of cascading themes is including barebones files like CSS resets and jQuery files. On a current project, I have to build an internal client administration and an external company website. Both use certain shared libraries and both need a CSS reset and jQuery files. Using cascading themes and module sharing, I can blend these two sites very neatly. The file structure for this project looks like this:</p>
<pre>/httpdocs
    /internal_application
    /external_application
    /modules
        /shared_libraries
    /system
    /themes
        /internal_theme
        /external_theme
        /default
    /index.php
</pre>
<p>Both internal and external applications include modules/shared_libraries and themes/default. However, internal_application also includes themes/internal_theme and external_application includes themes/external_theme. A switch statement in index.php dynamically switches the application based on the hostname. In the end, I  have two sites running smoothly in parallel on a single Kohana build.</p>
<h3>Final Thoughts</h3>
<p>Kohana is a fantastic system, but really needs better support for dynamic theming. In my build process for this theming pattern, I tried to emulate the wordpress theme convention, where all theme files are kept clustered and are easily swapped out for a new theme.</p>
<p>To see a full theme example, you can<strong> <a href="http://visual77.com/blog/wp-content/uploads/2010/04/visual77.zip">download my Sample Kohana Theme</a></strong> and then modify it to fit your needs. Just remember to enable hooks and include this theme as a module!</p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center">
<ul class="socials">
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://visual77.com/blog/2010/04/kohana-dynamic-theme/&amp;title=Setting+up+dynamic+themes+on+Kohana" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://visual77.com/blog/2010/04/kohana-dynamic-theme/&amp;title=Setting+up+dynamic+themes+on+Kohana" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-facebook">
			<a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://visual77.com/blog/2010/04/kohana-dynamic-theme/&amp;t=Setting+up+dynamic+themes+on+Kohana" rel="nofollow" class="external" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="shr-reddit">
			<a href="http://reddit.com/submit?url=http://visual77.com/blog/2010/04/kohana-dynamic-theme/&amp;title=Setting+up+dynamic+themes+on+Kohana" rel="nofollow" class="external" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://visual77.com/blog/2010/04/kohana-dynamic-theme/&amp;title=Setting+up+dynamic+themes+on+Kohana" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Setting+up+dynamic+themes+on+Kohana+-+&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://visual77.com/blog/2010/04/kohana-dynamic-theme/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>How to flatten an array in PHP</title>
		<link>http://visual77.com/blog/2010/03/php-flatten-array/</link>
		<comments>http://visual77.com/blog/2010/03/php-flatten-array/#comments</comments>
		<pubDate>Tue, 23 Mar 2010 23:57:18 +0000</pubDate>
		<dc:creator>visual77</dc:creator>
				<category><![CDATA[programming]]></category>
		<category><![CDATA[kohana]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://visual77.com/blog/?p=577</guid>
		<description><![CDATA[In a recent Kohana project, I came across a somewhat odd PHP scenario &#8211; I had a multidimensional array that I needed to compress to a single dimensional array, but retaining all of the non array values. Basically, I need to make this change:
Array
    (
        [...]]]></description>
			<content:encoded><![CDATA[<p>In a recent <a title="Kohana articles" href="http://visual77.com/blog/tag/kohana">Kohana</a> project, I came across a somewhat odd <a title="PHP articles" href="http://visual77.com/blog/tag/php">PHP</a> scenario &#8211; I had a multidimensional array that I needed to compress to a single dimensional array, but retaining all of the non array values. Basically, I need to make this change:</p>
<pre>Array
    (
        to =&gt; Array
            (
                0 =&gt; stevep
                1 =&gt; bobw
            )
        bcc =&gt; Array
            (
                0 =&gt; paulj
            )
    )

Array
    (
        0 =&gt; stevep
        1 =&gt; bobw
        2 =&gt; paulj
    )
</pre>
<p>I looked around a bit for an existing PHP snippet to do just this, but they were all overly complex and used recursive callback functions. I had a feeling I could pull this off in a much more clean fashion. I toyed around a bit with the <a title="PHP:Array Functions" href="http://www.php.net/manual/en/ref.array.php" target="_blank">array functions</a> and the <a title="PHP:ArrayObject" href="http://www.php.net/manual/en/class.arrayobject.php" target="_blank">ArrayObject</a> library, and this is <a title="Tutorials written by Steve Phillips" href="http://visual77.com/blog/tag/tutorial">what I settled with</a>:</p>
<pre class="brush:php">$new_array = new ArrayObject();
array_walk_recursive($old_array, array($new_array, 'offsetSet'));
$flattened_array = array_keys($new_array-&gt;getArrayCopy());
</pre>
<p>The big drawback is the way <a title="PHP:ArrayObject::OffsetSet" href="http://www.php.net/manual/en/arrayobject.offsetset.php" target="_blank">ArrayObect::offsetSet()</a> accepts its parameters, compared to how <a title="PHP:array_walk_recursive" href="http://php.net/manual/en/function.array-walk-recursive.php" target="_blank">array_walk_recursive()</a> sends the callback parameters; they are reversed.  This causes the values to become keys, which has the effect of canceling out duplicate values. If your script needs duplicate values to remain intact, then this solution won&#8217;t work for you. Otherwise, it should work out just fine.</p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center">
<ul class="socials">
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://visual77.com/blog/2010/03/php-flatten-array/&amp;title=How+to+flatten+an+array+in+PHP" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://visual77.com/blog/2010/03/php-flatten-array/&amp;title=How+to+flatten+an+array+in+PHP" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-facebook">
			<a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://visual77.com/blog/2010/03/php-flatten-array/&amp;t=How+to+flatten+an+array+in+PHP" rel="nofollow" class="external" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="shr-reddit">
			<a href="http://reddit.com/submit?url=http://visual77.com/blog/2010/03/php-flatten-array/&amp;title=How+to+flatten+an+array+in+PHP" rel="nofollow" class="external" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://visual77.com/blog/2010/03/php-flatten-array/&amp;title=How+to+flatten+an+array+in+PHP" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=How+to+flatten+an+array+in+PHP+-+&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://visual77.com/blog/2010/03/php-flatten-array/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Upcoming Work</title>
		<link>http://visual77.com/blog/2010/03/upcoming-work/</link>
		<comments>http://visual77.com/blog/2010/03/upcoming-work/#comments</comments>
		<pubDate>Wed, 17 Mar 2010 19:59:24 +0000</pubDate>
		<dc:creator>visual77</dc:creator>
				<category><![CDATA[visual77]]></category>

		<guid isPermaLink="false">http://visual77.com/blog/?p=574</guid>
		<description><![CDATA[It&#8217;s now been over a month since I&#8217;ve written any articles. I&#8217;ve been busy lately with a number of activities, plus my regular job, and just haven&#8217;t had time to write much. I do have a few article ideas that I&#8217;ll be doing shortly, though, so this site isn&#8217;t quite dead yet.
I&#8217;ll be writing an [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s now been over a month since I&#8217;ve written any articles. I&#8217;ve been busy lately with a number of activities, plus my regular job, and just haven&#8217;t had time to write much. I do have a few article ideas that I&#8217;ll be doing shortly, though, so this site isn&#8217;t quite dead yet.</p>
<p>I&#8217;ll be writing an article on best practices for creating new classes in PHP and ideal naming conventions for functions and variables. In both situations, I have the bulk of the writing already completed and just need to polish it up and get it into a blog article.</p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center">
<ul class="socials">
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://visual77.com/blog/2010/03/upcoming-work/&amp;title=Upcoming+Work" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://visual77.com/blog/2010/03/upcoming-work/&amp;title=Upcoming+Work" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-facebook">
			<a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://visual77.com/blog/2010/03/upcoming-work/&amp;t=Upcoming+Work" rel="nofollow" class="external" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="shr-reddit">
			<a href="http://reddit.com/submit?url=http://visual77.com/blog/2010/03/upcoming-work/&amp;title=Upcoming+Work" rel="nofollow" class="external" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="shr-stumbleupon">
			<a href="http://www.stumbleupon.com/submit?url=http://visual77.com/blog/2010/03/upcoming-work/&amp;title=Upcoming+Work" rel="nofollow" class="external" title="Stumble upon something good? Share it on StumbleUpon">Stumble upon something good? Share it on StumbleUpon</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Upcoming+Work+-+&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://visual77.com/blog/2010/03/upcoming-work/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic page generated in 1.252 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2010-07-30 00:59:11 -->
