<?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>Wave2.org</title>
	<atom:link href="http://www.wave2.org/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.wave2.org</link>
	<description>Where the source code lives</description>
	<pubDate>Tue, 22 Jul 2008 20:21:58 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
	<language>en</language>
			<item>
		<title>Did you spot that [Error]?</title>
		<link>http://www.wave2.org/2008/07/22/did-you-spot-that-error/</link>
		<comments>http://www.wave2.org/2008/07/22/did-you-spot-that-error/#comments</comments>
		<pubDate>Tue, 22 Jul 2008 20:21:58 +0000</pubDate>
		<dc:creator>Alan Snelson</dc:creator>
		
		<category><![CDATA[BinaryStor]]></category>

		<category><![CDATA[Development]]></category>

		<category><![CDATA[Java]]></category>

		<category><![CDATA[MySQL]]></category>

		<category><![CDATA[OpenSource]]></category>

		<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://www.wave2.org/?p=133</guid>
		<description><![CDATA[
If only your database would just tell you that replication had failed or that the disk was full&#8230;
Ok some database servers do  but MySQL doesn&#8217;t (yet).  Another excuse to write a script  
In my pursuit for total database visibility I have been searching for a tool that would tell me when something [...]]]></description>
			<content:encoded><![CDATA[<p><a href='http://www.wave2.org/w2wiki/dbAlerter'><img style='float:left; border:none; padding-right:10px;' src="http://www.wave2.org/wp-content/uploads/2008/07/dbalerterlogo.png" alt="" title="dbAlerter" width="130" height="120" class="alignnone size-full wp-image-134" /></a></p>
<p>If only your database would just tell you that replication had failed or that the disk was full&#8230;<br />
Ok some database servers do <img src='http://www.wave2.org/wp-includes/images/smilies/icon_twisted.gif' alt=':twisted:' class='wp-smiley' /> but MySQL doesn&#8217;t (yet).  Another excuse to write a script <img src='http://www.wave2.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>In my pursuit for total database visibility I have been searching for a tool that would tell me when something went wrong, that would simulate regular usage, and let me know if anything failed.  After all SNMP can only probe so far and if your database is secure the last thing you want to do is open up another port on your server.</p>
<p>Don&#8217;t get me wrong there are tools out there that do a decent job of monitoring MySQL.  <a href='http://www.mysql.com/products/enterprise/monitor.html'>MySQL Entperprise Monitor</a> is one such tool.  But if you want to look under the hood or add some functionality specific to your environment things start to get tricky.</p>
<p>So what&#8217;s this dbAlerter?</p>
<p><a href='http://www.wave2.org/w2wiki/dbAlerter'>dbAlerter</a> is the name of a project (Script) that I started developing to provide notification of key server events.  It&#8217;s written in Python; Why?, I wanted something lightweight.  Java would have been my first choice but the JVM eats too much ram and felt too heavy for such simple functionality.<br />
Python on the other hand feels lighter and when running a script as a daemon it seems to take up less resources allowing the DB to use more memory and continue doing it&#8217;s job.  Plus it&#8217;s been a while since I wrote anything with Python, variety is the spice of life!</p>
<p>Speaking of Java, if you have ever used tools like JConsole and jmap (and if not why not!) you may not have realised that since JDK 6 Update 7 there&#8217;s now one tool to rule them all - <a href='https://visualvm.dev.java.net/'>VisualVM</a>.</p>
<table style='width:400px; margin-left: auto; margin-right: auto;'>
<tr>
<td><a rel="lightbox" href='http://www.wave2.org/wp-content/uploads/2008/07/visualvm.png' title='VisualVM'><img src='http://www.wave2.org/wp-content/uploads/2008/07/visualvmthumb.png' alt='VisualVM' /></a></td>
<td><a rel="lightbox" href='http://www.wave2.org/wp-content/uploads/2008/07/visualvm2.png' title='VisualVM Memory Consumption'><img style='display: block;margin-left: auto;margin-right: auto' src='http://www.wave2.org/wp-content/uploads/2008/07/visualvm2thumb.png' alt='VisualVM Memory Consumption' /></a></td>
</tr>
</table>
<p>VisualVM pulls together several commandline tools like JConsole, jstat, jinfo, jstack, and jmap to make monitoring and profiling a more visual experience.</p>
<p>Now that the changes from BSD Java have been <a href='http://notes.bikemonkey.org/post/41640903/sun-approved-merge-from-bsd-java-to-openjdk'>merged</a> into the <a href='http://openjdk.java.net/'>OpenJDK</a> and the FreeBSD Foundation have updated the JDK to <a href='http://www.freebsdfoundation.org/downloads/java.shtml'>1.6.0-7</a> I&#8217;m pretty sure the original concept of write once run anywhere is closer than ever.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wave2.org/2008/07/22/did-you-spot-that-error/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Database Change Management</title>
		<link>http://www.wave2.org/2008/06/08/database-change-management/</link>
		<comments>http://www.wave2.org/2008/06/08/database-change-management/#comments</comments>
		<pubDate>Sun, 08 Jun 2008 21:30:59 +0000</pubDate>
		<dc:creator>Alan Snelson</dc:creator>
		
		<category><![CDATA[BinaryStor]]></category>

		<category><![CDATA[Development]]></category>

		<category><![CDATA[Java]]></category>

		<category><![CDATA[MySQL]]></category>

		<category><![CDATA[OpenSource]]></category>

		<category><![CDATA[dbRecorder]]></category>

		<guid isPermaLink="false">http://www.wave2.org/?p=129</guid>
		<description><![CDATA[Databases are used by many different disciplines, from your DBA to your Developer, right down to the End User. They can also be viewed from many different perspectives&#8230;
DBA&#8217;s are usually interested in the server configuration, index usage etc.  Developers however are often concerned with retrieval methods, datatypes and occasionally stored procedures.  One thing [...]]]></description>
			<content:encoded><![CDATA[<p><img style='float:left; border:none; padding-right:10px;' src="http://www.wave2.org/wp-content/uploads/2008/06/dbrecorderlogo.png" alt="" title="dbRecorder Logo" width="157" height="100" class="alignnone size-full wp-image-130" />Databases are used by many different disciplines, from your <a href='http://en.wikipedia.org/wiki/Database_administrator'>DBA</a> to your <a href='http://en.wikipedia.org/wiki/Software_developer'>Developer</a>, right down to the End User. They can also be viewed from many different perspectives&#8230;</p>
<p>DBA&#8217;s are usually interested in the server configuration, index usage etc.  Developers however are often concerned with retrieval methods, datatypes and occasionally stored procedures.  One thing is for sure, your database if used effectively will be changing frequently, and with so many people accessing your database do you know what the last change was?  Would you know if someone added an index to a table? (would you care&#8230; <img src='http://www.wave2.org/wp-includes/images/smilies/icon_twisted.gif' alt=':twisted:' class='wp-smiley' /> )</p>
<p><a href='http://en.wikipedia.org/wiki/Revision_control'>Revision Control</a> is often used to track changes to source code and other documents, so why not your database?.</p>
<p>When I first started to think about change control for my database servers one tool sprung to mind, <a href='http://www.shrubbery.net/rancid/'>Rancid</a>.  If you manage more than one network device you may already be familiar with the <b>Really Awesome New Cisco confIg Differ</b>.</p>
<p>Using a combination of scripts Rancid will connect to your network devices, check for changes by comparing the config with a VCS managed copy and notify you with details of the changes.  Why not do the same for your database? Enter <a href='http://www.wave2.org/w2wiki/dbRecorder'>dbRecorder</a>.</p>
<table style='margin-left: auto; margin-right: auto;'>
<tr>
<td><img src="http://www.wave2.org/wp-content/uploads/2008/06/dbrecorderoverview.png" alt="" title="dbRecorder Overview" width="402" height="122" /></td>
</tr>
</table>
<p>Rather than extend Rancid I decided to prove the concept by writing a quick Java application that utilised Open Source libraries like <a href='http://svnkit.com/'>SVNKit</a> and <a href='http://jyaml.sourceforge.net/'>jYAML</a>.  The features continued to creep and before I knew it I was recording more than just table definitions.  Server configuration and grant tables all found their way into my <a href='http://subversion.tigris.org/'>Subversion</a> repository coupled with e-mail notification whenever anything changed - nice huh!.</p>
<p>The aptly named <a href='http://www.dbrecorder.org'>dbRecorder</a> is currently targeted at my database of choice, <a href='http://www.mysql.com'>MySQL</a>.  It&#8217;s far from a finished product (then again so are most of my ideas) but it&#8217;s working to a degree and can only improve over time&#8230;.</p>
<p>One thing I never got around to was making this site work well with IE6 (or even just splash the screen with some silly message when someone using IE6 tries to connect) and with <a href='http://www.mozilla.com/en-US/firefox/'>Firefox 3</a> soon to be released I am hoping I won&#8217;t have to. <img src='http://www.wave2.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  If you have not tried Firefox 3 already you can visit the site today and pledge your download to help break a world record as soon as it is released!.</p>
<p><a href="http://www.spreadfirefox.com/node&amp;id=0&amp;t=272"><img src="http://www.wave2.org/wp-content/uploads/2008/06/firefoxdownloadday.png" alt="" title="Spread Firefox - Download Day 2008" width="246" height="32" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.wave2.org/2008/06/08/database-change-management/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Centralised Notification (Aka Informeer)</title>
		<link>http://www.wave2.org/2008/05/05/centralised-notification-aka-informeer/</link>
		<comments>http://www.wave2.org/2008/05/05/centralised-notification-aka-informeer/#comments</comments>
		<pubDate>Mon, 05 May 2008 22:10:26 +0000</pubDate>
		<dc:creator>Alan Snelson</dc:creator>
		
		<category><![CDATA[Development]]></category>

		<category><![CDATA[Informeer]]></category>

		<category><![CDATA[MySQL]]></category>

		<category><![CDATA[Perl]]></category>

		<category><![CDATA[Wave2]]></category>

		<guid isPermaLink="false">http://www.wave2.org/?p=127</guid>
		<description><![CDATA[It&#8217;s been a while since I had chance to work on Informeer as my itch was one of multi-user web based password management (AuthStor).  Oh and moving house.  
Now that things are settling down again (Servers back up and running) I decided to take a break from AuthStor and focus on something new [...]]]></description>
			<content:encoded><![CDATA[<p><img style='float:left; border:none; padding-right:10px;' src="http://www.wave2.org/wp-content/uploads/2008/05/rpcxmltutorial.png" alt="" title="XmlRpcTutorial" width="220" height="180" class="alignnone size-full wp-image-128" />It&#8217;s been a while since I had chance to work on <a href='http://www.wave2.org/w2wiki/w2inform'>Informeer</a> as my itch was one of multi-user web based password management (<a href='http://www.wave2.org/w2wiki/AuthStor'>AuthStor</a>).  Oh and moving house. <img src='http://www.wave2.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Now that things are settling down again (Servers back up and running) I decided to take a break from AuthStor and focus on something new - Informeer.</p>
<p>The concept is simple, Centralised Notification.</p>
<p>I am forever configuring notifications from several sources, be it backup alerts, host monitoring notification and even simple applications that send mail via SMTP.  When living in a world of change, both software and business, having to visit every application to change an e-mail address or add a new user to a notification schedule can be quite time consuming.  Add to that the effort of having to modify firewalls, SMTP servers and XMPP settings etc etc. The idea of a single web interface where all your notifications can be configured is quite appealing.  Informeer aims to make that a reality (one day).</p>
<p>While I take my time with the implementation I thought I would post a basic intro to <a href='http://www.xmlrpc.com/'>RPC-XML</a> using Perl.  The RPC-XML Perl module makes writing your own client/server application a piece of cake, and while not quite point and click, it will give you enough flexibility to centralise your own notifications (or anything else for that matter).  It&#8217;s not rocket science, but it works!</p>
<p>If you have been looking for a flexible quick and easy fix to the centralised notification problem, or even if you are just looking to push some data from a firewalled site to one of your servers <a href='http://www.wave2.org/w2wiki/XmlRpcTutorial'>This Tutorial</a> should help get you started.</p>
<p>In between moving house and playing with notifications I found time to upgrade to <a href='http://www.wordpress.org'>Wordpress 2.5</a> and <a href='http://moinmo.in/'>MoinMoin 1.6</a>, and wow what an improvement in both camps.<br />
The Wordpress dashboard is the most visible improvement - it&#8217;s amazingly clean!  If you have been waiting for 2.5 to settle down or just cautious about upgrading, I would say take the plunge, you won&#8217;t regret it.  As for MoinMoin 1.6, there really is no better Wiki engine out there (my opinion) and it just keeps getting better with every release!.</p>
<p>That just leaves me to post a quick MySQL tip that may well be obvious, but happens to catch me out from time to time. <img src='http://www.wave2.org/wp-includes/images/smilies/icon_twisted.gif' alt=':twisted:' class='wp-smiley' /> </p>
<h3>MySQL Tip of the month</h3>
<p>If you ever get the urge to convert a 1Gig MyISAM table (with 34 million rows) to InnoDB within MySQL, try to avoid the simple <code>ALTER TABLE tablename ENGINE=INNODB;</code> method.<br />
I made the mistake of running that command on a fairly decent server with bags of space and memory only to find the command running over 5 hours later with an InnoDB tablespace at around 4Gig (ok a bit of tuning might have helped) <img src='http://www.wave2.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Your best bet is to dump the table using <a href='http://dev.mysql.com/doc/refman/5.0/en/mysqldump.html'>mysqldump</a>, drop the existing table and re-import the table after modifying the definition to be InnoDB.  That worked for me in less than 10 minutes.  Alternatively you can create a new InnoDB table and insert directly from the existing table as per <a href='http://dev.mysql.com/doc/refman/5.0/en/converting-tables-to-innodb.html'>MySQL documentation</a> e.g <code>INSERT INTO newtable SELECT * FROM oldtable</code>.</p>
<p>I&#8217;m sure I am not the first to make this mistake, and may not be the last&#8230;..</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wave2.org/2008/05/05/centralised-notification-aka-informeer/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Happy Easter!!</title>
		<link>http://www.wave2.org/2008/03/21/happy-easter/</link>
		<comments>http://www.wave2.org/2008/03/21/happy-easter/#comments</comments>
		<pubDate>Fri, 21 Mar 2008 21:06:37 +0000</pubDate>
		<dc:creator>Alan Snelson</dc:creator>
		
		<category><![CDATA[Certification]]></category>

		<category><![CDATA[OpenSource]]></category>

		<category><![CDATA[Oracle]]></category>

		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.wave2.org/2008/03/21/happy-easter/</guid>
		<description><![CDATA[It&#8217;s been a busy month so far and with Easter now upon us the year is showing no sign of deceleration.
I spent the last few weeks working hard to recover from my initial attempt at passing the Zend Certified Engineer exam.  Having used PHP and other languages for several years I grabbed a copy [...]]]></description>
			<content:encoded><![CDATA[<p><a href='http://peach.blender.org/' title='Big Buck Bunny'><img width='165px' height='180px' style='float:left; border:none; padding-right:10px;' src='http://www.wave2.org/wp-content/uploads/2008/03/bigbuckbunny.png' alt='Big Buck Bunny' /></a>It&#8217;s been a busy month so far and with Easter now upon us the year is showing no sign of deceleration.</p>
<p>I spent the last few weeks working hard to recover from my initial attempt at passing the <a href='http://www.zend.com/en/services/certification/'>Zend Certified Engineer</a> exam.  Having used PHP and other languages for several years I grabbed a copy of the <a href='http://www.amazon.co.uk/gp/product/0973862149?ie=UTF8&amp;tag=wave2&amp;linkCode=as2&amp;camp=1634&amp;creative=6738&amp;creativeASIN=0973862149'>Php|architect&#8217;s Zend PHP 5 Certification Study Guide</a>, bought a few <a href='http://www.zend.com/en/store/php-certification/online-practice-testing'>online practice tests</a> from Zend and spent a few days scoring Excellent before heading down to the test centre confident I would be leaving with a Pass.<br />
Forty five minutes into the exam I was racing through the questions thinking I had it in the bag only to be presented with a Fail upon clicking the End button&#8230;..Bummer <img src='http://www.wave2.org/wp-includes/images/smilies/icon_rolleyes.gif' alt=':roll:' class='wp-smiley' /> </p>
<p>The score report gave no real indication of how close I came to passing, so wondering where I went wrong I scoured the net for any information that could help me prepare for my next attempt (which you get a 10% discount on if you ask Zend nicely).  During my search I found the <a href='http://www.zend.com/forums/index.php?t=thread&amp;frm_id=10&amp;S=58ac94bb4633873b0c1ff7eef1be0d21'>Zend Certification Forum</a>, however it was broken and I had to ask for it to be fixed (which took a couple of days) before I could read others views on the exam. The Zend forum and site I have to say are not good adverts for <a href='http://www.php.net'>PHP</a>.  The site often takes ages to load (is this down to PHP? people will think) and the forum feels pre web 2.0.</p>
<p>After a few hours of searching I finally found this <a href='http://hades.phparch.com/files/tek07/paul_reinheimer-zce.pdf'>PDF</a>, the PHP 5 course material that outlines everything you need to focus on for the exam and provides enough examples to to get your head around the &#8220;gotchas&#8221; that are hidden in many of the questions.  Second time round I passed, although many questions were similar to my first attempt and I answered them no different, I can only put my initial fail down to the PHP &#8220;gotchas&#8221; like:</p>
<p><code>What is the output of echo 09;</code></p>
<p>Post certification I had to ask for the <a href='http://www.zend.com/store/education/certification/authenticate.php?ClientCandidateID=ZEND007208&amp;RegistrationID=224385838'>Yellow Pages</a> entry to be added (a common problem it seems), and after finally getting the page updated it seems to have reverted to its former state&#8230;..If only it was written in Java I keep thinking to myself. <img src='http://www.wave2.org/wp-includes/images/smilies/icon_twisted.gif' alt=':twisted:' class='wp-smiley' /><br />
Don&#8217;t get me wrong I am a big fan of PHP but feel its place is within the presentation layer (this site is written using <a href='http://www.wordpress.org'>PHP</a>).  When it comes down to middle tier processing I am yet to be convinced&#8230;</p>
<p>Speaking of Java, I decided that along with moving house this Easter (I need a server room <img src='http://www.wave2.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ), I would open my mind to the world of software that is Oracle.  The Oracle Database is hardly Open Source, however <a href='http://oss.oracle.com/'>Oracle</a> as a company do support the Open Source Community and to be honest I&#8217;m a knowledge junkie and need something fresh to feed my mind with (fear not MySQL).<br />
Besides at the end of the day everything I learn from taking apart Oracle can be directly applied to the Open Source world, that is if it has not been applied already. <img src='http://www.wave2.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>You may have noticed the Easter Bunny pic included with this post and if you are into Open Source you would have recognised him as <a href='http://peach.blender.org/wp-content/uploads/title_anouncement.jpg'>Big Buck Bunny</a> the star of the upcoming open movie Peach.  That&#8217;s right there are only a few more weeks to the release of the movie and you can now take a look at the <a href='http://peach.blender.org/index.php/trailer-page/'>trailer</a> before downloading your copy of <a href='http://www.blender.org/'>Blender</a> and having a go yourself - I can&#8217;t wait!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wave2.org/2008/03/21/happy-easter/feed/</wfw:commentRss>
		</item>
		<item>
		<title>I Love Unix!</title>
		<link>http://www.wave2.org/2008/02/27/i-love-unix/</link>
		<comments>http://www.wave2.org/2008/02/27/i-love-unix/#comments</comments>
		<pubDate>Wed, 27 Feb 2008 20:27:19 +0000</pubDate>
		<dc:creator>Alan Snelson</dc:creator>
		
		<category><![CDATA[FreeBSD]]></category>

		<category><![CDATA[HP-UX]]></category>

		<category><![CDATA[OpenSource]]></category>

		<category><![CDATA[UnixArchitect]]></category>

		<guid isPermaLink="false">http://www.wave2.org/2008/02/27/i-love-unix/</guid>
		<description><![CDATA[I spend the majority of my days working with OpenSource Unix derivatives and have to say I enjoy every minute of it!  Not a day goes by where I do not learn something new or discover a new way to solve a problem all thanks to Unics (Everything has a beginning).
If you are passionate [...]]]></description>
			<content:encoded><![CDATA[<p><a href='http://www.FreeBSD.org'><img width='180px' height='160px' style='float:left; border:none;'  src='http://www.wave2.org/wp-content/uploads/2008/02/iloveunix.png' alt='I Love Unix!' /></a>I spend the majority of my days working with OpenSource Unix derivatives and have to say I enjoy every minute of it!  Not a day goes by where I do not learn something new or discover a new way to solve a problem all thanks to <b>Unics</b> (<a href='http://www.unix.org/what_is_unix/history_timeline.html'>Everything has a beginning</a>).</p>
<p>If you are passionate about <a href='http://www.gnu.org'>GNU</a> / <a href='http://www.unix.org/'>Unix</a> / <a href='http://www.linux.org/'>Linux</a> / <a href='http://www.opensource.org/'>OpenSource</a> I apologise for the generalization &#8220;Unix&#8221; but wanted to focus on the OS and tools that make moving between one Unix variant and another as easy as pie. <img src='http://www.wave2.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
Putting aside all the <a href='http://www.unixguide.net/unixguide.shtml'>nuances</a> that distinguish the many flavors of Unix, once you gain a core understanding of the <a href='http://www.amazon.co.uk/gp/product/0596007590?ie=UTF8&#038;tag=wave2&#038;linkCode=as2&#038;camp=1634&#038;creative=6738&#038;creativeASIN=0596007590'>Community</a>, <a href='http://elqui.dcsc.utfsm.cl/util/unix/UnixIntro/Utilities.html'>Tools</a> and Kernels, you find that moving from one OS flavor to another is as simple as <a href='http://en.wikipedia.org/wiki/Uname'>uname</a> and <a href='http://en.wikipedia.org/wiki/Manual_page_(Unix)'>man</a>.</p>
<p>Take for instance my latest branch off the <a href='http://www.levenez.com/unix/'>Unix tree</a> - <a href='http://www.hp.com/products1/unix/'>HP-UX</a>.  Having minimal exposure to HP-UX I wanted to get up to speed quick as possible, so I grabbed a copy of the <a href='http://www.amazon.co.uk/gp/product/1424342317?ie=UTF8&#038;tag=wave2&#038;linkCode=as2&#038;camp=1634&#038;creative=6738&#038;creativeASIN=1424342317'>HP-UX Study Guide</a> and booked the <a href='http://www.hp.com/certification/credential/index.html?credcode=c107'>CSA exam</a> knowing that if I had a goal I would not just move onto the next flavor. <img src='http://www.wave2.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>The book was a great resource and I only wished I had read it sooner as it covered many tools and concepts that are commonplace in SVR4 Unix derivatives such as <a href='http://www.sun.com/solaris/'>Solaris</a>. I felt like I was stepping back 10 years to when I first started to discover basic utilities such as <a href='http://en.wikipedia.org/wiki/Cat_(Unix)'>cat</a>, <a href='http://en.wikipedia.org/wiki/Sed'>sed</a> and <a href='http://en.wikipedia.org/wiki/Awk'>awk</a> but explained in so much detail that I found myself learning some new tricks!. Even if you are not interested in HP-UX this book is so well written and easy to condense that it is worth a place on your Unix bookshelf!.</p>
<p>As for HP-UX, well I felt right at home and only had to spend time learning the key differences such as <a href='https://h20293.www2.hp.com/portal/swdepot/displayProductInfo.do?productNumber=B6834AA'>Software Management</a> and HP&#8217;s <a href='http://h71028.www7.hp.com/enterprise/cache/257389-0-0-0-121.html'>Partitioning Continuum</a> technology (Virtualization to you and me) - very cool!.</p>
<p>Would I run HP-UX on my own servers? Probably not, it&#8217;s not OpenSource for starters (plus I don&#8217;t have the hardware), and to be honest I have been running FreeBSD for over 10 years now and no matter how many Unix/Linux derivatives I encounter not one has been able to surpass FreeBSD&#8217;s community, stability and manageability.  Plus FreeBSD is Free in <a href='http://www.opensource.org/licenses/bsd-license.php'>every sense</a>!. <img src='http://www.wave2.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Speaking of FreeBSD you might have noticed the image in the upper left corner of this post - yes you guessed it; <a href='http://www.freebsd.org/releases/7.0R/relnotes.html'>FreeBSD 7.0</a> has been released!.<br />
I have been running a release candidate for a while now and have to say that the one thing you will notice is how fast it runs.  Don&#8217;t take my word for that either, check out the <a href='http://people.freebsd.org/~kris/scaling/mysql.html'>Benchmarks</a> and read through the new features explained in detail over at the <a href='http://www.onlamp.com/pub/a/bsd/2008/02/26/whats-new-in-freebsd-70.html'>BSD Devcenter</a>.  With performance like that why would you want to run any other OS?</p>
<p>Download your copy from <a href='http://www.FreeBSD.org/where.html'>here</a> and never look back. <img src='http://www.wave2.org/wp-includes/images/smilies/icon_twisted.gif' alt=':twisted:' class='wp-smiley' /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.wave2.org/2008/02/27/i-love-unix/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Introducing AuthStor</title>
		<link>http://www.wave2.org/2008/02/02/introducing-authstor/</link>
		<comments>http://www.wave2.org/2008/02/02/introducing-authstor/#comments</comments>
		<pubDate>Sat, 02 Feb 2008 16:24:10 +0000</pubDate>
		<dc:creator>Alan Snelson</dc:creator>
		
		<category><![CDATA[AuthStor]]></category>

		<category><![CDATA[Development]]></category>

		<category><![CDATA[OpenSource]]></category>

		<category><![CDATA[Perl]]></category>

		<category><![CDATA[Password Management]]></category>

		<guid isPermaLink="false">http://www.wave2.org/2008/02/02/introducing-authstor/</guid>
		<description><![CDATA[AuthStor came to life back in late 2007 after the Password Safe I had been using became corrupt.  Not through any failure in Password Safe&#8217;s functionality but really to the way it was being used - Multi-User.
I had been seeking a decent Web Based Password Manager (Open Source of course) for ages but had [...]]]></description>
			<content:encoded><![CDATA[<p><a href='http://www.wave2.org/w2wiki/AuthStor' title='AuthStor'><img width='215px' height='55px' style='float:left; border:none; padding-right:5px;'  src='http://www.wave2.org/wp-content/uploads/2008/02/authstorlogo.png' alt='AuthStor' /></a>AuthStor came to life back in late 2007 after the <a href='http://passwordsafe.sourceforge.net/'>Password Safe</a> I had been using became corrupt.  Not through any failure in Password Safe&#8217;s functionality but really to the way it was being used - Multi-User.</p>
<p>I had been seeking a decent Web Based Password Manager (Open Source of course) for ages but had not found anything that I liked.  All the semi-decent software out there seemed to be Closed Source with license fees attached and to be honest I would feel more comfortable if I understood the inner workings, especially if this software is storing the key to my empire (mwuhahahaha). <img src='http://www.wave2.org/wp-includes/images/smilies/icon_twisted.gif' alt=':twisted:' class='wp-smiley' /> </p>
<p>So after a long history of Spreadsheets, Password Safe, <a href='http://docs.info.apple.com/article.html?path=Mac/10.4/en/mh460.html'>Keychain</a> and various other methods of storing passwords I finally decided to scratch the itch and roll my own password manager. <img src='http://www.wave2.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Now AuthStor is not my first attempt at a password manager, in fact I originally started to write an extension to <a href='http://moinmo.in/'>MoinMoin</a> that provided a method of storing passwords directly within the Wiki.  This worked great for a while but was not the most secure method of managing passwords, especially as the secret key was embedded within the Python code!.  I learned a lot from <a href='http://www.wave2.org/w2wiki/mmpasswords'>mmPasswords</a> and hope to improve upon that greatly through the development of AuthStor.</p>
<p>So what is in store for AuthStor? (Get it? <img src='http://www.wave2.org/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> ) Well key features will include Multi-User capability, Full auditing, <a href='http://www.gnupg.org'>GnuPG</a> encryption, REST like interface and that is just the start.  Future plans include interfaces like <a href='http://www.wave2.org/w2wiki/smstools'>SMS</a>, <a href='http://www.asterisk.org'>VoIP</a> and anything else I can think up.</p>
<p>Here is a sneak peak of the progress made so far:</p>
<table style='width:500px; margin-left: auto; margin-right: auto;'>
<tr>
<td><a rel="lightbox" href='http://www.wave2.org/wp-content/uploads/2008/01/dashboard.png' title='AuthStor Dashboard'><img src='http://www.wave2.org/wp-content/uploads/2008/01/dashboardthumb.png' alt='AuthStor Dashboard' /></a></td>
<td><a rel="lightbox" href='http://www.wave2.org/wp-content/uploads/2008/01/editauth.png' title='AuthStor Edit Auth'><img src='http://www.wave2.org/wp-content/uploads/2008/01/editauththumb.png' alt='AuthStor Edit Auth' /></a></td>
</tr>
</table>
<p>The application itself is written in <a href='http://www.perl.org'>Perl</a> and runs on top of the <a href='http://catalyst.perl.org/'>Catalyst Framework</a>.  Why Catalyst? Flexibility, Performance, Scalability, the list goes on&#8230;  Catalyst&#8217;s plugin architecture provides multiple views (among many other things) so I can focus on the functionality and not worry about the presentation.  Speaking of presentation, AuthStor makes extensive use of the <a href='http://developer.yahoo.com/yui/'>Yahoo! User Interface Library</a> to provide a rich interface with dynamic elements such as <a href='http://developer.yahoo.com/yui/datatable/'>DataTable&#8217;s</a>, <a href='http://developer.yahoo.com/yui/menu/'>Toolbars</a> and <a href='http://developer.yahoo.com/yui/treeview/'>Treeviews</a> and all wrapped in a <a href='http://developer.yahoo.com/yui/license.html'>BSD License</a>!!.  Nice work folks!.</p>
<p>Expect a commit in the next few weeks&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wave2.org/2008/02/02/introducing-authstor/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Great News for MySQL and Sun!</title>
		<link>http://www.wave2.org/2008/01/16/great-news-for-mysql-and-sun/</link>
		<comments>http://www.wave2.org/2008/01/16/great-news-for-mysql-and-sun/#comments</comments>
		<pubDate>Wed, 16 Jan 2008 21:33:23 +0000</pubDate>
		<dc:creator>Alan Snelson</dc:creator>
		
		<category><![CDATA[MySQL]]></category>

		<category><![CDATA[OpenSolaris]]></category>

		<category><![CDATA[OpenSource]]></category>

		<category><![CDATA[Oracle]]></category>

		<guid isPermaLink="false">http://www.wave2.org/2008/01/16/great-news-for-mysql-and-sun/</guid>
		<description><![CDATA[I&#8217;m sure by now you would have read the great news that is Sun Microsystems acquisition of MySQL!
Sun have been forging ahead in the Open Source world with OpenSolaris, an Operating System that scales to Enterprise proportions and is an ideal host for the number one Open Source Database Server that is MySQL.
Whether this will [...]]]></description>
			<content:encoded><![CDATA[<p><img width='140px' height='140px' style='float:left; border:none; padding-right:5px;' src='http://www.wave2.org/wp-content/uploads/2008/01/mysqlsun.png' alt='Sun to Acquire MySQL' />I&#8217;m sure by now you would have read the great news that is <a href='http://www.sun.com/aboutsun/pr/2008-01/sunflash.20080116.1.xml'>Sun Microsystems acquisition of MySQL</a>!</p>
<p>Sun have been forging ahead in the Open Source world with <a href='http://www.opensolaris.org'>OpenSolaris</a>, an Operating System that scales to Enterprise proportions and is an ideal host for the number one Open Source Database Server that is <a href='http://www.mysql.com/'>MySQL</a>.</p>
<p>Whether this will have any impact on the MySQL Linux / <a href='http://www.FreeBSD.org'>FreeBSD</a> / Windows offerings is something I am sure the community will be watching closely, but in my experience <a href='http://java.sun.com'>Java</a> runs much faster on Solaris as it can take advantage of the <a href='http://www.sun.com/software/solaris/performance.jsp'>MultiThreading</a> libraries that help Solaris set those performance records.<br />
Don&#8217;t forget, it was not that long ago that combined with Sun hardware MySQL was able to set it&#8217;s own <a href='http://www.mysql.com/news-and-events/press-release/release_2004_27.html'>world records</a>!.</p>
<p>With that in mind it should only be a matter of time before we will begin to see the fruits of Sun / MySQL&#8217;s labour and I don&#8217;t know about you but I can&#8217;t wait!.</p>
<p>How this move will affect the future of other database servers such as <a href='http://www.postgresql.org'>PostgreSQL</a> and <a href='http://www.oracle.com'>Oracle</a> I cannot begin to imagine.<br />
Personally I never understood how Oracle devoted so much attention to Linux when the Oracle server (and App servers) have such a dependency on Java (which as I say always works better running under Solaris <img src='http://www.wave2.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> )?<br />
As for PostgreSQL, Sun have always endorsed <a href='http://www.sun.com/software/products/postgresql/index.jsp'>PostgreSQL on Solaris</a>, will we see this focus switch to MySQL in the near future?.</p>
<p>One thing is for certain, MySQL combined with Solaris makes for one world class package that is going to be hard to beat!!.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wave2.org/2008/01/16/great-news-for-mysql-and-sun/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Happy New Year!</title>
		<link>http://www.wave2.org/2008/01/09/happy-new-year/</link>
		<comments>http://www.wave2.org/2008/01/09/happy-new-year/#comments</comments>
		<pubDate>Wed, 09 Jan 2008 20:54:08 +0000</pubDate>
		<dc:creator>Alan Snelson</dc:creator>
		
		<category><![CDATA[Certification]]></category>

		<category><![CDATA[MySQL]]></category>

		<category><![CDATA[OpenSource]]></category>

		<guid isPermaLink="false">http://www.wave2.org/2008/01/09/happy-new-year/</guid>
		<description><![CDATA[I know it&#8217;s a little late, but as this is my first post of 2008 I wanted to start on a high!  
After receiving my copy of the MySQL 5.1 Cluster DBA book at Christmas, I spent an hour or so each day with my head engrossed in MySQL Cluster technology, so much so [...]]]></description>
			<content:encoded><![CDATA[<p><img width='176px' height='176px' style='float:left; border:none; padding-right:5px;' src='http://www.wave2.org/wp-content/uploads/2008/01/mysqlclustercert.png' alt='MySQL 5.1 Cluster DBA Certification' />I know it&#8217;s a little late, but as this is my first post of 2008 I wanted to start on a high! <img src='http://www.wave2.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>After receiving my copy of the <a href='http://www.lulu.com/content/1297960'>MySQL 5.1 Cluster DBA</a> book at Christmas, I spent an hour or so each day with my head engrossed in <a href='http://www.mysql.com/products/database/cluster/'>MySQL Cluster</a> technology, so much so that my goal of reading <a href='http://astore.amazon.co.uk/wave2?%5Fencoding=UTF8&amp;node=3'>every Perl book I own</a> (cover to cover) has been somewhat put on hold&#8230;</p>
<p>The book was much smaller than I expected, in both physical size and pages (266) which was not a bad thing as I could carry it around if needed, and each chapter could be read within 15-20 minutes, just about right for my attention span <img src='http://www.wave2.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>I booked the exam a couple of weeks ago thinking I might need some incentive to fully digest MySQL Cluster details.  I need not have worried, the book provides a great introduction to MySQL Cluster in easy-to-read chapters bringing you up to speed in no time, much more entertaining than the <a href='http://dev.mysql.com/doc/refman/5.1/en/mysql-cluster.html'>reference manual!</a></p>
<p>The exam itself consisted of 70 questions and on this occasion ended with a prompt asking to print to a file&#8230;&#8230;argghhh&#8230;&#8230;I suddenly got worried that the exam had crashed and that all my answers were lost?!, after all you normally get an instant result on screen and a printed record. I knew I should have used my regular testing centre <img src='http://www.wave2.org/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> Print -> File -> USB Stick -> another PC -> Adobe Distiller -> Print and I finally got the result - Passed - Phew!.</p>
<p>So the holidays are over and I have more time to focus on the fun stuff, like upgrading this site to the latest version of <a href='http://www.wordpress.org'>WordPress</a> or adding <a href='http://www.gnupg.org'>GnuPG</a> based encryption to <a href='http://www.wave2.org/w2wiki/AuthStor'>AuthStor</a>.  If history is anything to go by the next few months are bound to see a spate of version bumps.  I am personally looking forward to <a href='http://www.freebsd.org/releases/7.0R/schedule.html'>FreeBSD 7.0</a>!</p>
<p>You never know, I might even find time to finish reading those Perl books before Perl 6 is complete <img src='http://www.wave2.org/wp-includes/images/smilies/icon_twisted.gif' alt=':twisted:' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.wave2.org/2008/01/09/happy-new-year/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Merry Christmas!!</title>
		<link>http://www.wave2.org/2007/12/23/merry-christmas/</link>
		<comments>http://www.wave2.org/2007/12/23/merry-christmas/#comments</comments>
		<pubDate>Sun, 23 Dec 2007 18:20:36 +0000</pubDate>
		<dc:creator>Alan Snelson</dc:creator>
		
		<category><![CDATA[AuthStor]]></category>

		<category><![CDATA[BinaryStor]]></category>

		<category><![CDATA[Java]]></category>

		<category><![CDATA[MySQL]]></category>

		<category><![CDATA[OpenSource]]></category>

		<category><![CDATA[Perl]]></category>

		<category><![CDATA[Python]]></category>

		<category><![CDATA[UnixArchitect]]></category>

		<category><![CDATA[Wave2]]></category>

		<guid isPermaLink="false">http://www.wave2.org/2007/12/23/merry-christmas/</guid>
		<description><![CDATA[2007 is almost over and what a year this has been for Wave2!
My programming preferences have gone full circle, from beginning the year playing snakes and ladders (Python), I spent the summer drinking coffee (Java) and finally settled down surrounded by Camel&#8217;s, Lama&#8217;s and Parrots (Perl). Bizarre but never dull!
Steady progress has been made all [...]]]></description>
			<content:encoded><![CDATA[<p><img height='160px' width='200px' style='float:left; border:none; padding-right:10px;' src='http://www.wave2.org/wp-content/uploads/2007/12/merrychristmas07.png' alt='Merry Christmas From Wave2' />2007 is almost over and what a year this has been for Wave2!</p>
<p>My programming preferences have gone full circle, from beginning the year playing snakes and ladders (Python), I spent the summer drinking coffee (Java) and finally settled down surrounded by Camel&#8217;s, Lama&#8217;s and Parrots (Perl). Bizarre but never dull!</p>
<p>Steady progress has been made all round and as always the Open Source community has proven a valuable resource.  Not a day went by where I did not discover something new or think of a new idea that could be built using Open Source Software.  I only wish I had more time in the day!.</p>
<p>My Christmas present came early this year in the form of a <a href='http://www.lulu.com/content/1297960'>MySQL 5.1 Cluster DBA Certification Study Guide</a>. I have been putting off the final MySQL certification while waiting for the book to arrive, and now it is in my hands the only thing preventing me from taking the exam is the lack of free space over the Christmas period. Hehe <img src='http://www.wave2.org/wp-includes/images/smilies/icon_twisted.gif' alt=':twisted:' class='wp-smiley' /> </p>
<p>I also ordered a <a href='http://europe.nokia.com/A4568578'>Nokia N810</a> (My Techie Present).  My laptop is not small enough to carry around with me and I am hoping to capture more development time on this device.  Either that or feed my mind. <img src='http://www.wave2.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Anyway I&#8217;m off to hit the <a href='http://www.us.playstation.com/Warhawk/'>WarHawk</a> servers before getting ready to see the New Year in Amsterdam - home of the <a href='http://peach.blender.org/'>Blender Institute</a>.  With projects like <a href='http://www.wave2.org/about-authstor/'>AuthStor</a> making great progress and ideas such as <a href='http://www.unixarchitect.org'>Unix Architect</a> and <a href='http://www.wave2.org/about-binarystor/'>BinaryStor</a> slowly maturing, I cannot wait to see what 2008 holds for Wave2!</p>
<p>Before I head off I have to mention the <a href='http://catalyst.perl.org/calendar/'>Catalyst Advent Calendar</a>. Every year they pack 24 days of tutorials and tips into the month of December.  If you are looking to get the most of the <a href='http://catalyst.perl.org/'>Catalyst Framework</a> you really must take a look at this resource.  I was able to prototype AuthStor in under 2 weeks and enjoyed every minute!</p>
<p>Wave2 Wishes You a Very Merry Christmas and an Open Source New Year!!!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wave2.org/2007/12/23/merry-christmas/feed/</wfw:commentRss>
		</item>
		<item>
		<title>A Picture is Worth a Thousand Words</title>
		<link>http://www.wave2.org/2007/12/05/a-picture-is-worth-a-thousand-words/</link>
		<comments>http://www.wave2.org/2007/12/05/a-picture-is-worth-a-thousand-words/#comments</comments>
		<pubDate>Wed, 05 Dec 2007 07:31:46 +0000</pubDate>
		<dc:creator>Alan Snelson</dc:creator>
		
		<category><![CDATA[AuthStor]]></category>

		<category><![CDATA[BinaryStor]]></category>

		<category><![CDATA[Certification]]></category>

		<category><![CDATA[Development]]></category>

		<category><![CDATA[Java]]></category>

		<category><![CDATA[Perl]]></category>

		<guid isPermaLink="false">http://www.wave2.org/2007/12/05/a-picture-is-worth-a-thousand-words/</guid>
		<description><![CDATA[It&#8217;s been a few weeks since I last posted here or even found time to develop any of the ideas that continually spring to mind.  In fact this is the first weekend in several where my head is not stuck in a book about Perl, Solaris or UML.  Why you may ask? (or [...]]]></description>
			<content:encoded><![CDATA[<p><img src='http://www.wave2.org/wp-content/uploads/2007/12/umlsolaris.png' alt='UML &#038; Solaris Certification' height='140px' width='200px' style='float:left; border:none; padding-right:10px;' />It&#8217;s been a few weeks since I last posted here or even found time to develop any of the ideas that continually spring to mind.  In fact this is the first weekend in several where my head is not stuck in a book about <a href='http://www.perl.org'>Perl</a>, <a href='http://www.opensolaris.org'>Solaris</a> or <a href='http://www.uml.org'>UML</a>.  Why you may ask? (or not).</p>
<p>Well after finally getting round to taking the Solaris Network Administrator exam, I thought it only right that I complete the set and get to know Solaris Security a bit better by taking the <a href='http://www.sun.com/training/certification/solaris/scseca.xml'>SCSECA</a>.</p>
<p>After achieving the SCSECA, I was just about getting ready to start writing code again when I stumbled upon the <a href='http://www.omg.org/uml-certification/index.htm'>UML Certification Program</a>.<br />
I have been a fan of UML for a long time but never found a tool that I felt comfortable using, or more to the point a tool worth the money!.  That was until on the very same day I decided to trial <a href='http://www.visual-paradigm.com/'>Visual Paradigm</a>, could this be the UML tool I have been seeking?</p>
<p>Visual Paradigm for UML is not overly expensive (many price levels to cater for all requirements), it runs on Windows / Linux / OSX and it&#8217;s easy to use - I like it!.</p>
<p>Armed with the UML tool I have been looking for and a copy of the <a href='http://www.amazon.co.uk/gp/redirect.html?ie=UTF8&#038;location=http%3A%2F%2Fwww.amazon.co.uk%2FUML-Certification-Guide-Fundamental-Intermediate%2Fdp%2F0123735858%3Fie%3DUTF8%26s%3Dbooks%26qid%3D1196794109%26sr%3D8-1&amp;tag=wave2&amp;linkCode=ur2&amp;camp=1634&amp;creative=6738'>UML 2 Certification Guide</a> I spent another week brushing up on my UML skills while studying for the first of 3 exams offered by the OMG, UML Certified Professional - Fundamental.<br />
I passed the exam last week and learned a lot more UML along the way!<br />
So finally, with all that studying out of the way I can finally get back to the fun stuff - Code.</p>
<p>But where does Perl fall into this jacked-in period?  Well I have been waiting for <a href='http://dev.perl.org/perl6/'>Perl 6</a> for a long time now and plan to use <a href='http://catalyst.perl.org/'>Catalyst</a> as the platform for <a href='http://www.binarystor.org'>BinaryStor</a> and <a href='http://www.AuthStor.org'>AuthStor</a>.  So what better way to get up to speed than a Perl readathon of as many <a href='http://www.wave2.org/reading-material/'>Perl books</a> as I can get my hands on.  From <a href='http://www.amazon.co.uk/gp/redirect.html?ie=UTF8&#038;location=http%3A%2F%2Fwww.amazon.co.uk%2FLearning-Perl-Randal-L-Schwartz%2Fdp%2F0596101058%3Fie%3DUTF8%26s%3Dbooks%26qid%3D1196839004%26sr%3D8-1&amp;tag=wave2&amp;linkCode=ur2&amp;camp=1634&amp;creative=6738'>Learning</a> to <a href='http://www.amazon.co.uk/gp/redirect.html?ie=UTF8&#038;location=http%3A%2F%2Fwww.amazon.co.uk%2FMastering-Perl-BD-Foy%2Fdp%2F0596527241%3Fie%3DUTF8%26s%3Dbooks%26qid%3D1196839069%26sr%3D1-1&amp;tag=wave2&amp;linkCode=ur2&amp;camp=1634&amp;creative=6738'>Mastering</a> and eventually <a href='ttp://www.amazon.co.uk/gp/redirect.html?ie=UTF8&#038;location=http%3A%2F%2Fwww.amazon.co.uk%2FPerl-Best-Practices-Damian-Conway%2Fdp%2F0596001738%3Fie%3DUTF8%26s%3Dbooks%26qid%3D1196839132%26sr%3D1-1&amp;tag=wave2&amp;linkCode=ur2&amp;camp=1634&amp;creative=6738'>Best Practices</a> all over again, you never know I might just finish reading before the release of Perl 6. <img src='http://www.wave2.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>As for the Code I cannot make my mind up as to where to focus my energy and so opted for a working <a href='http://www.wave2.org/w2wiki/NetUnit'>NetUnit</a> (I did think of porting it to Perl <img src='http://www.wave2.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> ).  It&#8217;s far from complete of course and suffers from the constraint of root privileges, but I&#8217;m hoping a future Java release will fix that&#8230;.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wave2.org/2007/12/05/a-picture-is-worth-a-thousand-words/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
