Mar. 03 2013

What’s New with Foul 2.0

I created Foul out of frustration over the lack of an easy, stand-alone form validation library. While I’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 2 is the first major re-write of the original Foul library. I wanted to make the language more simple and less rote.

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.

Download Foul 2.0 here.

May. 05 2012

Onion, a stupid useful function

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’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 ).

function onion( $str, $l = '(', $r = ')' )
   $s = 0;
   $tally = -1;
   $found = array();
   for ($cnt = 0; $cnt < strlen($str); $cnt++)
      if ( $str{$cnt} == $l && ($cnt == 0 || $str{$cnt-1} != '\\') ) 
         if ( $tally == -1 ) {$s = $cnt+1; $tally = 1;}
         else $tally++; 
      if ($tally != -1 && $str{$cnt} == $r && $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. 
No Comments »
Mar. 03 2012

Foul for PHP

I’m in the process of porting a new unreleased Javascript version of Foul to PHP so it’s less work to do server-side validation in tandem with user convenience validation on the client-side.

No Comments »
Dec. 12 2011

HAH – super cool template / DSL engine for PHP

HAH ( HAH Ain’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

Its goal is to make HTML/XML authoring in a PHP Template environment as simple and painless as possible.

Nov. 11 2011

Wall decor on the cheap

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.

Read the rest of this entry »

No Comments »
Oct. 10 2011

A Minecraft Challenge

I’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’re racing against hunger.

Download 1.0 Here

Simply unzip into your Minecraft saves folder and start Minecraft.


Oct. 10 2011

Trying out new stuff

Just playing with a new design. Stupid simple.

No Comments »
Feb. 02 2011

Back Up

Finally got the site back up after a nasty battle with some malware and an out-of-date wordpress installation.

No Comments »
Aug. 08 2010

4kB CMS – Minno

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’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.

I’m releasing it under the MIT license so people can do whatever with it.

No Comments »
Aug. 08 2010

WP Update

Finally got around to updating my WordPress installation.

I’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’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.

I also discovered an interesting paradigm in programming called HAXE. It’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’d like to try with Haxe and see how practical it really is.

No Comments »

  • I Killed WarMECH

    Morgue File

    Electronic Frontier Foundation

    Librarian Chick, a collection of links to the best of the Internet's FREE resources for those with big brains and small pocketbooks!

    Flying Spaghetti Monster

    The Out Campaign: Scarlet Letter of Atheism