﻿<?xml version="1.0" encoding="utf-8"?><rss version="2.0" xmlns:ng="http://newsgator.com/schema/extensions"><channel><title>Geeky on NewsGator Online</title><link>http://www.newsgator.com</link><description>Geeky on NewsGator Online</description><lastBuildDate>Fri, 26 Jun 2009 10:46:41 GMT</lastBuildDate><ttl>60</ttl><item><title>Why Accurate Estimations Are Just Not Possible</title><link>http://www.secretGeek.net/littlefishes_.asp</link><description>&lt;center&gt;&lt;p&gt;Estimating a new feature... it's like a little fish swimming toward you.&lt;/p&gt;&lt;img src='http://secretGeek.net/image/littlefish.PNG' alt='little fish' style='margin-left:7px;padding:10px'/&gt;&lt;p&gt;Here comes the little fish.&lt;/p&gt;&lt;img src='http://secretGeek.net/image/littlefish.PNG' alt='little fish' style='margin-left:7px;padding:10px'/&gt;&lt;p&gt;Look at the little fish!&lt;/p&gt;&lt;img src='http://secretGeek.net/image/littlefish.PNG' alt='little fish' style='margin-left:7px;padding:10px'/&gt;&lt;p&gt;The fish is tiny!&lt;/p&gt;&lt;img src='http://secretGeek.net/image/littlefish.PNG' alt='little fish' style='margin-left:7px;padding:10px'/&gt;&lt;p&gt;I can eat this fish! I'll swallow him in one bite!&lt;/p&gt;&lt;img src='http://secretGeek.net/image/littlefish.PNG' alt='little fish' style='margin-left:7px;padding:10px'/&gt;&lt;p&gt;&lt;em&gt;Are you sure it's going to be so easy?&lt;/em&gt;&lt;/p&gt;&lt;img src='http://secretGeek.net/image/littlefish.PNG' alt='little fish' style='margin-left:7px;padding:10px'/&gt;&lt;p&gt;Of course it will be easy! This fish is tiny!&lt;/p&gt;&lt;img src='http://secretGeek.net/image/littlefish.PNG' alt='little fish' style='margin-left:7px;padding:10px'/&gt;&lt;p&gt;&lt;em&gt;But you've been wrong before.&lt;/em&gt;&lt;/p&gt;&lt;img src='http://secretGeek.net/image/littlefish.PNG' alt='little fish' style='margin-left:7px;padding:10px'/&gt;&lt;p&gt;Shut up, voice in my head, this fish is tiny! I'm staring straight at it!&lt;/p&gt;&lt;img src='http://secretGeek.net/image/littlefish.PNG' alt='little fish' style='margin-left:7px;padding:10px'/&gt;&lt;p&gt;One bite. Munch! Gone! This will be a cinch! It's hardly a fish! Just a dot! A tiny dot! I'll eat the tiny dot!&lt;/p&gt;&lt;img src='http://secretGeek.net/image/littlefish.PNG' alt='little fish' style='margin-left:7px;padding:10px'/&gt;&lt;p&gt;Here comes the fish! &lt;/p&gt;&lt;img src='http://secretGeek.net/image/littlefish.PNG' alt='little fish' style='margin-left:7px;padding:10px'/&gt;&lt;p&gt;Wait a second. I'm getting a bad feeling about this.&lt;/p&gt;&lt;img src='http://secretGeek.net/image/littlefish.PNG' alt='little fish' style='margin-left:7px;padding:10px'/&gt;&lt;p&gt;&lt;em&gt;It's too late. You're committed now.&lt;/em&gt;&lt;/p&gt;&lt;img src='http://secretGeek.net/image/littlefish.PNG' alt='little fish' style='margin-left:7px;padding:10px'/&gt;&lt;p&gt;Here's the fish from side on.&lt;/p&gt;&lt;img src='http://secretGeek.net/image/littlefish_profile.PNG' alt='little fish in profile' style='margin-left:7px;padding:10px'/&gt;&lt;/center&gt;&lt;p&gt;&lt;em&gt;Oh. Damn.&lt;/em&gt;</description><pubDate>Wed, 18 Apr 2007 23:17:22 GMT</pubDate><guid isPermaLink="false">http://www.secretGeek.net/littlefishes_.asp</guid><author>Leon Bambrick</author><source url="http://secretgeek.net/rss.asp">secretGeek</source><ng:postId>2437085557</ng:postId><ng:feedId>20091</ng:feedId><ng:folderId>1081178</ng:folderId><ng:folder ng:id="1081178" ng:flagState="0" ng:annotation="" /></item><item><title>Guest Article: Our Dirty Little Secret</title><link>http://worsethanfailure.com/Articles/Guest_Article_0x3a__Our_Dirty_Little_Secret.aspx</link><description>&lt;p&gt;&lt;img class="wtf_imgfloatright" style="FLOAT: right; MARGIN: 5px" alt="" src="http://img.worsethanfailure.com/Images/200703/codingHorror.png" /&gt;Hi, I'm Jeff Atwood from &lt;a href="http://www.codinghorror.com/blog/"&gt;&lt;u&gt;&lt;font color="#0000ff"&gt;Coding Horror&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Alex offered me the opportunity to write an article for The Daily WTF while he was away on vacation a few months ago. Unfortunately, the scheduling never quite worked out, and the tone of the resulting article was different enough from The Daily WTF format that it never quite fit in. But now that the site has been relaunched, it&amp;rsquo;s a perfect time to revisit the question that has nagged at me ever since I wrote the original article. &lt;em&gt;What are we all doing here? &lt;/em&gt;&lt;/p&gt;
&lt;p&gt;I'm no stranger to bad code; after all, my blog is named after a sidebar illustration used to illustrate dangerous code in Steve McConnell's seminal programming book &lt;a href="http://www.cc2e.com/"&gt;&lt;u&gt;&lt;font color="#0000ff"&gt;Code Complete&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;. &lt;/p&gt;
&lt;p&gt;But I'm not here to present yet another scary code sample by yet another developer who should have known better, but didn't. &lt;/p&gt;
&lt;p&gt;Although I love &lt;em&gt;Worse Than Failure&lt;/em&gt; like I love &lt;a href="http://samugliestdog.com/"&gt;&lt;u&gt;&lt;font color="#0000ff"&gt;the world's ugliest dog&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;, the concept has always made me a little uncomfortable. I've certainly written my share of WTFs through the years. And what exactly defines a WTF, anyway? One developer's clever hack is another developer's nails-on-the-chalkboard WTF. &lt;/p&gt;
&lt;p&gt;Ultimately, I decided that &lt;em&gt;Worse Than Failure&lt;/em&gt; makes me uncomfortable because it exposes &lt;strong&gt;the dirty little secret of our profession&lt;/strong&gt;: &lt;em&gt;we all write bad code.&lt;/em&gt; &lt;/p&gt;
&lt;p&gt;The only difference between us and them, in fact, is that we &lt;em&gt;know&lt;/em&gt; when we're writing bad code. &lt;/p&gt;
&lt;p&gt;And that's a very thin line indeed. &lt;/p&gt;
&lt;p&gt;There are millions of lines of WTFs written every year by developers who had no idea they were writing WTF material. The developers writing these WTFs are blissfully unaware of the carnage they're creating for their fellow developers. &lt;/p&gt;
&lt;p&gt;And there's so much material to work with. In our profession, bad code is not remarkable, noteworthy, or interesting. Bad code is utterly mundane because it is, sadly, all too common. It's the status quo. If you want to see bad code, you don't have to come here to do so. Just look around you. This &lt;em&gt;should&lt;/em&gt; make us uncomfortable. If anything, there should be a website where you could marvel at the truly unique code -- the stuff that &lt;em&gt;doesn't&lt;/em&gt; suck. &lt;/p&gt;
&lt;p&gt;Publicizing bad code is part of educating developers. &lt;em&gt;Worse Than Failure&lt;/em&gt; has done that remarkably well. Pointing and laughing at all these terrible code samples is fun. But once you realize the scope of the problem, it stops being fun -- and starts being downright depressing. At some point you wish the guy before you had done something about this person and their WTF code before it became your responsibility. &lt;/p&gt;
&lt;p&gt;Let's take a break from our regular programming to consider how we can prevent WTFs from happening in the first place. If you're reading this, you probably don't need our help. But your fellow developers do. Take less capable developers under your wing. Mentor them. Provide them with guidance. Invite them to a user group meeting. Email them blog links. Expose them to essential programming books like &lt;a href="http://www.cc2e.com/"&gt;&lt;u&gt;&lt;font color="#0000ff"&gt;Code Complete&lt;/font&gt;&lt;/u&gt;&lt;/a&gt; and &lt;a href="http://www.sensible.com/chapter.html"&gt;&lt;u&gt;&lt;font color="#0000ff"&gt;Don't Make Me Think&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;. In extreme cases, maybe they legitimately picked the wrong profession and should be gently nudged into some other role. &lt;/p&gt;
&lt;p&gt;Or you could just post their code on &lt;em&gt;Worse Than Failure&lt;/em&gt; for us to laugh at. &lt;/p&gt;
&lt;p&gt;But when you do that, you're really laughing at all of us. &lt;font face="Arial" size="2"&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://syndication.thedailywtf.com/~a/TheDailyWtf?a=WBFPuT"&gt;&lt;img src="http://syndication.thedailywtf.com/~a/TheDailyWtf?i=WBFPuT" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div class="feedflare"&gt;&lt;a href="http://syndication.thedailywtf.com/~f/TheDailyWtf?a=5nCm94LK"&gt;&lt;img src="http://syndication.thedailywtf.com/~f/TheDailyWtf?i=5nCm94LK" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://syndication.thedailywtf.com/~f/TheDailyWtf?a=FynwevoG"&gt;&lt;img src="http://syndication.thedailywtf.com/~f/TheDailyWtf?i=FynwevoG" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://syndication.thedailywtf.com/~r/TheDailyWtf/~4/103901479"/&gt;</description><pubDate>Fri, 23 Mar 2007 17:00:00 GMT</pubDate><guid isPermaLink="false">4990</guid><comments>http://worsethanfailure.com/Comments/Guest_Article_0x3a__Our_Dirty_Little_Secret.aspx</comments><author>Alex Papadimoulis</author><source url="http://thedailywtf.com/Rss.aspx">The Daily WTF</source><ng:postId>2291913619</ng:postId><ng:feedId>18589</ng:feedId><ng:folderId>1081178</ng:folderId><ng:folder ng:id="1081178" ng:flagState="0" ng:annotation="" /></item><item><title>Persistence Gets the Job Done</title><link>http://thedailywtf.com/forums/thread/92484.aspx</link><description>&lt;p&gt;&lt;img class="wtf_imgfloatright" height="216" src="http://img.thedailywtf.com/images/200609/robert.jpg" style="float: right; margin: 5px; width: 200px; height: 216px" width="200" /&gt;&lt;strong&gt;Kristopher&lt;/strong&gt; has the pleasure of working with Robert, The Infallible Programmer. Robert (his earthly name) is actually one of the world&amp;#39;s two programmers who have never coded a single bug. The other bug-free programmer, though not infallible, is the guy who writes all of those &amp;quot;Hello World&amp;quot; examples. &lt;/p&gt;&lt;p&gt;This is not to say that the Code of Robert is bug-free. As a worldly programmer, Robert is constrained to worldly tools created by fallible programmers, and it is within these tools that the defects exist, and not His code. To Him, nothing is &amp;quot;real&amp;quot; in the sense of, &amp;quot;if we used a REAL database, this would work,&amp;quot; or &amp;quot;if we used a REAL operating system, this wouldn&amp;#39;t crash.&amp;quot; But alas, He contends that no &amp;quot;real&amp;quot; tools exist on the marketplace yet: &amp;quot;everything out there is made by a bunch of idiots!&amp;quot; &lt;/p&gt;&lt;p&gt;But let&amp;#39;s get back to Kristopher, who joined the company several months back. As an intern, Kristopher is in no position to question anything produced by Robert. Nor is anyone else: Robert is also the star-developer and His word is final. Besides, how could one possibly question the Code of Robert, anyway? It&amp;#39;s infallible, after all. &lt;/p&gt;&lt;p&gt;Kristopher thought it would be an interesting exercise to show what exactly infallible code looks like. This example of the Code of Robert was found in the session termination subroutine of one of their web applications. Kristopher hasn&amp;#39;t quite figured out what PHP, Postgres, Apache, or Linux bug this &amp;quot;trying the same database query 5,000 times until it works&amp;quot; code is working around, but I&amp;#39;ll bet it&amp;#39;s a pretty serious one ... &lt;/p&gt;&lt;blockquote&gt;&lt;pre&gt;&lt;p&gt;&lt;font color="#006600"&gt;// Try 5000 times to make sure that this stupid thing 
// was deleted. This crap is such a toy.&lt;/font&gt;
&lt;font color="#000099"&gt;while&lt;/font&gt; ( !$bDeleted &amp;amp;&amp;amp; $iTimes &amp;lt; 5000 )
{
  
  $iTimes++;

  &lt;font color="#006600"&gt;//does session exist?&lt;/font&gt;
  $sSQL = &lt;font color="#990000"&gt;&amp;quot;SELECT * FROM sessions &amp;quot;&lt;/font&gt; .
          &lt;font color="#990000"&gt;&amp;quot;WHERE s_user_id = &amp;quot;&lt;/font&gt; . $user_id . &lt;font color="#990000"&gt;&amp;quot;&amp;quot;&lt;/font&gt;;

  &lt;font color="#000099"&gt;if&lt;/font&gt; ( !$qryObj-&amp;gt;Exec( $sSQL ) ) 
    &lt;font color="#000099"&gt;continue&lt;/font&gt;; &lt;font color="#006600"&gt;//failed, try again&lt;/font&gt;
  
  &lt;font color="#000099"&gt;if&lt;/font&gt; ( $qryObj-&amp;gt;NumRows() == 0 )
  { &lt;font color="#006600"&gt;//finally, deleted!&lt;/font&gt;
    $bDeleted = &lt;font color="#000099"&gt;true&lt;/font&gt;;
    &lt;font color="#000099"&gt;break&lt;/font&gt;;
  }
  
  &lt;font color="#006600"&gt;//delete session&lt;/font&gt;
  $sSQL =  &lt;font color="#990000"&gt;&amp;quot;DELETE FROM sessions &amp;quot;&lt;/font&gt; .
           &lt;font color="#990000"&gt;&amp;quot;WHERE s_user_id = &amp;quot;&lt;/font&gt; . $user_id .  &lt;font color="#990000"&gt;&amp;quot;&amp;quot;&lt;/font&gt;;

  &lt;font color="#000099"&gt;if&lt;/font&gt; ( !$qryObj-&amp;gt;Exec( $sSQL ) ) 
    &lt;font color="#000099"&gt;continue&lt;/font&gt;; &lt;font color="#006600"&gt;//failed, try again&lt;/font&gt;
}

&lt;font color="#000099"&gt;if&lt;/font&gt; ( !$bDeleted )
{
  trigger_error( &lt;font color="#990000"&gt;&amp;quot;Delete failed.&amp;quot;&lt;/font&gt;, E_USER_ERROR );
  die();
}&lt;/p&gt;
&lt;/pre&gt;&lt;/blockquote&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="border-top:1px solid black; border-bottom:1px solid black; padding:3px; font-size:115%"&gt;&lt;a href="http://img.thedailywtf.com/articleSponsor.ashx?redir=92484" target="_blank"&gt;&lt;img width="600" height="20" src="http://img.thedailywtf.com/articleSponsor.ashx?img=92484" border="0" alt="Article Sponsor" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://syndication.thedailywtf.com/~r/TheDailyWtf/~4/27792355"/&gt;</description><pubDate>Thu, 21 Sep 2006 16:25:13 GMT</pubDate><guid isPermaLink="false">24b8a869-dfac-465a-8bea-5fc51108d524:92484</guid><comments>http://thedailywtf.com/forums/thread/92484.aspx</comments><author>Alex Papadimoulis</author><source url="http://thedailywtf.com/Rss.aspx">The Daily WTF</source><ng:postId>1444937166</ng:postId><ng:feedId>18589</ng:feedId><ng:folderId>1081178</ng:folderId><ng:folder ng:id="1081178" ng:flagState="0" ng:annotation="" /></item><item><title>Plane Pr0n</title><link>http://www.neptunuslex.com/2006/09/18/plane-pr0n/</link><description>&lt;p&gt;Courtesy of Brian, some plane pr0n taken from the flight deck of the USS &lt;em&gt;Reagan&lt;/em&gt;, for them such as like it:&lt;/p&gt;
&lt;p&gt;&lt;a target="_blank" href="http://epiqs.smugmug.com/gallery/1101687/2/54850706"&gt;http://epiqs.smugmug.com/gallery/1101687/2/54850706&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a target="_blank" href="http://epiqs.smugmug.com/gallery/1101687/2/53160254"&gt; http://epiqs.smugmug.com/gallery/1101687/2/53160254&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a target="_blank" href="http://epiqs.smugmug.com/gallery/1101687/7/79151584"&gt; http://epiqs.smugmug.com/gallery/1101687/7/79151584&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;You know who you are.
&lt;/p&gt;
No Tags</description><pubDate>Tue, 19 Sep 2006 00:53:42 GMT</pubDate><guid isPermaLink="false">http://www.neptunuslex.com/2006/09/18/plane-pr0n/</guid><comments>http://www.neptunuslex.com/2006/09/18/plane-pr0n/#comments</comments><author>lex</author><source url="http://www.neptunuslex.com/feed/">Neptunus Lex</source><ng:postId>1433227768</ng:postId><ng:feedId>819000</ng:feedId><ng:folderId>1081178</ng:folderId><ng:folder ng:id="1081178" ng:flagState="0" ng:annotation="" /></item><item><title>NewsGator Desktop Sync Beta (Windows RSS Platform / NewsGator Online Synchronization)</title><link>http://blogs.newsgator.com/inbox/2006/09/newsgator_deskt.html</link><description>&lt;p&gt;Back in March at MIX06, &lt;a href="http://www.rassoc.com/gregr/weblog/"&gt;Greg Reinacker&lt;/a&gt; and &lt;a href="http://blogs.msdn.com/rssteam/"&gt;Waltor VonKoch&lt;/a&gt; demonstrated and &lt;a href="http://www.rassoc.com/gregr/weblog/archive.aspx?post=807"&gt;blogged&lt;/a&gt; &lt;a href="http://blogs.msdn.com/rssteam/archive/2006/04/15/576751.aspx"&gt;about&lt;/a&gt; their demo of synchronizing the Windows RSS Platform with NewsGator Online.&amp;nbsp; Since then, IE 7 RC 1 was released with the finalized version of the Windows RSS Platform API and eventually the task of finishing and cleaning up our synchronization application and making it ready for the public fell to me...&amp;nbsp; and now it's ready for you!&lt;/p&gt; &lt;p&gt;NewsGator Desktop Sync Beta is the evolution of the MIX06 demo and offers full synchronization between the Windows RSS Platform and NewsGator Online.&amp;nbsp; Desktop Sync is a system tray application that keeps your feeds, folders and read states synchronized between NewsGator Online and the Windows RSS Platform.&amp;nbsp; This means that any application that uses the Windows RSS Platform will be automatically synchronized with your NewsGator Online account! &lt;/p&gt; &lt;p&gt;You can download NewsGator Desktop Sync Beta here:&lt;br /&gt;&lt;a href="http://www.newsgator.com/download/desktopsync/ngdesktopsyncsetup.exe"&gt;http://www.newsgator.com/download/desktopsync/ngdesktopsyncsetup.exe&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;span style="color: #ff0000;"&gt;Keep in mind that this is a pre-release, which means it's not done yet! So please don't download it unless you're comfortable using incomplete software that still contains bugs.&amp;nbsp; &lt;/span&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #ff0000;"&gt;&lt;strong&gt;Requirements&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Internet Explorer 7 RC1 or Windows Vista RC1&amp;nbsp; &lt;/strong&gt;

&lt;br /&gt;&lt;strong&gt;Microsoft .Net Framework Version 2.0&lt;/strong&gt;&lt;/span&gt;&amp;nbsp; &lt;/p&gt;

&lt;p&gt;Any issues can be reported using the &amp;quot;Submit Support Request&amp;quot; option on the Help menu, or by posting to the &lt;a href="http://www.newsgator.com/FORUM/Forum41-1.aspx"&gt;Desktop Sync beta forum&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;I'll post about some of the configuration settings later on, but for now go ahead and download the install and tell us what you think!&lt;/p&gt;</description><pubDate>Mon, 18 Sep 2006 22:06:38 GMT</pubDate><guid isPermaLink="false">http://blogs.newsgator.com/inbox/2006/09/newsgator_deskt.html</guid><author>Nick Harris</author><source url="http://blogs.newsgator.com/inbox/index.rdf">NewsGator Inbox</source><ng:postId>1432474650</ng:postId><ng:feedId>605159</ng:feedId><ng:folderId>1081178</ng:folderId><ng:folder ng:id="1081178" ng:flagState="0" ng:annotation="" /></item><item><title>Troops test liquid armor</title><link>http://www.neptunuslex.com/2006/09/04/troops-test-liquid-armor/</link><description>&lt;p&gt;It was only a &lt;a target="_blank" href="http://technology.timesonline.co.uk/article/0,,20409-2340507.html"&gt;matter of time&lt;/a&gt;, really:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;Soldiers are to begin trialling a futuristic “liquid armour” that is worn like ordinary clothing but turns into a rigid shield as soon as it is hit by bullets or shrapnel.&lt;/p&gt;
&lt;p&gt;The armour consists of material impregnated with liquid silica that has been modified using nanotechnology. It is designed as a flexible alternative to the current military armour, which consists of Kevlar material reinforced by heavyweight ceramic plates.&lt;/p&gt;&lt;/blockquote&gt;
No Tags</description><pubDate>Tue, 05 Sep 2006 00:31:32 GMT</pubDate><guid isPermaLink="false">http://www.neptunuslex.com/2006/09/04/troops-test-liquid-armor/</guid><comments>http://www.neptunuslex.com/2006/09/04/troops-test-liquid-armor/#comments</comments><author>lex</author><source url="http://www.neptunuslex.com/feed/">Neptunus Lex</source><ng:postId>1377493718</ng:postId><ng:feedId>819000</ng:feedId><ng:folderId>1081178</ng:folderId><ng:folder ng:id="1081178" ng:flagState="0" ng:annotation="" /></item><item><title>Minerva - Single-player Half-Life2 mod</title><link>http://blog.crankygeek.com/archives/2006/06/23/minerva-single-player-half-life2-mod/</link><description>	&lt;p&gt;I&amp;#8217;m a &lt;a href="http://www.half-life.com/"&gt;Half-Life&lt;/a&gt; addict.  I pre-ordered &lt;a href="http://ep1.half-life2.com/"&gt;Episode 1&lt;/a&gt; and played through it in a few days.  Fortunately, I spend a lot of time with &lt;a href="http://blog.crankygeek.com/archives/category/family/connor/"&gt;Connor&lt;/a&gt; so I got to stretch the 4-5 hours of play time out a bit.  All-in-all, I&amp;#8217;m glad to have it, but it was too short.  Of course, I&amp;#8217;ll still pay another $20 next time&amp;#8230;&lt;/p&gt;
	&lt;p&gt;So color me happy when I stumbled upon &lt;a href="http://www.crea-doo.at/weblog/2006/04/20/half-life-2-mod-minerva-metastasis-2/"&gt;this blog post&lt;/a&gt; which introduced me to &lt;a href="http://www.hylobatidae.org/minerva/"&gt;Minerva&lt;/a&gt;.  It&amp;#8217;s a third-party, episodic single-player mod for HL2.  And it&amp;#8217;s free.  Can&amp;#8217;t wait to load it up!&lt;/p&gt;
	&lt;p&gt;And in case you&amp;#8217;re wondering why I&amp;#8217;m reading blogs in German, I&amp;#8217;m not.  That blog is for the author of &lt;a href="http://www.crea-doo.at/ituneswatcher/"&gt;ituneswatcher&lt;/a&gt; / &lt;a href="http://www.crea-doo.at/itunesspy/"&gt;itunesspy&lt;/a&gt; which is the nifty little combo that allows me to post the music I&amp;#8217;m listening to right here on my blog.
&lt;/p&gt;
</description><pubDate>Fri, 23 Jun 2006 18:18:47 GMT</pubDate><guid isPermaLink="false">http://blog.crankygeek.com/archives/2006/06/23/minerva-single-player-half-life2-mod/</guid><comments>http://blog.crankygeek.com/archives/2006/06/23/minerva-single-player-half-life2-mod/#comments</comments><author>crankygeek</author><source url="http://blog.crankygeek.com/feed/">crankygeek</source><ng:postId>1085217056</ng:postId><ng:feedId>196079</ng:feedId><ng:folderId>1081178</ng:folderId><ng:folder ng:id="1081178" ng:flagState="0" ng:annotation="" /></item><item><title>The Name Game: Naming Software Projects</title><link>http://blogs.vertigosoftware.com/jatwood/archive/2006/05/09/2743.aspx</link><description>&lt;p&gt;
We recently had a spirited discussion here at Vertigo on &lt;b&gt;internal project code names&lt;/b&gt;. We've used cities and superheroes before, but we needed a change. &lt;a href="http://blogs.vertigosoftware.com/scott/"&gt;Scott&lt;/a&gt; gave us the following guidelines:
&lt;p&gt;
&lt;ol&gt;
&lt;li&gt;We like one word names.
&lt;li&gt;We like them to be both pronouncable and easily spellable. 
&lt;li&gt;They have to be client friendly.
&lt;li&gt;They should be globally unique (across Vertigo).
&lt;li&gt;We like to have a set, from A-Z to choose from, in order.
&lt;/ol&gt;
&lt;p&gt;
The resulting discussion was a lot of fun. We immediately found &lt;a href="http://bink.nu/Codenames.bink"&gt;Microsoft's list of project code names&lt;/a&gt;, and &lt;a href="http://www.apple-codenames.com/abc/"&gt;Apple's list of project code names&lt;/a&gt;, which are good starting points to get your creative juices flowing.
&lt;p&gt;
Here are some of the suggestions so far:
&lt;p&gt;
&lt;ul&gt;
&lt;li&gt;Types of Food
&lt;li&gt;Video Game Titles (&lt;a href="http://en.wikipedia.org/wiki/List_of_Atari_2600_games"&gt;Atari 2600&lt;/a&gt;, &lt;a href="http://www.klov.com/"&gt;Arcade&lt;/a&gt;, etc)
&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/List_of_commercial_brands_of_beer"&gt;Brands of Beer&lt;/a&gt;
&lt;li&gt;&lt;a href="http://www.roman-emperors.org/impindex.htm"&gt;Roman Emperors&lt;/a&gt;
&lt;li&gt;Cartoon characters / shows
&lt;li&gt;Mythological names / &lt;a href="http://www.godchecker.com/"&gt;gods&lt;/a&gt;
&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/List_of_cars"&gt;Cars&lt;/a&gt;
&lt;li&gt;GUIDs (my personal favorite)
&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/User:Miwasatoshi/List_of_gemstones"&gt;Gemstones&lt;/a&gt;
&lt;li&gt;Types of Coffee drinks
&lt;li&gt;States (and famous sites within states)
&lt;li&gt;Counties
&lt;li&gt;Streets in a city
&lt;li&gt;Plants
&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/List_of_dinosaurs"&gt;Dinosaurs&lt;/a&gt;
&lt;li&gt;&lt;a href="http://www.imdb.com/name/nm0000033/"&gt;Hitchcock films&lt;/a&gt;
&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/List_of_cheeses"&gt;Cheeses&lt;/a&gt;
&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/List_of_dog_breeds"&gt;Dog breeds&lt;/a&gt;
&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/List_of_colors"&gt;Colors&lt;/a&gt;
&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/List_of_trees"&gt;Trees&lt;/a&gt;
&lt;li&gt;&lt;a href="http://www.completetax.com/Forms-Tables-Worksheets.asp"&gt;IRS Tax Forms&lt;/a&gt;
&lt;li&gt;English &lt;a href="http://en.wikipedia.org/wiki/List_of_monarchs"&gt;monarchs&lt;/a&gt;
&lt;li&gt;Famous People (eg, &lt;a href="http://en.wikipedia.org/wiki/Carl_Sagan"&gt;Sagan&lt;/a&gt;)
&lt;li&gt;&lt;a href="http://www.wikipedia.com"&gt;Wikipedia&lt;/a&gt; article names
&lt;li&gt;Single letters (including unicode)
&lt;li&gt;Radio &lt;a href="http://en.wikipedia.org/wiki/NATO_phonetic_alphabet"&gt;alphabet&lt;/a&gt;
&lt;li&gt;&lt;a href="http://www.usmm.org/victoryships.html"&gt;World War II era ships&lt;/a&gt;
&lt;li&gt;&lt;a href="http://www.ikea.com"&gt;IKEA&lt;/a&gt; product names
&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/List_of_bridges"&gt;Birds&lt;/a&gt;
&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/List_of_beaches "&gt;Beaches&lt;/a&gt;
&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/List_of_bridges"&gt;Bridges&lt;/a&gt;
&lt;li&gt;Web 2.0 &lt;a href="http://www.andrewwooldridge.com/myapps/webtwopointoh.html"&gt;names&lt;/a&gt;
&lt;li&gt;World of Warcraft realm names
&lt;li&gt;Types of Fasteners (nut, bolt, rivet, etc)
&lt;li&gt;&lt;a href="http://www.skicentral.com/resorts.html"&gt;Ski resorts&lt;/a&gt;
&lt;li&gt;&lt;a href="http://www.nps.gov/applications/parksearch/atoz.cfm"&gt;National Parks&lt;/a&gt;
&lt;li&gt;&lt;a href="http://www.peakbagger.com/listindx.aspx
"&gt;Mountain Peaks&lt;/a&gt;
&lt;/ul&gt;
&lt;p&gt;
Of course, no entry on naming would be complete without a reference to the classic Salon article, &lt;a href="http://salon.com/media/col/shal/1999/11/30/naming/print.html"&gt;The Name Game&lt;/a&gt;:
&lt;p&gt;
&lt;blockquote&gt;&lt;i&gt;
In the end, however, attempting to quantify the benefits of a naming project may be just as small-minded as, well, attempting to quantify the benefits of a name. For the lucky client who truly clicks with his or her namer, the collateral benefits go far beyond nomenclature. There are new words to learn. Fun games to play. And, in the case of the Monkeys, unimpeachable warmth and love. "We got so much more than a name," says Robin Bahr of 98point6. "I mean, I got a name for my daughter. One of our senior executives identified strongly with 'Mescalanza.' No one calls him Jim anymore. His name is Mescalanza." Meanwhile, she says, "our senior manager for Internet development just fell in love with the name 'Jamcracker.' And so today, the Harvey meeting is known as the Jamcracker meeting. There are 300 people at this company who identify Jamcracker with Harvey."
&lt;p&gt;
Bahr claps her hands over her mouth. "Oh my God," she says. "I forgot. I shouldn't be mentioning these names to a reporter. Technically, we don't have ownership of those names. Jamcracker is still the Monkeys' property."
&lt;p&gt;
Bahr stops for a moment, as if listening to herself. Then she bursts out laughing. "Listen," she says. "I take it back. You write whatever you want to write. If &lt;a href="http://www.jamcracker.com/"&gt;someone out there wants to name their company Jamcracker&lt;/a&gt;, God bless them. And good luck to them."
&lt;/i&gt;&lt;/blockquote&gt;&lt;img src="http://blogs.vertigosoftware.com/aggbug.aspx?PostID=2743" width="1" height="1"&gt;</description><pubDate>Tue, 09 May 2006 18:53:00 GMT</pubDate><guid isPermaLink="false">fcb82b5c-78c7-46a5-b6ff-1ef27e7d7271:2743</guid><comments>http://blogs.vertigosoftware.com/jatwood/comments/2743.aspx</comments><author>jatwood</author><source url="http://blogs.vertigosoftware.com/jatwood/rss.aspx">Jeff Atwood</source><ng:postId>882717235</ng:postId><ng:feedId>360283</ng:feedId><ng:folderId>1081178</ng:folderId><ng:folder ng:id="1081178" ng:flagState="0" ng:annotation="" /></item></channel></rss>