<?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>Dave&#039;s Blog &#187; Code</title>
	<atom:link href="http://unknowngenius.com/blog/archives/category/geek/code/feed/" rel="self" type="application/rss+xml" />
	<link>http://unknowngenius.com/blog</link>
	<description>Chemically-enhanced neural rewiring, on a semi-regular basis...</description>
	<lastBuildDate>Thu, 29 Jul 2010 01:06: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>Spam Karma goes GPL</title>
		<link>http://unknowngenius.com/blog/archives/2008/07/14/spam-karma-is-gpl/</link>
		<comments>http://unknowngenius.com/blog/archives/2008/07/14/spam-karma-is-gpl/#comments</comments>
		<pubDate>Sun, 13 Jul 2008 18:29:04 +0000</pubDate>
		<dc:creator>Dave</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[Geek]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://unknowngenius.com/blog/?p=1697</guid>
		<description><![CDATA[Geek news warning: sane people and anybody for whom such acronyms as PHP or GPL merely evocate some brand new drugs the kids might be into these days: you are probably better off skipping this one. I&#8217;ll try to keep it short. Spam Karma 2 is now released as GPL v.2. This essentially means you [...]<p>Post originally published on: <a href="http://unknowngenius.com/blog">Dave's Blog</a> (please leave your comments over there)<br/><br/><a href="http://unknowngenius.com/blog/archives/2008/07/14/spam-karma-is-gpl/">Spam Karma goes GPL</a></p>
]]></description>
			<content:encoded><![CDATA[<p><em><strong>Geek news warning</strong>: sane people and anybody for whom such acronyms as PHP or GPL merely evocate some brand new drugs the kids might be into these days: you are probably better off skipping this one.</em></p>
<p>I&#8217;ll try to keep it short. </p>
<p><a href="http://unknowngenius.com/blog/wordpress/spam-karma/">Spam Karma 2</a> is now released as <a href="http://www.gnu.org/licenses/gpl-2.0.html">GPL v.2</a>. This essentially means you can do anything you want to it, except claim you made it (copyright and attribution notice must remain there). You should also note that any attempt at deriving some ill-deserved profit from it through harebrained web marketing schemes will earn you both my long-standing scorn and a nut-shriveling decrease to your <a href="http://unknowngenius.com/blog/archives/2005/03/28/real-karma/"><em>actual</em> karma</a>.</p>
<p>I suppose another angle to that post&#8217;s title could be:<br />
<i>Officially discontinuing Spam Karma&#8217;s development: so long and thanks for all the fish</i><br />
as this is what this truly is about. </p>
<p>But, such a title would be slightly misleading (and no doubt heavily quoted out of context): Indeed, I am hereby officially announcing that I will no longer support, maintain or further develop Spam Karma (beside some very occasional, very limited poking, until the transition to a self-maintained project is completed). However, thanks to the magic of free software, all the unsung heroes of the Open Source world will soon rise to take over and bring you a stronger, better, more closely supported version of Spam Karma!</p>
<p>Okay, what&#8217;s more likely to happen is that nobody will really bother taking over, except perhaps a handful well-intentioned but utterly clueless beginner coders who will quickly find themselves overwhelmed by the task and next be seen running away screaming at the top of their lungs. Hey, I&#8217;m not blaming anybody: I wouldn&#8217;t waste my time on a non-paying, open-source community project either&#8230;</p>
<p>But on the off-chance that you would (and trust me it won&#8217;t do anything to help you get laid either), I have set up a <a href="http://code.google.com/p/spam-karma/">Google Code repository</a>, which could become the jumping point to some magnificent community-based development effort (or not). If you are interested in participating in any way, contact me (<a href="mailto:zedrdave@gmail">mail</a> or <a href="http://unknowngenius.com/blog/me/contact/">contact form</a>) with a *brief* description of who you are, what you can do and what you wanna do. I don&#8217;t need a resume (I am not hiring), just a very quick idea of what level of responsibility you&#8217;d be willing to take on the project. I&#8217;ll put in the first couple people that seem to know what they are doing (and do not sound like they&#8217;ll be selling everything to Russian mafia-owned spam sites) as administrators of the project, and hopefully from there on, things will work by themselves&#8230;</p>
<p>If you think you&#8217;d like to tackle any aspect of SK2 development (including possibly porting it to other platforms), here is your chance. Speak now or go back to more fruitful and life-rewarding endeavours forever.</p>
<p>Oh, and as for the &#8220;reasons&#8221;, well, here they are:</p>
<p><span id="more-1697"></span><br />
1) <strong>Life.</strong><br />
Much as I love the challenge and excitement of coding an anti-spam filter and thinking up new tricks to defeat parasitic life-forms of the web, I just don&#8217;t have the time anymore. And to be honest, if I <em>did</em> have the time, I probably would have other challenging, exciting new projects I&#8217;d rather tackle. I&#8217;m fickle like that.</p>
<p>2) <strong>WordPress</strong><br />
I will really try to keep that one short, because I could probably write a novel of that. And it wouldn&#8217;t be a very interesting read.<br />
In a word: WordPress kinda sucks nowadays. Its retarded upgrade rate makes it nearly impossible to keep up, in turn making it a constant security threat on my servers. And each time I finally cave in and install one of those &#8220;mandatory security upgrade&#8221;, it also installs 600 Ko of other theme compatibility-breaking fluffy crap that I never asked for in the first place. Usually setting the ground for the next cycle of security-exploit-rushed-upgrade. To sum up, it&#8217;s become incredibly bloated and tedious to support. Replacing it on my own servers is very high on my list of things to do (which means somewhat in the first 1000 items).</p>
<p>Having no interest for WordPress anymore, I have thus very little interest for WordPress-related development. </p>
<p>As for WP coming bundled with its own anti-spam plugin, I could also go on for hours on that. The fact that a community-based open-source project is used to distribute a commercially licensed piece of software doesn&#8217;t make me particularly happy. But frankly I haven&#8217;t cared and still don&#8217;t care enough to even raise a stint. At any rate I know lots of people (me included, obviously), aren&#8217;t convinced by the way Akismet works and are happier doing the filtering on our own servers, so there is definitely room for SK2-like plugins out there.</p>
<p>Anyway, thanks everybody for your support all these years and let&#8217;s gather a round of applause for our brand new <strong><a href="http://code.google.com/p/spam-karma/">Spam Karma GPL Edition</a></strong>!</p>
<p><strong>Update:</strong> in addition to the <a href="http://code.google.com/p/spam-karma/">Google Code-hosted project</a>, there is now a dev mailing list set up on Google Groups, <a href="http://groups.google.com/group/sk2-gpl-dev">go check it out</a> and feel free to sign up if you are interested in SK2&#8242;s future development</a>!</p>
<p>Post originally published on: <a href="http://unknowngenius.com/blog">Dave's Blog</a> (please leave your comments over there)<br/><br/><a href="http://unknowngenius.com/blog/archives/2008/07/14/spam-karma-is-gpl/">Spam Karma goes GPL</a></p>
]]></content:encoded>
			<wfw:commentRss>http://unknowngenius.com/blog/archives/2008/07/14/spam-karma-is-gpl/feed/</wfw:commentRss>
		<slash:comments>125</slash:comments>
		</item>
		<item>
		<title>Better leave at the top of your game&#8230;</title>
		<link>http://unknowngenius.com/blog/archives/2006/04/14/better-leave-at-the-top-of-your-game/</link>
		<comments>http://unknowngenius.com/blog/archives/2006/04/14/better-leave-at-the-top-of-your-game/#comments</comments>
		<pubDate>Fri, 14 Apr 2006 17:07:55 +0000</pubDate>
		<dc:creator>Dave</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://unknowngenius.com/blog/archives/2006/04/14/better-leave-at-the-top-of-your-game/</guid>
		<description><![CDATA[Wherein the author enumerates much meaningless data and uses them as springboard for some slightly more topical meandering&#8230; 1,059 WordPress plugins currently sit on wp-plugins.net. Not bad for a project that was half-shunned by the official WP pubah(s) from the very beginning. Kinda getting worried by the amount of bandwidth this is eating off my [...]<p>Post originally published on: <a href="http://unknowngenius.com/blog">Dave's Blog</a> (please leave your comments over there)<br/><br/><a href="http://unknowngenius.com/blog/archives/2006/04/14/better-leave-at-the-top-of-your-game/">Better leave at the top of your game&#8230;</a></p>
]]></description>
			<content:encoded><![CDATA[<p><i>Wherein the author enumerates much meaningless data and uses them as springboard for some slightly more topical meandering&#8230;</i></p>
<ul>
<li><strong>1,059</strong> WordPress plugins currently sit on <a href="http://www.wp-plugins.net/">wp-plugins.net</a>. Not bad for a project that was half-shunned by the official WP pubah(s) from the very beginning. Kinda getting worried by the amount of bandwidth this is eating off my quota right now (read: somewhere in the 200% vicinity). But we&#8217;ll cross that bridge when it starts falling.</li>
<li><strong>11,232</strong> <a href="http://unknowngenius.com/blog/wordpress/spam-karma/">SK2</a> downloads for the year 2006 so far. There again, not bad for a plugin that doesn&#8217;t happen to be <a href="http://akismet.com/">the one packaged by default in WordPress 2.0</a>.</li>
<li><strong>968</strong> comments (mostly Trackbacks and Pingbacks, as I closed comments on this page a while back) on <a href="http://unknowngenius.com/blog/wordpress/spam-karma/">SK2&#8242;s homepage</a>. Can&#8217;t help but notice an uncannily high percentage of posts from Germany. Is SK2 like, the David Hasselhoff of anti-spam plugins?</li>
</ul>
<p>As you can tell, despite being on cruise-control mode, the Deliverables Department of UnknownGenius Corp. is doing nicely. As for where it&#8217;s heading, I suppose I may use the occasion to offer a quick update:</p>
<p>The short answer is that it is going nowhere.</p>
<p>The longer answer is that, ultimately, I will be phasing out <em>all</em> WordPress development (and most web coding, actually) from my activities.</p>
<p>For those who care about the <i>Why</i>, I will try to provide some elements without delving too deep into the multiple layers of frustration and unrelated motives for my general disinterest toward WordPress at the moment:</p>
<p><span id="more-1378"></span>Recently, <a href="http://www.skippy.net/blog/2006/03/23/wordpress-less/">Skippy</a> summed-up quite nicely the building frustration in the WP community. Mine has been growing along a similar path and, after voicing my concerns a few times last year, I eventually decided to save me the time and energy and silently started shifting out most of my WP-related activities. Like Skippy, I take issues with the way WP development is &#8220;managed&#8221;, I also have serious concerns about the increased melting of public open-source code with semi-private interests, as reflected by the blatantly commercial marketing strategies of recent releases. Don&#8217;t get me wrong: I am not one of those open-source zealots who considers it a crime for software authors to make a dime off their work, I just do not like the way it&#8217;s done here.</p>
<p>On a wider scale, I guess I am getting tired of the whole &#8220;Web 2.0&#8243; micro-bubble, the underwhelmingly banal concepts it rests on and the mix of greed and naive enthusiasm that propels it. I was there the first time around, and believe me: little else of durable value was invented during that era beside the Skyy &#038; Red Bull cocktail. Oh, I&#8217;m sure a few people will manage to make some cash this time too, and I certainly wish them all the success they deserve. But I see little reason contributing my time graciously to help selling <a href="http://automattic.com/">Automattic</a> to Yahoo or some other acquisition-hungry greying Bay Area corporation, which is what developing for WordPress increasingly felt like, as of late.</p>
<p>Please do not panic (and do not listen to the well-meaning people that might be inclined to tell you otherwise): I am <em>not</em> dropping <a href="http://unknowngenius.com/blog/wordpress/spam-karma/">Spam Karma</a> nor <a href="http://www.wp-plugins.net">wp-plugins.net</a> any time soon. I will keep doing as I have over the past few months: maintain and improve as mandatory, without any sort of long term planning (in the positive or the negative) as long as things remain stable. If push comes to shove and I <em>really</em> have to make a decision, I will at the very least ensure that the legacy of these projects is maintained, and you will long be blogging on neuro-quantic interfaces before you have to worry about alternative ways to ward comment spam off your blog. If anything, I have no intention to stop my blogging, and WP remains, at the moment, the best option for my needs, so you can find reassurance in my own necessities.</p>
<p>As for other tentative projects of the past (<a href="http://unknowngenius.com/blog/wordpress/wppm/">WPPM</a>, minor WP plugins etc.), I am saddened to say that the chances of resuscitation are inching closer to zero with each passing day. I have toyed with miscellaneous new ideas (including starting the new blogging platform of my dreams from scratch), but decided that, in the end, this wasn&#8217;t the direction I wanted to take with my time. Sure, I have to refrain an impulse to start coding, each time I pass the now-defunct <i>one-click install</i> FAQ, but really, it&#8217;s all for the best. Of course, if some generous benefactor shows up with $3,000 in cash and asks to see the most kick-ass WPPM 2 s/he&#8217;s ever seen, I won&#8217;t be difficult to convince (I&#8217;m a fairly venal ilk of genius these days), barring that unlikely event, we shall say new coding adventures will be kept for brighter days and a very distant hypothetical future.</p>
<p>Post originally published on: <a href="http://unknowngenius.com/blog">Dave's Blog</a> (please leave your comments over there)<br/><br/><a href="http://unknowngenius.com/blog/archives/2006/04/14/better-leave-at-the-top-of-your-game/">Better leave at the top of your game&#8230;</a></p>
]]></content:encoded>
			<wfw:commentRss>http://unknowngenius.com/blog/archives/2006/04/14/better-leave-at-the-top-of-your-game/feed/</wfw:commentRss>
		<slash:comments>21</slash:comments>
		</item>
		<item>
		<title>What does your iPod do?</title>
		<link>http://unknowngenius.com/blog/archives/2006/03/06/what-does-your-ipod-do/</link>
		<comments>http://unknowngenius.com/blog/archives/2006/03/06/what-does-your-ipod-do/#comments</comments>
		<pubDate>Mon, 06 Mar 2006 21:44:23 +0000</pubDate>
		<dc:creator>Dave</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[Geek]]></category>
		<category><![CDATA[日本語]]></category>

		<guid isPermaLink="false">http://unknowngenius.com/blog/?p=1368</guid>
		<description><![CDATA[I just got a brand new handheld Japanese dictionary. It&#8217;s very complete, using one of the best database out there, smaller than a few credit cards stacked together and I paid 20,000 yens for it. Oh, it also plays mp3s. And movies. In fact, it does a whole lot of things, pretty much anything I [...]<p>Post originally published on: <a href="http://unknowngenius.com/blog">Dave's Blog</a> (please leave your comments over there)<br/><br/><a href="http://unknowngenius.com/blog/archives/2006/03/06/what-does-your-ipod-do/">What does your iPod do?</a></p>
]]></description>
			<content:encoded><![CDATA[<p><!-- picture_glue_start -->
<div class="photo_group"><a class="pic_link" href="http://unknowngenius.com/blog/pix/post1368/CIMG1039.jpg" target="zoom"><img class="photo" src="http://unknowngenius.com/blog/pix/post1368/thumbnails/CIMG1039.jpg" height="150" width="200" alt="Picture CIMG1039.jpg" /></a><a class="pic_link" href="http://unknowngenius.com/blog/pix/post1368/CIMG1042.jpg" target="zoom"><img class="photo" src="http://unknowngenius.com/blog/pix/post1368/thumbnails/CIMG1042.jpg" height="150" width="200" alt="Picture CIMG1042.jpg" /></a><a class="pic_link" href="http://unknowngenius.com/blog/pix/post1368/CIMG1045.jpg" target="zoom"><img class="photo" src="http://unknowngenius.com/blog/pix/post1368/thumbnails/CIMG1045.jpg" height="150" width="200" alt="Picture CIMG1045.jpg" /></a></div>
<p> <!-- picture_glue_stop --></p>
<p>I just got a brand new handheld Japanese dictionary. It&#8217;s very complete, using one of the best <a href="http://www.csse.monash.edu.au/~jwb/wwwjdic.html">database</a> out there, smaller than a few credit cards stacked together and I paid 20,000 yens for it.</p>
<p>Oh, it also plays mp3s.</p>
<p>And movies.</p>
<p>In fact, it does a whole lot of things, pretty much anything I want it to do, provided I have time to write a program for it.</p>
<p>It&#8217;s an iPod Nano, running <a href="http://www.uclinux.org/">µClinux</a>, thanks to the brilliant work of the <a href="http://ipodlinux.org/Main_Page">iPod Linux</a> team.</p>
<p><span id="more-1368"></span>If you remember, I was <a href="http://unknowngenius.com/blog/archives/2005/10/21/battered-housewife-syndrome/"> severely torn</a> over the purchase of this little thingie. But then I look at it now, and think of the <a href="http://en.wikipedia.org/wiki/Mac_512">first computer</a> I ever played with as a kid: this thing has more RAM, more storage, a better screen resolution and more CPU power. And you could fit it inside the floppy drive of the former&#8230; I&#8217;m getting dizzy, merely thinking of it.</p>
<p>Anyway, I spent some time this week toying with my compiler and finally finished some very early alpha of this little dictionary program. In order to make it usable, I also added an extra Text Input module to handle kanas (text input is very nicely handled by <a href="http://ipodlinux.org/Podzilla">Podzilla</a>&#8216;s API). Inputting speed is currently similar to a phone, and I&#8217;m planning to improve it eventually, with predictive kanji input.</p>
<p>In the meantime, I no longer have to carry an annoyingly incomplete pocket paper dictionary, to help me with my <a href="http://unknowngenius.com/blog/archives/2005/10/28/why-manga-does-not-suck-completely/">daily reading</a> in the subway.</p>
<p>Now, imagine an iPod with Bluetooth that you can use with a small wireless keyboard (possibly using speech synthesis and earphones to get feedback on what you type without having to stare at the screen), and you got one of the cheapest, most badass PDA out there.</p>
<p>I think I&#8217;m starting to like that whole &#8220;twenty-first century&#8221; thing&#8230;</p>
<p><em>PS:</em> If you are interested in test-driving this alpha, contact me in private and I&#8217;ll send you the files: but please do realize that you need to install iPodLinux on your iPod first, which is no walk in the park. Do <strong>not</strong> under any circumstances contact me for assistance on setting up Linux on your iPod: read the <a href="http://ipodlinux.org/Installation">detailed instructions</a> on their site.</em></p>
<p>Post originally published on: <a href="http://unknowngenius.com/blog">Dave's Blog</a> (please leave your comments over there)<br/><br/><a href="http://unknowngenius.com/blog/archives/2006/03/06/what-does-your-ipod-do/">What does your iPod do?</a></p>
]]></content:encoded>
			<wfw:commentRss>http://unknowngenius.com/blog/archives/2006/03/06/what-does-your-ipod-do/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>MySQL, PHP and time conversion</title>
		<link>http://unknowngenius.com/blog/archives/2005/03/14/mysql-php-and-time-conversion/</link>
		<comments>http://unknowngenius.com/blog/archives/2005/03/14/mysql-php-and-time-conversion/#comments</comments>
		<pubDate>Sun, 13 Mar 2005 16:02:44 +0000</pubDate>
		<dc:creator>Dave</dc:creator>
				<category><![CDATA[Code]]></category>

		<guid isPermaLink="false">http://unknowngenius.com/blog/archives/2005/03/14/mysql-php-and-time-conversion/</guid>
		<description><![CDATA[Another post of utter geekery with some highly uninteresting and very unnecessary programming tidbit (I bet you can't tell I've been coding my week-end away, can you). Normal people, please skip over.

GMT conversion between mySQL and PHP<p>Post originally published on: <a href="http://unknowngenius.com/blog">Dave's Blog</a> (please leave your comments over there)<br/><br/><a href="http://unknowngenius.com/blog/archives/2005/03/14/mysql-php-and-time-conversion/">MySQL, PHP and time conversion</a></p>
]]></description>
			<content:encoded><![CDATA[<p>Another post of utter geekery with some highly uninteresting and very unnecessary programming tidbit (I bet you can&#8217;t tell I&#8217;ve been coding my week-end away, can you). Normal people, please skip over.</p>
<p><span id="more-724"></span>When working with MySQL and PHP, clean time conversion can become a real pain in the arse.</p>
<p>You ought to always store your timestamps as GMT in your DB, no matter what.<br />
Problem is, when you feed the text value returned by MySQL into PHP <a href="http://php.net/strtotime"><code> strtotime()</code></a>, it is not read as a GMT time! Check it by converting it back to a text format (using <a href="http://php.net/strftime"><code> strftime()</code></a>): you&#8217;ll see it doesn&#8217;t match the original GMT time such as returned by MySQL.</p>
<p>To make all this work, you simply need to ensure it is read as GMT by PHP by appending the timezone format to the string returned by MySQL. </p>
<p>An example:</p>
<blockquote><p><code><br />
echo $my_sql_gmt_time; // 2005-03-13 15:00:12</p>
<p>echo $bad_ts = strtotime($my_sql_gmt_time); // 1110747612 < - bad<br />
echo strftime($bad_ts); // 15:00:12 CST <- bad</p>
<p>echo $good_ts  = strtotime($my_sql_gmt_time . " GMT"); // 1110726012 <- good<br />
echo strftime($good_ts); // 09:00:12 CST <-> 15:00:12 GMT < - good<br />
</code></code></p></blockquote>
<p>This very stupid little glitch (why would PHP assume CST timezone when most functions use GMT?) took me twenty minutes to debug, despite my semi-thorough reading of the PHP doc for the relevant functions, so I figured I&#8217;d spare the time to the next fellow google searcher.</p>
<p>Post originally published on: <a href="http://unknowngenius.com/blog">Dave's Blog</a> (please leave your comments over there)<br/><br/><a href="http://unknowngenius.com/blog/archives/2005/03/14/mysql-php-and-time-conversion/">MySQL, PHP and time conversion</a></p>
]]></content:encoded>
			<wfw:commentRss>http://unknowngenius.com/blog/archives/2005/03/14/mysql-php-and-time-conversion/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
	</channel>
</rss>
