<?xml version="1.0"?>
<rss version="2.0"> 
<channel>
  <title>Lone Coder - Reflections for the Unsung Linux Saviours</title>
  <link>http://www.pegasoft.ca/coder.html</link>
  <description>Linux stories, software reviews and occupational insights by author Ken O. Burtch</description>
  <language>en-us</language>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <pubDate>Tue, 23 Apr 2013 14:00:01 EST</pubDate>
  <lastBuildDate>Tue, 23 Apr 2013 14:00:01 EST</lastBuildDate>
  <item>
     <link>http://www.pegasoft.ca/coder/coder_april_2013.html</link>
     <title>Lone Coder: Fast Coders and Failed Projects</title>
     <!-- description>Sometimes short-term cutting becomes long-term fail to deliver.</description -->
     <description>Sometimes short-term cutting becomes long-term fail to deliver.&lt;hr&gt;

&lt;table class=&quot;quote_layout&quot;&gt;
&lt;tr&gt;
&lt;td class=&quot;quote_text&quot;&gt;
&lt;p&gt;&quot;When a man sits with a pretty girl for an hour, it seems like a
minute. But let him sit on a hot stove for a minute &acirc;€” then it&acirc;€™s
longer than any hour. That&acirc;€™s relativity!&quot;
&lt;/td&gt;
&lt;/tr&gt;&lt;tr&gt;
&lt;td class=&quot;quote_citation&quot;&gt;
&lt;p&gt;-- Albert Einstein&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;

&lt;p class=&quot;plain&quot;&gt;A man is going to purchase items from several stores.
However, he is far too busy to waste time writing a list.  So he travels
to Store A, then to Store B, realizes he forgot something at Store A and
must travel back there, then goes to Store C to purchase something he
forgot.  When he gets home, will the man brag about his efficiency?
If he's a programmer, sometimes the answer is &quot;yes&quot;.&lt;/p&gt;

&lt;p class=&quot;plain&quot;&gt;Over the years, I've worked with several programmers
and designers who believe they are exceptionally fast workers, and that
speed shows their superiority.  These are designers who don't do ask
around about the facts before proposing a design.  These are programmers
that leave comments out of code to enhance their speed.  Their designs
are almost always failures, and the programs delivered late and
faulty.&lt;/p&gt;

&lt;p class=&quot;plain&quot;&gt;In the book &lt;b&gt;&quot;Game Architecture and Design&quot;&lt;/b&gt;,
Rollings and
Morris describe the problem this way: &quot;The following are arguments against
the introduction of architecture design procedures: there is no time for
all of the delays and paperwork that it will cause, the project is
already on an aggressive and tight schedule, and adding all this overhead
will only slow things down in the long run.  Having seen the poor states
of projects that have succumbed to these arguments, the answer is that
there is no time to implement the measures!  Saving time in the long run
makes up for any slowdowns in the earlier stages of the project.&quot;
(&quot;Game Architecture and Design&quot;, Andrew Rollings and Dave Morris)&lt;/p&gt;

&lt;p class=&quot;plain&quot;&gt;Rollings and Morris describe the same arguments being
employed to prevent code reviews, testing, team communication and other
&quot;optional&quot; activities.  Code reviews, for example, take up 1/40th of a
two-week development cycle but can increase quality, train staff and
improve productivity by 1/5th, according to the book.  &lt;b&gt;That's an
8-fold return on the investment over the course of the project&lt;/b&gt;.  Many
of these optional activities save time if dropped at the start of the
project, but introduce costly delays later on.&lt;/p&gt;

&lt;p class=&quot;plain&quot;&gt;I recently spoke with a game company
recruiter who explained the difference between good programmers and
game programmers.  &lt;b&gt;In games, he explained, it's all about ego.&lt;/b&gt;  Most
game programmers are actually terrible at what they do, but they are
deluded into thinking they are the best in the world.  A skilled
programmer who is secure enough to have nothing to prove will always
be rejected by game companies.&lt;/p&gt;

&lt;p class=&quot;plain&quot;&gt;You can see this if you read &lt;b&gt;&quot;Game Programming Gems&quot;&lt;/b&gt;
book series by Charles River Media.  The books contain articles written
by people in the game industry.  Some articles are insightful and
clever, and some are misguided and uninspired and never should have been
published.  Yet every author is supposed to represent the best of the
best, at least, in their own minds.&lt;/p&gt;

&lt;p class=&quot;plain&quot;&gt;There is a disconnect in some technical people between
their claimed skills and their actual skills.  Often speed is used as
the justification benchmark.  It's easy to cut things out in order to
be fast today, but difficult to keep things in that will make tomorrow
even faster.&lt;/p&gt;

&lt;p class=&quot;plain&quot;&gt;Sometimes companies can be under such deadlines and
financial pressure that they get suckered by the sales pitch of
technical people that justify themselves in terms of their self-proclaimed speed.
Hiring someone who does shoddy work quickly, at least for a few weeks,
gives a company a feeling of security, that their project will get
delivered on time.  But as the project advances, the deadlines
begin to slip and nothing works properly, the time saving of these
speed demons becomes questionable.&lt;/p&gt;

&lt;p class=&quot;plain&quot;&gt;When you go shopping, it's worth it to
take 10 minutes write a list before you start.  That 10 minutes may
save you an hour of time and gas.  Sometimes short-term
cutting becomes long-term fail to deliver.&lt;/p&gt;

&lt;p class=&quot;article_date&quot;&gt;&lt;time datetime=&quot;2013-04-23&quot;&gt;April 23, 2013&lt;/time&gt;&lt;/p&gt;

</description>
     <guid isPermaLink="true">http://www.pegasoft.ca/coder/coder_april_2013.html</guid>
     <pubDate>Tue, 23 Apr 2013 14:00:01 EST</pubDate>
  </item>
  <item>
     <link>http://www.pegasoft.ca/coder/coder_february_2013.html</link>
     <title>Lone Coder: Linux Programming by Contract with GCC Ada</title>
     <description>An overview and first impression of programming by contract on GCC Ada.</description>
     <guid isPermaLink="true">http://www.pegasoft.ca/coder/coder_february_2013.html</guid>
     <pubDate>Fri, 15 Feb 2013 16:55:46 EST</pubDate>
  </item>
  <item>
     <link>http://www.pegasoft.ca/coder/coder_december_2012.html</link>
     <title>Lone Coder: Comparing DAOs, ORMs and Other Ways to Use SQL</title>
     <description>Some problems are wolves: no matter what clothes you put them in, they still look like wolves underneath. In this article, I'll address the common problem of working with databases and explain why it is difficult to solve.</description>
     <guid isPermaLink="true">http://www.pegasoft.ca/coder/coder_december_2012.html</guid>
     <pubDate>Fri, 21 Dec 2012 14:06:59 EST</pubDate>
  </item>
  <item>
     <link>http://www.pegasoft.ca/coder/coder_november_2012.html</link>
     <title>Lone Coder: Better Programming Productivity Through Dance</title>
     <description>A few months ago I issued a challenge to my fellow programmers: come to a free square dance open house. Could dancing teach programmers to work as a team?</description>
     <guid isPermaLink="true">http://www.pegasoft.ca/coder/coder_november_2012.html</guid>
     <pubDate>Thu, 22 Nov 2012 11:50:34 EST</pubDate>
  </item>
  <item>
     <link>http://www.pegasoft.ca/coder/coder_october_2012.html</link>
     <title>Lone Coder: The Programmer's Guide to Car Buying</title>
     <description>Ask ten people what is the best car and you're likely to get ten different answers. Let's look at what I learned when I bought my last automobile.</description>
     <guid isPermaLink="true">http://www.pegasoft.ca/coder/coder_october_2012.html</guid>
     <pubDate>Tue, 16 Oct 2012 15:19:34 EST</pubDate>
  </item>
  <item>
     <link>http://www.pegasoft.ca/coder/coder_september_2012.html</link>
     <title>Lone Coder: IT Architecture and the Benefits of Architects</title>
     <description>What exactly is information technology architecture and what do architects do?</description>
     <guid isPermaLink="true">http://www.pegasoft.ca/coder/coder_september_2012.html</guid>
     <pubDate>Wed, 26 Sep 2012 10:10:09 EST</pubDate>
  </item>
  <item>
     <link>http://www.pegasoft.ca/coder/coder_may_2012.html</link>
     <title>Lone Coder: Slaves to Fashion</title>
     <description>Are technical people motivated, as Ellison believes, by fashion, choosing solutions that will impress peers or avoid ridicule?</description>
     <guid isPermaLink="true">http://www.pegasoft.ca/coder/coder_may_2012.html</guid>
     <pubDate>Tue, 22 May 2012 10:23:05 EST</pubDate>
  </item>
  <item>
     <link>http://www.pegasoft.ca/coder/coder_december_2011.html</link>
     <title>Lone Coder: SparForte 1.3 Preview</title>
     <description>Version 1.3 will be add new features for &quot;scaling up&quot; your applications. Here are a few of the new features you can expect.</description>
     <guid isPermaLink="true">http://www.pegasoft.ca/coder/coder_december_2011.html</guid>
     <pubDate>Wed, 28 Dec 2011 10:10:38 EST</pubDate>
  </item>
  <item>
     <link>http://www.pegasoft.ca/coder/coder_november_2011.html</link>
     <title>Lone Coder: Potato Chip Technology</title>
     <description>As the saying goes, you can't always judge a book by its cover.  You can with open source.</description>
     <guid isPermaLink="true">http://www.pegasoft.ca/coder/coder_november_2011.html</guid>
     <pubDate>Fri, 11 Nov 2011 06:35:35 EST</pubDate>
  </item>
  <item>
     <link>http://www.pegasoft.ca/coder/coder_august_2011.html</link>
     <title>Lone Coder: Unit Tests : An Pound of Prevention?</title>
     <description>People are bad at evaluating risks and payoffs.  Unit tests benefits depend on the problem you are solving, the business requirements, the language you use and whether you are doing continuous integration.</description>
     <guid isPermaLink="true">http://www.pegasoft.ca/coder/coder_august_2011.html</guid>
     <pubDate>Thu, 01 Sep 2011 09:35:26 EST</pubDate>
  </item>
  <item>
     <link>http://www.pegasoft.ca/coder/coder_july_2011.html</link>
     <title>Lone Coder: What's that Bug? Common Niagara Critters</title>
     <description>I'm tired of not knowing what to call critters around the house and yard. So I've done some Internet searching.</description>
     <guid isPermaLink="true">http://www.pegasoft.ca/coder/coder_july_2011.html</guid>
     <pubDate>Tue, 19 Jul 2011 10:06:56 EST</pubDate>
  </item>
  <item>
     <link>http://www.pegasoft.ca/coder/coder_may_2011.html</link>
     <title>Lone Coder: Spectacular Failures: Firefox 4 and LibreOffice</title>
     <description>Firefox 4 and LibreOffice were Two spectacular failures, victims of their own success.</description>
     <guid isPermaLink="true">http://www.pegasoft.ca/coder/coder_may_2011.html</guid>
     <pubDate>Wed, 25 May 2011 14:39:31 EST</pubDate>
  </item>
  <item>
     <link>http://www.pegasoft.ca/coder/coder_april_2011.html</link>
     <title>Lone Coder: BYOD: The End of Silly IT Contracts?</title>
     <guid isPermaLink="true">http://www.pegasoft.ca/coder/coder_april_2011.html</guid>
     <pubDate>Sun, 10 Apr 2011 15:12:25 EST</pubDate>
  </item>
  <item>
     <link>http://www.pegasoft.ca/coder/coder_december_2010.html</link>
     <title>Lone Coder: Why and When To Use Test-Driven Development Effectively</title>
     <description>There are several claims about TDD that questionable. The truth is, TDD is an effective way to fight aggressive schedules.</description>
     <guid isPermaLink="true">http://www.pegasoft.ca/coder/coder_december_2010.html</guid>
     <pubDate>Wed, 15 Dec 2010 07:22:00 EST</pubDate>
  </item>
  <item>
     <link>http://www.pegasoft.ca/coder/coder_november_2010.html</link>
     <title>Lone Coder: My Daily WTF: The Server Outage</title>
     <description>Architects don't always make the right decision. People are human. But we can choose if we learn from our mistakes or keep repeating them.</description>
     <guid isPermaLink="true">http://www.pegasoft.ca/coder/coder_november_2010.html</guid>
     <pubDate>Sat, 20 Nov 2010 08:38:33 EST</pubDate>
  </item>
</channel>
</rss>
