<?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>Matt Prokes</title>
	<atom:link href="http://mattprokes.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://mattprokes.com</link>
	<description>&#38; Me·an·der·ings of a software engineer.</description>
	<lastBuildDate>Tue, 13 Jul 2010 07:11:24 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>A formal tutorial on programming Object-First Javascript</title>
		<link>http://mattprokes.com/2010/07/13/a-formal-tutorial-on-programming-object-first-javascript/</link>
		<comments>http://mattprokes.com/2010/07/13/a-formal-tutorial-on-programming-object-first-javascript/#comments</comments>
		<pubDate>Tue, 13 Jul 2010 06:13:04 +0000</pubDate>
		<dc:creator>mprokes</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://mattprokes.com/?p=1135</guid>
		<description><![CDATA[So it is 2010&#8230; &#8230; I know it has been a while since posting, but back when I had done the first post on object-first javascript in 2009 I thought  that it could possibly change the way javascript would be coded. Since then I have discovered a few things about it. I can also say [...]]]></description>
			<content:encoded><![CDATA[<!-- Generated by Digg Digg plugin, 
    Author : Yong Mook Kim
    Website : http://www.mkyong.com/blog/digg-digg-wordpress-plugin/
	--><div style='float:right'><table > <td><iframe src='http://digg.com/api/diggthis.php?w=new&amp;u=http%3A%2F%2Fmattprokes.com%2F2010%2F07%2F13%2Fa-formal-tutorial-on-programming-object-first-javascript%2F&amp;t=A+formal+tutorial+on+programming+Object-First+Javascript&amp;s=normal' height='80' width='52' frameborder='0' scrolling='no'></iframe></td></table></div><p>So it is 2010&#8230; &#8230; I know it has been a while since posting, but back when I had done the first post on object-first javascript in 2009 I thought  that it could possibly change the way javascript would be coded. Since then I have discovered a few things about it. I can also say that I still prefer this way of structuring javascript code more then any other, yet I feel like I have not shared this discovery very well with the world. So in the interests of delivering a clear message about what this could mean for programmers I will be creating a full tutorial on the subject at <a title="Object First Javascript" href="http://www.ofjs.org" target="_self">ofjs.org</a>.</p>
<a href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fmattprokes.com%2F2010%2F07%2F13%2Fa-formal-tutorial-on-programming-object-first-javascript%2F&amp;linkname=A%20formal%20tutorial%20on%20programming%20Object-First%20Javascript" title="Reddit" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a> <a href="http://www.addtoany.com/add_to/stumbleupon?linkurl=http%3A%2F%2Fmattprokes.com%2F2010%2F07%2F13%2Fa-formal-tutorial-on-programming-object-first-javascript%2F&amp;linkname=A%20formal%20tutorial%20on%20programming%20Object-First%20Javascript" title="StumbleUpon" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/stumbleupon.png" width="16" height="16" alt="StumbleUpon"/></a> <a href="http://www.addtoany.com/add_to/bebo?linkurl=http%3A%2F%2Fmattprokes.com%2F2010%2F07%2F13%2Fa-formal-tutorial-on-programming-object-first-javascript%2F&amp;linkname=A%20formal%20tutorial%20on%20programming%20Object-First%20Javascript" title="Bebo" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/bebo.png" width="16" height="16" alt="Bebo"/></a> <a href="http://www.addtoany.com/add_to/yahoo_buzz?linkurl=http%3A%2F%2Fmattprokes.com%2F2010%2F07%2F13%2Fa-formal-tutorial-on-programming-object-first-javascript%2F&amp;linkname=A%20formal%20tutorial%20on%20programming%20Object-First%20Javascript" title="Yahoo Buzz" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/buzz.png" width="16" height="16" alt="Yahoo Buzz"/></a> <a href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fmattprokes.com%2F2010%2F07%2F13%2Fa-formal-tutorial-on-programming-object-first-javascript%2F&amp;linkname=A%20formal%20tutorial%20on%20programming%20Object-First%20Javascript" title="Delicious" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a> <a href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fmattprokes.com%2F2010%2F07%2F13%2Fa-formal-tutorial-on-programming-object-first-javascript%2F&amp;linkname=A%20formal%20tutorial%20on%20programming%20Object-First%20Javascript" title="Twitter" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a> <a href="http://www.addtoany.com/add_to/livejournal?linkurl=http%3A%2F%2Fmattprokes.com%2F2010%2F07%2F13%2Fa-formal-tutorial-on-programming-object-first-javascript%2F&amp;linkname=A%20formal%20tutorial%20on%20programming%20Object-First%20Javascript" title="LiveJournal" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/livejournal.png" width="16" height="16" alt="LiveJournal"/></a> <a href="http://www.addtoany.com/add_to/netlog?linkurl=http%3A%2F%2Fmattprokes.com%2F2010%2F07%2F13%2Fa-formal-tutorial-on-programming-object-first-javascript%2F&amp;linkname=A%20formal%20tutorial%20on%20programming%20Object-First%20Javascript" title="Netlog" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/netlog.png" width="16" height="16" alt="Netlog"/></a> <a href="http://www.addtoany.com/add_to/hellotxt?linkurl=http%3A%2F%2Fmattprokes.com%2F2010%2F07%2F13%2Fa-formal-tutorial-on-programming-object-first-javascript%2F&amp;linkname=A%20formal%20tutorial%20on%20programming%20Object-First%20Javascript" title="HelloTxt" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/hellotxt.png" width="16" height="16" alt="HelloTxt"/></a> <a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fmattprokes.com%2F2010%2F07%2F13%2Fa-formal-tutorial-on-programming-object-first-javascript%2F&amp;linkname=A%20formal%20tutorial%20on%20programming%20Object-First%20Javascript"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://mattprokes.com/2010/07/13/a-formal-tutorial-on-programming-object-first-javascript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mule&#8230; MULE&#8230; mule</title>
		<link>http://mattprokes.com/2009/11/11/mule-mule-mule/</link>
		<comments>http://mattprokes.com/2009/11/11/mule-mule-mule/#comments</comments>
		<pubDate>Wed, 11 Nov 2009 19:12:47 +0000</pubDate>
		<dc:creator>mprokes</dc:creator>
				<category><![CDATA[Environments]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://mattprokes.com/?p=1131</guid>
		<description><![CDATA[Well I am for sure digging deep into the webservice java world lately (I may even tip up a few examples and post them here). For those of you who do not know what mule is, I would describe it as a composite webservice based environment that is meant to ease the development of integration [...]]]></description>
			<content:encoded><![CDATA[<!-- Generated by Digg Digg plugin, 
    Author : Yong Mook Kim
    Website : http://www.mkyong.com/blog/digg-digg-wordpress-plugin/
	--><div style='float:right'><table > <td><iframe src='http://digg.com/api/diggthis.php?w=new&amp;u=http%3A%2F%2Fmattprokes.com%2F2009%2F11%2F11%2Fmule-mule-mule%2F&amp;t=Mule...+MULE...+mule&amp;s=normal' height='80' width='52' frameborder='0' scrolling='no'></iframe></td></table></div><p>Well I am for sure digging deep into the webservice java world lately (I may even tip up a few examples and post them here). For those of you who do not know what mule is, I would describe it as a composite webservice based environment that is meant to ease the development of integration systems (albet with lots of XML). Really it isn&#8217;t that hard to work with, and in many cases kinda fun. You will probably see more postings on it in the future from me, but for now I just decided to take a quick break and give you guys a update on the latest and greatest tech I get to play with.</p>
<p>~matt</p>
<a href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F11%2F11%2Fmule-mule-mule%2F&amp;linkname=Mule%26%238230%3B%20MULE%26%238230%3B%20mule" title="Reddit" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a> <a href="http://www.addtoany.com/add_to/stumbleupon?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F11%2F11%2Fmule-mule-mule%2F&amp;linkname=Mule%26%238230%3B%20MULE%26%238230%3B%20mule" title="StumbleUpon" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/stumbleupon.png" width="16" height="16" alt="StumbleUpon"/></a> <a href="http://www.addtoany.com/add_to/bebo?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F11%2F11%2Fmule-mule-mule%2F&amp;linkname=Mule%26%238230%3B%20MULE%26%238230%3B%20mule" title="Bebo" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/bebo.png" width="16" height="16" alt="Bebo"/></a> <a href="http://www.addtoany.com/add_to/yahoo_buzz?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F11%2F11%2Fmule-mule-mule%2F&amp;linkname=Mule%26%238230%3B%20MULE%26%238230%3B%20mule" title="Yahoo Buzz" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/buzz.png" width="16" height="16" alt="Yahoo Buzz"/></a> <a href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F11%2F11%2Fmule-mule-mule%2F&amp;linkname=Mule%26%238230%3B%20MULE%26%238230%3B%20mule" title="Delicious" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a> <a href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F11%2F11%2Fmule-mule-mule%2F&amp;linkname=Mule%26%238230%3B%20MULE%26%238230%3B%20mule" title="Twitter" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a> <a href="http://www.addtoany.com/add_to/livejournal?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F11%2F11%2Fmule-mule-mule%2F&amp;linkname=Mule%26%238230%3B%20MULE%26%238230%3B%20mule" title="LiveJournal" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/livejournal.png" width="16" height="16" alt="LiveJournal"/></a> <a href="http://www.addtoany.com/add_to/netlog?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F11%2F11%2Fmule-mule-mule%2F&amp;linkname=Mule%26%238230%3B%20MULE%26%238230%3B%20mule" title="Netlog" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/netlog.png" width="16" height="16" alt="Netlog"/></a> <a href="http://www.addtoany.com/add_to/hellotxt?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F11%2F11%2Fmule-mule-mule%2F&amp;linkname=Mule%26%238230%3B%20MULE%26%238230%3B%20mule" title="HelloTxt" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/hellotxt.png" width="16" height="16" alt="HelloTxt"/></a> <a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F11%2F11%2Fmule-mule-mule%2F&amp;linkname=Mule%26%238230%3B%20MULE%26%238230%3B%20mule"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://mattprokes.com/2009/11/11/mule-mule-mule/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Linked Lists In Closures</title>
		<link>http://mattprokes.com/2009/11/10/linked-lists-in-closures/</link>
		<comments>http://mattprokes.com/2009/11/10/linked-lists-in-closures/#comments</comments>
		<pubDate>Tue, 10 Nov 2009 11:09:53 +0000</pubDate>
		<dc:creator>mprokes</dc:creator>
				<category><![CDATA[Design Pattern]]></category>
		<category><![CDATA[Javascript]]></category>

		<guid isPermaLink="false">http://mattprokes.com/?p=1128</guid>
		<description><![CDATA[So you have been asked to create some sort of callback history, or maybe trace how you have got to a certain point and be able to &#8220;roll back&#8221; previous states of your application. I have recently discovered a very interesting use for closure callbacks that enables just the thing. Most people would freak out, [...]]]></description>
			<content:encoded><![CDATA[<!-- Generated by Digg Digg plugin, 
    Author : Yong Mook Kim
    Website : http://www.mkyong.com/blog/digg-digg-wordpress-plugin/
	--><div style='float:right'><table > <td><iframe src='http://digg.com/api/diggthis.php?w=new&amp;u=http%3A%2F%2Fmattprokes.com%2F2009%2F11%2F10%2Flinked-lists-in-closures%2F&amp;t=Linked+Lists+In+Closures&amp;s=normal' height='80' width='52' frameborder='0' scrolling='no'></iframe></td></table></div><p>So you have been asked to create some sort of callback history, or maybe trace how you have got to a certain point and be able to &#8220;roll back&#8221; previous states of your application. I have recently discovered a very interesting use for closure callbacks that enables just the thing. Most people would freak out, but really this is just a design pattern based on linked objects in traditional languages (only more easy!).</p>
<p>So lets get on with the example.</p>
<p>var PresidentTracer = new (function(){<br />
var presidenttracer = this;<br />
var presidentCurrent;<br />
var presidentCallback;<br />
var presidentCallforward;<br />
presidenttracer.addPresident = function(presidentName){<br />
var current = presidentCurrent;<br />
var callback = presidentCallback;<br />
presidentCurrent = presidentName;</p>
<p>//callback history<br />
presidentCallback = function(){<br />
presidentCurrent = current;<br />
presidentCallback = callback;<br />
};<br />
};<br />
presidenttracer.nextPresident = function(){<br />
var current = presidentCurrent;<br />
var callback = presidentCallback;<br />
var callforward = presidentCallforward;<br />
if(presidentCallforward!=null){<br />
presidentCallforward();<br />
presidentCallback = function(){<br />
presidentCurrent = current;<br />
presidentCallback = callback;<br />
presidentCallforward = callforward;<br />
}<br />
}<br />
};<br />
presidenttracer.previousPresident = function(){<br />
var current = presidentCurrent;<br />
var callback = presidentCallback;<br />
var callforward = presidentCallforward;<br />
if(presidentCallback!=null){<br />
presidentCallback();<br />
presidentCallforward = function(){<br />
presidentCurrent = current;<br />
presidentCallback = callback;<br />
presidentCallforward = callforward;<br />
}<br />
}<br />
};<br />
presidenttracer.currentPresident = function(){<br />
return presidentCurrent;<br />
};<br />
})();</p>
<p>This is basically linked lists through closures&#8230; It can get even more interesting then this though, we could if we wanted to pass in a closure to get executed on each president switch as follows.</p>
<p>var PresidentTracer = new (function(){<br />
var presidenttracer = this;<br />
var presidentCurrent;<br />
var presidentCallback;<br />
var presidentCallforward;<br />
var switchCall;<br />
presidenttracer.addPresident = function(presidentName, callOnSwitch){<br />
var current = presidentCurrent;<br />
var callback = presidentCallback;<br />
var switcher = switchCall;<br />
presidentCurrent = presidentName;<br />
switchCall = callOnSwitch;<br />
callOnSwitch();<br />
//callback history<br />
presidentCallback = function(){<br />
switchCall = switcher;<br />
presidentCurrent = current;<br />
presidentCallback = callback;<br />
};<br />
};<br />
presidenttracer.nextPresident = function(){<br />
var current = presidentCurrent;<br />
var callback = presidentCallback;<br />
var callforward = presidentCallforward;<br />
var switcher = switchCall;<br />
if(presidentCallforward!=null){<br />
presidentCallforward();<br />
switchCall();<br />
presidentCallback = function(){<br />
presidentCurrent = current;<br />
presidentCallback = callback;<br />
presidentCallforward = callforward;<br />
switchCall = switcher;<br />
};<br />
}<br />
};<br />
presidenttracer.previousPresident = function(){<br />
var current = presidentCurrent;<br />
var callback = presidentCallback;<br />
var callforward = presidentCallforward;<br />
var switcher = switchCall;<br />
if(presidentCallback!=null){<br />
presidentCallback();<br />
switchCall();<br />
presidentCallforward = function(){<br />
presidentCurrent = current;<br />
presidentCallback = callback;<br />
presidentCallforward = callforward;<br />
switchCall = switcher;<br />
};<br />
}<br />
};<br />
presidenttracer.currentPresident = function(){<br />
return presidentCurrent;<br />
};<br />
})();</p>
<p>so lets test it out!!!</p>
<div>
<div>PresidentTracer.addPresident(&#8216;fruit&#8217;,function(){alert(&#8216;zoop&#8217;);})</div>
<div>PresidentTracer.addPresident(&#8216;whoAmI&#8217;,function(){alert(PresidentTracer.currentPresident());})</div>
<div>PresidentTracer.addPresident(&#8216;neto&#8217;,function(){alert(&#8216;dynamic callbacks&#8217;);})</div>
<div>PresidentTracer.currentPresident();</div>
<p>PresidentTracer.previousPresident()</p></div>
<div>PresidentTracer.nextPresident()</div>
<div>PresidentTracer.nextPresident()</div>
<div>PresidentTracer.previousPresident()</div>
<div>PresidentTracer.previousPresident()</p>
<p>It works! Long story short, this example shows off the dynamic nature of javascript as well as closures and callbacks. Many people have yet to understand the power of such language features, but if used correctly they can simplify programming, and give you syntactical expressiveness.</p></div>
<div></div>
<div>The author,</div>
<div>Matt Prokes</div>
<a href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F11%2F10%2Flinked-lists-in-closures%2F&amp;linkname=Linked%20Lists%20In%20Closures" title="Reddit" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a> <a href="http://www.addtoany.com/add_to/stumbleupon?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F11%2F10%2Flinked-lists-in-closures%2F&amp;linkname=Linked%20Lists%20In%20Closures" title="StumbleUpon" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/stumbleupon.png" width="16" height="16" alt="StumbleUpon"/></a> <a href="http://www.addtoany.com/add_to/bebo?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F11%2F10%2Flinked-lists-in-closures%2F&amp;linkname=Linked%20Lists%20In%20Closures" title="Bebo" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/bebo.png" width="16" height="16" alt="Bebo"/></a> <a href="http://www.addtoany.com/add_to/yahoo_buzz?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F11%2F10%2Flinked-lists-in-closures%2F&amp;linkname=Linked%20Lists%20In%20Closures" title="Yahoo Buzz" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/buzz.png" width="16" height="16" alt="Yahoo Buzz"/></a> <a href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F11%2F10%2Flinked-lists-in-closures%2F&amp;linkname=Linked%20Lists%20In%20Closures" title="Delicious" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a> <a href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F11%2F10%2Flinked-lists-in-closures%2F&amp;linkname=Linked%20Lists%20In%20Closures" title="Twitter" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a> <a href="http://www.addtoany.com/add_to/livejournal?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F11%2F10%2Flinked-lists-in-closures%2F&amp;linkname=Linked%20Lists%20In%20Closures" title="LiveJournal" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/livejournal.png" width="16" height="16" alt="LiveJournal"/></a> <a href="http://www.addtoany.com/add_to/netlog?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F11%2F10%2Flinked-lists-in-closures%2F&amp;linkname=Linked%20Lists%20In%20Closures" title="Netlog" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/netlog.png" width="16" height="16" alt="Netlog"/></a> <a href="http://www.addtoany.com/add_to/hellotxt?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F11%2F10%2Flinked-lists-in-closures%2F&amp;linkname=Linked%20Lists%20In%20Closures" title="HelloTxt" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/hellotxt.png" width="16" height="16" alt="HelloTxt"/></a> <a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F11%2F10%2Flinked-lists-in-closures%2F&amp;linkname=Linked%20Lists%20In%20Closures"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://mattprokes.com/2009/11/10/linked-lists-in-closures/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Class Based Javascript Programming</title>
		<link>http://mattprokes.com/2009/10/30/object-first-javascript-programming/</link>
		<comments>http://mattprokes.com/2009/10/30/object-first-javascript-programming/#comments</comments>
		<pubDate>Sat, 31 Oct 2009 03:09:42 +0000</pubDate>
		<dc:creator>mprokes</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[New Ideas]]></category>

		<guid isPermaLink="false">http://mattprokes.com/?p=1093</guid>
		<description><![CDATA[Over the past few years I have worked on several javascript projects, many of which use and require a class paradigm of some sort (Open API&#8217;s). So to say the least, this is an experience which is irritating for new people and is still irritating for experienced programmers. The complexity of the problem is due [...]]]></description>
			<content:encoded><![CDATA[<!-- Generated by Digg Digg plugin, 
    Author : Yong Mook Kim
    Website : http://www.mkyong.com/blog/digg-digg-wordpress-plugin/
	--><div style='float:right'><table > <td><iframe src='http://digg.com/api/diggthis.php?w=new&amp;u=http%3A%2F%2Fmattprokes.com%2F2009%2F10%2F30%2Fobject-first-javascript-programming%2F&amp;t=Class+Based+Javascript+Programming&amp;s=normal' height='80' width='52' frameborder='0' scrolling='no'></iframe></td></table></div><p>Over the past few years I have worked on several javascript projects, many of which use and require a class paradigm of some sort (Open API&#8217;s). So to say the least, this is an experience which is irritating for new people and is still irritating for experienced programmers. The complexity of the problem is due mostly to the fact that there are 3-4 ways to do some things in the language (this is one of them), and none of the ways to do it really is right in any traditional sense of the word.</p>
<p>So for the JOY of throwing another wrench in the basket, I bring you yet ANOTHER way of doing namespaces in javascript programming, but don&#8217;t worry this should be a very pleasant experience.</p>
<p><strong>First let me start off with how the problem began,</strong></p>
<ul>
<li>One day matt was asked to program yet another open API, and on this day matt was sad.</li>
</ul>
<ul>
<li>The reason was because on a previous project matt had tried an object literal style of programming (the x = {}; style), of which he found private fields were not to be found, and the requirements of an object literal (for class programming) to be very limiting  with no constructor of any sort.</li>
<li>He also remembered the wonders of an even earlier project, which used traditional javascript OOP programming (new operator). This style offered solutions to many of problems related to defining classes using object literals, but yet had its own set of problems. One of particular irritation was a property of javascript which makes it very difficult to build namespaced objects (which is why I think we do namespaces in JSON objects these days).</li>
<li>Read about the two methods here: <a href="http://www.javascriptkit.com/javatutors/oopjs.shtml" target="_blank">http://www.javascriptkit.com/javatutors/oopjs.shtml</a></li>
</ul>
<p>Now being a programmer who is mandated to use jquery, he was a fish out of water. Since jquery is not a library that lends its self well to a multi-level namespace matt was forced to come up with a new method for programming namespaced API&#8217;s, regardless.. Should matt really have to rely on a library to define a namespace in javascript?? NO.</p>
<p><strong>Thus I introduce to you, classical javascript OOP with namespaces. Which I would affectionately like to call &#8220;Javascript with Classes&#8221;.</strong></p>
<p>Properties of javascript class programming.</p>
<ul>
<li>All namespace objects are anonymous instantiated singletons. Thus carry all the properties of a typical object. This levels the playing field, there are no &#8220;special&#8221; object literals.</li>
<li>I have been using it for several months, it works on all browsers.</li>
<li>Since everything is instantiated first, objects in the namespace may easily share references, via <strong>this</strong>.</li>
<li>Namespace objects may not be instantiated, objects within the namespace may be instantiated, this method unifies classical javascript OOP and namespaces. You are able to control what objects may be instantiated with this method.</li>
<li>Namespace objects have all the standard things any other function has, including privates, this, prototype, etc.</li>
</ul>
<p>Finally, this method of javascript programming isn&#8217;t really all that special. To be honest it was looking me right in the face for the longest time, but it wasn&#8217;t until now that I get why it is important. I would say that probably the nicest thing about this method is that it unifies namespaces and classical javascript OOP, I can throw out structuring classes in object literals all together, there are also several other advantages including much cleaner code.</p>
<p><strong>So enough talk, lets cut to the chase: </strong></p>
<p><strong><span style="color: #ff0000;">(The red highlighted code is the winner, when looking at simplicity)</span><br />
</strong></p>
<ul>
<li><strong>Lets create a namespace object called HelloWorld</strong></li>
</ul>
<p><span style="color: #ff0000;"><em><span style="color: #000000;"><strong>Object Literal Way:</strong></span><br />
</em><em>HelloWorld = {};</em></span></p>
<p><em><strong>Classes Way:</strong><br />
HelloWorld = new (function(){<br />
})();</em></p>
<p><em><strong>Classical Way:</strong><br />
function HelloWorld(){<br />
}</em></p>
<ul>
<li><em> </em><strong>Simple enough, lets now add another level to our namespace<em>, say some animals.</em></strong></li>
</ul>
<p><em><strong>Object Literal Way: </strong><strong><br />
</strong>Notice: Whoa, where did function come from? Melding of 2 different concepts here. No concept of closures, you will see later how this can get extremely complicated, and even unsafe.</em></p>
<p><span style="color: #ff0000;"><em>HelloWorld = {<br />
&#8220;Animals&#8221;:{</em><em><br />
&#8220;Bunnie&#8221;:function(){},</em><em><br />
&#8220;Fish&#8221;:function(){},<br />
&#8220;Bear&#8221;:function(){}<br />
}<br />
}</em></span></p>
<p><em><strong>Javascript Class Way: </strong><strong><br />
</strong>Notice: things stay consistent. The anonymous singletons are the namespaces, functions are the objects. Think about how closures come into play with this method.<br />
</em></p>
<p><em>HelloWorld = new (function(){<br />
</em><em> var hw = this;<br />
hw.Animals = new (function(){<br />
var animal = this;<br />
animal.Bunnie = function(){};</em><em><br />
animal.Fish = function(){};<br />
animal.Bear = function(){};<br />
})();<br />
})();</em></p>
<p><strong><em>Classical Way: </em></strong><em><strong><br />
</strong>Notice:You can see where classical starts to break down with namespaces, you need to declare every level of the object. Highly irritating, if you have several levels. Everything is declared out of scope, so you will see later how closures factor into things. Also, unless you want your user to be able to instantiate HelloWorld on the fly, this is not a standard namespace.</em> This is not really even correct in many ways..<br />
<em> </em></p>
<p><em>HelloWorld = function(){}<br />
HelloWorld.Animals = function(){};<br />
HelloWorld.Animals.Bunnie = function(){};<br />
HelloWorld.Animals.Fish = function(){};<br />
HelloWorld.Animals.Bear = function(){};</em></p>
<ul>
<li><strong><em>Excellent, now lets say that we wanted one function in the object domain to access another.</em></strong></li>
</ul>
<p><em><strong>Object Literal Way: </strong><strong><br />
</strong>Notice: Humm, notice how we had to type in the full object path here, this is one of the downfalls of object literals, in the fact that scope is not retained in the literal. This becomes highly irritating if  you at all try to create any sort of complexed javascript object model.<br />
</em></p>
<p><em>HelloWorld = {<br />
Animals:{</em><em><br />
Bunnie:function(){alert(&#8216;Bunny&#8217;);},</em><em><br />
Fish:function(){alert(&#8216;Fish&#8217;);},<br />
Bear:function(){<br />
alert(&#8216;A Bear Has A&#8217;);<br />
<strong>HelloWorld.Animals.Fish();</strong><br />
}<br />
}<br />
}</em></p>
<p><em><strong>Javascript Class Way: </strong><strong><br />
</strong>Notice: Humm, this is nice, notice the fact that since everything is in a closure, we are able to retain scope. We don&#8217;t have to work down the heirarchy, just use the closes parent object to reference sub-objects. If you do lots of api calls which is what about 30% of code is, this can greatly enhance how clean code is.<br />
</em></p>
<p><span style="color: #ff0000;"><em>HelloWorld = new (function(){<br />
</em><em> var hw = this;<br />
hw.Animals = new (function(){<br />
var animal = this;<br />
animal.Bunnie = function(){alert(&#8216;Bunny&#8217;);};</em><em><br />
animal.Fish = function(){alert(&#8216;Fish&#8217;);};</em><em><br />
animal.Bear = function(){<br />
alert(&#8216;A Bear Has A&#8217;);<br />
<strong>animal.Fish();</strong><br />
};<br />
})();<br />
})();</em></span></p>
<p><strong><em>Classical Way: </em></strong><em><strong><br />
</strong>Notice:Really, classical is getting worse here, and we have the same problem that the object literal has, as the fact that there is no retention of scope.<br />
</em></p>
<p><em>HelloWorld = function(){}<br />
HelloWorld.Animals = function(){};<br />
HelloWorld.Animals.Bunnie = function(){alert(&#8216;Bunnie&#8217;);};<br />
HelloWorld.Animals.Fish = function(){alert(&#8216;Fish&#8217;);};<br />
HelloWorld.Animals.Bear = function(){alert(&#8216;A Bear Has A&#8217;);<br />
<strong>HelloWorld.Animals.Fish();</strong></em><em><br />
};</em></p>
<ul>
<li><strong>Lets say that we wanted to create a private field in a domain object.</strong></li>
</ul>
<p><strong>Object Literal Way:<br />
</strong>Its not possible to do it.</p>
<p><strong>Javascript Class Way:</strong><br />
Due to the fact that sub classes are defined in the parent class scope is inherent, and privates become easy to achieve. Privates only exist in the confines of a { and }, so a parent object could never access a child private.<span style="color: #ff0000;"><span style="color: #000000;"> </span></span></p>
<p><span style="color: #ff0000;"><em>HelloWorld = new (function(){<br />
</em><em> var hw = this;<br />
<strong>var privateHello = &#8216;Hello World&#8217;;</strong><br />
hw.Animals = new (function(){<br />
var animal = this;<br />
animal.Bunnie = function(){alert(&#8216;Bunny&#8217;);};</em><em><br />
animal.Fish = function(){alert(&#8216;Fish&#8217;);};</em><em><br />
animal.Bear = function(){<br />
alert(&#8216;A Bear Has A&#8217;);</em><em> animal.Fish();<strong>alert(privateHello);};</strong><br />
})();<br />
})();</em></span></p>
<p><span style="color: #ff0000;"><strong><span style="color: #000000;">Classical Way:</span></strong></span><em><br />
You can define a private variable in the HelloWorld Object, but due to scope issues you can&#8217;t share it with any other object.. *sigh*.</em></p>
<p><em><strong>HelloWorld = function(){var privateHello = &#8216;Hello World&#8217;;}</strong><br />
HelloWorld.Animals = function(){};<br />
HelloWorld.Animals.Bunnie = function(){alert(&#8216;Bunnie&#8217;);};<br />
HelloWorld.Animals.Fish = function(){alert(&#8216;Fish&#8217;);};<br />
HelloWorld.Animals.Bear = function(){alert(&#8216;A Bear Has A&#8217;);HelloWorld.Animals.Fish();</em><em><br />
};</em></p>
<p><strong>Hummm whenever we start to do anything complexed, a clear winner is beginning to emerge here<em>. </em>Lets continue, and try some other common programming practices. How about we try out constructors. &#8230; More on this a bit later.. getting late&#8230;<br />
</strong></p>
<p><em><br />
</em></p>
<a href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F10%2F30%2Fobject-first-javascript-programming%2F&amp;linkname=Class%20Based%20Javascript%20Programming" title="Reddit" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a> <a href="http://www.addtoany.com/add_to/stumbleupon?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F10%2F30%2Fobject-first-javascript-programming%2F&amp;linkname=Class%20Based%20Javascript%20Programming" title="StumbleUpon" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/stumbleupon.png" width="16" height="16" alt="StumbleUpon"/></a> <a href="http://www.addtoany.com/add_to/bebo?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F10%2F30%2Fobject-first-javascript-programming%2F&amp;linkname=Class%20Based%20Javascript%20Programming" title="Bebo" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/bebo.png" width="16" height="16" alt="Bebo"/></a> <a href="http://www.addtoany.com/add_to/yahoo_buzz?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F10%2F30%2Fobject-first-javascript-programming%2F&amp;linkname=Class%20Based%20Javascript%20Programming" title="Yahoo Buzz" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/buzz.png" width="16" height="16" alt="Yahoo Buzz"/></a> <a href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F10%2F30%2Fobject-first-javascript-programming%2F&amp;linkname=Class%20Based%20Javascript%20Programming" title="Delicious" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a> <a href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F10%2F30%2Fobject-first-javascript-programming%2F&amp;linkname=Class%20Based%20Javascript%20Programming" title="Twitter" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a> <a href="http://www.addtoany.com/add_to/livejournal?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F10%2F30%2Fobject-first-javascript-programming%2F&amp;linkname=Class%20Based%20Javascript%20Programming" title="LiveJournal" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/livejournal.png" width="16" height="16" alt="LiveJournal"/></a> <a href="http://www.addtoany.com/add_to/netlog?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F10%2F30%2Fobject-first-javascript-programming%2F&amp;linkname=Class%20Based%20Javascript%20Programming" title="Netlog" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/netlog.png" width="16" height="16" alt="Netlog"/></a> <a href="http://www.addtoany.com/add_to/hellotxt?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F10%2F30%2Fobject-first-javascript-programming%2F&amp;linkname=Class%20Based%20Javascript%20Programming" title="HelloTxt" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/hellotxt.png" width="16" height="16" alt="HelloTxt"/></a> <a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F10%2F30%2Fobject-first-javascript-programming%2F&amp;linkname=Class%20Based%20Javascript%20Programming"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://mattprokes.com/2009/10/30/object-first-javascript-programming/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress Failure</title>
		<link>http://mattprokes.com/2009/09/13/wordpress-failure/</link>
		<comments>http://mattprokes.com/2009/09/13/wordpress-failure/#comments</comments>
		<pubDate>Sun, 13 Sep 2009 23:38:09 +0000</pubDate>
		<dc:creator>mprokes</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://mattprokes.com/?p=1089</guid>
		<description><![CDATA[I am sure people check into this site now and then, and latley I haven&#8217;t been keeping it up-to-date. Recently, after taking a visit out to the site, I noticed that I was getting a white screen instead of my site. So I did a bit of googling around, and noticed that this was due [...]]]></description>
			<content:encoded><![CDATA[<!-- Generated by Digg Digg plugin, 
    Author : Yong Mook Kim
    Website : http://www.mkyong.com/blog/digg-digg-wordpress-plugin/
	--><div style='float:right'><table > <td><iframe src='http://digg.com/api/diggthis.php?w=new&amp;u=http%3A%2F%2Fmattprokes.com%2F2009%2F09%2F13%2Fwordpress-failure%2F&amp;t=Wordpress+Failure&amp;s=normal' height='80' width='52' frameborder='0' scrolling='no'></iframe></td></table></div><p>I am sure people check into this site now and then, and latley I haven&#8217;t been keeping it up-to-date. Recently, after taking a visit out to the site, I noticed that I was getting a white screen instead of my site. So I did a bit of googling around, and noticed that this was due to what is called a wordpress &#8220;white screen of death&#8221; in-other-words a bad plugin.After a bit of investigation I found out how to fix things, and we are back up and running again. So I am not exactly sure how long we were down for, but I think it was for a while.  Since I can&#8217;t remember the last time I did a plugin upgrade (wordpress lesson learned), the wordpress cache plugin (wp-supercache) seemed to be the problem child. Anyway, I would of caught this more early on, except I have been extremely busy with my new job lately. Anyway, I just thought I would let everyone know whats going on.</p>
<p>~matt</p>
<a href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F09%2F13%2Fwordpress-failure%2F&amp;linkname=WordPress%20Failure" title="Reddit" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a> <a href="http://www.addtoany.com/add_to/stumbleupon?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F09%2F13%2Fwordpress-failure%2F&amp;linkname=WordPress%20Failure" title="StumbleUpon" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/stumbleupon.png" width="16" height="16" alt="StumbleUpon"/></a> <a href="http://www.addtoany.com/add_to/bebo?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F09%2F13%2Fwordpress-failure%2F&amp;linkname=WordPress%20Failure" title="Bebo" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/bebo.png" width="16" height="16" alt="Bebo"/></a> <a href="http://www.addtoany.com/add_to/yahoo_buzz?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F09%2F13%2Fwordpress-failure%2F&amp;linkname=WordPress%20Failure" title="Yahoo Buzz" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/buzz.png" width="16" height="16" alt="Yahoo Buzz"/></a> <a href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F09%2F13%2Fwordpress-failure%2F&amp;linkname=WordPress%20Failure" title="Delicious" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a> <a href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F09%2F13%2Fwordpress-failure%2F&amp;linkname=WordPress%20Failure" title="Twitter" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a> <a href="http://www.addtoany.com/add_to/livejournal?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F09%2F13%2Fwordpress-failure%2F&amp;linkname=WordPress%20Failure" title="LiveJournal" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/livejournal.png" width="16" height="16" alt="LiveJournal"/></a> <a href="http://www.addtoany.com/add_to/netlog?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F09%2F13%2Fwordpress-failure%2F&amp;linkname=WordPress%20Failure" title="Netlog" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/netlog.png" width="16" height="16" alt="Netlog"/></a> <a href="http://www.addtoany.com/add_to/hellotxt?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F09%2F13%2Fwordpress-failure%2F&amp;linkname=WordPress%20Failure" title="HelloTxt" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/hellotxt.png" width="16" height="16" alt="HelloTxt"/></a> <a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F09%2F13%2Fwordpress-failure%2F&amp;linkname=WordPress%20Failure"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://mattprokes.com/2009/09/13/wordpress-failure/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Taking another look the unidoc code</title>
		<link>http://mattprokes.com/2009/07/07/taking-another-look-the-unidoc-code/</link>
		<comments>http://mattprokes.com/2009/07/07/taking-another-look-the-unidoc-code/#comments</comments>
		<pubDate>Tue, 07 Jul 2009 23:20:11 +0000</pubDate>
		<dc:creator>mprokes</dc:creator>
				<category><![CDATA[Technical]]></category>
		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://mattprokes.com/?p=1079</guid>
		<description><![CDATA[A while back I had written a new documentation system called unidoc, this technology is different then most other systems out there because it is a language independent. Rather then trying to decypher what is going on within a bit of code the parser leaves that up to the developer (which is what most documentation [...]]]></description>
			<content:encoded><![CDATA[<!-- Generated by Digg Digg plugin, 
    Author : Yong Mook Kim
    Website : http://www.mkyong.com/blog/digg-digg-wordpress-plugin/
	--><div style='float:right'><table > <td><iframe src='http://digg.com/api/diggthis.php?w=new&amp;u=http%3A%2F%2Fmattprokes.com%2F2009%2F07%2F07%2Ftaking-another-look-the-unidoc-code%2F&amp;t=Taking+another+look+the+unidoc+code&amp;s=normal' height='80' width='52' frameborder='0' scrolling='no'></iframe></td></table></div><p>A while back I had written a new documentation system called <a href="https://sourceforge.net/projects/unidocument/">unidoc</a>, this technology is different then most other systems out there because it is a language independent. Rather then trying to decypher what is going on within a bit of code the parser leaves that up to the developer (which is what most documentation systems do anyway). Documentation of what various bits of code are doing is first defined through a very rudamentary language.</p>
<p>The parser extracts out the comments and generates a xml data stream sending it to a langauge-specific xslt template, some data items are parsed in such a way that the xslt can further process, define,  and lay out langauge specific properties.  In the end generating language specific documentation through a xslt definition. Right now things are pretty simple, it took a weekend to write the whole thing but what I would like to do is re-write it using antlr+xslt, because right now things are just a simple regex parser that I wrote.</p>
<p>I also have a planned extension to the processor which focuses more on outputting a data format instead of documentation, and finally I think it would be neat to wrap this all up with a publishing system of some sort effectivly allowing people to comment on documentation.</p>
<p>I would also like to create a few simple xslt templates as proof of concept, so if anyone is interested in any of what I am talking about drop me a line and I will have something for you to do.</p>
<p>~matt</p>
<a href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F07%2F07%2Ftaking-another-look-the-unidoc-code%2F&amp;linkname=Taking%20another%20look%20the%20unidoc%20code" title="Reddit" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a> <a href="http://www.addtoany.com/add_to/stumbleupon?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F07%2F07%2Ftaking-another-look-the-unidoc-code%2F&amp;linkname=Taking%20another%20look%20the%20unidoc%20code" title="StumbleUpon" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/stumbleupon.png" width="16" height="16" alt="StumbleUpon"/></a> <a href="http://www.addtoany.com/add_to/bebo?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F07%2F07%2Ftaking-another-look-the-unidoc-code%2F&amp;linkname=Taking%20another%20look%20the%20unidoc%20code" title="Bebo" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/bebo.png" width="16" height="16" alt="Bebo"/></a> <a href="http://www.addtoany.com/add_to/yahoo_buzz?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F07%2F07%2Ftaking-another-look-the-unidoc-code%2F&amp;linkname=Taking%20another%20look%20the%20unidoc%20code" title="Yahoo Buzz" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/buzz.png" width="16" height="16" alt="Yahoo Buzz"/></a> <a href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F07%2F07%2Ftaking-another-look-the-unidoc-code%2F&amp;linkname=Taking%20another%20look%20the%20unidoc%20code" title="Delicious" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a> <a href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F07%2F07%2Ftaking-another-look-the-unidoc-code%2F&amp;linkname=Taking%20another%20look%20the%20unidoc%20code" title="Twitter" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a> <a href="http://www.addtoany.com/add_to/livejournal?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F07%2F07%2Ftaking-another-look-the-unidoc-code%2F&amp;linkname=Taking%20another%20look%20the%20unidoc%20code" title="LiveJournal" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/livejournal.png" width="16" height="16" alt="LiveJournal"/></a> <a href="http://www.addtoany.com/add_to/netlog?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F07%2F07%2Ftaking-another-look-the-unidoc-code%2F&amp;linkname=Taking%20another%20look%20the%20unidoc%20code" title="Netlog" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/netlog.png" width="16" height="16" alt="Netlog"/></a> <a href="http://www.addtoany.com/add_to/hellotxt?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F07%2F07%2Ftaking-another-look-the-unidoc-code%2F&amp;linkname=Taking%20another%20look%20the%20unidoc%20code" title="HelloTxt" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/hellotxt.png" width="16" height="16" alt="HelloTxt"/></a> <a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F07%2F07%2Ftaking-another-look-the-unidoc-code%2F&amp;linkname=Taking%20another%20look%20the%20unidoc%20code"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://mattprokes.com/2009/07/07/taking-another-look-the-unidoc-code/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Informational</title>
		<link>http://mattprokes.com/2009/06/15/informational/</link>
		<comments>http://mattprokes.com/2009/06/15/informational/#comments</comments>
		<pubDate>Tue, 16 Jun 2009 03:45:08 +0000</pubDate>
		<dc:creator>mprokes</dc:creator>
				<category><![CDATA[Links]]></category>

		<guid isPermaLink="false">http://mattprokes.com/?p=1074</guid>
		<description><![CDATA[None]]></description>
			<content:encoded><![CDATA[<!-- Generated by Digg Digg plugin, 
    Author : Yong Mook Kim
    Website : http://www.mkyong.com/blog/digg-digg-wordpress-plugin/
	--><div style='float:right'><table > <td><iframe src='http://digg.com/api/diggthis.php?w=new&amp;u=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Finformational%2F&amp;t=Informational&amp;s=normal' height='80' width='52' frameborder='0' scrolling='no'></iframe></td></table></div><p>None</p>
<a href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Finformational%2F&amp;linkname=Informational" title="Reddit" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a> <a href="http://www.addtoany.com/add_to/stumbleupon?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Finformational%2F&amp;linkname=Informational" title="StumbleUpon" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/stumbleupon.png" width="16" height="16" alt="StumbleUpon"/></a> <a href="http://www.addtoany.com/add_to/bebo?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Finformational%2F&amp;linkname=Informational" title="Bebo" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/bebo.png" width="16" height="16" alt="Bebo"/></a> <a href="http://www.addtoany.com/add_to/yahoo_buzz?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Finformational%2F&amp;linkname=Informational" title="Yahoo Buzz" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/buzz.png" width="16" height="16" alt="Yahoo Buzz"/></a> <a href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Finformational%2F&amp;linkname=Informational" title="Delicious" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a> <a href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Finformational%2F&amp;linkname=Informational" title="Twitter" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a> <a href="http://www.addtoany.com/add_to/livejournal?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Finformational%2F&amp;linkname=Informational" title="LiveJournal" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/livejournal.png" width="16" height="16" alt="LiveJournal"/></a> <a href="http://www.addtoany.com/add_to/netlog?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Finformational%2F&amp;linkname=Informational" title="Netlog" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/netlog.png" width="16" height="16" alt="Netlog"/></a> <a href="http://www.addtoany.com/add_to/hellotxt?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Finformational%2F&amp;linkname=Informational" title="HelloTxt" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/hellotxt.png" width="16" height="16" alt="HelloTxt"/></a> <a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Finformational%2F&amp;linkname=Informational"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://mattprokes.com/2009/06/15/informational/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Company</title>
		<link>http://mattprokes.com/2009/06/15/links/</link>
		<comments>http://mattprokes.com/2009/06/15/links/#comments</comments>
		<pubDate>Tue, 16 Jun 2009 03:41:19 +0000</pubDate>
		<dc:creator>mprokes</dc:creator>
				<category><![CDATA[Links]]></category>

		<guid isPermaLink="false">http://mattprokes.com/?p=1071</guid>
		<description><![CDATA[http://ingraphis.com/ Looks like a website creation/brand management company.]]></description>
			<content:encoded><![CDATA[<!-- Generated by Digg Digg plugin, 
    Author : Yong Mook Kim
    Website : http://www.mkyong.com/blog/digg-digg-wordpress-plugin/
	--><div style='float:right'><table > <td><iframe src='http://digg.com/api/diggthis.php?w=new&amp;u=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Flinks%2F&amp;t=Company&amp;s=normal' height='80' width='52' frameborder='0' scrolling='no'></iframe></td></table></div><p><a href="http://ingraphis.com/">http://ingraphis.com/</a><br />
Looks like a website creation/brand management company.</p>
<a href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Flinks%2F&amp;linkname=Company" title="Reddit" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a> <a href="http://www.addtoany.com/add_to/stumbleupon?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Flinks%2F&amp;linkname=Company" title="StumbleUpon" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/stumbleupon.png" width="16" height="16" alt="StumbleUpon"/></a> <a href="http://www.addtoany.com/add_to/bebo?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Flinks%2F&amp;linkname=Company" title="Bebo" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/bebo.png" width="16" height="16" alt="Bebo"/></a> <a href="http://www.addtoany.com/add_to/yahoo_buzz?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Flinks%2F&amp;linkname=Company" title="Yahoo Buzz" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/buzz.png" width="16" height="16" alt="Yahoo Buzz"/></a> <a href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Flinks%2F&amp;linkname=Company" title="Delicious" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a> <a href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Flinks%2F&amp;linkname=Company" title="Twitter" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a> <a href="http://www.addtoany.com/add_to/livejournal?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Flinks%2F&amp;linkname=Company" title="LiveJournal" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/livejournal.png" width="16" height="16" alt="LiveJournal"/></a> <a href="http://www.addtoany.com/add_to/netlog?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Flinks%2F&amp;linkname=Company" title="Netlog" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/netlog.png" width="16" height="16" alt="Netlog"/></a> <a href="http://www.addtoany.com/add_to/hellotxt?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Flinks%2F&amp;linkname=Company" title="HelloTxt" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/hellotxt.png" width="16" height="16" alt="HelloTxt"/></a> <a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Flinks%2F&amp;linkname=Company"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://mattprokes.com/2009/06/15/links/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Comcast, FINALLY!</title>
		<link>http://mattprokes.com/2009/06/15/comcast-finally/</link>
		<comments>http://mattprokes.com/2009/06/15/comcast-finally/#comments</comments>
		<pubDate>Tue, 16 Jun 2009 02:08:42 +0000</pubDate>
		<dc:creator>mprokes</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://mattprokes.com/?p=1067</guid>
		<description><![CDATA[Ahhh, nothing like having the internet again. I have been dealing with a few internet withdrawal issues the past 1/2 a month, but alas I am back on the information superhighway. For those of you just tuning in I had bought a house last month, and as a result my digital life has been at [...]]]></description>
			<content:encoded><![CDATA[<!-- Generated by Digg Digg plugin, 
    Author : Yong Mook Kim
    Website : http://www.mkyong.com/blog/digg-digg-wordpress-plugin/
	--><div style='float:right'><table > <td><iframe src='http://digg.com/api/diggthis.php?w=new&amp;u=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Fcomcast-finally%2F&amp;t=Comcast%2C+FINALLY%21&amp;s=normal' height='80' width='52' frameborder='0' scrolling='no'></iframe></td></table></div><p>Ahhh, nothing like having the internet again.</p>
<p>I have been dealing with a few internet withdrawal issues the past 1/2 a month, but alas I am back on the information superhighway. For those of you just tuning in I had bought a house last month, and as a result my digital life has been at a stand still lately. Its all good though I have been doing some pretty massive home renovations so regardless I don&#8217;t think I would have any time to post the past 15 days.  Something interesting, I have been checking my stats and traffic is STILL up, which is awesome.</p>
<p>Anyway, while checking my e-mail I have had a few individuals asking for cross links. So feel free to check out the new links section on, the blog. I will try to get on posting here more, now that I actually have a decent, actually amazing (compared to the place I was at) net connection.  Oh and for those of you thinking about buying a house; it will kick your ass just like they say, but it is soooo worth it.</p>
<a href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Fcomcast-finally%2F&amp;linkname=Comcast%2C%20FINALLY%21" title="Reddit" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a> <a href="http://www.addtoany.com/add_to/stumbleupon?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Fcomcast-finally%2F&amp;linkname=Comcast%2C%20FINALLY%21" title="StumbleUpon" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/stumbleupon.png" width="16" height="16" alt="StumbleUpon"/></a> <a href="http://www.addtoany.com/add_to/bebo?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Fcomcast-finally%2F&amp;linkname=Comcast%2C%20FINALLY%21" title="Bebo" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/bebo.png" width="16" height="16" alt="Bebo"/></a> <a href="http://www.addtoany.com/add_to/yahoo_buzz?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Fcomcast-finally%2F&amp;linkname=Comcast%2C%20FINALLY%21" title="Yahoo Buzz" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/buzz.png" width="16" height="16" alt="Yahoo Buzz"/></a> <a href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Fcomcast-finally%2F&amp;linkname=Comcast%2C%20FINALLY%21" title="Delicious" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a> <a href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Fcomcast-finally%2F&amp;linkname=Comcast%2C%20FINALLY%21" title="Twitter" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a> <a href="http://www.addtoany.com/add_to/livejournal?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Fcomcast-finally%2F&amp;linkname=Comcast%2C%20FINALLY%21" title="LiveJournal" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/livejournal.png" width="16" height="16" alt="LiveJournal"/></a> <a href="http://www.addtoany.com/add_to/netlog?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Fcomcast-finally%2F&amp;linkname=Comcast%2C%20FINALLY%21" title="Netlog" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/netlog.png" width="16" height="16" alt="Netlog"/></a> <a href="http://www.addtoany.com/add_to/hellotxt?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Fcomcast-finally%2F&amp;linkname=Comcast%2C%20FINALLY%21" title="HelloTxt" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/hellotxt.png" width="16" height="16" alt="HelloTxt"/></a> <a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F06%2F15%2Fcomcast-finally%2F&amp;linkname=Comcast%2C%20FINALLY%21"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://mattprokes.com/2009/06/15/comcast-finally/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Matt Prokes, Job Seeker</title>
		<link>http://mattprokes.com/2009/05/28/matt-prokes-job-seeker/</link>
		<comments>http://mattprokes.com/2009/05/28/matt-prokes-job-seeker/#comments</comments>
		<pubDate>Thu, 28 May 2009 21:28:52 +0000</pubDate>
		<dc:creator>mprokes</dc:creator>
				<category><![CDATA[Matt Prokes]]></category>

		<guid isPermaLink="false">http://mattprokes.com/?p=1056</guid>
		<description><![CDATA[Alright, so after many rounds of layoffs I was finally let go today, i had a good run (almost 3 years). So I think I am ok with it, in-fact I saw many great fellow employees go today and I can completely understand. From what I was told, I have skill sets in almost all [...]]]></description>
			<content:encoded><![CDATA[<!-- Generated by Digg Digg plugin, 
    Author : Yong Mook Kim
    Website : http://www.mkyong.com/blog/digg-digg-wordpress-plugin/
	--><div style='float:right'><table > <td><iframe src='http://digg.com/api/diggthis.php?w=new&amp;u=http%3A%2F%2Fmattprokes.com%2F2009%2F05%2F28%2Fmatt-prokes-job-seeker%2F&amp;t=Matt+Prokes%2C+Job+Seeker&amp;s=normal' height='80' width='52' frameborder='0' scrolling='no'></iframe></td></table></div><p>Alright, so after many rounds of layoffs I was finally let go today, i had a good run (almost 3 years). So I think I am ok with it, in-fact I saw many great fellow employees go today and I can completely understand. From what I was told, I <strong>have skill sets in almost all areas of tech, so picking up a new gig shouldn&#8217;t, hopefully be so bad.</strong></p>
<p><strong> Anyway cutting to the chase, I am looking for employment in the twin cities, minnesota area.</strong></p>
<p>I have a great track record, and my former bosses will vouch for it. I have lead the <strong>UI architecture/projects</strong> for many many things over the years, I have also been on back-end teams particularly in data ingestion, tagging, and syndication systems. My career has a basis in building world class internet products/properties, thus being hired by a world class company like internet broadcasting <img src='http://mattprokes.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> .</p>
<p>In my early years at the company I was the professional services lead for NBC &amp; Universal Studios, it was my job to manage, and develop software for their news properties coast to coast, work with offshore and my colleagues. I have built systems such as advertising, display, and more. Later, I was migrated to the core tools group and developed several systems and tools that are core to the business at ib, these tools are used by some of the largest media companies in the united states today to deliver content to nearly 1/2 a billion people a month.</p>
<p>From what I understand one of the core reasons I was laid off was basically due to the fact I was the low man on the totem pole, my list of developed products (while extensive) was not as lengthy as say a 6-7 year veteran.</p>
<p>I am also an indy-author as many of you probably know, and if you want to know my views on various technical subjects <a href="http://mattprokes.com/2009/04/05/the-professional-developer-series/">you can find them here</a>. Check out my <a href="http://mattprokes.com/2008/10/14/about-me/">bio</a> if you are looking for more information. One of the assets that I do have which is frequently pointed out, <strong>I am a VERY quick learner</strong>, and I am very reliable and trust worthy. I will give it to you straight, I don&#8217;t beat around the bush, I don&#8217;t play head games, and my ego is kept in check. I am here to get stuff done.</p>
<p>I have a huge plethora of technologies of which I know, primarily in the internet based domain. Though I am not adverse to developing desktop software, and even hardware systems. I have experience in all of today&#8217;s popular languages such as  java, php, c#, coldfusion, pretty much anything&#8230;., as well as a few not so popular ones. I would rate myself a 10 for developing client side applications. Maybe a 8 for back-end applications.</p>
<p>I have worked in release environments, all the hot fancy dangled development methods (agile, customer driven, xp). My preferred environment is linux, though windows is good to, I have worked with servers before, primarily tomcat and apache, I can learn other ones easily. Stay tuned for a resume.</p>
<p>I can be contacted at mattprokes@gmail.com / 612-735-1636, salary req are at least 60k for full-time <img src='http://mattprokes.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> .</p>
<a href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F05%2F28%2Fmatt-prokes-job-seeker%2F&amp;linkname=Matt%20Prokes%2C%20Job%20Seeker" title="Reddit" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a> <a href="http://www.addtoany.com/add_to/stumbleupon?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F05%2F28%2Fmatt-prokes-job-seeker%2F&amp;linkname=Matt%20Prokes%2C%20Job%20Seeker" title="StumbleUpon" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/stumbleupon.png" width="16" height="16" alt="StumbleUpon"/></a> <a href="http://www.addtoany.com/add_to/bebo?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F05%2F28%2Fmatt-prokes-job-seeker%2F&amp;linkname=Matt%20Prokes%2C%20Job%20Seeker" title="Bebo" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/bebo.png" width="16" height="16" alt="Bebo"/></a> <a href="http://www.addtoany.com/add_to/yahoo_buzz?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F05%2F28%2Fmatt-prokes-job-seeker%2F&amp;linkname=Matt%20Prokes%2C%20Job%20Seeker" title="Yahoo Buzz" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/buzz.png" width="16" height="16" alt="Yahoo Buzz"/></a> <a href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F05%2F28%2Fmatt-prokes-job-seeker%2F&amp;linkname=Matt%20Prokes%2C%20Job%20Seeker" title="Delicious" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a> <a href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F05%2F28%2Fmatt-prokes-job-seeker%2F&amp;linkname=Matt%20Prokes%2C%20Job%20Seeker" title="Twitter" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a> <a href="http://www.addtoany.com/add_to/livejournal?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F05%2F28%2Fmatt-prokes-job-seeker%2F&amp;linkname=Matt%20Prokes%2C%20Job%20Seeker" title="LiveJournal" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/livejournal.png" width="16" height="16" alt="LiveJournal"/></a> <a href="http://www.addtoany.com/add_to/netlog?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F05%2F28%2Fmatt-prokes-job-seeker%2F&amp;linkname=Matt%20Prokes%2C%20Job%20Seeker" title="Netlog" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/netlog.png" width="16" height="16" alt="Netlog"/></a> <a href="http://www.addtoany.com/add_to/hellotxt?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F05%2F28%2Fmatt-prokes-job-seeker%2F&amp;linkname=Matt%20Prokes%2C%20Job%20Seeker" title="HelloTxt" rel="nofollow" target="_blank"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/icons/hellotxt.png" width="16" height="16" alt="HelloTxt"/></a> <a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fmattprokes.com%2F2009%2F05%2F28%2Fmatt-prokes-job-seeker%2F&amp;linkname=Matt%20Prokes%2C%20Job%20Seeker"><img src="http://mattprokes.com/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://mattprokes.com/2009/05/28/matt-prokes-job-seeker/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic page generated in 0.436 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2010-09-04 01:35:51 -->
