<?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>Drakos7 &#187; programming</title>
	<atom:link href="http://drakos7.net/category/programming/feed" rel="self" type="application/rss+xml" />
	<link>http://drakos7.net</link>
	<description></description>
	<lastBuildDate>Thu, 08 Mar 2012 22:15:16 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Installing PHP 5.4.0RC8 and Apache 2.4 on Ubuntu 11.10</title>
		<link>http://drakos7.net/2012/02/installing-php-5-4-0rc8-and-apache-2-4-on-ubuntu-11-10</link>
		<comments>http://drakos7.net/2012/02/installing-php-5-4-0rc8-and-apache-2-4-on-ubuntu-11-10#comments</comments>
		<pubDate>Sat, 25 Feb 2012 03:05:11 +0000</pubDate>
		<dc:creator>Greg</dc:creator>
				<category><![CDATA[programming]]></category>
		<category><![CDATA[work]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://drakos7.net/?p=522</guid>
		<description><![CDATA[<a href="http://drakos7.net/2012/02/installing-php-5-4-0rc8-and-apache-2-4-on-ubuntu-11-10" title="Installing PHP 5.4.0RC8 and Apache 2.4 on Ubuntu 11.10"></a>About once every other week I try and spend some time at work thinking ahead. With PHP 5.4 on the horizon I began to wonder how our current Zend Framework application would fare if the SysAdmins decided to jump straight &#8230;<p class="read-more"><a href="http://drakos7.net/2012/02/installing-php-5-4-0rc8-and-apache-2-4-on-ubuntu-11-10">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<a href="http://drakos7.net/2012/02/installing-php-5-4-0rc8-and-apache-2-4-on-ubuntu-11-10" title="Installing PHP 5.4.0RC8 and Apache 2.4 on Ubuntu 11.10"></a><p>About once every other week I try and spend some time at work thinking ahead. With PHP 5.4 on the horizon I began to wonder how our current <a href="http://framework.zend.com" target="_blank">Zend Framework</a> application would fare if the SysAdmins <a href="http://drakos7.net/wp-content/uploads/2012/02/php54Apache241.jpg"><img class="alignright size-thumbnail wp-image-529" title="php54Apache241" src="http://drakos7.net/wp-content/uploads/2012/02/php54Apache241-150x150.jpg" alt="" width="150" height="150" /></a>decided to jump straight from PHP 5.2 to PHP 5.4. Would the site work at all? One way to find out. Lets install <a href="http://www.php.net/archive/2012.php#id2012-02-24-1" target="_blank">PHP 5.4RC8</a> and <a href="http://httpd.apache.org" target="_blank">Apache 2.4</a>.</p>
<p>I started by creating a fresh Ubuntu 11.10 VM. <em>In complete disclosure, I removed some of the unneeded packages like LibreOffice first.</em> I then cloned it so I would always have a base to work off of in the future.</p>
<h3>Build Environment</h3>
<p>Open a terminal prompt and switch to root.</p>
<pre class="brush: plain; title: ; notranslate">sudo su -</pre>
<p>This just makes life easier throughout the process. Normally I would recommend only switching to root when you fully need to, like when you run <em>apt-get install</em> or <em>make install</em>. Now lets make sure we have all the build environment pieces we need.</p>
<pre class="brush: plain; title: ; notranslate">
apt-get update
apt-get -y -q install make g++ flex bison build-essential zlib1g-dev binutils \
cmake automake autoconf libmcrypt-dev libmhash-dev libxslt1-dev \
libtidy-dev libbz2-dev libxml2-dev libssl-dev libmysqlclient16 libmysqlclient16-dev \
libpng12-dev libpng12-0 libpng3 libjpeg62 libjpeg62-dev libxpm-dev libpcre3 \
libpcre3-dev zlib1g zlib1g-dev libltdl-dev libltdl7 pkg-config \
libcurl4-openssl-dev libfreetype6 libfreetype6-dev libc-client2007e \
libc-client2007e-dev libkrb5-3 libkrb5-dev openssl libglobus-openssl \
libglobus-openssl-dev libcurl4-openssl-dev libicu-dev libicu44 libpspell-dev \
linux-libc-dev libc-dev-bin libc-bin libc-client2007e-dev eglibc-source \
libkrb5-3 libkrb5-dev libkrb53 libkrb5support0 libncurses5-dev libncurses5 \
ncurses-base ncurses-bin ncurses-term libaio-dev libedit-dev lynx
</pre>
<p>Certainly some of those are not totally needed if we are only checking to see if things install, but I want to make sure we have lots of bases covered. Now, time to get Apache 2.4. You can skip this portion if you want to only install PHP 5.4.</p>
<h3>Apache</h3>
<p>For Apache we need three pieces: the <a href="http://apr.apache.org/" target="_blank">Apache Portable Runtime</a>, <a href="http://apr.apache.org/" target="_blank">APR Utils</a>, and the <a href="http://httpd.apache.org/" target="_blank">Httpd server</a> itself. Feel free to find a closer mirror. This code will download the latest greatest for today and install it into <em>/usr/local/</em></p>
<pre class="brush: plain; title: ; notranslate">
# APR
wget http://mirrors.axint.net/apache//apr/apr-1.4.6.tar.gz
tar -xvzf apr-1.4.6.tar.gz
cd apr-1.4.6/
./configure
make
make install
cd ..

# APR Utils
wget http://mirrors.axint.net/apache//apr/apr-util-1.4.1.tar.gz
tar -xvzf apr-util-1.4.1.tar.gz
cd apr-util-1.4.1
./configure --with-apr=/usr/local/apr
make
make install
cd ..

# Apache
wget http://apache.petsads.us//httpd/httpd-2.4.1.tar.gz
tar -xvzf httpd-2.4.1.tar.gz
cd httpd-2.4.1
./configure --enable-file-cache --enable-cache --enable-disk-cache --enable-mem-cache --enable-deflate --enable-expires --enable-headers --enable-usertrack --enable-ssl --enable-cgi --enable-vhost-alias --enable-rewrite --enable-so --with-apr=/usr/local/apr/
make
make install
cd ..
</pre>
<p>The above worked rather painlessly for me once I knew that I had to install APR and APR Utils before the Httpd server. We will do the configuring of Apache in a bit. Lets install PHP 5.4RC8 first.</p>
<h3>PHP</h3>
<pre class="brush: plain; title: ; notranslate">
wget http://downloads.php.net/stas/php-5.4.0RC8.tar.gz
tar -xvzf php-5.4.0RC8.tar.gz
cd php-5.4.0RC8
'./configure' '--disable-debug' '--enable-inline-optimization' '--disable-all' '--enable-libxml' '--enable-session' '--enable-xml' '--enable-hash' '--with-pear' '--with-apxs2=/usr/local/apache2/bin/apxs' '--with-layout=GNU' '--enable-filter' '--with-pcre-regex' '--with-zlib' '--enable-simplexml' '--enable-xmlwriter' '--enable-dom' '--with-openssl' '--enable-pdo' '--with-pdo-sqlite' '--with-readline' '--with-sqlite3' '--with-iconv' '--disable-phar' '--with-libedit' '--enable-exif' '--with-bz2' '--with-gettext' '--with-mcrypt' '--with-mhash' '--with-gd' '--with-jpeg-dir' '--with-png-dir' '--with-zlib-dir' '--with-xpm-dir' '--with-xsl' '--with-tidy' '--with-freetype-dir' '--enable-gd-native-ttf' '--enable-mbstring' '--enable-sockets' '--enable-dom' '--enable-xml' '--enable-soap' '--enable-libxml' '--enable-session' '--enable-simplexml' --with-kerberos --with-curl '--with-mysql-sock' '--with-mysql=mysqlnd' '--with-mysqli=mysqlnd' '--with-pdo-mysql=mysqlnd' '--with-config-file-path=/usr/local/etc'

make
make install</pre>
<p>PHP has tons of config options. I recommend checking your current install to see what it was built with and add those flags. Once nice thing here is that mysqlnd comes with PHP 5.4 so we do not have to link to an existing MySQL install. Another thing to note is that this sets php&#8217;s config directory to <em>/usr/local/etc</em>. Make sure to customize <em>&#8211;with-config-file-path</em> to wherever you want to store your <em>php.ini</em>.</p>
<h3>Configuration</h3>
<p>Speaking of php.ini, lets put one in place now.</p>
<pre class="brush: plain; title: ; notranslate">cp php.ini-development /usr/local/etc/php.ini</pre>
<p>And lets set up where Apache can find our files (unless you like putting things in <em>/usr/local/apache2/htdocs/</em>).</p>
<pre class="brush: plain; title: ; notranslate">mkdir /var/www/
chgrp -R www-data /var/www/</pre>
<p>Ready to configure Apache? I wasn&#8217;t! It had been over 4 years since I had done a source compile (I used to use Gentoo linux). Open up <em>/usr/local/apache2/conf/httpd.conf</em> in your favorite editor.</p>
<ol>
<li>Replace instances of <em>/usr/local/apache2/htdocs</em> with <em>/var/www </em>. There should be two.</li>
<li>Add <em>index.php</em> to the <em>DirectoryIndex</em> line</li>
<li>I uncommented #<em>LoadModule rewrite_module modules/mod_rewrite.so</em> and</li>
<li><em>#Include conf/extra/httpd-vhosts.conf</em> because I knew I was going to need them for my later testing.</li>
<li>And finally I added 2 lines to make sure we parse the PHP</li>
</ol>
<pre class="brush: plain; title: ; notranslate">AddHandler php5-script .php
AddType text/html .php</pre>
<p><span style="line-height: 18px;">I wanted to make sure Apache would start on boot so I added it to the main runlevel.</span></p>
<pre class="brush: plain; title: ; notranslate">ln -s -T /usr/local/apache2/bin/apachectl /etc/rc2.d/S80apache</pre>
<p>To find out what rcX.d you should use just execute <em>runlevel</em>. Shove the number it returns (2 in my case) in for X.</p>
<h3>Moment of Truth</h3>
<p>Three steps left. First, start up apache. If everything has gone well so far this should cause you no grief.</p>
<pre class="brush: plain; title: ; notranslate">/usr/local/apache2/bin/apachectl start</pre>
<p>Create a test php page:</p>
<pre class="brush: plain; title: ; notranslate">echo &quot;&lt;?php phpinfo();&quot; | cat &gt; /var/www/index.php</pre>
<p>And finally navigate to <em>http://localhost/</em> on your VM.</p>
<h3>Final Notes</h3>
<p>I re-ran this process a couple times on copies of the initial VM clone to refine it a bit. It all worked stellar today. YMMV of course. I had to do some additional steps after this to test our <a href="http://framework.zend.com" target="_blank">ZF</a> application since we use Oracle instead of MySQL. So far I have only found one minor Notice that popped up in 5.4 which was trivial to clean. Now if I could convince the SAs to upgrade to 5.4 once it goes gold&#8230;</p>
<p>Enjoy testing your code on PHP 5.4!</p>
]]></content:encoded>
			<wfw:commentRss>http://drakos7.net/2012/02/installing-php-5-4-0rc8-and-apache-2-4-on-ubuntu-11-10/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>ZF Config XML vs Ini Showdown</title>
		<link>http://drakos7.net/2012/02/zf-config-xml-vs-ini-showdown</link>
		<comments>http://drakos7.net/2012/02/zf-config-xml-vs-ini-showdown#comments</comments>
		<pubDate>Fri, 10 Feb 2012 21:08:17 +0000</pubDate>
		<dc:creator>Greg</dc:creator>
				<category><![CDATA[programming]]></category>
		<category><![CDATA[work]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://drakos7.net/?p=470</guid>
		<description><![CDATA[<a href="http://drakos7.net/2012/02/zf-config-xml-vs-ini-showdown" title="ZF Config XML vs Ini Showdown"></a>Back at php&#124;tek11 Rob Allen gave a talk on optimizing Zend Framework. During the tutorial he pointed out how you could cache your application config files so that they are not loaded and parsed at every request. This got me thinking &#8230;<p class="read-more"><a href="http://drakos7.net/2012/02/zf-config-xml-vs-ini-showdown">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<a href="http://drakos7.net/2012/02/zf-config-xml-vs-ini-showdown" title="ZF Config XML vs Ini Showdown"></a><p>Back at <a href="http://tek11.phparch.com/" target="_blank">php|tek11</a> <a href="http://akrabat.com/" target="_blank">Rob Allen</a> gave a <a href="http://tek11.phparch.com/talk-synopses/#Optimizing-a-Zend-Framework-application" target="_blank">talk</a> on optimizing <a href="http://framework.zend.com" target="_blank">Zend Framework</a>. During the tutorial he pointed out how you could cache your application config files so that they are not loaded and parsed at every request. This got me thinking about something that had been bugging me for a long time. What is the best format for your config file?</p>
<p>Back before ZF 1.0 there was a fair bit of confusion on how to do everything &#8220;right&#8221;, especially setting up a &#8220;modular&#8221; build. One of the first good examples out there was made by <a href="http://www.dasprids.de/" target="_blank">Dasprid</a>, and he used an xml based application config. We are talking back in early 2007 when it was the wild west for ZF. Since then, I only see people using ini files.</p>
<p>Well, here it finally is, the official synthetic Zend_Config benchmark shootout.</p>
<p><span id="more-470"></span></p>
<p>I created an ini and a xml config file with the same content.</p>
<pre class="brush: plain; title: ; notranslate">
[production]
bootstrap.path=&quot;../application/Bootstrap.php&quot;
bootstrap.class=&quot;Bootstrap&quot;
routes=&quot;../application/config/routes.xml&quot;
phpSettings.display_startup_errors=0
phpSettings.display_errors=0
phpSettings.date.timezone=&quot;America/New_York&quot;
autoloadernamespaces[]=&quot;Zend&quot;
autoloadernamespaces[]=&quot;My_&quot;
resources.frontController.controllerDirectory=&quot;../application/controllers&quot;
resources.frontController.moduleDirectory=&quot;../application/modules&quot;
resources.frontController.defaultModule=&quot;default&quot;
resources.frontController.plugins[]=&quot;My_Controller_Plugin_IDS&quot;
resources.frontController.plugins[]=&quot;My_Controller_Plugin_Messy&quot;
resources.modules[]=
resources.view.encoding=&quot;UTF-8&quot;
resources.view.escape=&quot;htmlentities&quot;
resources.layout.layout=&quot;default&quot;
resources.layout.layoutPath=&quot;../application/layouts&quot;
resources.db.adapter=&quot;MySQL&quot;
resources.db.params.username=&quot;USER&quot;
resources.db.params.password=&quot;CHANGEME&quot;
resources.db.params.dbname=&quot;DB&quot;
resources.db.isDefaultTableAdapter=true
</pre>
<p>xml.xml:</p>
<pre class="brush: xml; title: ; notranslate">
&lt;config&gt;
    &lt;production&gt;
        &lt;bootstrap&gt;
            &lt;path&gt;../application/Bootstrap.php&lt;/path&gt;
            &lt;class&gt;Bootstrap&lt;/class&gt;
        &lt;/bootstrap&gt;
        &lt;routes&gt;../application/config/routes.xml&lt;/routes&gt;
        &lt;phpSettings&gt;
            &lt;display_startup_errors&gt;0&lt;/display_startup_errors&gt;
            &lt;display_errors&gt;0&lt;/display_errors&gt;
            &lt;date&gt;
                &lt;timezone&gt;America/New_York&lt;/timezone&gt;
            &lt;/date&gt;
        &lt;/phpSettings&gt;
        &lt;autoloadernamespaces&gt;
            &lt;Zend&gt;Zend&lt;/Zend&gt;
            &lt;S3&gt;My_&lt;/S3&gt;
        &lt;/autoloadernamespaces&gt;
        &lt;resources&gt;
            &lt;frontController&gt;
                &lt;controllerDirectory&gt;../application/controllers&lt;/controllerDirectory&gt;
                &lt;moduleDirectory&gt;../application/modules&lt;/moduleDirectory&gt;
                &lt;defaultModule&gt;default&lt;/defaultModule&gt;
                &lt;plugins&gt;
                    &lt;ids&gt;My_Controller_Plugin_IDS&lt;/ids&gt;
                    &lt;messy&gt;My_Controller_Plugin_Messy&lt;/messy&gt;
                &lt;/plugins&gt;
            &lt;/frontController&gt;
            &lt;modules&gt;
                &lt;placeholder/&gt;
            &lt;/modules&gt;
            &lt;view&gt;
                &lt;encoding&gt;UTF-8&lt;/encoding&gt;
                &lt;escape&gt;htmlentities&lt;/escape&gt;
            &lt;/view&gt;
            &lt;layout&gt;
                &lt;layout&gt;default&lt;/layout&gt;
                &lt;layoutPath&gt;../application/layouts&lt;/layoutPath&gt;
            &lt;/layout&gt;
            &lt;db&gt;
                &lt;adapter&gt;MySQL&lt;/adapter&gt;
                &lt;params&gt;
                    &lt;username&gt;USER&lt;/username&gt;
                    &lt;password&gt;CHANGEME&lt;/password&gt;
                    &lt;dbname&gt;DB&lt;/dbname&gt;
                &lt;/params&gt;
                &lt;isDefaultTableAdapter&gt;true&lt;/isDefaultTableAdapter&gt;
            &lt;/db&gt;
        &lt;/resources&gt;
    &lt;/production&gt;
&lt;/config&gt;
</pre>
<p>As you can see, xml is a bit more verbose! Then I made a simple script to hammer them.</p>
<pre class="brush: php; title: ; notranslate">
require_once 'Zend/Config/Xml.php';
require_once 'Zend/Config/Ini.php';

$runs = 10000;

$start = time();
for ($i=0;$i&lt;$runs;$i++){
    $config = new Zend_Config_Xml('xml.xml','production');
    clearstatcache('xml.xml');
}
echo &quot;XML,$runs,&quot; .(time()-$start).&quot;\n&quot;;

$start = time();
for ($i=0;$i&lt;$runs;$i++){
    $config = new Zend_Config_Ini('ini.ini','production');
    clearstatcache('ini.ini');
}
echo &quot;INI,$runs,&quot; .(time()-$start).&quot;\n&quot;;
</pre>
<p>My initial attempts showed xml to be faster but that seemed weird, until I noticed that the file was being cached. Hence the addition of <em>clearstatcache</em> to replicate individual connections. If we run this a bunch of times for different run levels we get the following table (time is in seconds).</p>
<table>
<thead>
<tr>
<th>Runs</th>
<th>XML</th>
<th>INI</th>
</tr>
</thead>
<tbody>
<tr>
<td>10000</td>
<td>3</td>
<td>3</td>
</tr>
<tr>
<td>100000</td>
<td>36</td>
<td>31</td>
</tr>
<tr>
<td>200000</td>
<td>72</td>
<td>60</td>
</tr>
</tbody>
</table>
<p>So we can see, the XML version, at load, does show to be slower than an ini file. Whether this is due to the xml parser, or the simple fact that the ini file is half the size (977b vs 1824b) I do not know. And yes, I know a bunch about micro-optimization and artificial benchmarks. My sites also don&#8217;t get a sustained 3k hits/s. What I do know is I am switching over to ini.</p>
]]></content:encoded>
			<wfw:commentRss>http://drakos7.net/2012/02/zf-config-xml-vs-ini-showdown/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OSCONfusion</title>
		<link>http://drakos7.net/2010/07/osconfusion</link>
		<comments>http://drakos7.net/2010/07/osconfusion#comments</comments>
		<pubDate>Thu, 22 Jul 2010 17:47:43 +0000</pubDate>
		<dc:creator>Greg</dc:creator>
				<category><![CDATA[jobs]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[work]]></category>
		<category><![CDATA[boring]]></category>
		<category><![CDATA[conference]]></category>
		<category><![CDATA[geek]]></category>

		<guid isPermaLink="false">http://drakos7.net/?p=294</guid>
		<description><![CDATA[<a href="http://drakos7.net/2010/07/osconfusion" title="OSCONfusion"></a>So I have spent the past week in Portland, OR at the O&#8217;Reilly Media&#8217;s OSCON 2010 and learned some useful things for my job, but it has also generated a fair bit of dissatisfaction. The fun talks were more on &#8230;<p class="read-more"><a href="http://drakos7.net/2010/07/osconfusion">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<a href="http://drakos7.net/2010/07/osconfusion" title="OSCONfusion"></a><p>So I have spent the past week in Portland, OR at the O&#8217;Reilly Media&#8217;s <a href="http://www.oscon.com/" target="_blank">OSCON 2010</a> and learned some useful things for my job, but it has also generated a fair bit of dissatisfaction.</p>
<p><a href="http://drakos7.net/wp-content/uploads/2010/07/DSC06309.jpg"><img class="alignright size-thumbnail wp-image-437" title="DSC06309" src="http://drakos7.net/wp-content/uploads/2010/07/DSC06309-150x150.jpg" alt="" width="150" height="150" /></a></p>
<p>The fun talks were more on the geeky side, like how to build a <a href="http://arduino.cc/" target="_blank">device</a> to monitor the environment. It would be fun tostick a box on my parent&#8217;s dock to monitor Cayuga Lake&#8217;s water temperature, or better yet to make a small radio telescope and record the data.</p>
<p>In-between the very geeky things was a lot of rather boring stuff, so boring that I wonder what my role is in the programming world. Sure I can build large web-database applications that meet the needs of international health care research. Sure I can add little widgets to display pretty charts. Is this what I want to do? It was often more fun reading the <a href="http://www.modernreformation.org/" target="_blank">ModRef</a> magazine I brought. <span style="font-size: 13.2px;">It does not help that a lot of people in the programming community think an open bar is the most exciting part of a convention. I really do not want to smell the partially digested alcohol on your breath. It is not pleasant.</span></p>
]]></content:encoded>
			<wfw:commentRss>http://drakos7.net/2010/07/osconfusion/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>I am more famous</title>
		<link>http://drakos7.net/2009/11/i-am-more-famous</link>
		<comments>http://drakos7.net/2009/11/i-am-more-famous#comments</comments>
		<pubDate>Wed, 18 Nov 2009 16:58:36 +0000</pubDate>
		<dc:creator>Greg</dc:creator>
				<category><![CDATA[Greg]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[rice]]></category>
		<category><![CDATA[grad school]]></category>
		<category><![CDATA[publication]]></category>

		<guid isPermaLink="false">http://drakos7.net/?p=205</guid>
		<description><![CDATA[<a href="http://drakos7.net/2009/11/i-am-more-famous" title="I am more famous"></a>At long last I am on another publication for the years of slave grad work I completed. TAG published A Universal Core Genetic Map for Rice last month in their online edition. Hopefully it will make it into a print &#8230;<p class="read-more"><a href="http://drakos7.net/2009/11/i-am-more-famous">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<a href="http://drakos7.net/2009/11/i-am-more-famous" title="I am more famous"></a><p>At long last I am on another publication for the years of <span style="text-decoration: line-through;">slave</span> grad work I completed. <a href="http://en.wikipedia.org/wiki/Theoretical_and_Applied_Genetics" target="_blank">TAG</a><a href="http://www.springerlink.com/content/100386/"><img class="alignright" title="TAG" src="http://www.springerlink.com/content/100386/cover-medium.jpg" alt="" width="95" height="126" /></a> published<a href="http://www.springerlink.com/content/81842175hh4l8133/?p=af7b591d7ff34d80ad8268198a0c6d3f&#038;pi=2" target="_blank"> A Universal Core Genetic Map for Rice</a> last month in their online edition. Hopefully it will make it into a print copy at some point. I identified the 18k+ SSR loci and built a system for making automated primers for them. The lab who published this used a defined subset of those 18k+ primers for verification and publication. Hopefully this will help the world produce better rice.</p>
]]></content:encoded>
			<wfw:commentRss>http://drakos7.net/2009/11/i-am-more-famous/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The best use for AI: StarCraft</title>
		<link>http://drakos7.net/2009/11/the-best-use-for-ai-starcraft</link>
		<comments>http://drakos7.net/2009/11/the-best-use-for-ai-starcraft#comments</comments>
		<pubDate>Thu, 12 Nov 2009 22:29:37 +0000</pubDate>
		<dc:creator>Greg</dc:creator>
				<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://drakos7.net/?p=201</guid>
		<description><![CDATA[<a href="http://drakos7.net/2009/11/the-best-use-for-ai-starcraft" title="The best use for AI: StarCraft"></a>I am sure that my church youth group will get a kick out of this. An AI competition using StarCraft. I am still amazed that the game&#8217;s appeal has lasted so long. Especially considering that I was saving the galaxy &#8230;<p class="read-more"><a href="http://drakos7.net/2009/11/the-best-use-for-ai-starcraft">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<a href="http://drakos7.net/2009/11/the-best-use-for-ai-starcraft" title="The best use for AI: StarCraft"></a><p>I am sure that my church youth group will get a kick out of this. <a href="http://eis.ucsc.edu/aiidecraft" target="_blank">An AI competition using StarCraft</a>. I am still amazed that the game&#8217;s appeal has lasted so long. Especially considering that I was saving the galaxy while they were still in diapers. Despite what people say, Protoss FTW!</p>
]]></content:encoded>
			<wfw:commentRss>http://drakos7.net/2009/11/the-best-use-for-ai-starcraft/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Random limerick</title>
		<link>http://drakos7.net/2009/01/random-limerick</link>
		<comments>http://drakos7.net/2009/01/random-limerick#comments</comments>
		<pubDate>Fri, 16 Jan 2009 15:57:00 +0000</pubDate>
		<dc:creator>Greg</dc:creator>
				<category><![CDATA[computer]]></category>
		<category><![CDATA[Greg]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[smmra]]></category>
		<category><![CDATA[weird]]></category>

		<guid isPermaLink="false">http://drakos7.net/?p=81</guid>
		<description><![CDATA[<a href="http://drakos7.net/2009/01/random-limerick" title="Random limerick"></a>I wrote a program to generate random limericks. Here are two example results: There once was a man in crowded  Who thought they were quite shambled.  They had their observation's,  And some abbreviations,  But could not really unheeded. There once &#8230;<p class="read-more"><a href="http://drakos7.net/2009/01/random-limerick">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<a href="http://drakos7.net/2009/01/random-limerick" title="Random limerick"></a><p>I wrote a program to generate random limericks. Here are two example results:</p>
<pre> There once was a man in crowded
 Who thought they were quite shambled.
 They had their observation's,
 And some abbreviations,
 But could not really unheeded.</pre>
<pre> There once was a lady from miserably,
 Who thought they were quite fashionably.
 They had their coupon,
 And some hellion,
 But could not really provably.</pre>
]]></content:encoded>
			<wfw:commentRss>http://drakos7.net/2009/01/random-limerick/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

