<?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>bluelinecity.com</title>
	<atom:link href="http://bluelinecity.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://bluelinecity.com</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Tue, 05 Mar 2013 22:56:19 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>What&#8217;s New with Foul 2.0</title>
		<link>http://bluelinecity.com/2013/03/05/whats-new-with-foul-2-0/</link>
		<comments>http://bluelinecity.com/2013/03/05/whats-new-with-foul-2-0/#comments</comments>
		<pubDate>Tue, 05 Mar 2013 22:56:19 +0000</pubDate>
		<dc:creator>benglish</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://bluelinecity.com/?p=646</guid>
		<description><![CDATA[I created Foul out of frustration over the lack of an easy, stand-alone form validation library. While I&#8217;m not a fan of creating new languages to solve something a preexisting one can already achieve in this case I thought the ease and speed of creating validations offset the work of learning a new language. Foul [...]]]></description>
				<content:encoded><![CDATA[<p>I created Foul out of frustration over the lack of an easy, stand-alone form validation library. While I&#8217;m not a fan of creating new languages to solve something a preexisting one can already achieve in this case I thought the ease and speed of creating validations offset the work of learning a new language.</p>
<p>Foul 2 is the first major re-write of the original Foul library. I wanted to make the language more simple and less rote. </p>
<p>Some new features include inline HTML error reporting with the ability to style them via CSS, testing against numeric and string literals and the ability to create test groups.</p>
<p><a href="http://foul.bluelinecity.com/" title="Foul 2.0">Download Foul 2.0 here.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bluelinecity.com/2013/03/05/whats-new-with-foul-2-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Onion, a stupid useful function</title>
		<link>http://bluelinecity.com/2012/05/08/onion-a-stupid-useful-function/</link>
		<comments>http://bluelinecity.com/2012/05/08/onion-a-stupid-useful-function/#comments</comments>
		<pubDate>Wed, 09 May 2012 01:25:34 +0000</pubDate>
		<dc:creator>benglish</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://bluelinecity.com/?p=622</guid>
		<description><![CDATA[I developed a small function a while ago when I was designing Foul to help me slowly parse out strings with nested delimiters such as parenthesis. Similar to peeling off the layers of an onion ( programming makes me hungry ). I realize there&#8217;s hundreds of ways to do this but I keep finding myself [...]]]></description>
				<content:encoded><![CDATA[<p>I developed a small function a while ago when I was designing Foul to help me slowly parse out strings with nested delimiters such as parenthesis. Similar to peeling off the layers of an onion ( programming makes me hungry ). </p>
<p>I realize there&#8217;s hundreds of ways to do this but I keep finding myself reusing this function in many programming projects when I need to peel apart some strings. So here it is ( and doubles as an excuse to update my neglected blog ).</p>
<pre style="font-size: 0.8em; padding: 10px; background-color: #eee;">
function onion( $str, $l = '(', $r = ')' )
{
   $s = 0;
   $tally = -1;
   $found = array();
   
   for ($cnt = 0; $cnt < strlen($str); $cnt++)
   {
      if ( $str{$cnt} == $l &#038;&#038; ($cnt == 0 || $str{$cnt-1} != '\\') ) 
         if ( $tally == -1 ) {$s = $cnt+1; $tally = 1;}
         else $tally++; 
      
      if ($tally != -1 &#038;&#038; $str{$cnt} == $r &#038;&#038; $str{$cnt-1} != '\\' ) $tally--;

      if ( $tally == 0 )
      {
         $found[] =  substr($str,$s,$cnt - $s);
         $tally = -1;
      }      
   }
   
   return $found;
}

/*
  This returns an array of the first level of strings found in side the $l
  and $r variables. 
*/
</pre>
]]></content:encoded>
			<wfw:commentRss>http://bluelinecity.com/2012/05/08/onion-a-stupid-useful-function/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Foul for PHP</title>
		<link>http://bluelinecity.com/2012/03/04/foul-for-php/</link>
		<comments>http://bluelinecity.com/2012/03/04/foul-for-php/#comments</comments>
		<pubDate>Mon, 05 Mar 2012 00:06:49 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://bluelinecity.com/?p=619</guid>
		<description><![CDATA[I&#8217;m in the process of porting a new unreleased Javascript version of Foul to PHP so it&#8217;s less work to do server-side validation in tandem with user convenience validation on the client-side.]]></description>
				<content:encoded><![CDATA[<p>I&#8217;m in the process of porting a new unreleased Javascript version of Foul to PHP so it&#8217;s less work to do server-side validation in tandem with user convenience validation on the client-side.</p>
]]></content:encoded>
			<wfw:commentRss>http://bluelinecity.com/2012/03/04/foul-for-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HAH &#8211; super cool template / DSL engine for PHP</title>
		<link>http://bluelinecity.com/2011/12/02/hah-super-cool-template-dsl-engine-for-php/</link>
		<comments>http://bluelinecity.com/2011/12/02/hah-super-cool-template-dsl-engine-for-php/#comments</comments>
		<pubDate>Fri, 02 Dec 2011 20:36:16 +0000</pubDate>
		<dc:creator>benglish</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://bluelinecity.com/?p=611</guid>
		<description><![CDATA[HAH ( HAH Ain&#8217;t HAML ) is a HAML-like template language specifically for PHP with some added features and a focus on development speed. This is my first official beta release of this engine. You can check out examples, documentation and download it at http://hah.bluelinecity.com/. Its goal is to make HTML/XML authoring in a PHP [...]]]></description>
				<content:encoded><![CDATA[<p>
<a href="http://hah.bluelinecity.com/"><img src="http://bluelinecity.com/wp-content/uploads/hah-300x150.png" alt="" title="hah" width="300" height="150" class="alignleft size-medium wp-image-614" /></a><br />
HAH ( HAH Ain&#8217;t HAML ) is a HAML-like template language specifically for PHP with some added features and a focus on development speed. This is my first official beta release of this engine. You can check out examples, documentation and download it at <a href="http://hah.bluelinecity.com/" title="HAH PHP Template Engine">http://hah.bluelinecity.com/</a>. </p>
<p>Its goal is to make HTML/XML authoring in a PHP Template environment as simple and painless as possible. </p>
]]></content:encoded>
			<wfw:commentRss>http://bluelinecity.com/2011/12/02/hah-super-cool-template-dsl-engine-for-php/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Wall decor on the cheap</title>
		<link>http://bluelinecity.com/2011/11/06/wall-decor-on-the-cheap/</link>
		<comments>http://bluelinecity.com/2011/11/06/wall-decor-on-the-cheap/#comments</comments>
		<pubDate>Sun, 06 Nov 2011 15:41:41 +0000</pubDate>
		<dc:creator>benglish</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://bluelinecity.com/?p=573</guid>
		<description><![CDATA[If you have very little cash flow and your place sorta resembles a clean room in a secret government lab, then this might be exactly what you need. With very little investment you can create some neat, super cheap pieces to hang on your walls. Required materials: Thumb Tacks Paperclips Nicely aged book you don&#8217;t [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://bluelinecity.com/wp-content/uploads/IMG_20110909_215916.jpg"><img src="http://bluelinecity.com/wp-content/uploads/IMG_20110909_215916-150x150.jpg" alt="" title="Cheap Wall Art" width="150" height="150" class="alignright size-thumbnail wp-image-581" /></a>If you have very little cash flow and your place sorta resembles a clean room in a secret government lab, then this might be exactly what you need. With very little investment you can create some neat, super cheap pieces to hang on your walls.</p>
<p><span id="more-573"></span></p>
<p>Required materials:</p>
<ul>
<li>Thumb Tacks</li>
<li>Paperclips</li>
<li>Nicely aged book you don&#8217;t mind destroying</li>
<li>Black foamcore</li>
<li>Craft Knife ( like X-act or something )</li>
<li>Straight edge</li>
<li>Gluestick</li>
<li>Needlenose pliers</li>
</ul>
<p><a href="http://bluelinecity.com/wp-content/uploads/IMG_20110906_203045.jpg"><img src="http://bluelinecity.com/wp-content/uploads/IMG_20110906_203045-300x225.jpg" alt="" title="Neat Pages" width="300" height="225" class="alignleft size-medium wp-image-579" align="left" /></a>First find an old book that has some pictures or neat typography you don&#8217;t mind cutting up. It&#8217;s also a good idea to look it up on the internet first to make sure you&#8217;re not destroying the next Voynich Manuscript.</p>
<p>Get a straight edge and cut out the pages you want.</p>
<p>Next cut out the foam core with a craft knife to fit the pages. I left about 1/2in of space around the page and maybe 3/4in on the bottom. </p>
<p>Center the page and lightly mark the corners with a pencil. Use the glue stick on the back of the page around the edges and carefully lay it down on the foam core. ( Don&#8217;t use any kind of wet glue because it will absorb into the paper and make it look like a raisin. )
</p>
<p><a href="http://bluelinecity.com/wp-content/uploads/IMG_20110909_215900.jpg"><img src="http://bluelinecity.com/wp-content/uploads/IMG_20110909_215900-300x225.jpg" alt="" title="Paperclip Picture Holder Thingies" width="300" height="225" class="alignright size-medium wp-image-580" /></a>To create the holders take a paper clip and open it up by pulling out the middle loop and flattening it so it&#8217;s opposite the outer loop. Next take the pliers and about 1/2in from the end of the smaller loop bend the loop 90 degrees. Then about mid-way down from that make another 90 degree bend so it looks like paperclip the picture.</p>
<p><br clear="all" /></p>
<p><a href="http://bluelinecity.com/wp-content/uploads/IMG_20110909_220156-e1319917774739.jpg"><img src="http://bluelinecity.com/wp-content/uploads/IMG_20110909_220156-e1319917774739-225x300.jpg" alt="" title="SAMSUNG" width="225" height="300" class="alignleft size-medium wp-image-578" /></a>Now you&#8217;re pretty much done. All you need to do is find a good place to hang it and attach the paperclips to the wall with the thumbtacks. Then when you slid the picture in it hides the fact you&#8217;re a cheap-ass and used paperclips to hang pictures of a mutilated book.</p>
<p><br clear="all" /></p>
<div align="center">
<h3>Tada!</h3>
<p><a href="http://bluelinecity.com/wp-content/uploads/IMG_20110909_215934.jpg"><img src="http://bluelinecity.com/wp-content/uploads/IMG_20110909_215934-300x225.jpg" alt="" title="Finished" width="300" height="225" class="aligncenter size-medium wp-image-582" /></a></p>
<p><em>My phone takes pretty terrible pictures so I apologize for the quality of these.</em></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://bluelinecity.com/2011/11/06/wall-decor-on-the-cheap/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A Minecraft Challenge</title>
		<link>http://bluelinecity.com/2011/10/11/a-minecraft-challenge/</link>
		<comments>http://bluelinecity.com/2011/10/11/a-minecraft-challenge/#comments</comments>
		<pubDate>Wed, 12 Oct 2011 02:24:43 +0000</pubDate>
		<dc:creator>benglish</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://bluelinecity.com/?p=568</guid>
		<description><![CDATA[I&#8217;ve been playing with some interesting Minecraft challenges and came up with this fun little diddy. No land anywhere. Once you die you respawn over the void and become stuck in an infinite loop of death. You have the absolute bare minimum. Yet you have just enough to create plenty. Every block placement must be [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://bluelinecity.com/wp-content/uploads/file/The%20Void%20Challenge.zip"><img class="alignnone size-large wp-image-569" style="border: 0pt none;" title="The Void Challenge" src="http://bluelinecity.com/wp-content/uploads/the_void_challenge-1024x555.png" alt="" width="522" height="269" /></a></p>
<p>I&#8217;ve been playing with some interesting Minecraft challenges and came up with this fun little diddy. No land anywhere. Once you die you respawn over the void and become stuck in an infinite loop of death. You have the absolute bare minimum. Yet you have just enough to create plenty. Every block placement must be planned. Every block preserved. And you&#8217;re racing against hunger.</p>
<p><a title="The Void Challenge Download" href="http://bluelinecity.com/wp-content/uploads/file/The Void Challenge.zip">Download 1.0 Here</a></p>
<p>Simply unzip into your Minecraft saves folder and start Minecraft.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://bluelinecity.com/2011/10/11/a-minecraft-challenge/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Trying out new stuff</title>
		<link>http://bluelinecity.com/2011/10/03/trying-out-new-stuff/</link>
		<comments>http://bluelinecity.com/2011/10/03/trying-out-new-stuff/#comments</comments>
		<pubDate>Tue, 04 Oct 2011 02:49:19 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://bluelinecity.com/?p=565</guid>
		<description><![CDATA[Just playing with a new design. Stupid simple.]]></description>
				<content:encoded><![CDATA[<p>Just playing with a new design. Stupid simple.</p>
]]></content:encoded>
			<wfw:commentRss>http://bluelinecity.com/2011/10/03/trying-out-new-stuff/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Back Up</title>
		<link>http://bluelinecity.com/2011/02/16/back-up/</link>
		<comments>http://bluelinecity.com/2011/02/16/back-up/#comments</comments>
		<pubDate>Thu, 17 Feb 2011 02:08:11 +0000</pubDate>
		<dc:creator>benglish</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://bluelinecity.com/?p=540</guid>
		<description><![CDATA[Finally got the site back up after a nasty battle with some malware and an out-of-date wordpress installation.]]></description>
				<content:encoded><![CDATA[<p>Finally got the site back up after a nasty battle with some malware and an out-of-date wordpress installation.</p>
]]></content:encoded>
			<wfw:commentRss>http://bluelinecity.com/2011/02/16/back-up/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>4kB CMS &#8211; Minno</title>
		<link>http://bluelinecity.com/2010/08/31/4kb-cms-minno/</link>
		<comments>http://bluelinecity.com/2010/08/31/4kb-cms-minno/#comments</comments>
		<pubDate>Wed, 01 Sep 2010 02:13:25 +0000</pubDate>
		<dc:creator>benglish</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://bluelinecity.com/?p=534</guid>
		<description><![CDATA[I just posted a section for Minno, a super small PHP CMS that started out as just a silly experiment. Later I realized I actually had a need for a simple CMS that didn&#8217;t require a database, had a web editing interface and gave complete control over raw HTML/CSS/JS code. I plugged some holes in [...]]]></description>
				<content:encoded><![CDATA[<p>I just posted a <a href="http://minno.bluelinecity.com">section for Minno,</a> a super small PHP CMS that started out as just a silly experiment.</p>
<p>Later I realized I actually had a need for a simple CMS that didn&#8217;t require a database, had a web editing interface and gave complete control over raw HTML/CSS/JS code. I plugged some holes in the original code and added some extra abilities to it.</p>
<p>I&#8217;m releasing it under the MIT license so people can do whatever with it.</p>
]]></content:encoded>
			<wfw:commentRss>http://bluelinecity.com/2010/08/31/4kb-cms-minno/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WP Update</title>
		<link>http://bluelinecity.com/2010/08/29/wp-update/</link>
		<comments>http://bluelinecity.com/2010/08/29/wp-update/#comments</comments>
		<pubDate>Sun, 29 Aug 2010 14:17:08 +0000</pubDate>
		<dc:creator>benglish</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://bluelinecity.com/?p=532</guid>
		<description><![CDATA[Finally got around to updating my WordPress installation. I&#8217;ve also have had time to start working on some past projects that are laying around. One of my most recent projects is a php CMS that&#8217;s less than 4kB. It started out as just a silly self-satisfying POC but It turned out I actually had a [...]]]></description>
				<content:encoded><![CDATA[<p>Finally got around to updating my WordPress installation.</p>
<p>I&#8217;ve also have had time to start working on some past projects that are laying around. One of my most recent projects is a php CMS that&#8217;s less than 4kB. It started out as just a silly self-satisfying POC but It turned out I actually had a need for it.</p>
<p>I also discovered an interesting paradigm in programming called <a title="Haxe Programming Language" href="http://haxe.org/">HAXE</a>. It&#8217;s a platform that lets you deploy apps to different platforms and easily trade data structures from one language to another. I have a project picked out that I&#8217;d like to try with Haxe and see how practical it really is.</p>
]]></content:encoded>
			<wfw:commentRss>http://bluelinecity.com/2010/08/29/wp-update/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
