<?xml version="1.0" encoding="utf-8"?>
<feed version="0.3" xmlns="http://purl.org/atom/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xml:lang="en">
  <title>Planet Geek!</title>
  <link rel="alternate" type="text/html" href="http://planet-geek.com/" />
  <modified>2008-07-22T22:41:55Z</modified>
  <tagline>From the dark depths of the unfathomable void come the otherworldly yammerings of a man out of society.  Welcome to... Planet Geek!</tagline>
  <id>tag:planet-geek.com,2008://3</id>
  <generator url="http://www.movabletype.org/" version="3.33">Movable Type</generator>
  <copyright>Copyright (c) 2008, dbs</copyright>
  <entry>
    <title>Picker / Selector for GSM phones?</title>
    <link rel="alternate" type="text/html" href="http://planet-geek.com/archives/004677.html" />
    <modified>2008-07-22T22:41:55Z</modified>
    <issued>2008-07-22T17:32:21-05:00</issued>
    <id>tag:planet-geek.com,2008://3.4677</id>
    <created>2008-07-22T22:32:21Z</created>
    <summary type="text/plain">So I&apos;m getting ready to make the jump away from Verizon, and it looks like we&apos;re going to be going with a GSM-based provider. I&apos;d like to see a picker / selector for GSM phones that lets me pick phones...</summary>
    <author>
      <name>dbs</name>
      <url>http://dbs.homeport.org/</url>
      <email>dbs@homeport.org</email>
    </author>
    <dc:subject>Geekitude</dc:subject>
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://planet-geek.com/">
      <![CDATA[<p>So I'm getting ready to make the jump away from Verizon, and it looks like we're going to be going with a GSM-based provider.  I'd like to see a picker / selector for GSM phones that lets me pick phones based on criteria.  </p>

<p>Anyone know of such a beast?</p>

<p>My baseline criteria is:</p>
<ul>
<li>Does not run a Microsoft OS
<li>Is not an iPhone
<li>Is not a PalmOS Treo.  
<li>Has a full Bluetooth stack - including A2DP, various HID profiles, etc
<li>I'd prefer a full keyboard, but I can wiggle on that
<li>Music support, with open formats (I can put my own MP3's on it)
<li>Very good Bluetooth 'modem' capability.  Want to use it as a data gateway for my laptop
<li>At least a few games.  The only game I really play on my Treo anymore is Sudoku.  I think that may be a dead requirement on any replacement device.
</ul>

<p>My current top contender is the Nokia N95-3 (the North American version).  Pricing is down to about $300 (the -3 is a slightly 'older' version, but has a removable Micro-SD slot - pretty good for loading music and other stuff on it), but I want to make sure I'm not missing out on something. (Oddly, I can't find that price on Amazon now.  I'll keep looking).</p>

<p>One possibility is going with a fairly cheap, capable Bluetooth enabled handset now - no music, games, etc, but able to function as a phone and a GSM modem, and look toward an Android based solution in the next 6 months.</p>

<p>Pointers?</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>Back in the Real World</title>
    <link rel="alternate" type="text/html" href="http://planet-geek.com/archives/004676.html" />
    <modified>2008-07-20T19:46:36Z</modified>
    <issued>2008-07-20T14:44:07-05:00</issued>
    <id>tag:planet-geek.com,2008://3.4676</id>
    <created>2008-07-20T19:44:07Z</created>
    <summary type="text/plain">I&apos;m on my way back from camping this weekend. Sitting here in the Pittsburgh airport, it&apos;s sort of odd having the trappings of modern society all around me again, having spent the last 4 days and three nights sleeping in...</summary>
    <author>
      <name>dbs</name>
      <url>http://dbs.homeport.org/</url>
      <email>dbs@homeport.org</email>
    </author>
    <dc:subject>Life.  Don&apos;t talk to me about life.</dc:subject>
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://planet-geek.com/">
      <![CDATA[<p>I'm on my way back from camping this weekend.  Sitting here in the Pittsburgh airport, it's sort of odd having the trappings of modern society all around me again, having spent the last 4 days and three nights sleeping in a tent (on the ground, no air mattress), and hiking through knee-high grass several times a day to socialize and get food.</p>

<p>There's much to talk about, all sorts of geeky interesting things to go on about camping, food, waste, economy of living, and social interactions, but for now I'm just going to enjoy the air conditioning and modern plumbing.</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>Eclipse XML Validation can BITE ME</title>
    <link rel="alternate" type="text/html" href="http://planet-geek.com/archives/004672.html" />
    <modified>2008-07-16T03:01:44Z</modified>
    <issued>2008-07-15T21:45:39-05:00</issued>
    <id>tag:planet-geek.com,2008://3.4672</id>
    <created>2008-07-16T02:45:39Z</created>
    <summary type="text/plain">There are times when I want to take an axe to Eclipse. Today&apos;s particular grief is due to the XML editor. There are numerous faults with it (one of the biggest is that it &apos;captures&apos; the control-pgup and control-pgdn keys...</summary>
    <author>
      <name>dbs</name>
      <url>http://dbs.homeport.org/</url>
      <email>dbs@homeport.org</email>
    </author>
    <dc:subject>Programming-fu</dc:subject>
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://planet-geek.com/">
      <![CDATA[<p>There are times when I want to take an axe to <a href="http://www.eclipse.org/">Eclipse</a>.  Today's particular grief is due to the XML editor.  There are numerous faults with it (one of the biggest is that it 'captures' the control-pgup and control-pgdn keys into local tabs, so if you have an XML file open, and you use the keystrokes to navigate through your files, when you switch tabs to an XML file, the only way you can view a different file is to click on it), but todays stabbity-stab comes from the validator.  </p>

<p><a href="http://www.flickr.com/photos/planet-geek/2673145838/" title="eclipse-48 by eidolon, on Flickr"><img src="http://farm4.static.flickr.com/3107/2673145838_d5eb06067d_m.jpg" width="240" height="165" alt="eclipse-48" align="right" valign="top"/></a>Eclipse shows you errors and warnings in realtime.  Usually, they're fairly accurate.  Today I was editing a <a href="http://struts.apache.org/">struts.xml</a> file, and was getting a validation warning.  When Eclipse senses a problem with the XML (based on it's DTD), it tells you "this XML file fails the DTD validation".  </p>

<p><b>But it doesn't tell you where.</b></p>

<p>This completely baffles me.  "Somewhere in the following several hundred lines of XML code, there's a problem.  But I won't tell you where or what it is."</p>

<p>Off to <a href="http://validator.w3.org/">the W3.org Validation service</a>.  I fed the XML file into it, and lo!  A detailed description of the problem, and where it was:</p>

<p>	<blockquote><em>Line 26, Column 39</em>:<br />
        <span class="msg">document type does not allow element &quot;include&quot; here</span>.<pre>&#60;include file=&#34;struts-editevent.xml&#34;/<strong title="Position where error was detected.">&#62;</strong></code></pre></blockquote></p>

<p>Was that really that difficult?</p>

<p>Gnar.</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>Gotta Love Americans</title>
    <link rel="alternate" type="text/html" href="http://planet-geek.com/archives/004669.html" />
    <modified>2008-07-14T15:00:35Z</modified>
    <issued>2008-07-14T10:00:14-05:00</issued>
    <id>tag:planet-geek.com,2008://3.4669</id>
    <created>2008-07-14T15:00:14Z</created>
    <summary type="text/plain"> SUVsInAmerica Originally uploaded by eidolon Or maybe it&apos;s just New Englanders. Shall we run down the list here? 1) Big ass SUV. 2) Parked as annoyingly as possible (I suppose they could have gone diagonal and covered 3 spots)...</summary>
    <author>
      <name>dbs</name>
      <url>http://dbs.homeport.org/</url>
      <email>dbs@homeport.org</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://planet-geek.com/">
      <![CDATA[<div style="float: right; margin-left: 10px; margin-bottom: 10px;">
<a href="http://www.flickr.com/photos/planet-geek/2667159997/" title="photo sharing"><img src="http://farm4.static.flickr.com/3025/2667159997_8c13495802_m.jpg" alt="" style="border: solid 2px #000000;" /></a>
<br />
<span style="font-size: 0.9em; margin-top: 0px;">
<a href="http://www.flickr.com/photos/planet-geek/2667159997/">SUVsInAmerica</a>
<br />
Originally uploaded by <a href="http://www.flickr.com/people/planet-geek/">eidolon</a>
</span>
</div>
Or maybe it's just New Englanders.   <br />
<br />
Shall we run down the list here?<br />
<br />
1) Big ass SUV.<br />
2) Parked as annoyingly as possible (I suppose they could have gone diagonal and covered 3 spots)<br />
3) Bike rack that sticks a good 3.5 feet out into the lot (empty)<br />
<br />
Understanding that at one point I actually owned a Suburban just like this, I think I can safely say I at least had some clue how to park it.
<br clear="all" />]]>
      
    </content>
  </entry>
  <entry>
    <title>Giving Back - Working for OLPC</title>
    <link rel="alternate" type="text/html" href="http://planet-geek.com/archives/004667.html" />
    <modified>2008-07-14T01:35:12Z</modified>
    <issued>2008-07-13T20:08:03-05:00</issued>
    <id>tag:planet-geek.com,2008://3.4667</id>
    <created>2008-07-14T01:08:03Z</created>
    <summary type="text/plain">It&apos;s no secret I&apos;ve been a huge fan of the One Laptop per Child project. After all, I contributed to the Give One Get One project, and obtained a unit for my son Zach, which meant a child elsewhere in...</summary>
    <author>
      <name>dbs</name>
      <url>http://dbs.homeport.org/</url>
      <email>dbs@homeport.org</email>
    </author>
    <dc:subject>OLPC</dc:subject>
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://planet-geek.com/">
      <![CDATA[<p>It's no secret I've been a huge fan of the <a href="http://www.laptop.org/">One Laptop per Child</a> project.  After all, I contributed to the <a href="http://www.laptopgiving.org/en/index.php">Give One Get One</a> project, and <a href="http://www.flickr.com/photos/planet-geek/2179501130/">obtained a unit for my son Zach</a>, which meant a child elsewhere in the world received a laptop as well.</p>

<p>Following this success, and watching Zach teach himself Python and learn basic programming skills using <a href="http://scratch.mit.edu/">Scratch</a>, I found myself wanting to do more to support OLPC.  I don't have bottomless resources to throw at the project, but I still wanted to contribute somehow.</p>

<p>After getting to know some of the project folks, and after some back and forth, I was admitted to the OLPC Support crew, and now am an official OLPC Support Volunteer.</p>

<p>What this means is when I have some spare time, I log into the support system and answer questions from folks all over the world about OLPC, the laptops, and the applications.  I'm a volunteer, so I'm not paid, but I feel that I'm giving something to the community.  I can answer questions and communicate clearly, there are people who need help.  For the most part, these are people who, like me, feel the OLPC project is important, and are willing to contribute to it, and get a unit of their own to boot.  I'm proud to help them out as much as I can.  </p>

<p>In 4 days, I've handled about 38 problems.  That's 38 people who are a little better off with their machines than they were before.</p>

<p>This is one of the few true volunteer organizations I've ever committed myself to.  I've always given financially to causes I believe in, but when it comes to manning booths or spending weekends "lending a hand", it's usually been isolated to things like SF and gaming conventions. </p>

<p>This is bigger.  This is important.  This means something.</p>

<p>And I'm helping it be successful.</p>

<p>It feels good.</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>Cohousing Affordable Housing Open to Qualified Buyers</title>
    <link rel="alternate" type="text/html" href="http://planet-geek.com/archives/004663.html" />
    <modified>2008-07-11T15:15:56Z</modified>
    <issued>2008-07-11T09:42:56-05:00</issued>
    <id>tag:planet-geek.com,2008://3.4663</id>
    <created>2008-07-11T14:42:56Z</created>
    <summary type="text/plain">I&apos;m signal boosting this message a bit. Our cohousing group (collectively Sawyer Hill Ecovillage, consisting of my group, Mosaic Commons and a second community, Camelot Cohousing) have just completed the state-mandated lottery for offering our affordable units to qualified buyers...</summary>
    <author>
      <name>dbs</name>
      <url>http://dbs.homeport.org/</url>
      <email>dbs@homeport.org</email>
    </author>
    <dc:subject>Life.  Don&apos;t talk to me about life.</dc:subject>
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://planet-geek.com/">
      <![CDATA[<a href="http://www.flickr.com/photos/planet-geek/sets/72157606071182133/" title="IMG_6041.JPG by eidolon, on Flickr"><img src="http://farm4.static.flickr.com/3254/2652053809_17b960b96c_m.jpg" width="240" height="160" alt="IMG_6041.JPG" align="right" valign="top"/></a><p>I'm signal boosting this message a bit.  Our cohousing group (collectively <a href="http://www.sawyerhill.org/">Sawyer Hill Ecovillage</a>, consisting of my group, <a href="http://www.mosaic-commons.org/">Mosaic Commons</a> and a second community, <a href="http://www.camelotcohousing.com">Camelot Cohousing</a>) have just completed the state-mandated lottery for offering our affordable units to qualified buyers under <a href="http://www.chapa.org/40b_fact.html">the 40b Affordable Housing law</a>.  Because we did not have a full slate of applicants, the process is now thrown open to anyone who qualifies within  the 40b limits.</p>

<p>If you've been interested in our project, and have held off because of the daunting numbers, now may be a perfect time to look into it.  These units are being offered on a first come, first served basis.</p>

<p>We have 40b units available priced between $136k and $176k</p>

<p>The 40b limitations are:
<ul>
<li> Income limits between $46k/year and $76k/year, depending on number of family members.
<li> Assets no more than $75k
</ul>
<p>Note there are a variety of exceptions for seniors, single parents, etc.  See <a href="http://s-e-b.com/lottery/forsale.php">this web page</a> for details.</p>

<p>We also still have a few market rate units for those families
who don't meet the limits for the affordable units, so come
check us out: <a href="http://www.sawyerhill.org/">http://www.sawyerhill.org</a>.</p>
]]>
      
    </content>
  </entry>
  <entry>
    <title>Maine Fireworks!</title>
    <link rel="alternate" type="text/html" href="http://planet-geek.com/archives/004657.html" />
    <modified>2008-07-08T14:13:53Z</modified>
    <issued>2008-07-08T09:13:12-05:00</issued>
    <id>tag:planet-geek.com,2008://3.4657</id>
    <created>2008-07-08T14:13:12Z</created>
    <summary type="text/plain"> IMG_5766.JPG Originally uploaded by eidolon This past weekend I was up with the Fam in Maine doing our traditional July 4th joy. A lot of fun to be had - the weather cooperated (not too hot, not too cold),...</summary>
    <author>
      <name>dbs</name>
      <url>http://dbs.homeport.org/</url>
      <email>dbs@homeport.org</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://planet-geek.com/">
      <![CDATA[<div style="float: right; margin-left: 10px; margin-bottom: 10px;">
<a href="http://www.flickr.com/photos/planet-geek/2647481259/" title="photo sharing"><img src="http://farm4.static.flickr.com/3186/2647481259_a1bc99a303_m.jpg" alt="" style="border: solid 2px #000000;" /></a>
<br />
<span style="font-size: 0.9em; margin-top: 0px;">
<a href="http://www.flickr.com/photos/planet-geek/2647481259/">IMG_5766.JPG</a>
<br />
Originally uploaded by <a href="http://www.flickr.com/people/planet-geek/">eidolon</a>
</span>
</div>
This past weekend I was up with the Fam in Maine doing our traditional July 4th joy.  A lot of fun to be had - the weather cooperated (not too hot, not too cold), we got some good time on boats and ate gobs of food.<br />
<br />
Thursday night we went to Sanford, ME, as we usually do, and saw the fireworks show there, alongside probably 5000 other people all camped around a lake.  As always, it was a great show.<br />
<br />
This time I decided to try and photograph it.  For the camera geeks, I used my 50mm lens, F-stop all the way open to 1.8.  ISO was wobbling around, but I settled down to a very low 200.  I was worried it wouldn't be fast enough, but with a 1/15th second shutter speed, it worked out fine.<br />
<br />
The gaping F-stop meant my depth of field was measured in feet, even 300ft away from my subject (the fireworks themselves).  I could not autofocus for obvious reasons, so with a lot of experimentation, I found "All the way out, backed off about 10th of a turn" seemed to be the 'sweet spot' for focus.  <br />
<br />
As usual for these sorts of shoots, I shot a LOT.  320+ images for 1/2 hr show (filled my 1gig memory card).  From that, I ended up with less than 50 useable images.<br />
<br />
I may take a handful and postprocess further into a nice gallery, but this was a good first attempt.  The one thing I didn't expect was the reflection you can see in some of the brighter images.  What I'm guessing it is is the image reflected onto the UV filter off my primary lens.  I should have thought to remove that filter for such bright shots, but that's the joy of experimenting, eh?<br />
<br />
Anyway, enjoy!
<br clear="all" />]]>
      
    </content>
  </entry>
  <entry>
    <title>Jumping the RSS train Again</title>
    <link rel="alternate" type="text/html" href="http://planet-geek.com/archives/004654.html" />
    <modified>2008-07-05T22:21:35Z</modified>
    <issued>2008-07-05T17:06:31-05:00</issued>
    <id>tag:planet-geek.com,2008://3.4654</id>
    <created>2008-07-05T22:06:31Z</created>
    <summary type="text/plain">About 3.5 years ago I changed my web surfing habits and went totally into &quot;RSS Aggregator&quot; mode. Initially I was using the Sage RSS reader, a Firefox plugin. It worked well, and with Google Browser Sync I was able to...</summary>
    <author>
      <name>dbs</name>
      <url>http://dbs.homeport.org/</url>
      <email>dbs@homeport.org</email>
    </author>
    <dc:subject>Geekitude</dc:subject>
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://planet-geek.com/">
      <![CDATA[<p>About 3.5 years ago I changed my web surfing habits and went totally into "<a href="http://en.wikipedia.org/wiki/Aggregator">RSS Aggregator</a>" mode.  Initially I was <a href="http://planet-geek.com/archives/000258.html">using the Sage RSS reader</a>, a Firefox plugin.  It worked well, and with <a href="http://www.google.com/tools/firefox/browsersync/">Google Browser Sync</a> I was able to sync my views.  Or so I thought.</p>

<p>The syncing of my feeds never actually worked too well, so if I finished reading articles on one machine, when I sat down at the other, I couldn't be sure if the '18 new articles' really meant 18 new articles.  Also, Google Browser Sync is being end of lifed, so I need to find an alternative.</p>

<p>For a while, I switched to using <a href="http://akregator.kde.org/">Akregrator</a> for KDE.  All in all, I found it a fantastic tool, very fast, easy to use, and well integrated into KDE.  Alas, I don't always sit at <a href="http://planet-geek.com/yawl.html">my desktop machine</a>, and really started pining for a way to stay synced on my feeds while out and about, while still being able to read at home.</p>

<p>After denying the inevitable for so long, I'm now working with <a href="http://reader.google.com/">Google Reader</a>, which appears to do everything I need in an RSS aggregator, and is not localized to one specific machine.  I'm slowly migrating my vast array of feeds (somewhere around 200) into it, and organizing them into folders by subject.</p>

<p>So far, I'm reasonably happy with it.  It works, it's fast, it's ubiquitous, and, well, it's Google.  I have some real issues with how Google is overly dependent on their AJAX magic to get things done, though Reader doesn't seem to too overboard with it (unlike, say, something like Picasaweb, which I loathe).  </p>

<p>I'll give it a few weeks and see how well I like it.  Fortunately, it hasn't required a major investment in time or configuration to set up.  About an hour of basic twiddling and I'm up and running.  Stay tuned!</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>Weird Ways of Working</title>
    <link rel="alternate" type="text/html" href="http://planet-geek.com/archives/004646.html" />
    <modified>2008-07-01T05:10:27Z</modified>
    <issued>2008-06-30T23:55:26-05:00</issued>
    <id>tag:planet-geek.com,2008://3.4646</id>
    <created>2008-07-01T04:55:26Z</created>
    <summary type="text/plain">I was gone all weekend on a wonderful camping trip, hence the radio silence. Today I&apos;m back in the saddle, and faced with an annoying situation with my home setup. I&apos;ve come to the conclusion &apos;yawl&apos; just can&apos;t cut it...</summary>
    <author>
      <name>dbs</name>
      <url>http://dbs.homeport.org/</url>
      <email>dbs@homeport.org</email>
    </author>
    <dc:subject>Programming-fu</dc:subject>
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://planet-geek.com/">
      <![CDATA[<p>I was gone all weekend on a wonderful camping trip, hence the radio silence.  Today I'm back in the saddle, and faced with an annoying situation with my home setup.</p>

<p>I've come to the conclusion <a href="http://planet-geek.com/yawl.html">'yawl'</a> just can't cut it as a development host.  I had no idea that Pentium 4 CPU's were such garbage.  A 2.26 ghz machine isn't fast enough to do serious work in <a href="http://www.eclipse.org/">Eclipse</a>. </p>

<p><a href="http://planet-geek.com/viewer.php?i=eclipse-48.png&full"><img src="http://planet-geek.com/viewer.php?i=eclipse-48.png" align="right" valign="top"></a>Most of my development is done on <a href="http://planet-geek.com/clipper.html">'clipper'</a>, but alas it's a Windows machine (it can't help it, it was born that way).  I wanted to start fiddling with <a href="http://www.stonekeep.com/congo.php">CONGO</a> (v2.0) via Konqueror, and hit upon running up ye ole <a href="http://www.realvnc.com">VNC viewer</a> on 'yawl', and just 'moving' the Eclipse environment onto yawl's desktop.</p>

<p>Lo, it worked remarkably well.  Clipper's monitor is powered down, and I have an Eclipse environment on my Linux <a href="http://www.kde.org/">KDE desktop</a>, but actually powered by the Windows dual core laptop next to it.  I could overlap a Konqueror browse window and flip between it normally, and keyboard interaction was snappy and useful.</p>

<p>It's not quite like having a local Eclipse install, but it's mighty close.  It gives me a feel for what it's like for folks having big <a href="http://www.vmware.com/">vmware server</a> installations, and other less fortunate folks dealing with the variety of <a href="http://en.wikipedia.org/wiki/RDP">RDP based solutions</a>, and being able to just pop into an existing running machine and work with it directly.</p>

<p>Really though, I should have a faster desktop machine.  Alas, that'll have to wait, it's pretty low on the budget tree nowadays.  And, in case anyone is curious, that is in fact a snapshot of CONGO v2 running in a pure Java environment - screens and back end all running within a Tomcat server.  Sure it looks identical to CONGO v1, but that's by choice.  Quick port to Struts + JSP, then enhance and refactor.  Progress is being made.</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>Furthering my supposed damnation</title>
    <link rel="alternate" type="text/html" href="http://planet-geek.com/archives/004640.html" />
    <modified>2008-06-27T16:52:13Z</modified>
    <issued>2008-06-27T11:45:49-05:00</issued>
    <id>tag:planet-geek.com,2008://3.4640</id>
    <created>2008-06-27T16:45:49Z</created>
    <summary type="text/plain">I&apos;m packing up to head out to a geek camping event going on in upstate New York, but wanted to share this with ya&apos;ll. It&apos;s no secret I enjoy taking part in the debates on the Convert Me Livejournal community,...</summary>
    <author>
      <name>dbs</name>
      <url>http://dbs.homeport.org/</url>
      <email>dbs@homeport.org</email>
    </author>
    <dc:subject>Life.  Don&apos;t talk to me about life.</dc:subject>
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://planet-geek.com/">
      <![CDATA[<p>I'm packing up to head out to a geek camping event going on in upstate New York, but wanted to share this with ya'll.  It's no secret I enjoy taking part in the debates on the <a href="http://convert_me.livejournal.com/">Convert Me</a> Livejournal community, taking on my Aspect as a rabid evangelical agnostic, and wielding my Attribute of "be a dick".   It keeps the heart rate up and gives me a good rant target.</p>

<p>Someone in the group pointed to a fascinating atheist blog / website called <a href="http://www.russellsteapot.com/">Russels Teapot</a>.  On the top of the site is the following quote:</p>

<blockquote>"If I were to suggest that between the Earth and Mars there is a china teapot revolving about the sun in an elliptical orbit, nobody would be able to disprove my assertion provided I were careful to add that the teapot is too small to be revealed even by our most powerful telescopes. But if I were to go on to say that, since my assertion cannot be disproved, it is intolerable presumption on the part of human reason to doubt it, I should rightly be thought to be talking nonsense. If, however, the existence of such a teapot were affirmed in ancient books, taught as the sacred truth every Sunday, and instilled into the minds of children at school, hesitation to believe in its existence would become a mark of eccentricity and entitle the doubter to the attentions of the psychiatrist in an enlightened age or of the Inquisitor in an earlier time." - <a href="http://en.wikipedia.org/wiki/Bertrand_Russell">Bertrand Russell</a></blockquote>

<p>Pretty good commentary and right in line with my thinking.</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>Want to be a lighthouse keeper?</title>
    <link rel="alternate" type="text/html" href="http://planet-geek.com/archives/004637.html" />
    <modified>2008-06-24T23:42:54Z</modified>
    <issued>2008-06-24T18:38:14-05:00</issued>
    <id>tag:planet-geek.com,2008://3.4637</id>
    <created>2008-06-24T23:38:14Z</created>
    <summary type="text/plain">Saw this come across a sailing list I&apos;m on. Scituate Lighthouse is looking for a new keeper... &quot;A lot of people have a romantic notion of living in a lighthouse,&quot; said historical society president David Ball. &quot;There are responsibilities that...</summary>
    <author>
      <name>dbs</name>
      <url>http://dbs.homeport.org/</url>
      <email>dbs@homeport.org</email>
    </author>
    <dc:subject>Stuff n bother</dc:subject>
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://planet-geek.com/">
      <![CDATA[<p>Saw this come across a sailing list I'm on.  Scituate Lighthouse is looking for a new keeper...</p>
<blockquote>"A lot of people have a romantic notion of living in a lighthouse," said historical society president David Ball. "There are responsibilities that go with it. There's a lot more to it than people think. It takes a special person, no doubt about it."<br />
<br />
For the past 22 years, that special person has been Ruth Downton. Since 1986 she has lived in the keeper's cottage at the picturesque, 198-year-old lighthouse that marks the entrance of Scituate Harbor. But Downton is set to retire this fall.</blockquote>

<p>I know for me, being a lighthouse keeper definitely had that romantic edge of being on your own, doing a job that others depend on, isolated but there for the ships and travelers that pass nearby.  I suppose nowadays I'd need to have a net connection...</p>

<p>See the <a href="http://www.boston.com/jobs/news/articles/2008/06/22/signal_sent_out/">entire article on Boston.com</a>.</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>A decent ride today.  Phew</title>
    <link rel="alternate" type="text/html" href="http://planet-geek.com/archives/004634.html" />
    <modified>2008-06-23T01:28:23Z</modified>
    <issued>2008-06-22T20:23:42-05:00</issued>
    <id>tag:planet-geek.com,2008://3.4634</id>
    <created>2008-06-23T01:23:42Z</created>
    <summary type="text/plain">While Zach was out to lunch with Rosa, I decided to take the bike in to town with me, and ride around Cambridge. I don&apos;t get much opportunity to ride in town, so I thought it would be a good...</summary>
    <author>
      <name>dbs</name>
      <url>http://dbs.homeport.org/</url>
      <email>dbs@homeport.org</email>
    </author>
    <dc:subject>Life.  Don&apos;t talk to me about life.</dc:subject>
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://planet-geek.com/">
      <![CDATA[<p>While Zach was out to lunch with <a href="http://wso.williams.edu/~rcarson/resume.html">Rosa</a>, I decided to take the bike in to town with me, and ride around Cambridge.  I don't get much opportunity to ride in town, so I thought it would be a good opportunity.</p>

<p>I managed to avoid all the downpours that were skirting through the area, and got in about <a href="http://www.gmap-pedometer.com/?r=2011992">10 miles on city streets</a>.  I passed all the hot spots of Cambridge... Porter Square, Community Boating, Central Square, Harvard Square, etc etc </p>

<p>Afterwards, Zach and I had an hour or two to kill, so we walked down on the north end and took a good look at the Constitution (I had never actually seen it in person).  We didn't have time to go on the tour of it, but Z was suitably impressed ("That's a big boat!  All wood?  Wow.").</p>

<p>The combination of the long walk and the bike ride, and my lack of anything resembling regular exercise lately (coupled with helping Tim and Ellen move yesterday) has left me pretty wiped out.  The hot tub is calling my name.<br />
</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>Revisiting old code, and Good decisions made</title>
    <link rel="alternate" type="text/html" href="http://planet-geek.com/archives/004630.html" />
    <modified>2008-06-21T02:41:39Z</modified>
    <issued>2008-06-20T21:23:39-05:00</issued>
    <id>tag:planet-geek.com,2008://3.4630</id>
    <created>2008-06-21T02:23:39Z</created>
    <summary type="text/plain"> Over 5 years ago, I began work on an application called CONGO, a registration and badging system, not only in the vein of &quot;There&apos;s gotta be a better way&quot;, but also to help out a friend who was running...</summary>
    <author>
      <name>dbs</name>
      <url>http://dbs.homeport.org/</url>
      <email>dbs@homeport.org</email>
    </author>
    <dc:subject>Programming-fu</dc:subject>
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://planet-geek.com/">
      <![CDATA[<a href="http://www.stonekeep.com/images/coconut-icons-1.png"><img src="http://www.stonekeep.com/images/coconut-icons-1-thumb.png" align="right" valign="top"></a>
<p>Over 5 years ago, I began work on an application called <a href="http://www.stonekeep.com/congo.php">CONGO</a>, a registration and badging system, not only in the vein of "There's gotta be a better way", but also to help out a friend who was running registration at con in Philadelphia.</p>

<p>The first versions of CONGO were crude, but worked well - with a custom Swing interface, custom terminals and servers, it was an impressive setup.  What wasn't apparent was this was my first foray into writing any decent sized Java application.  I made what I thought at the time were good design decisions, and looking back on 30+ events run, and hundreds of thousands of badges printed, I'd say the design was, for what I knew at the time, solid.</p>

<p>But it's time to change.  With everything I've done over the last 3 years in Java and enterprise-level applications, I feel I'm ready to rewrite CONGO into a proper Java based webapp.  CONGO 1.0 was part Java, part PHP, part templating.  CONGO 2.0 will be a pure java application, based on <a href="http://struts.apache.org/">Struts</a>, and will allow features that I could not shoehorn into the old model</p>

<p>I started work on CONGO2 about a week ago, and I have my first screens working properly and chaining together as they should.  Part of this process is factoring in the old logic code, and linking it up with the new presentation layer I'm building using JSPs and Struts.  This means making calls to 12,000+ lines of Java code that was written as I was learning the language.</p>

<a href="http://planet-geek.com/viewer.php?i=eclipse-47.png&full"><img src="http://planet-geek.com/viewer.php?i=eclipse-47.png" align="right" valign="top"></a><p>But one thing I did consistently - I documented my methods.  Every piece of the CONGO appserver has full Javadocs describing how to call the method, and what it returns</p>

<p>Because I'm doing CONGO2 using modern tools (like <a href="http://www.eclipse.org/">Eclipse</a> and <a href="http://tomcat.apache.org/">Tomcat</a>, my GUI is showing me these docs whenever I try to link to my old code, and is reminding me how to use the old libraries.  Why is this remarkable?  Because other than generating static documentation, I've never actually seen my own comments and documentation popping in interactive windows in my IDE.  Until now.</p>

<p>It gives me a little thrill each time I see my own docs pop up as helper windows in Eclipse, showing me comments I made half a decade ago on structures and calls, and reminding me how to use the system.</p>

<p>It wasn't easy to learn Java, it wasn't easy to learn Swing, it wasn't easy to learn JSPs, JSTL, and Struts.  But now I do know them - some more than others, and I'm enjoying this massive refactoring of one of my proudest creations.</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>And now, a word from my day job.</title>
    <link rel="alternate" type="text/html" href="http://planet-geek.com/archives/004625.html" />
    <modified>2008-06-18T03:58:51Z</modified>
    <issued>2008-06-17T22:34:55-05:00</issued>
    <id>tag:planet-geek.com,2008://3.4625</id>
    <created>2008-06-18T03:34:55Z</created>
    <summary type="text/plain">I don&apos;t talk about my day job much. For those outside of the Java Geeky circles, it&apos;s pretty dull stuff. But today has been particularly active, so I thought I&apos;d share some of the bits I learned while teaching myself...</summary>
    <author>
      <name>dbs</name>
      <url>http://dbs.homeport.org/</url>
      <email>dbs@homeport.org</email>
    </author>
    <dc:subject>Programming-fu</dc:subject>
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://planet-geek.com/">
      <![CDATA[<p>I don't talk about my day job much.  For those outside of the Java Geeky circles, it's pretty dull stuff.  But today has been particularly active, so I thought I'd share some of the bits I learned while teaching myself the wonders of <a href="http://struts.apache.org">Struts</a>.  This can best be summed up by the following revelations...</p>

<p>1) When changing a struts.xml file, within an <a href="http://www.eclipse.org/">Eclipse</a> <a href="http://www.eclipse.org/webtools/">WTP environment</a>, being serviced by <a href="http://tomcat.apache.org/">Tomcat</a>, WTP does not click that the Tomcat server needs to be restarted.  The 'Dynamic' part of WTP does not take effect, and no matter how many times you save what you're working on, it won't go live in the server until you actually restart Tomcat.</p>

<p>2) Despite all the awesome advances in Eclipse in the last few years, there's twitches that still drive me absolutely gonzo.  One is that the 'smart insert mode' (which helpfully closes XML tags and closes quotes and parentheses for you) cannot be turned off globally.  You can do it on a per-editor basis, but not globally, so I'm always forgetting to turn it off when I open a new editor.  Another is XML syntax validator is still quite twitchy, and occasionally will flag incomplete tags or non-well-formed XML when the file is just fine.  A close and re-open fixes it, but ugh.</p>

<p>3) Last, but not least - that which almost got me up on the roof with a high powered rifle.  I give you a quiz as my example.  One of these two struts.xml configurations apparently tickles a bug in Struts2 and will cause an internal server error and stacktrace with a Null Pointer Exception.  The other will not.   Can you figure out which is which?</p>
<blockquote><pre>&lt;action name="/*"&gt;
	&lt;interceptor-ref name="mystack" /&gt;
	&lt;result name="success"&gt;/WEB-INF/jsp/{1}.jsp&lt;/result&gt;
	&lt;result name="login"&gt;/WEB-INF/jsp/index.jsp&lt;/result&gt;
&lt;/action&gt;</pre></blockquote>
<blockquote><pre>&lt;action name="*"&gt;
	&lt;interceptor-ref name="mystack" /&gt;
	&lt;result name="success"&gt;/WEB-INF/jsp/{1}.jsp&lt;/result&gt;
	&lt;result name="login"&gt;/WEB-INF/jsp/index.jsp&lt;/result&gt;
&lt;/action&gt;</pre></blockquote>

Just for fun, here's the actual stack trace:
<blockquote>   1.
      INFO: Server startup in 954 ms
   2.
      Jun 17, 2008 7:41:14 PM org.apache.catalina.core.StandardWrapperValve invoke
   3.
      SEVERE: Servlet.service() for servlet default threw exception
   4.
      java.lang.NullPointerException
   5.
              at com.opensymphony.xwork2.config.impl.ActionConfigMatcher.convertActionConfig(ActionConfigMatcher.java:168)
   6.
              at com.opensymphony.xwork2.config.impl.ActionConfigMatcher.match(ActionConfigMatcher.java:144)
   7.
              at com.opensymphony.xwork2.config.impl.DefaultConfiguration$RuntimeConfigurationImpl.getActionConfig(DefaultConfiguration.java:316)
   8.
              at com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:169)
   9.
              at org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:41)
  10.
              at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:494)
  11.
              at org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:419)
  12.
              at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
  13.
              at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
  14.
              at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
  15.
              at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
  16.
              at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
  17.
              at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
  18.
              at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
  19.
              at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
  20.
              at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874)
  21.
              at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
  22.
              at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
  23.
              at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
  24.
              at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
  25.
              at java.lang.Thread.run(Thread.java:619) </blockquote>

<p>How the hell am I supposed to debug that? </p>

<p>I finally did, after a good 2 hours of hair-ripping, gnashing of teeth, and spewing my venom upon the #struts IRC support channel.</p>


]]>
      
    </content>
  </entry>
  <entry>
    <title>How Not to Run a Convention</title>
    <link rel="alternate" type="text/html" href="http://planet-geek.com/archives/004621.html" />
    <modified>2008-06-17T00:29:12Z</modified>
    <issued>2008-06-16T19:16:57-05:00</issued>
    <id>tag:planet-geek.com,2008://3.4621</id>
    <created>2008-06-17T00:16:57Z</created>
    <summary type="text/plain">I do conventions. I work a lot of them. Even though I&apos;m not a conchair, I&apos;ve been high enough up in the hierarchy, and worked with enough of them, to know how much work they are, and how they can...</summary>
    <author>
      <name>dbs</name>
      <url>http://dbs.homeport.org/</url>
      <email>dbs@homeport.org</email>
    </author>
    <dc:subject>Business yammerings</dc:subject>
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://planet-geek.com/">
      <![CDATA[<p>I do conventions.  I work a lot of them.  Even though I'm not a conchair, I've been high enough up in the hierarchy, and worked with enough of them, to know how much work they are, and how they can go wrong.</p>

<p>But I've never seen <a href="http://community.livejournal.com/con_central/178658.html">one go as badly as this</a>.</p>

<p>This is the story of FedCon USA.  A Trek convention in Dallas Ft Worth where the organizer, one Tim Brazeal, apparently through pure incompetence, caused an entire event meltdown.  The reasons appear to be manifold, but the causes seem to be miscommunication, poor organization, and in some cases, out right falsehoods.  </p>

<p>On the flip side, it appears this failure is, apparently purely due to mismanagement, and cannot be ascribed to malice.  He didn't wreck the event on purpose, for profit or for some other reason - he simply screwed it up.  Badly.</p>

<p>It should be noted, that this is FedCon USA, which only bears the name FedCon as borrowed from <a href="http://www.fedcon.de/">FedCon Germany</a>.  That organization, which is widely respected, <a href="http://fedconusa.com/community/index.php?showtopic=384&hl=">issued a press release</a> describing their dealings with Tim, and how he lied and alienated them as well.  FedCon Germany withdrew support for the event, but Tim went on advertising that he had their financial and organizational backing:</p>
<blockquote>I never in my life meet an individual like Tim. First he seems like to be a great buddy, but after a while you discover a person, who is constantly lying, apologizing and making things up. He was never straight forward, almost everything he said was a lie. I never in my life met someone who actually believes all this BS he says. He was always totally sure, what he says. But saying and doing are two totally different things. He is the person who says: "Okay no problem, i book the flights for you!" As soon as you hang up he totally forgot the conversations he just had. But if i would have told the fans earlier, I would for sure got some legal problems!":<br>

All i can say is, FedCon Germany (the real thing) is always a feast for the fans and if i can help out some of you at one of our next shows please let me know, just email us and sent us some proof that you purchased a ticket for FedCon USA and we give you something back at our next show.<br>

I also think, the whole staff from FedCon USA (not Tim!!) have nothing to do with this mess and they sure worked their asses up to make some things better, but with their figurehead hiding in dream worlds, lame excuses and lies, this was just not possible.</blockquote>

<p>My heart goes out to the volunteers, staff, and particularly the attendees who, in some cases, drove many hours or flew in for the event, only to have most of the guests not show (even though they were still on the conventions schedule), and have the event shut down halfway through Saturday.</p>

<p>So next time you're having a hard time at an event?  Think of how bad it could get, and thank your event staff.</p>]]>
      
    </content>
  </entry>

</feed>