<?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"
	>

<channel>
	<title>zatechcorp.com</title>
	<atom:link href="http://www.zatechcorp.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.zatechcorp.com</link>
	<description>zatechcorp development</description>
	<pubDate>Wed, 23 Apr 2008 14:41:53 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
	<language>en</language>
			<item>
		<title>CakePHP</title>
		<link>http://www.zatechcorp.com/62/cakephp/</link>
		<comments>http://www.zatechcorp.com/62/cakephp/#comments</comments>
		<pubDate>Wed, 23 Apr 2008 14:41:53 +0000</pubDate>
		<dc:creator>Azuka</dc:creator>
		
		<category><![CDATA[Journal]]></category>

		<guid isPermaLink="false">http://www.zatechcorp.com/?p=62</guid>
		<description><![CDATA[I&#8217;m rewriting Authware at the moment using CakePHP.
I figured I had to learn something about MVC sometime, but here I am doing so &#8212; and it isn&#8217;t funny.
]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m rewriting Authware at the moment using CakePHP.</p>
<p>I figured I had to learn something about MVC sometime, but here I am doing so &#8212; and it isn&#8217;t funny.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zatechcorp.com/62/cakephp/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Ruby (on Rails)</title>
		<link>http://www.zatechcorp.com/61/ruby-on-rails/</link>
		<comments>http://www.zatechcorp.com/61/ruby-on-rails/#comments</comments>
		<pubDate>Sun, 03 Feb 2008 09:09:56 +0000</pubDate>
		<dc:creator>Azuka</dc:creator>
		
		<category><![CDATA[Rants]]></category>

		<guid isPermaLink="false">http://www.zatechcorp.com/61/ruby-on-rails/</guid>
		<description><![CDATA[Back when I still had a print subscription to Linux Journal, I read an interview of David Hansson, creator of rails and thought, &#8216;wow, this is cool!&#8217;
My friend Kwame had a book on Ruby which I perused and found the language was relatively simple. Now for such a simple, amazing language &#8212; and framework &#8212; [...]]]></description>
			<content:encoded><![CDATA[<p>Back when I still had a print subscription to <a href="http://www.linuxjournal.com">Linux Journal</a>, I read an <a href="http://www.linuxjournal.com/article/8686">interview</a> of <a href="http://en.wikipedia.org/wiki/David_Heinemeier_Hansson">David Hansson</a>, creator of rails and thought, &#8216;wow, this is cool!&#8217;</p>
<p>My friend Kwame had a book on Ruby which I perused and found the language was relatively simple. Now for such a simple, amazing language &#8212; and framework &#8212; one would think the install process was just as easy. Well, it isn&#8217;t 00 at least not to me.</p>
<p>I read tutorials on the arcane of the arcane, built it myself and whatnot and in the end couldn&#8217;t get it to run on my Windows machine &#8212; not that it was present in the online repositories to get it for my Fedora machine.</p>
<p>My answer? <del datetime="2008-02-03T08:55:36+00:00">Screw rails</del>. If I need a framework I&#8217;ll go for <a href="http://cakephp.org/">Cake</a> &#8212; but we all know I won&#8217;t. After all, I&#8217;m very egotistical and want to try writing everything out myself.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zatechcorp.com/61/ruby-on-rails/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Idemili</title>
		<link>http://www.zatechcorp.com/60/idemili/</link>
		<comments>http://www.zatechcorp.com/60/idemili/#comments</comments>
		<pubDate>Sun, 12 Aug 2007 15:49:24 +0000</pubDate>
		<dc:creator>Azuka</dc:creator>
		
		<category><![CDATA[Blogger]]></category>

		<guid isPermaLink="false">http://www.zatechcorp.com/60/idemili/</guid>
		<description><![CDATA[Idemili&#8217;s blog: a Blogger template.
]]></description>
			<content:encoded><![CDATA[<p><a href="http://idemmili.blogspot.com/"><img src='http://www.zatechcorp.com/wp-content/uploads/2007/08/idemili-screenshot.jpg' alt='Idemili' class="align-left" /></a>Idemili&#8217;s blog: a Blogger template.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zatechcorp.com/60/idemili/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Ophir Milan</title>
		<link>http://www.zatechcorp.com/58/ophir-milan/</link>
		<comments>http://www.zatechcorp.com/58/ophir-milan/#comments</comments>
		<pubDate>Sun, 12 Aug 2007 15:40:42 +0000</pubDate>
		<dc:creator>Azuka</dc:creator>
		
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.zatechcorp.com/58/ophir-milan/</guid>
		<description><![CDATA[Another Wordpress project. I didn&#8217;t do the design &#8212; it was done by Cage Rattle.
]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.ophirmilan.com"><img src='http://www.zatechcorp.com/wp-content/uploads/2007/08/ophir-screenshot.jpg' alt='Ophir Milan' class="align-left" /></a>Another Wordpress project. I didn&#8217;t do the design &#8212; it was done by <a href="http://www.cagerattle.com">Cage Rattle</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zatechcorp.com/58/ophir-milan/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Open Link in New Window</title>
		<link>http://www.zatechcorp.com/56/open-link-in-new-window/</link>
		<comments>http://www.zatechcorp.com/56/open-link-in-new-window/#comments</comments>
		<pubDate>Fri, 15 Jun 2007 05:53:34 +0000</pubDate>
		<dc:creator>Azuka</dc:creator>
		
		<category><![CDATA[Rants]]></category>

		<guid isPermaLink="false">http://www.zatechcorp.com/56/open-link-in-new-window/</guid>
		<description><![CDATA[Isn&#8217;t there some way to disable this or move it further down in Firefox? Why does it have to be at the top? Everytime I righ-click a link, I intend to open it in a new tab. I hate new windows!
The crazy context menu item just keeps getting in my way&#8230;
]]></description>
			<content:encoded><![CDATA[<p>Isn&#8217;t there some way to disable this or move it further down in Firefox? Why does it have to be at the top? Everytime I righ-click a link, I intend to open it in a new tab. I hate new windows!</p>
<p>The crazy context menu item just keeps getting in my way&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zatechcorp.com/56/open-link-in-new-window/feed/</wfw:commentRss>
		</item>
		<item>
		<title>SELECT * EXCEPT(&#8230;)</title>
		<link>http://www.zatechcorp.com/55/select-except/</link>
		<comments>http://www.zatechcorp.com/55/select-except/#comments</comments>
		<pubDate>Sun, 03 Jun 2007 17:06:22 +0000</pubDate>
		<dc:creator>Azuka</dc:creator>
		
		<category><![CDATA[Journal]]></category>

		<guid isPermaLink="false">http://www.zatechcorp.com/55/select-except/</guid>
		<description><![CDATA[This would have been one of the coolest additions to SQL. Programmers are lazy, always looking for a way to avoid writing more code and I suppose this is one area I fit the norm. I need to select all the fields from a 20-column table&#8230; except one.
Doing a Google search, it&#8217;s apparent I&#8217;m not [...]]]></description>
			<content:encoded><![CDATA[<p>This would have been one of the coolest additions to SQL. Programmers are lazy, always looking for a way to avoid writing more code and I suppose this is one area I fit the norm. I need to select all the fields from a 20-column table&#8230; except one.</p>
<p>Doing a <a href="http://www.google.com/search?q=select+all+columns+except+sql">Google search</a>, it&#8217;s apparent I&#8217;m not the only one who&#8217;s looking for such a feature. I know, I know. I could have written the column names manually during the time I typed this.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zatechcorp.com/55/select-except/feed/</wfw:commentRss>
		</item>
		<item>
		<title>What&#8217;s with PHP Sessions?</title>
		<link>http://www.zatechcorp.com/54/whats-with-php-sessions/</link>
		<comments>http://www.zatechcorp.com/54/whats-with-php-sessions/#comments</comments>
		<pubDate>Fri, 01 Jun 2007 08:22:05 +0000</pubDate>
		<dc:creator>Azuka</dc:creator>
		
		<category><![CDATA[Rants]]></category>

		<guid isPermaLink="false">http://www.zatechcorp.com/54/whats-with-php-sessions/</guid>
		<description><![CDATA[I&#8217;ve been tearing out my hair trying to figure out how to have persistent sessions on the client. Okay, I&#8217;ve done it before on several projects but those ones didn&#8217;t use a database-based session handler.
I&#8217;ve called session_set_cookie_params to no avail everywhere in my code &#8212; the time in the db&#8217;s correct, but the session always [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been tearing out my hair trying to figure out how to have persistent sessions on the client. Okay, I&#8217;ve done it before on several projects but those ones didn&#8217;t use a database-based session handler.</p>
<p>I&#8217;ve called <code>session_set_cookie_params</code> to no avail everywhere in my code &#8212; the time in the db&#8217;s correct, but the session always expires when the browser is closed. Setting the session cookie myself gives a different problem &#8212; it gets invalidated on the next page load.</p>
<p>Arrrrrrrgh! I hope it really is because I&#8217;m running it on a local domain. If it isn&#8217;t, I just might get angry, download the PHP source, learn C and rewrite PHP in no particular order (I wish!).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zatechcorp.com/54/whats-with-php-sessions/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Code Profiling</title>
		<link>http://www.zatechcorp.com/53/code-profiling/</link>
		<comments>http://www.zatechcorp.com/53/code-profiling/#comments</comments>
		<pubDate>Fri, 27 Apr 2007 10:32:50 +0000</pubDate>
		<dc:creator>Azuka</dc:creator>
		
		<category><![CDATA[Coding]]></category>

		<guid isPermaLink="false">http://www.zatechcorp.com/53/code-profiling/</guid>
		<description><![CDATA[While running some tests on my local machine, I discovered a certain content item on Authware took between 2.5 and 2.9 seconds to load -- when nearly every other one got loaded in less than 0.7 seconds. There were some basic references to <a href="http://us2.php.net/manual/en/language.oop5.cloning.php">clone</a> -- especially when determining the book name for a certain content item and discovering the book was it's own parent -- and I <del datetime="2007-04-27T09:58:16+00:00">naturally</del> erroneously assumed the overhead arose in those sections. Doing a manual copy of all the elements I needed instead of cloning changed nothing.]]></description>
			<content:encoded><![CDATA[<p>While running some tests on my local machine, I discovered a certain content item on Authware took between 2.5 and 2.9 seconds to load &#8212; when nearly every other one got loaded in less than 0.7 seconds. There were some basic references to <a href="http://us2.php.net/manual/en/language.oop5.cloning.php">clone</a> &#8212; especially when determining the book name for a certain content item and discovering the book was it&#8217;s own parent &#8212; and I <del datetime="2007-04-27T09:58:16+00:00">naturally</del> erroneously assumed the overhead arose in those sections. Doing a manual copy of all the elements I needed instead of cloning changed nothing.</p>
<p>Something about code profiling from George Schlossnagle&#8217;s <a href="http://www.amazon.com/Advanced-PHP-Programming-George-Schlossnagle/dp/0672325616">Advanced PHP Programming</a> came back to me, and the hunt began. I must have been typing in the wrong stuff because only commercial products kept coming back until I got a <a href="http://xdebug.org/">Sitepoint article</a> on <a href="http://www.sitepoint.com/blogs/2004/06/03/advanced-php-programming-george-schlossnagle/">XDebug</a>.</p>
<p>Downloaded it, got <a href="http://sourceforge.net/projects/wincachegrind/">WinCacheGrind</a> and spotted the problem in less than a minute. That &#8216;nifty&#8217; <a href="http://www.zatechcorp.com/16/authware-friendly-urls-bug-list/">html_2_xhtml</a> function I wrote sometime before when I was just starting out with regular expressions did a lot of arcane stuff with the <a href="http://us2.php.net/manual/en/reference.pcre.pattern.modifiers.php">e</a> modifier of <a href="http://us2.php.net/manual/en/function.preg-replace.php">preg_replace</a>.</p>
<p>Solution: swipe the wpautop and wptexturize functions from Wordpress. The slow content item runs in less than 0.6 seconds now, and the other items take between 0.1 and 0.3 seconds to process. And er, the PHP website warns about using <a href="http://www.php.net/strstr">strstr just to determine if a needle exists in the haystack</a>. Replacing it with strpos in my own version of wptexturize saw an increase in response times (by about 17 milliseconds).</p>
<p>Let&#8217;s hope I don&#8217;t keep profiling away instead of doing some real coding in the next few weeks.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zatechcorp.com/53/code-profiling/feed/</wfw:commentRss>
		</item>
		<item>
		<title>SpawEdit</title>
		<link>http://www.zatechcorp.com/52/spawedit/</link>
		<comments>http://www.zatechcorp.com/52/spawedit/#comments</comments>
		<pubDate>Tue, 06 Mar 2007 21:51:35 +0000</pubDate>
		<dc:creator>Azuka</dc:creator>
		
		<category><![CDATA[Rants]]></category>

		<guid isPermaLink="false">http://www.zatechcorp.com/52/spawedit/</guid>
		<description><![CDATA[When I first wrote Authware I needed a WYSIWYG editor. I wanted one written in PHP that was basically drag and drop.
I couldn&#8217;t find a basic TinyMCE-PHP implementation back then. FCKEditor (it&#8217;s come a long way in the last two years) gave me a lot of bad code. By chance I came across Innovastudio&#8217;s editor. [...]]]></description>
			<content:encoded><![CDATA[<p>When I first wrote Authware I needed a WYSIWYG editor. I wanted one written in PHP that was basically drag and drop.</p>
<p>I couldn&#8217;t find a basic TinyMCE-PHP implementation back then. FCKEditor (it&#8217;s come a long way in the last two years) gave me a lot of bad code. By chance I came across <a href="http://www.innovastudio.com/">Innovastudio</a>&#8217;s editor. It did everything it said it would &#8212; the problem was, it wasn&#8217;t free.</p>
<p>After some more scouring I came across Solemtra&#8217;s <a href="http://www.solmetra.com/en/disp.php/en_products/en_spaw/en_spaw_intro">Spaw Editor</a>. It gave me some pretty bad HTML code but I wrote a simple regexp matching function that converted all the uppercase tags (a la IE) to lowercase and did some font to span tag conversion.</p>
<p>Looking back now, am I glad I made the decision? You bet!</p>
<p>For one, it gives very very XHTML-compliant code now (no FONT tags + lowercase characters), works in Opera 9 (surprise!) and still has a nifty PHP class I can instantly plug in.</p>
<p>I&#8217;m off to look for a PHP Word to HTML parser. I need one badly :(.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zatechcorp.com/52/spawedit/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Ethical Freelancing</title>
		<link>http://www.zatechcorp.com/47/ethical-freelancing/</link>
		<comments>http://www.zatechcorp.com/47/ethical-freelancing/#comments</comments>
		<pubDate>Mon, 05 Mar 2007 19:55:44 +0000</pubDate>
		<dc:creator>Azuka</dc:creator>
		
		<category><![CDATA[Rants]]></category>

		<guid isPermaLink="false">http://www.zatechcorp.com/47/ethical-freelancing/</guid>
		<description><![CDATA[I&#8217;ve getting some extra pocket change for a while now by picking up freelance jobs. So far, I&#8217;ve been most successful with Scriptlance.
From an ethical viewpoint how do you respond to a [fishy] project that asks you to create 100 fake MySpace profiles or these ones that ask you to spam blogs, forums and social [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve getting some extra pocket change for a while now by picking up freelance jobs. So far, I&#8217;ve been most successful with <a href="http://www.scriptlance.com">Scriptlance</a>.</p>
<p>From an ethical viewpoint how do you respond to a [fishy] project that asks you to <a href="http://www.scriptlance.com/projects/1171154759.shtml">create 100 fake MySpace profiles</a> or these ones that ask you to <a href="http://www.scriptlance.com/projects/1166752219.shtml">spam blogs, forums</a> and <a href="http://www.scriptlance.com/projects/1145125675.shtml">social networks</a>? On the one hand you&#8217;re making your cool money and on the other you&#8217;re contributing to problems.</p>
<p>Heck, I deal with spam everyday on my blogs. I wouldn&#8217;t want to help someone write a script that&#8217;d pass my own filters and hit my own blog.</p>
<p>Here&#8217;s the final clincher: <a href="http://www.scriptlance.com/projects/1173121123.shtml">a script to achieve higher appeal than MySpace</a> between $100 and $500. If I had such an idea, I sure wouldn&#8217;t develop it and sell it for such a measly price.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zatechcorp.com/47/ethical-freelancing/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
