<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">
    <title>Obie Fernandez</title>
    
    <link rel="alternate" type="text/html" href="http://blog.obiefernandez.com/content/" />
    <id>tag:typepad.com,2003:weblog-1546920</id>
    <updated>2009-09-30T22:35:16-04:00</updated>
    <subtitle>blog.obiefernandez.com</subtitle>
    <generator uri="http://www.typepad.com/">TypePad</generator>
    <link rel="self" href="http://feeds.feedburner.com/obie" type="application/atom+xml" /><feedburner:browserFriendly>This is an XML content feed. It is intended to be viewed in a newsreader or syndicated to another site, subject to copyright and fair use.</feedburner:browserFriendly><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><entry>
        <title>New Hashrocket Client Video: Todd Siegel</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/obie/~3/ikunf3umpYI/new-hashrocket-client-video-todd-siegel.html" />
        <link rel="replies" type="text/html" href="http://blog.obiefernandez.com/content/2009/09/new-hashrocket-client-video-todd-siegel.html" />
        <id>tag:typepad.com,2003:post-6a00e54fdca91188330120a6066601970c</id>
        <published>2009-09-30T22:35:16-04:00</published>
        <updated>2009-09-30T22:35:16-04:00</updated>
        <summary>One of the coolest things about shooting a lot of video around the office is that every so often we catch one of our clients on film (and they let us publish them.) In this episode, of what I hope...</summary>
        <author>
            <name>Obie Fernandez</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="Hashrocket" />
        
        
<content type="html" xml:lang="en-US" xml:base="http://blog.obiefernandez.com/content/">&lt;p&gt;&lt;object height="281" width="500"&gt;&lt;param name="allowfullscreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=6814477&amp;amp;server=vimeo.com&amp;amp;show_title=0&amp;amp;show_byline=0&amp;amp;show_portrait=0&amp;amp;color=00ADEF&amp;amp;fullscreen=1"&gt;&lt;/param&gt;&lt;embed allowfullscreen="true" allowscriptaccess="always" height="281" src="http://vimeo.com/moogaloop.swf?clip_id=6814477&amp;amp;server=vimeo.com&amp;amp;show_title=0&amp;amp;show_byline=0&amp;amp;show_portrait=0&amp;amp;color=00ADEF&amp;amp;fullscreen=1" type="application/x-shockwave-flash" width="500"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;&lt;p&gt;One of the coolest things about shooting a lot of video around the office is that every so often we catch one of our clients on film (and they let us publish them.) In this episode, of what I hope to turn into a recurring season, meet &lt;a href="http://twitter.com/toddsiegel" target="_blank"&gt;Todd Siegel&lt;/a&gt;, who has proven to be one of our favorite clients.&lt;/p&gt;&lt;p&gt;We've done this &lt;a href="http://vimeo.com/4883809"&gt;type of interview before with Dave Cohn&lt;/a&gt; of &lt;a href="http://spot.us"&gt;Spot.us&lt;/a&gt;.&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/obie?a=ikunf3umpYI:5q8jSnz1igQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=ikunf3umpYI:5q8jSnz1igQ:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=ikunf3umpYI:5q8jSnz1igQ:RJU-JkLLmTY"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=ikunf3umpYI:5q8jSnz1igQ:RJU-JkLLmTY" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=ikunf3umpYI:5q8jSnz1igQ:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=ikunf3umpYI:5q8jSnz1igQ:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=ikunf3umpYI:5q8jSnz1igQ:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=ikunf3umpYI:5q8jSnz1igQ:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=ikunf3umpYI:5q8jSnz1igQ:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content>


    <feedburner:origLink>http://blog.obiefernandez.com/content/2009/09/new-hashrocket-client-video-todd-siegel.html</feedburner:origLink></entry>
    <entry>
        <title>I'm Cuckoo for Chrome Frame</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/obie/~3/YbICrzzD9bc/im-cuckoo-for-chrome-frame.html" />
        <link rel="replies" type="text/html" href="http://blog.obiefernandez.com/content/2009/09/im-cuckoo-for-chrome-frame.html" />
        <id>tag:typepad.com,2003:post-6a00e54fdca91188330120a5ea5d1b970c</id>
        <published>2009-09-23T21:42:05-04:00</published>
        <updated>2009-09-23T21:42:05-04:00</updated>
        <summary>Don't know what Google Chrome Frame is yet? Watch the following short video first... This is such awesome news that I'm practically besides myself with joy. I think web app developers should make a concerted effort to push adoption of...</summary>
        <author>
            <name>Obie Fernandez</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="Web/Tech" />
        
        
<content type="html" xml:lang="en-US" xml:base="http://blog.obiefernandez.com/content/">&lt;div&gt;Don't know what &lt;a href="http://code.google.com/chrome/chromeframe/" target="_blank"&gt;Google Chrome Frame&lt;/a&gt; is yet? Watch the following short video first...&lt;/div&gt;&lt;br&gt;&lt;p&gt;&lt;object height="295" width="480"&gt;&lt;param name="movie" value="http://www.youtube.com/v/sjW0Bchdj-w&amp;amp;hl=en&amp;amp;fs=1&amp;amp;rel=0&amp;amp;hd=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed allowfullscreen="true" allowscriptaccess="always" height="295" src="http://www.youtube.com/v/sjW0Bchdj-w&amp;amp;hl=en&amp;amp;fs=1&amp;amp;rel=0&amp;amp;hd=1" type="application/x-shockwave-flash" width="480"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;&lt;br&gt;&lt;div&gt;This is such awesome news that I'm practically besides myself with joy. I think web app developers should make a concerted effort to push adoption of the Chrome Frame plugin, just like Adobe's flash player plugin.&lt;/div&gt;&lt;br&gt;&lt;div&gt;I tried it today on an app that I'm working on which looks like hell on even modern versions of IE. Worked seamlessly.&lt;/div&gt;&lt;br&gt;&lt;div&gt;I can see developers of wide-audience consumer facing sites still facing real resistance towards dropping support for IE6. However, corporate IT and web apps written for the "enterprise" should have little trouble getting this plugin adopted.&lt;/div&gt;&lt;br&gt;&lt;div&gt;Put the following meta tag in your app to activate Chrome rendering on IE:&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Helvetica, Arial, sans-serif; font-size: small; line-height: normal; "&gt;&lt;pre class="prettyprint" style="color: #007000; font-size: 9pt; background-color: #fafafa; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-color: #bbbbbb; border-right-color: #bbbbbb; border-bottom-color: #bbbbbb; border-left-color: #bbbbbb; line-height: 15px; margin-top: 1em; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0.99em; padding-right: 0.99em; padding-bottom: 0.99em; padding-left: 0.99em; overflow-x: auto; overflow-y: auto; word-wrap: break-word; "&gt;&lt;span class="tag" style="color: #000088; "&gt;&lt;strong&gt;&lt;span style="font-size: 14px; "&gt;&lt;span style="font-family: Courier;"&gt;&amp;lt;meta&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;span class="pln" style="color: #000000; "&gt;&lt;strong&gt;&lt;span style="font-size: 14px; "&gt;&lt;span style="font-family: Courier;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;span class="atn" style="color: #660066; "&gt;&lt;strong&gt;&lt;span style="font-size: 14px; "&gt;&lt;span style="font-family: Courier;"&gt;http-equiv&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;span class="pun" style="color: #666600; "&gt;&lt;strong&gt;&lt;span style="font-size: 14px; "&gt;&lt;span style="font-family: Courier;"&gt;=&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;span class="atv" style="color: #008800; "&gt;&lt;strong&gt;&lt;span style="font-size: 14px; "&gt;&lt;span style="font-family: Courier;"&gt;"X-UA-Compatible"&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;span class="pln" style="color: #000000; "&gt;&lt;strong&gt;&lt;span style="font-size: 14px; "&gt;&lt;span style="font-family: Courier;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;span class="atn" style="color: #660066; "&gt;&lt;strong&gt;&lt;span style="font-size: 14px; "&gt;&lt;span style="font-family: Courier;"&gt;content&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;span class="pun" style="color: #666600; "&gt;&lt;strong&gt;&lt;span style="font-size: 14px; "&gt;&lt;span style="font-family: Courier;"&gt;=&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;span class="atv" style="color: #008800; "&gt;&lt;strong&gt;&lt;span style="font-size: 14px; "&gt;&lt;span style="font-family: Courier;"&gt;"chrome=1"&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;span class="tag" style="color: #000088; "&gt;&lt;strong&gt;&lt;span style="font-size: 14px; "&gt;&lt;span style="font-family: Courier;"&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/obie?a=YbICrzzD9bc:2l1RsgzqY8w:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=YbICrzzD9bc:2l1RsgzqY8w:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=YbICrzzD9bc:2l1RsgzqY8w:RJU-JkLLmTY"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=YbICrzzD9bc:2l1RsgzqY8w:RJU-JkLLmTY" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=YbICrzzD9bc:2l1RsgzqY8w:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=YbICrzzD9bc:2l1RsgzqY8w:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=YbICrzzD9bc:2l1RsgzqY8w:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=YbICrzzD9bc:2l1RsgzqY8w:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=YbICrzzD9bc:2l1RsgzqY8w:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content>


    <feedburner:origLink>http://blog.obiefernandez.com/content/2009/09/im-cuckoo-for-chrome-frame.html</feedburner:origLink></entry>
    <entry>
        <title>10 Reasons Pair Programming Is Not For the Masses</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/obie/~3/jeE70KUw88g/10-reasons-pair-programming-is-not-for-the-masses.html" />
        <link rel="replies" type="text/html" href="http://blog.obiefernandez.com/content/2009/09/10-reasons-pair-programming-is-not-for-the-masses.html" />
        <id>tag:typepad.com,2003:post-6a00e54fdca91188330120a5e15b04970c</id>
        <published>2009-09-22T01:27:37-04:00</published>
        <updated>2009-09-22T09:25:22-04:00</updated>
        <summary>Hashrocket, or more specifically our beloved "Big Tiger" Jim Remsik, was recently profiled in the New York Times in an article about pair programming. They titled it For Writing Software, a Buddy System and it's gotten a fair amount of...</summary>
        <author>
            <name>Obie Fernandez</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="Programming" />
        
        
<content type="html" xml:lang="en-US" xml:base="http://blog.obiefernandez.com/content/">&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;p class="asset asset-image"&gt;&#xD;
 &lt;a href="http://blog.obiefernandez.com/.a/6a00e54fdca91188330120a5e141f4970c-pi" style="float: right; "&gt;&lt;img alt="Nytarticle" class="at-xid-6a00e54fdca91188330120a5e141f4970c " src="http://blog.obiefernandez.com/.a/6a00e54fdca91188330120a5e141f4970c-500wi" style="margin-top: 8px; margin-right: 8px; margin-bottom: 8px; margin-left: 8px; " title="Nytarticle"&gt;&lt;/img&gt;&lt;/a&gt;&#xD;
 &lt;/p&gt;&#xD;
&lt;p&gt;&#xD;
 &lt;a href="http://hashrocket.com"&gt;Hashrocket&lt;/a&gt;, or more specifically our beloved "Big Tiger" Jim Remsik, was recently profiled in the New York Times in an article about pair programming. They titled it &lt;a href="http://bit.ly/tTAhE" target="_blank"&gt;For Writing Software, a Buddy System&lt;/a&gt; and it's gotten a fair amount of attention on &lt;a href="http://search.twitter.com/search?q=pair+programming" target="_blank"&gt;Twitter&lt;/a&gt;, &lt;a href="http://news.ycombinator.com/item?id=832475" target="_blank"&gt;Hacker News&lt;/a&gt; and &lt;a href="http://www.reddit.com/r/programming/comments/9mn9d/a_pair_programmers_view_of_pair_programming_they/" target="_blank"&gt;Reddit&lt;/a&gt;. &lt;span style="color: #a2a2a2; font-family: Arial;"&gt;(If there are other big discussions going on about it, please let me know in the comments. Thanks.)&lt;/span&gt;&#xD;
&lt;/p&gt;&#xD;
&lt;p&gt;I think pair programming is one of our most important competitive advantages at Hashrocket. My teams produce some of the highest-quality code I've ever seen in 15 years in the biz. We are able to effectively leverage XP-style client acceptance in our process because our code is so defect-free.&lt;/p&gt;&lt;p&gt;I'm damn proud of what we do at Hashrocket and talk about it often, but usually while trying to stress the supreme importance of context and talent in making it work. My &lt;a href="http://obiefernandez.com" target="_blank"&gt;homepage&lt;/a&gt; still says "Helping to evolve the world of software into a more fun and productive place to live, work and play", but pair programming, especially all the time, is one of those things where increasingly I have to advise most Agile idealists that it probably won't work for them, and here are ten reasons why:&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;&#xD;
 &lt;strong&gt;10. Most software managers don't want to invest in the necessary hardware&lt;/strong&gt;&#xD;
&lt;/p&gt;&#xD;
&lt;p&gt;&#xD;
 Either they don't want to invest in the appropriate equipment (for personal or political reasons), or they are not allowed to do so.&#xD;
&lt;/p&gt;&#xD;
&lt;p&gt;&#xD;
 Our pairing workstations are fully-outfitted Mac Minis ($1049) with a $99 Dual-link DVI adapter connecting them to an Apple's 30" Cinema Display ($1800). Each pairing workstation also requires a pair of mice ($98), keyboards ($98) and elevators notebook stands ($80). Finally, we also buy a pair of MagSafe power adapters ($159) for developer's notebooks. Mind you, we don't invest in all this fancy Apple gear because it's cool. We do it because we care about having the best tools available, a sentiment that the masses usually have to live without.&#xD;
&lt;/p&gt;&#xD;
&lt;p&gt;&#xD;
 Incidentally, each of Hashrocket's developers has their own MacBook Pro, that they are required to own and maintain, based partly on the philosophy that a craftsman has his own tools.  That is a hard policy to pull off in mainstream software shops, because it can be seen as a turn-off for potential recruits, not to mention that most corporate IT shops suffer conniptions about not having control over machines that are connected to their networks. C'est la vie.&#xD;
&lt;/p&gt;&#xD;
&lt;p&gt;&#xD;
 &lt;strong&gt;9. Most software shops are not configured for pair programming&lt;/strong&gt;&#xD;
&lt;/p&gt;&#xD;
&lt;p&gt;&#xD;
 Cubicles do not work for pair programming. Period.&#xD;
&lt;/p&gt;&#xD;
&lt;p&gt;&#xD;
 Most office environments have cubicles and most software managers are stuck with the environment they have and lack the political or budgetary capital to do anything about it.&#xD;
&lt;/p&gt;&#xD;
&lt;p&gt;&#xD;
 In order to effectively pair program all the time, you have to have the right furniture and workspace. Comfort is key. Big wide desks, comfortable chairs and elbow room. Our desks are 2 m x 1 m, cost about $600 each and are height-adjustable. There is enough room for the pairing workstation in the middle of the desk, plus dual notebook computers to each side.&#xD;
&lt;/p&gt;&#xD;
&lt;p&gt;&#xD;
 There are no cubicles or private spaces available, because developers are not expected to work in private, nor are they supposed to be doing non-work tasks in the office. However, our office is partitioned into a number of "war rooms" and casual seating areas that can be appropriated depending on needs of the team. In particular, client calls are sometimes conducted in quieter areas.&#xD;
&lt;/p&gt;&#xD;
&lt;p&gt;&#xD;
 &lt;strong&gt;8. Most software shops use traditional hiring practices&lt;/strong&gt;&#xD;
&lt;/p&gt;&#xD;
&lt;p&gt;&#xD;
 Relying on recruiters to source candidates and then hiring someone after a few phone calls and a day of interviews, you know, the way that most places do it, is one of the worst ways to bring on talent. You really don't know what you're getting. The savvy mainstream software manager might swing a contract-to-perm policy, but still has to recruit the contractor in traditional ways.&#xD;
&lt;/p&gt;&#xD;
&lt;p&gt;&#xD;
 The best way to hire talent is to drop them in actual work situations for at least a week and see what happens. And that's the catch. Since most shops don't pair all the time, they don't have a built-in infrastructure to accommodate just "dropping someone into a real work situation". The poor candidate would be in over their head. Our candidates spend their interview week rotating on actual production code, pairing with the same people they'll be working with if they're hired. Everyone gets a say in whether to hire a new recruit, and hesitance from a developer that actually paired with them means they do not get hired.&#xD;
&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;&#xD;
 &lt;strong&gt;7. Most software shops tolerate anti-social behavior (halitosis included)&lt;/strong&gt;&#xD;
&lt;/p&gt;&#xD;
&lt;p&gt;&#xD;
 At your average software shop, someone can be considered a "good programmer" even if they are a complete asshole. Nobody wants to pair all the time with assholes, even other assholes. Same thing goes for prima-donnas, chronic farters, people who don't bathe enough, people with halitosis, jerks, idiots, lazy bums. There are myriad conditions that could make pair programming a gruesome experience and it is absolutely management's job to make sure that those problems are kept under control or eliminated. As in censored. Or fired.&#xD;
&lt;/p&gt;&#xD;
&lt;p&gt;&#xD;
 Face it, most software managers are under-staffed (see below), overworked and/or under-qualified. They would rather let the group deal with Asshole Architect, Mr. Stinky or Jimmy the office jerk than to go around provoking difficult conversations and making more work themselves. Besides, Stinky's code is pretty good, isn't it? Right... I've had to dismiss otherwise-qualified people for being assholes. People that I otherwise-needed. It wasn't easy, but it is crucial to do it anyway.&#xD;
&lt;/p&gt;&#xD;
&lt;p&gt;&#xD;
 Full-time pairing requires strict implementation of the &lt;a href="http://www.amazon.com/Asshole-Rule-Civilized-Workplace-Surviving/dp/0446526568" target="_blank"&gt;No-Asshole Rule&lt;/a&gt;. In the words of &lt;a href="http://www.law.com/jsp/article.jsp?id=1171620180188" target="_blank"&gt;Robert Sutton&lt;/a&gt;, "enforcing the no-asshole rule isn't just management's job". The entire team has to feel empowered to call out and reject anti-social behavior. That kind of empowerment is extremely rare in corporate America. It's easier to take it during the day, rush out of the office at 5 pm on the dot and vent your frustration at happy hour.&#xD;
&lt;/p&gt;&#xD;
&lt;p&gt;&#xD;
 &lt;strong&gt;6. Most software people don't understand pair productivity&lt;/strong&gt;&#xD;
&lt;/p&gt;&#xD;
&lt;p&gt;&#xD;
 Those of us that have seen it in action know that good full-time pair programmers consistently produce higher-quality code faster than individuals working alone.&lt;/p&gt;&lt;p&gt;To the average manager, with his average mindset, two people working on the same thing equals half the work done. To the average programmer, having to pair full-time means they won't get to waste time during the day on &lt;a href="http://www.reddit.com/r/programming/comments/9mn9d/a_pair_programmers_view_of_pair_programming_they/" target="_blank"&gt;Reddit&lt;/a&gt; or &lt;a href="http://news.ycombinator.com/item?id=832475" target="_blank"&gt;Hacker News&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;Full-time pair programming keeps developers focused and coding, all day, every day, week-in, week-out. The average developer spends maybe a few hours a day actually coding and finds all sorts of other activities to fill in the rest of his day. The difference in experience gained towards mastery of the craft adds up quickly.&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;&#xD;
I see pairing work so well every day that I consider my career prior to my current job to have consisted mostly of wasting time. When I think back to all the code I’ve written for a job, I’m annoyed at how much less efficient I was then since I wasn’t pairing, and how much better my code and my products would have been if I had paired on them full time.&lt;/p&gt;&lt;p&gt;&#xD;
When you have a second person working with you, you find that you try harder to code well. You’re far, far less likely to be willing to apply duct tape to a problem, because someone else is working with you and he or she is more likely to object to the duct tape. If two people approve a hack and implement it, it’s almost certainly because it’s the right approach given the time constraints. If one person sitting alone decides to pursue a hack, it’s more likely to be a situation where there is a better approach.&lt;/p&gt;&lt;p&gt;&#xD;
Two people attacking a design problem together is easier than one person doing it. Your partner will think of things you don’t, and vice versa. In a non-pairing environment, you can always call someone to a whiteboard to help you work through a design issue, but when you do that you’re only calling for help when you know you need it. The times when you need help and don’t know it go unaddressed – and yet despite the fact that you need help, I guarantee that you’re coding SOMETHING and checking it in. It’s almost certain to be shitty code. The amount of time you spend trying to figure out “what’s going on here” or “why isn’t this working the way I expect” is severely reduced. I’m talking hours of debugging that literally turn into seconds.&lt;/p&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;p&gt;Rod Hilton in &lt;a href="http://www.nomachetejuggling.com/2009/02/21/i-love-pair-programming/" target="_blank"&gt;I Love Pair Programming&lt;/a&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&#xD;
 &lt;strong&gt;5. Most software shops employ under-qualified developers&lt;/strong&gt;&#xD;
&lt;/p&gt;&#xD;
&lt;p&gt;&#xD;
 Hashrocket is a boutique shop, so we can be very picky about who we hire. Candidates have to pair with us onsite for at least a week before the team decides whether to hire. We've hired qualified interns, but we don't hire apprentice or junior-level folks. Occasionally we do extended pairing matchups with client developers in our office, but they have to fit in culturally for it to work.&lt;/p&gt;&#xD;
&lt;p&gt;The bar for success in this industry is set very low. Most software shops have one or two great, productive hackers, offset by a boatload of net-negative producers: &lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;"When doctors screw up (massively) they get sued. When (permanently employed) programmers screw up they get let-go, and they go find a new job, usually with more responsibility and a pay raise. There are no ramifications for software malpractice." &lt;/p&gt;&lt;p&gt;Jay Fields in &lt;a href="http://blog.jayfields.com/2009/01/cost-of-net-negative-producing.html" target="_blank"&gt;The Cost of Net Negative Producing Programmers&lt;/a&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;Hiring only great people and compensating them very well is expensive. Most software managers don't even buy into the advantages of only hiring great people, thinking that a mix of talent levels is more advantageous.&lt;/p&gt;&lt;p&gt;&#xD;
 &lt;strong&gt;4. Most software shops are overworked and under-staffed&lt;/strong&gt;&#xD;
&lt;/p&gt;&#xD;
&lt;p&gt;This reason is related to #5 in the sense that most software shops don't have enough good people to take responsibility for the truckloads of work that they're expected to do. You can't put idiots in charge of important projects, therefore pair programming requires double the amount of "good" people as not pair programming.&lt;/p&gt;&lt;p&gt;&lt;em&gt;Promiscuous&lt;/em&gt; pair programming, where there is a weekly, or even daily, rotation of pair partners, requires more people than discrete workstreams, so that pairs can switch without incurring big ramp-up penalties.&lt;/p&gt;&#xD;
&lt;p&gt;&#xD;
 &lt;strong&gt;3. Most software developers don't like everyone they work with&lt;/strong&gt;&#xD;
&lt;/p&gt;&#xD;
&lt;p&gt;&#xD;
 Good luck putting together more than 15 people in any type of group without some of them hating each other's guts. Now limit your pool of resources to average programming geeks with anti-social tendencies and making your group get along just got a lot harder.&lt;/p&gt;&lt;p&gt;Lots of teams out there are simply too big for a happy group to even be possible. There is research on ideal group sizes for teams, with the consensus&lt;a href="http://37signals.com/svn/posts/995-if-youre-working-in-a-big-group-youre-fighting-human-nature" target="_blank"&gt; falling in the 8 to 14 member range&lt;/a&gt;. Unless you're committed to small teams of sociable people, you won't be able to get everyone working together &lt;em&gt;happily&lt;/em&gt;. &lt;/p&gt;&lt;p&gt;Most software managers would rather pay 20 mediocre and/or anti-social developers $75k/year instead of hiring 10 great developers at $150k/year. (Why? I'd bet on they don't want to pay their developers more than what they make.)&lt;/p&gt;&#xD;
&lt;p&gt;&#xD;
 &lt;strong&gt;2. Most software developers just don't want to work that hard&lt;/strong&gt;&#xD;
&lt;/p&gt;&#xD;
&lt;p&gt;Laziness is a virtue for programmers, isn't it?&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;Laziness - The quality that makes you go to great effort to reduce overall energy expenditure. It makes you write labor-saving programs that other people will find useful, and document what you wrote so you don't have to answer so many questions about it. Hence, the first great virtue of a programmer.&lt;/p&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;p&gt;Larry Wall in &lt;a href="http://www.c2.com/cgi/wiki?LazinessImpatienceHubris" target="_blank"&gt;Programming Perl&#xD;
&lt;/a&gt;&lt;/p&gt;&lt;/blockquote&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;Unfortunately, it seems like over the years as an industry we've simply reduced that advice to "go to great effort to reduce overall energy expenditure" and forgotten about the rest.&lt;/p&gt;&lt;p&gt;Pair programming makes developers work harder than they've ever worked before in their lives. You constantly have someone making sure that you're not distracted or wasting time running down dead ends. Unless you're an asshole who just doesn't care (see #7) you're not going to abandon your pair while you endlessly do non-work-related stuff. Pairing keeps you honest. Being honestly hard-working is still one of the best ways to earn accolades and raises. Accolades and raises usually bring some measure of added happiness.&lt;/p&gt;&lt;p&gt;All that hard work really pays off in terms of success for everyone involved as well as personal growth, but why bother trying? Most software developers are happy to skate along doing the least amount of real work possible without getting in trouble. In other words, they're &lt;em&gt;lazy&lt;/em&gt;.&lt;/p&gt;&#xD;
&lt;p&gt;&#xD;
 &lt;strong&gt;1. Most software shops don't really care about excellence&lt;/strong&gt;&#xD;
&lt;/p&gt;&lt;p&gt;There are so many things to worry about at your average shop that have nothing to do with excellence. Corporate America cares about lines of code, the bottom line, toeing the line, and whether Joe in Accounting is doing lines in the bathroom during his breaks.&lt;/p&gt;&lt;p&gt;Truly caring about excellence means considering your work to be more than just a job or a paycheck. You have to treat is as a &lt;a href="http://manifesto.softwarecraftsmanship.org/" target="_blank"&gt;craft&lt;/a&gt;. You have to have passion for the success of your clients, company and co-workers. You have to be justly rewarded for that passion and encouraged. You have to care. And frankly, that is just way too much to ask of most people.&lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/obie?a=jeE70KUw88g:dDmA-xYiCjE:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=jeE70KUw88g:dDmA-xYiCjE:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=jeE70KUw88g:dDmA-xYiCjE:RJU-JkLLmTY"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=jeE70KUw88g:dDmA-xYiCjE:RJU-JkLLmTY" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=jeE70KUw88g:dDmA-xYiCjE:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=jeE70KUw88g:dDmA-xYiCjE:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=jeE70KUw88g:dDmA-xYiCjE:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=jeE70KUw88g:dDmA-xYiCjE:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=jeE70KUw88g:dDmA-xYiCjE:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content>


    <feedburner:origLink>http://blog.obiefernandez.com/content/2009/09/10-reasons-pair-programming-is-not-for-the-masses.html</feedburner:origLink></entry>
    <entry><title type="text">Links for 2009-09-12 [del.icio.us]</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/obie/~3/kvboVgVqgRE/obie" /><updated>2009-09-13T00:00:00-07:00</updated><id>http://del.icio.us/obie#2009-09-12</id><content type="html">&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.teehanlax.com/blog/?p=1628"&gt;teehan+lax &amp;raquo; Blog Archive &amp;raquo; iPhone GUI PSD 3.0&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content><feedburner:origLink>http://del.icio.us/obie#2009-09-12</feedburner:origLink></entry><entry>
        <title>BizConf Update</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/obie/~3/IOuu8w7pUpQ/bizconf-update.html" />
        <link rel="replies" type="text/html" href="http://blog.obiefernandez.com/content/2009/07/bizconf-update.html" />
        <id>tag:typepad.com,2003:post-6a00e54fdca91188330115724b0cf8970b</id>
        <published>2009-07-31T10:00:17-04:00</published>
        <updated>2009-07-31T10:00:17-04:00</updated>
        <summary>BizConf is an exclusive conference focusing on the business of software development in a Web 2.0 world. I originally conceived it to be a gathering of owners and managers of Rails shops from around the world, but once the idea...</summary>
        <author>
            <name>Obie Fernandez</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="BizConf" />
        
        
<content type="html" xml:lang="en-US" xml:base="http://blog.obiefernandez.com/content/">&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;p&gt;&lt;a href="http://blog.obiefernandez.com/.a/6a00e54fdca911883301157158bf7f970c-pi" style="display: inline;"&gt;&lt;img alt="Logo" class="at-xid-6a00e54fdca911883301157158bf7f970c " src="http://blog.obiefernandez.com/.a/6a00e54fdca911883301157158bf7f970c-320pi" title="Logo"&gt;&lt;/img&gt;&lt;/a&gt; &lt;/p&gt;&lt;p&gt;&lt;a href="http://bizconf.org" target="_blank"&gt;&#xD;
 BizConf&lt;/a&gt; is an exclusive conference focusing on the business of software development in a Web 2.0 world. I originally conceived it to be a gathering of owners and managers of Rails shops from around the world, but once the idea started taking shape, our target audience got a little wider.&lt;br&gt;&#xD;
 &lt;/p&gt;&#xD;
 &lt;p&gt;&#xD;
 As I'm writing this, we have 3 weeks left before the conference and just hit an important milestone. From the beginning, my budget has called for a minimum of 50 attendees and a maximum of 75. Well, we hit 52 registrations today! The event is definitely on and we're ramping up our outreach to individuals that we think should attend in an effort to sell out.&#xD;
 &lt;/p&gt;&#xD;
 &lt;p&gt;&#xD;
 &lt;strong&gt;Money Matters&lt;/strong&gt;&lt;/p&gt;&#xD;
 &lt;p&gt;&#xD;
 I realize the economy is putting a damper on registration, which is why I've tweeted that people who want to attend but are having trouble affording the trip to get in &lt;a href="mailto:obie@hashrocket.com"&gt;contact with me&lt;/a&gt; for special consideration. In future years, we are definitely going to try budgeting the conference around a lower registration price.&#xD;
 &lt;/p&gt;&#xD;
 &lt;p&gt;&#xD;
 I have to mention that BizConf would not be possible without the generous support of &lt;a href="http://hashrocket.com" target="_blank"&gt;Hashrocket&lt;/a&gt; and 11 other awesome &lt;a href="http://www.bizconf.org/sponsors" target="_blank"&gt;sponsors&lt;/a&gt; including, &lt;a href="http://ngenworks.com" style="color: blue; text-decoration: underline; cursor: pointer;"&gt;nGenWorks&lt;/a&gt;, &lt;a href="http://newrelic.com"&gt;New Relic&lt;/a&gt; and &lt;a href="http://engineyard.com"&gt;Engine Yard&lt;/a&gt;. Half of the sponsors are providing attendees with awesome free packages of their services.&#xD;
 &lt;/p&gt;&#xD;
 &lt;p&gt;&#xD;
 &lt;strong&gt;Presenter News&lt;/strong&gt;&#xD;
 &lt;/p&gt;&#xD;
 &lt;p&gt;&#xD;
 We added a couple of internet celebrities to the &lt;a href="http://www.bizconf.org/schedule" target="_blank"&gt;program&lt;/a&gt; recently: &lt;a href="http://mixergy.com/about/" target="_blank"&gt;Andrew Warner&lt;/a&gt; and &lt;a href="http://alexdc.org/"&gt;Alex De Carvalho&lt;/a&gt;.&#xD;
 &lt;/p&gt;&#xD;
 &lt;p&gt;&#xD;
 &lt;a href="http://blog.obiefernandez.com/.a/6a00e54fdca911883301157156bd3d970c-pi" style="float: left; padding: 5px"&gt;&lt;img alt="Andrew-warner-founder-mixergy-cropped" class="at-xid-6a00e54fdca911883301157156bd3d970c " src="http://blog.obiefernandez.com/.a/6a00e54fdca911883301157156bd3d970c-120wi" title="Andrew-warner-founder-mixergy-cropped"&gt;&lt;/img&gt;&lt;/a&gt;In his twenties and with no outside funding, Andrew co-founded a business that reached $30+ mil in annual sales. He is now the host of &lt;a href="http://mixergy.com" target="_blank"&gt;Mixergy.com&lt;/a&gt;, a video podcast that interviews "doers and thinkers whose ideas and stories are so powerful that just hearing them will change you."&lt;br&gt;&lt;br&gt;&#xD;
Andrew will present &lt;em&gt;Bootstrap Like a Missionary&lt;/em&gt;, based on his true life experiences doing just that.&#xD;
 &lt;/p&gt;&#xD;
 &lt;p style="clear:left"&gt;&#xD;
 &lt;a href="http://blog.obiefernandez.com/.a/6a00e54fdca911883301157156bc54970c-pi" style="float: left; padding: 5px"&gt;&lt;img alt="Alexdc_up_rgb_1" class="at-xid-6a00e54fdca911883301157156bc54970c " src="http://blog.obiefernandez.com/.a/6a00e54fdca911883301157156bc54970c-120pi" title="Alexdc_up_rgb_1"&gt;&lt;/img&gt;&lt;/a&gt;&#xD;
 Alex is a co-founder of StartPR, an online tracking service for reputation management, blogger relations, and brand monitoring. He's an advisor to businesses and organizations on their use of social networks and social media to build community relationships and brand. He also designs and manages social networks, including business planning, technology selection, wireframing, development, and community management.&lt;/p&gt;&lt;p&gt;Alex's presentation topic will be announced soon.&#xD;
&lt;/p&gt;&lt;p style="clear:left"&gt;&lt;strong&gt;&lt;br&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="clear:left"&gt;&lt;strong&gt;Blog Highlights&lt;/strong&gt;&lt;/p&gt;&lt;p style="clear:left"&gt;We just posted an &lt;a href="http://blog.bizconf.org/?p=70" target="_blank"&gt;informative interview with noted author and consultant Esther Derby&lt;/a&gt;, who is presenting three talks at BizConf!&lt;/p&gt;&lt;p style="clear:left"&gt;&lt;/p&gt;&lt;ul&gt;&#xD;
&lt;li&gt;Good Idea, But How Do We Do It? Finding and Using Your Sources of Power&lt;/li&gt;&#xD;
&lt;li&gt;&lt;span&gt;What Does Your Customer Want?&lt;/span&gt; &lt;/li&gt;&#xD;
&lt;li&gt;&lt;span&gt;Beyond the Organization Chart: What Really Drives Behavior at Work &lt;/span&gt;&lt;/li&gt;&#xD;
&lt;/ul&gt;&#xD;
&lt;p&gt;We also have quite a few video interviews with presenters. I think my favorite might be the one with &lt;a href="http://blog.bizconf.org/?p=55" target="_blank"&gt;Jessie Shternshus of the Improv Effect talking about her session at Bizconf&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/obie?a=IOuu8w7pUpQ:RkRxe6eJlqA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=IOuu8w7pUpQ:RkRxe6eJlqA:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=IOuu8w7pUpQ:RkRxe6eJlqA:RJU-JkLLmTY"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=IOuu8w7pUpQ:RkRxe6eJlqA:RJU-JkLLmTY" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=IOuu8w7pUpQ:RkRxe6eJlqA:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=IOuu8w7pUpQ:RkRxe6eJlqA:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=IOuu8w7pUpQ:RkRxe6eJlqA:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=IOuu8w7pUpQ:RkRxe6eJlqA:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=IOuu8w7pUpQ:RkRxe6eJlqA:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content>


    <feedburner:origLink>http://blog.obiefernandez.com/content/2009/07/bizconf-update.html</feedburner:origLink></entry>
    <entry>
        <title>Agile Design, O RLY?</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/obie/~3/6QffpHoImxM/agile-design-o-rly.html" />
        <link rel="replies" type="text/html" href="http://blog.obiefernandez.com/content/2009/06/agile-design-o-rly.html" />
        <id>tag:typepad.com,2003:post-67572675</id>
        <published>2009-06-02T23:50:04-04:00</published>
        <updated>2009-06-03T10:09:12-04:00</updated>
        <summary>We had a great Hashrocket Book Club discussion today about a Cennydd Bowles article on A List Apart: Getting Real About Agile Design. Our discussion revolved around the integration of our very XP-like process with traditional and so-called "Agile Design",...</summary>
        <author>
            <name>Obie Fernandez</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="Hashrocket" />
        
        
<content type="html" xml:lang="en-US" xml:base="http://blog.obiefernandez.com/content/">&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;p&gt;We had a &lt;a href="http://www.ustream.tv/recorded/1596143" target="_blank"&gt;great Hashrocket Book Club discussion today about a Cennydd Bowles article&lt;/a&gt; on A List Apart: &lt;a href="http://www.alistapart.com/articles/gettingrealaboutagiledesign/" target="_blank"&gt;Getting Real About Agile Design&lt;/a&gt;. Our discussion revolved around the integration of our very XP-like process with traditional and so-called "Agile Design", the evolution of design activities that traditionally have been very waterfall-like and involving heavy research phases.&lt;/p&gt;&lt;p&gt;Les made a pretty bold statement that design people are stuck where developers were 10 years ago, prior to wide adoption of Agile.&lt;/p&gt;&lt;p&gt;Here are the rest of my rough bullet point notes, in the hopes of getting a discussion started about this important topic.&lt;/p&gt;&lt;ul&gt;&#xD;
&lt;li&gt;There is a trichotomy* when discussing "design": Experience, Application and Graphic. Or sometimes you say "design" and you mean all three. That makes it difficult for everyone I know to talk about "design" without getting really confused.&lt;/li&gt;&#xD;
&lt;li&gt;User experience design involves the entire interaction of a user with a business and its technology, which makes it different than application and interaction design, which has more to do with the design of screen interactions and forms and pages.&lt;/li&gt;&#xD;
&lt;li&gt;Projects should have mini-milestones that represent "user journeys" as described in the article -- stories chained together to represent a path through the application -- and different than the concept of an "epic story".&lt;br&gt;&#xD;
&lt;/li&gt;&#xD;
&lt;li&gt;The meaning of iterations still presents issues (even to us) in terms of thinking that they constitute weekly milestones. I say that iterations are nothing except dumb timeslices that enable tracking of velocity, but I realize that is far from a universal view in Agile circles. See &lt;a href="http://www.railsmaturitymodels.com/practices/the-story-is-the-iteration" target="_blank"&gt;The Story is The Iteration&lt;/a&gt; as practiced by Hashrocket, Pivotal Labs and others.&lt;/li&gt;&#xD;
&lt;li&gt;It's hard to envision experience and application design as happening after storycarding, since the storycarding process is dependent on having that design already done.&lt;/li&gt;&#xD;
&lt;li&gt;There are ways to start intertwining design with Agile the way that we're practicing it, but not like in the Bowles blog post, because Hashrocket usually acquires clients that have their application design done. Except that's not actually the case now, because since Andrew came on board we're participating in the earlier stages of the project, even starting at the concept phase.&lt;/li&gt;&#xD;
&lt;li&gt;There is value in developers championing the user experience throughout the project, being more than just programming robots. This implies that our developers have design savvy.&lt;/li&gt;&#xD;
&lt;li&gt;Customers are not experts in experience and application design and they cannot replace designers on XP projects.&lt;/li&gt;&#xD;
&lt;li&gt;The comparison in the Bowles blog post between software and the movie industry is flawed, because movie projects don't do small or often releases.&lt;/li&gt;&#xD;
&lt;/ul&gt;&#xD;
&lt;p&gt;&lt;strike&gt;&#xD;
* Yes, I know that trichotomy is not really a word. But "dichotomy" implies two things, not thre&lt;/strike&gt;e. Update: As pointed out by Thufir in the comments, it &lt;span style="font-style: italic;"&gt;is&lt;/span&gt; a word. (I originally checked and didn't find it in my dashboard dictionary.)&lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/obie?a=6QffpHoImxM:AWZg3G-EIKU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=6QffpHoImxM:AWZg3G-EIKU:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=6QffpHoImxM:AWZg3G-EIKU:RJU-JkLLmTY"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=6QffpHoImxM:AWZg3G-EIKU:RJU-JkLLmTY" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=6QffpHoImxM:AWZg3G-EIKU:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=6QffpHoImxM:AWZg3G-EIKU:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=6QffpHoImxM:AWZg3G-EIKU:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=6QffpHoImxM:AWZg3G-EIKU:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=6QffpHoImxM:AWZg3G-EIKU:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content>


    <feedburner:origLink>http://blog.obiefernandez.com/content/2009/06/agile-design-o-rly.html</feedburner:origLink></entry>
    <entry>
        <title>BizConf Venue Teaser</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/obie/~3/oZHB-JT_LdA/bizconf-venue-teaser.html" />
        <link rel="replies" type="text/html" href="http://blog.obiefernandez.com/content/2009/05/bizconf-venue-teaser.html" />
        <id>tag:typepad.com,2003:post-67067735</id>
        <published>2009-05-20T16:38:22-04:00</published>
        <updated>2009-05-28T17:05:17-04:00</updated>
        <summary>BizConf Venue Teaser from Hashrocket on Vimeo</summary>
        <author>
            <name>Obie Fernandez</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="BizConf" />
        
        
<content type="html" xml:lang="en-US" xml:base="http://blog.obiefernandez.com/content/">
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;p&gt;&lt;object height="293" width="521"&gt;&lt;param name="allowfullscreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=4752541&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=1&amp;amp;color=00ADEF&amp;amp;fullscreen=1"&gt;&lt;embed allowfullscreen="true" allowscriptaccess="always" src="http://vimeo.com/moogaloop.swf?clip_id=4752541&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=1&amp;amp;color=00ADEF&amp;amp;fullscreen=1" type="application/x-shockwave-flash" height="293" width="521"&gt;&lt;/object&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://vimeo.com/4752541"&gt;BizConf Venue Teaser&lt;/a&gt;&amp;nbsp;from &lt;a href="http://vimeo.com/hashrocket"&gt;Hashrocket&lt;/a&gt; on &lt;a href="http://vimeo.com"&gt;Vimeo&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;!-- #hashrocket --&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/obie?a=oZHB-JT_LdA:PsZOyP3SKQs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=oZHB-JT_LdA:PsZOyP3SKQs:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=oZHB-JT_LdA:PsZOyP3SKQs:RJU-JkLLmTY"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=oZHB-JT_LdA:PsZOyP3SKQs:RJU-JkLLmTY" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=oZHB-JT_LdA:PsZOyP3SKQs:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=oZHB-JT_LdA:PsZOyP3SKQs:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=oZHB-JT_LdA:PsZOyP3SKQs:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=oZHB-JT_LdA:PsZOyP3SKQs:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=oZHB-JT_LdA:PsZOyP3SKQs:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content>


    <feedburner:origLink>http://blog.obiefernandez.com/content/2009/05/bizconf-venue-teaser.html</feedburner:origLink></entry>
    <entry>
        <title>IP and Non-Competes for Employees</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/obie/~3/R9Aig165WFI/ip-and-noncompetes-for-employees.html" />
        <link rel="replies" type="text/html" href="http://blog.obiefernandez.com/content/2009/05/ip-and-noncompetes-for-employees.html" />
        <id>tag:typepad.com,2003:post-67030899</id>
        <published>2009-05-19T22:47:58-04:00</published>
        <updated>2009-05-19T22:47:58-04:00</updated>
        <summary>Got the following email the other day, concerning intellectual property issues and non-compete agreements: I was wondering how Hashrocket handles intellectual property and non-competes with its employees. Is it something that your developers are required to sign as a new...</summary>
        <author>
            <name>Obie Fernandez</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="Business" />
        
        
<content type="html" xml:lang="en-US" xml:base="http://blog.obiefernandez.com/content/">&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;p&gt;Got the following email the other day, concerning intellectual property issues and non-compete agreements:&lt;/p&gt;&#xD;
&lt;blockquote&gt;&lt;p&gt;I was wondering how Hashrocket handles intellectual property and non-competes with its employees.  Is it something that your developers are required to sign as a new employee?&lt;/p&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;p&gt;I ask because I got into a deep discussion with my boss about this.  The employee agreement he came up with basically says that he owns any software / web related intellectual property that I work on (on and OFF the clock).  The non-compete section says that I can't start my own business or work for another firm in the same or surrounding states.&lt;/p&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;p&gt;I have an issue with him owning the intellectual property for work I do off the clock.  It makes me less motivated to learn and be innovative when I'm tinkering around on my own. I have my pet projects that I don't want him to have any part in.  His argument is that he doesn't want his employees using company resources (software and laptops) to start their own business... which gets into the non-compete.&lt;/p&gt;&lt;/blockquote&gt;&#xD;
&lt;p&gt;The answer is an emphatic "NO!" I do not require non-compete agreements to be signed by new hires at &lt;a href="http://hashrocket.com" target="_blank"&gt;Hashrocket&lt;/a&gt;. Neither do I try to claim ownership of work that they do &lt;span style="font-style: italic;"&gt;off the clock&lt;/span&gt; (open or closed source), a practice I learned from and admired at my former employer, &lt;a href="http://opensource.thoughtworks.com/" target="_blank"&gt;ThoughtWorks&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;Work done on the clock is a different story. We have the notion of chartered projects, internal initiatives which you are paid to work on for at most 5 hours per week or when paying client work is not available. If I'm paying someone to work on something then Hashrocket owns it, end of story. Actually, there could be some gray areas there, like bringing interesting outside projects in-house in order to make more progress on them, but in that case reasonableness is key.&lt;/p&gt;&lt;p&gt;Anyway, a non-compete agreement (or non-compete clause in a larger contract) restricts employees from engaging in similar work after leaving your firm. I didn't like them as an employee and I don't like them as an employer either, because I think they're fundamentally unfair. If as the owner of the firm I'm insecure about my people leaving and competing with me, then I'm doing it wrong. Keeping my people from being innovative on and off the job is exactly the &lt;span style="font-style: italic;"&gt;opposite&lt;/span&gt; of what I need to be doing.&lt;/p&gt;&lt;p&gt;The rationale that your boss used with you, that he "doesn't want his employees using company resources (software and laptops) to start their own business", is IMO such a cynical asshole thing to say to anyone. I've heard it before, and it always pisses me off. The thought process doesn't come up at Hashrocket because I require my people to buy and maintain their own computers. Professional craftsmen have their own tools, yada, yada... that's the subject for a different blog post.&lt;/p&gt;&lt;p&gt;And paid software? Really? What do we actually use for Rails development that costs money? Texmate? (Use vim to solve that problem.) I guess Adobe products are a notable exception there, but I still can't bring myself to look at the situation with such shortsightedness as to try and prevent someone from using tools that I purchased for them to further their career. I just realized why that is -- I see my mission as their "boss" to help further their career! (The rewards from treating your employees this way are immeasurable.)&lt;/p&gt;&lt;p&gt;Incidentally, &lt;a href="http://en.wikipedia.org/wiki/Non-compete_clause#Enforceability_in_the_State_of_California" target="_blank"&gt;non-compete agreements are not enforceable in California&lt;/a&gt;, but elsewhere in the USA they are legally binding, so you should be very careful signing anything with a non-compete clause.&lt;/p&gt;&lt;p&gt;My suggestion to people presented with non-compete clauses in their offer letters or as part of agreements signed post-hiring, is to strike the offending clause from the contract and initial the change. Do that or refuse to sign the agreement altogether. Yes, it takes chutzpah to do what I'm suggesting, but c'mon now... you shouldn't kick off your new job by bending over and taking the corporate shafting from day one. Given the time and expense needed to find qualified hires nowadays, after some initial fussiness from HR or the hiring manager, the whole matter will be forgotten. If they try to force you to sign under threat of termination then you really should be evaluating whether you wanted the job in the first place. Seriously.&lt;/p&gt;&lt;p&gt;I do believe in a particular type of &lt;span style="font-style: italic;"&gt;informal&lt;/span&gt; non-compete agreement, which I make verbally with all my people. I ask my people to refrain from "moonlighting" (doing side work) of the same type that they do during the day at Hashrocket. As an employer, you should do that too, but only if you pay competitively!&lt;/p&gt;&lt;p&gt;I can't forcefully prevent my people from moonlighting, but I discourage it strongly for one simple reason: burnout risk. Rocketeers work very hard every single day of every single week, putting in 35-40 hours per week doing intense pair-programming. I want them to go home and &lt;span style="font-style: italic;"&gt;relax&lt;/span&gt;, so that they're fresh the next morning. Think that's an unreasonable request? Don't come work for me.&lt;/p&gt;&lt;p&gt;On a final note, I think it's a good idea, as a company that sponsors open-source projects and encourages open-source work on the clock, to have signed &lt;a href="http://en.wikipedia.org/wiki/Contributor_License_Agreement" target="_blank"&gt;contributor agreements&lt;/a&gt; from all employees. I haven't done this at Hashrocket but I'm going to look into it soon.&lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/obie?a=R9Aig165WFI:JJOxYtBgxmg:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=R9Aig165WFI:JJOxYtBgxmg:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=R9Aig165WFI:JJOxYtBgxmg:RJU-JkLLmTY"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=R9Aig165WFI:JJOxYtBgxmg:RJU-JkLLmTY" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=R9Aig165WFI:JJOxYtBgxmg:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=R9Aig165WFI:JJOxYtBgxmg:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=R9Aig165WFI:JJOxYtBgxmg:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=R9Aig165WFI:JJOxYtBgxmg:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=R9Aig165WFI:JJOxYtBgxmg:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content>


    <feedburner:origLink>http://blog.obiefernandez.com/content/2009/05/ip-and-noncompetes-for-employees.html</feedburner:origLink></entry>
    <entry>
        <title>Announcing BizConf</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/obie/~3/fKsZODguB7k/announcing-bizconf.html" />
        <link rel="replies" type="text/html" href="http://blog.obiefernandez.com/content/2009/05/announcing-bizconf.html" />
        <id>tag:typepad.com,2003:post-66899721</id>
        <published>2009-05-17T17:52:07-04:00</published>
        <updated>2009-05-17T17:52:07-04:00</updated>
        <summary>BizConf is a one-of-a-kind, exclusive event that I am hosting about 3 months from now at the Ritz-Carlton Amelia Island Resort in northern Florida. It's a 2-day conference specifically crafted for independent consultants and owners/managers of small to mid-sized web...</summary>
        <author>
            <name>Obie Fernandez</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="Conferences" />
        
        
<content type="html" xml:lang="en-US" xml:base="http://blog.obiefernandez.com/content/">&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;div&gt; &lt;a href="http://blog.obiefernandez.com/.a/6a00e54fdca911883301156f999461970c-pi" style="display: inline;"&gt;&lt;img alt="Logo" class="at-xid-6a00e54fdca911883301156f999461970c " src="http://blog.obiefernandez.com/.a/6a00e54fdca911883301156f999461970c-500wi"&gt;&lt;/img&gt;&lt;/a&gt; &lt;br&gt;&lt;/div&gt;&lt;br&gt;&lt;div&gt;&lt;a href="http://www.bizconf.org/" target="_blank"&gt;&lt;span style="font-weight: bold;"&gt;BizConf&lt;/span&gt;&lt;/a&gt; is a one-of-a-kind, exclusive event that I am hosting about 3 months from now at the &lt;a href="http://www.hotels.com/hotel_the-ritz-carlton-amelia-island_125428.html" target="_blank"&gt;Ritz-Carlton Amelia Island Resort&lt;/a&gt; in northern Florida. It's a 2-day conference specifically crafted for independent consultants and owners/managers of small to mid-sized web consultancies.&lt;/div&gt;&lt;br&gt;&lt;div&gt;&lt;span style="font-weight: bold;"&gt;Conference Website: &lt;a href="http://bizconf.org" target="_blank"&gt;http://bizconf.org&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;br&gt;&lt;p&gt;&lt;span style="font-weight: bold;"&gt;Summary&lt;/span&gt;&lt;/p&gt;&lt;div&gt;The conference program is on Thursday and Friday (Aug 20-21, 2009) and the Ritz-Carlton is offering steep discounts on their room rates for up to 3 days before and after the conference. This is a perfect opportunity to turn a "business" trip into a vacation (or golf) getaway with friends and family. I selected the venue particularly because of the luxurious rooms, restaurants and spa, and its location on some of Florida's finest white-powder beachfront and warm, sparkling blue ocean. Amelia Island is conveniently about 30 minutes drive east of Jacksonville airport (JAX) and local transportation can be arranged through the conference.&lt;/div&gt;&lt;br&gt;&lt;div&gt;&lt;a href="http://blog.obiefernandez.com/.a/6a00e54fdca911883301156f99a10f970c-pi" style="float: right; "&gt;&lt;img alt="208650669_c73da06f27_m" class="at-xid-6a00e54fdca911883301156f99a10f970c selected " src="http://blog.obiefernandez.com/.a/6a00e54fdca911883301156f99a10f970c-500wi" style="margin-top: 15px; margin-right: 15px; margin-bottom: 15px; margin-left: 15px; " title="208650669_c73da06f27_m"&gt;&lt;/img&gt;&lt;/a&gt; Check out some more &lt;a href="http://www.flickr.com/photos/hyku/sets/72157594227063709/" target="_blank"&gt;photos of the Ritz-Carlton Amelia Island&lt;/a&gt; by Josh Hallett. It is a beautiful and luxurious hotel and we're making the most of it. All meals are included in your conference registration, from special catered breakfasts in SALT Restaurant to the Friday night private dinner and pool party at the Spa. &lt;/div&gt;&lt;br&gt;&lt;div&gt;&lt;span style="font-style: italic; "&gt;Registration is limited to 75 people&lt;/span&gt; in order to keep the event intimate and maximize interaction between our presenters and attendees. We have over 20 compelling presenters confirmed so far, with additional announcements happening soon. The program is divided into plenary sessions for everyone in the main room and three breakout session tracks in small conference rooms. Some have questioned the decision to do 4 tracks for such a small conference. The answer is that we will be covering a wide variety of topics, from marketing, to team building, to legal/finance issues, to product development and client services. Attendees will be able to select a mix of topics that suits their exact needs and receive personal attention from the presenters, while still having ample opportunities for networking and creating new friendships in our industry niche.&lt;/div&gt;&lt;br&gt;&lt;div&gt;&lt;span style="font-weight: bold; "&gt;Presenters&lt;/span&gt;&lt;/div&gt;&lt;div&gt;The following list only skims the surface of who you can expect to meet and learn from at BizConf:&lt;br&gt;&lt;/div&gt;&lt;br&gt;&lt;blockquote class="webkit-indent-blockquote"&gt;&lt;p&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-weight: normal; "&gt;&lt;a href="http://secretsofconsulting.blogspot.com/" style="color: blue; text-decoration: underline; cursor: pointer; " target="_blank"&gt;&lt;span style="font-weight: bold; "&gt;Jerry Weinberg&lt;/span&gt;&lt;/a&gt; is one of my heroes. He has over 30 years of consulting experience and has written many notable books including "The Secrets of Consulting" and "The Psychology of Computer Programming". He will be presenting small group experiential sessions including "Learning to Say No" and "Great Client Expectations".&lt;/span&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;blockquote class="webkit-indent-blockquote"&gt;&lt;p&gt;&lt;span style="font-weight: bold;"&gt;Roy Singham&lt;/span&gt;, my friend and mentor, will be keynoting and spending one-on-one time with attendees. Roy famously grew his tiny Chicago-based consultancy into world-class software consulting powerhouse ThoughtWorks, admirably working to make positive change in the world every step of the way. Martin Fowler has &lt;a href="http://martinfowler.com/bliki/RoysSocialExperiment.html" target="_blank"&gt;written about Roy on his blog&lt;/a&gt;.&lt;/p&gt;&lt;/blockquote&gt;&lt;blockquote class="webkit-indent-blockquote"&gt;&lt;p&gt;&lt;br&gt;&lt;a href="http://estherderby.com/" target="_blank"&gt;&lt;span style="font-weight: bold;"&gt;Esther Derby&lt;/span&gt;&lt;/a&gt; and &lt;a href="http://www.jrothman.com/" target="_blank"&gt;&lt;span style="font-weight: bold;"&gt;Johanna Rothman&lt;/span&gt;&lt;/a&gt; are esteemed trainers and co-authors of the Pragmatic's &lt;a href="http://www.pragprog.com/titles/rdbcd/behind-closed-doors" target="_blank"&gt;Behind Closed Doors: Secrets of Great Management&lt;/a&gt; among other titles. They will be very busy at BizConf with sessions topics including:&lt;/p&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;ul&gt;&#xD;
&lt;ul&gt;&#xD;
&lt;li&gt;Recruiting and Keeping Talent Happy&lt;/li&gt;&#xD;
&lt;li&gt;Leveraging Personal Sources of Power&lt;/li&gt;&#xD;
&lt;li&gt;Levers for Change&lt;/li&gt;&#xD;
&lt;li&gt;Interviewing Customers&lt;/li&gt;&#xD;
&lt;/ul&gt;&#xD;
&lt;/ul&gt;&#xD;
&lt;/div&gt;&lt;blockquote class="webkit-indent-blockquote"&gt;&lt;p&gt;&lt;a href="http://www.donaldegray.com/tiki-index.php" target="_blank"&gt;&lt;span style="font-weight: bold;"&gt;Don Gray&lt;/span&gt;&lt;/a&gt; coaches software development organizations to higher levels of productivity. His background in machine and process automation provides the foundation for working with organizational systems and change. His workshops at BizConf will focus on personality types and teamwork, team productivity, and retrospectives.&lt;/p&gt;&lt;p&gt;&lt;span style="font-weight: bold;"&gt;Ian McFarland&lt;/span&gt;, Principal at the esteemed San Francisco-based consultancy &lt;a href="http://pivotallabs.com"&gt;Pivotal Labs&lt;/a&gt; will present a new model for selling a potent mix of Agile, Ruby on Rails and cloud-computing to CIOs and CTOs in the enterprise world. Ian was a &lt;a href="http://podcast.rubyonrails.org/programs/1/episodes/ian-mcfarland-of-pivotal-labs" target="_blank"&gt;special guest on the Rails Podcast last year&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;&lt;a href="http://coreyhaines.com/" target="_blank"&gt;&lt;span style="font-weight: bold;"&gt;Corey Haines&lt;/span&gt;&lt;/a&gt; is one of the warmest, most genuine voices of the Software Craftmanship movement. He is rapidly gaining friends and notoriety from his travel around the world as the wandering journeyman software craftman, sharing programming language with technology professionals in exchange for room and board.&lt;/p&gt;&lt;p&gt;&lt;a href="http://duncandavidson.com/" target="_blank"&gt;&lt;span style="font-weight: bold;"&gt;James Duncan Davidson&lt;/span&gt;&lt;/a&gt; will provide attendees that bring their own DSLRs with a unique opportunity to learn photography from a master of the craft. Learn how to maximize your marketing with candid shots of your people in action.&lt;/p&gt;&lt;p&gt;&lt;span style="font-weight: bold;"&gt;Jessie Shternshus&lt;/span&gt; is founder and owner of &lt;a href="http://www.improveffect.com/" target="_blank"&gt;&lt;span style="font-weight: bold;"&gt;The Improv Effect&lt;/span&gt;&lt;/a&gt; and has worked with companies such as CBS, Paramount Pictures, MTV and Sesame Workshop. Jessie merges her lifelong passion and expertise of improvisational acting with the fast paced demands of the corporate world. In her classes and workshops she helps people become better listeners, team players, leaders and communicators. Her physically engaging and playful workshops are relevant to all facets of life and are sure to be a fun highlight for BizConf participants.&lt;/p&gt;&lt;/blockquote&gt;&lt;br&gt;&lt;div&gt;The complete list of speakers is &lt;a href="http://bizconf.org/speakers"&gt;here&lt;/a&gt;, although I expect to add a few more to it in the coming weeks. This conference is very personal to me -- I am handcrafting the program to maximize the interest to other people like myself: entrepreneurs in the web development space, particularly my peers running successful Rails consultancy shops.&lt;/div&gt;&lt;br&gt;&lt;div&gt;&lt;span style="font-weight: bold;"&gt;Price&lt;/span&gt;&lt;/div&gt;&lt;div&gt;If you register before July 17th you can take advantage of the early-bird pricing of $1995. After that, the price goes up to $2495. Yes, I know very well that the cost is out of reach of some of you reading this. However, it's an upscale and exclusive event on purpose and I &lt;a href="http://blog.obiefernandez.com/content/2009/01/pricing-railsbizconf.html" target="_blank"&gt;decided on that price based on market research&lt;/a&gt;. Also, running a conference like BizConf is quite expensive and entails a great deal of financial risk for the organizers. The venue and food is very expensive, as well as travel expenses for all of the speakers.&lt;/div&gt;&lt;br&gt;&lt;div&gt;&lt;span style="font-weight: bold;"&gt;Sponsors&lt;/span&gt;&lt;/div&gt;&lt;div&gt;I want to take a moment to thank my partners at Hashrocket, as well as our other sponsors: nGen Works and Engine Yard for helping to make this dream a reality.&lt;br&gt;&lt;/div&gt;&lt;br&gt;&lt;div&gt;If you work for a product firm that provides services to small to mid-sized service providers, then BizConf is the perfect opportunity for you to get to know the most successful influencers in this business. &lt;a href="http://www.bizconf.org/sponsor_prospectus.pdf" target="_blank"&gt;Check out our sponsor prospectus&lt;/a&gt; for more information.&lt;/div&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/obie?a=fKsZODguB7k:74oZEYvtRfk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=fKsZODguB7k:74oZEYvtRfk:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=fKsZODguB7k:74oZEYvtRfk:RJU-JkLLmTY"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=fKsZODguB7k:74oZEYvtRfk:RJU-JkLLmTY" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=fKsZODguB7k:74oZEYvtRfk:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=fKsZODguB7k:74oZEYvtRfk:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=fKsZODguB7k:74oZEYvtRfk:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=fKsZODguB7k:74oZEYvtRfk:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=fKsZODguB7k:74oZEYvtRfk:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content>


    <feedburner:origLink>http://blog.obiefernandez.com/content/2009/05/announcing-bizconf.html</feedburner:origLink></entry>
    <entry>
        <title>Inverted Sensibilities</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/obie/~3/wjwkrbODM74/inverted-sensibilities.html" />
        <link rel="replies" type="text/html" href="http://blog.obiefernandez.com/content/2009/04/inverted-sensibilities.html" />
        <id>tag:typepad.com,2003:post-66150453</id>
        <published>2009-04-29T10:04:27-04:00</published>
        <updated>2009-04-29T10:04:27-04:00</updated>
        <summary>nextangler: I certainly have a line as well nextangler: And it goes at violence obie: LOL you certainly are a european nextangler: Which, funny enough, seems to be the inverse of a lot of people here obie: americans have hangups...</summary>
        <author>
            <name>Obie Fernandez</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="Life" />
        
        
<content type="html" xml:lang="en-US" xml:base="http://blog.obiefernandez.com/content/">&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;blockquote&gt;&#xD;
&lt;p&gt;&lt;span style="color: #0060bf; font-family: Arial;"&gt;nextangler&lt;/span&gt;: I certainly have a line as well&lt;br&gt;&lt;span style="color: #0060bf; font-family: Arial;"&gt;nextangler&lt;/span&gt;: And it goes at violence&lt;br&gt;&lt;span style="color: #007f40; font-family: Arial;"&gt;obie&lt;/span&gt;: LOL you certainly are a european&lt;br&gt;&lt;span style="color: #0060bf; font-family: Arial;"&gt;nextangler&lt;/span&gt;: Which, funny enough, seems to be the inverse of a lot of people here&lt;br&gt;&lt;span style="color: #007f40; font-family: Arial;"&gt;obie&lt;/span&gt;: americans have hangups about sex, but not violence&lt;br&gt;&lt;span style="color: #0060bf; font-family: Arial;"&gt;nextangler&lt;/span&gt;: And that's some fucked up shit&lt;br&gt;&lt;span style="color: #007f40; font-family: Arial;"&gt;obie&lt;/span&gt;: yep&lt;br&gt;&lt;span style="color: #0060bf; font-family: Arial;"&gt;nextangler&lt;/span&gt;: That needs to be attacked at any given opportunity&lt;br&gt;&lt;span style="color: #007f40; font-family: Arial;"&gt;obie&lt;/span&gt;: violently?&lt;br&gt;&lt;span style="color: #007f40; font-family: Arial;"&gt;obie&lt;/span&gt;: :)&lt;br&gt;&lt;span style="color: #0060bf; font-family: Arial;"&gt;nextangler&lt;/span&gt;: By arguments and pictures of mating!!&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/obie?a=wjwkrbODM74:7l8ZjEf2Z7c:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=wjwkrbODM74:7l8ZjEf2Z7c:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=wjwkrbODM74:7l8ZjEf2Z7c:RJU-JkLLmTY"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=wjwkrbODM74:7l8ZjEf2Z7c:RJU-JkLLmTY" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=wjwkrbODM74:7l8ZjEf2Z7c:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=wjwkrbODM74:7l8ZjEf2Z7c:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=wjwkrbODM74:7l8ZjEf2Z7c:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=wjwkrbODM74:7l8ZjEf2Z7c:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=wjwkrbODM74:7l8ZjEf2Z7c:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content>


    <feedburner:origLink>http://blog.obiefernandez.com/content/2009/04/inverted-sensibilities.html</feedburner:origLink></entry>
    <entry><title type="text">Links for 2009-04-25 [del.icio.us]</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/obie/~3/EdavQebPZ3E/obie" /><updated>2009-04-26T00:00:00-07:00</updated><id>http://del.icio.us/obie#2009-04-25</id><content type="html">&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.snowgiraffe.com/tech/462/rails-devs-for-foreign-keys/"&gt;Rails Devs for Foreign Keys&lt;/a&gt;&lt;br/&gt;
Interesting commentary and plugin from Rails guys who believe in using database constraints.&lt;/li&gt;
&lt;/ul&gt;</content><feedburner:origLink>http://del.icio.us/obie#2009-04-25</feedburner:origLink></entry><entry>
        <title>Heroku and GoDaddy CNAME</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/obie/~3/Nsy4fHjhwhw/heroku-and-godaddy-cname.html" />
        <link rel="replies" type="text/html" href="http://blog.obiefernandez.com/content/2009/04/heroku-and-godaddy-cname.html" />
        <id>tag:typepad.com,2003:post-65990897</id>
        <published>2009-04-24T17:51:16-04:00</published>
        <updated>2009-04-24T17:51:16-04:00</updated>
        <summary>If you're trying to get Heroku working with your GoDaddy-hosted DNS, you're going to have problems adding a CNAME record for "@". The system will complain and ask for a valid hostname, even though GoDaddy's own documentation says that "@"...</summary>
        <author>
            <name>Obie Fernandez</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="Programming" />
        
        
<content type="html" xml:lang="en-US" xml:base="http://blog.obiefernandez.com/content/">&lt;p&gt;If you're trying to get Heroku working with your GoDaddy-hosted DNS, you're going to have problems adding a CNAME record for "@". The system will complain and ask for a valid hostname, even though GoDaddy's own documentation says that "@" is okay.&lt;/p&gt;&lt;p&gt;The solution is to use the name of your domain instead. A trailing period after the TLD seems to be optional. An A record for @ is not needed with this configuration.&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/obie?a=Nsy4fHjhwhw:5A1a-I1nfzg:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=Nsy4fHjhwhw:5A1a-I1nfzg:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=Nsy4fHjhwhw:5A1a-I1nfzg:RJU-JkLLmTY"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=Nsy4fHjhwhw:5A1a-I1nfzg:RJU-JkLLmTY" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=Nsy4fHjhwhw:5A1a-I1nfzg:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=Nsy4fHjhwhw:5A1a-I1nfzg:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=Nsy4fHjhwhw:5A1a-I1nfzg:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?i=Nsy4fHjhwhw:5A1a-I1nfzg:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/obie?a=Nsy4fHjhwhw:5A1a-I1nfzg:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/obie?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content>


    <feedburner:origLink>http://blog.obiefernandez.com/content/2009/04/heroku-and-godaddy-cname.html</feedburner:origLink></entry>
 
<entry><title type="text">Links for 2009-03-01 [del.icio.us]</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/obie/~3/n_R3UQgBiQI/obie" /><updated>2009-03-02T00:00:00-08:00</updated><id>http://del.icio.us/obie#2009-03-01</id><content type="html">&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.erebor.com/2009/01/16/telling-stories-in-nashville/"&gt;Ereblog  &amp;raquo; Blog Archive   &amp;raquo; Telling stories in Nashville&lt;/a&gt;&lt;br/&gt;
Fawesome story about guest-pairing with the OGC guys. I think the guest-pairing meme is catching on.&lt;/li&gt;
&lt;/ul&gt;</content><feedburner:origLink>http://del.icio.us/obie#2009-03-01</feedburner:origLink></entry><entry><title type="text">Links for 2009-02-18 [del.icio.us]</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/obie/~3/yLvaY8nc5bg/obie" /><updated>2009-02-19T00:00:00-08:00</updated><id>http://del.icio.us/obie#2009-02-18</id><content type="html">&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.digidave.org/adventures_in_freelancing/2009/02/a-journoentrepreneurs-important-relationships.html"&gt;DigiDave | Communication is Key: A Journo-Entrepreneur's Important Relationships&lt;/a&gt;&lt;br/&gt;
Today one of the most important relationships I have is with my developers. The joke goes &amp;quot;developers are the new teamsters.&amp;quot;&lt;/li&gt;
&lt;/ul&gt;</content><feedburner:origLink>http://del.icio.us/obie#2009-02-18</feedburner:origLink></entry><entry><title type="text">Links for 2009-02-17 [del.icio.us]</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/obie/~3/CE3xWgEsAiQ/obie" /><updated>2009-02-18T00:00:00-08:00</updated><id>http://del.icio.us/obie#2009-02-17</id><content type="html">&lt;ul&gt;
&lt;li&gt;&lt;a href="http://wevouchfor.org/"&gt;We Vouch For...&lt;/a&gt;&lt;br/&gt;
Interesting take on a &amp;quot;network of excellence&amp;quot; concept by Brian Marick&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.sparkboxx.com/sparkboxx/2009/02/rails-maturity-model-certification-and-the-rails-ecosystem.html"&gt;Sparkboxx - Wilco van Duinkerken: Rails Maturity Model, Certification and the Rails Ecosystem&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.akitaonrails.com/2009/2/17/rails-im-maturity-model"&gt;%w(Akita On Rails) * 2.0 / Rails (Im)maturity Model?&lt;/a&gt;&lt;br/&gt;
Fabio&amp;#039;s take on the subject of RMM and CMMi in general. He seems to know what he&amp;#039;s talking about based on experience.&lt;/li&gt;
&lt;/ul&gt;</content><feedburner:origLink>http://del.icio.us/obie#2009-02-17</feedburner:origLink></entry><entry><title type="text">Links for 2009-02-05 [del.icio.us]</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/obie/~3/N91c_E8BXOo/obie" /><updated>2009-02-06T00:00:00-08:00</updated><id>http://del.icio.us/obie#2009-02-05</id><content type="html">&lt;ul&gt;
&lt;li&gt;&lt;a href="http://agiletesting.blogspot.com/2009/02/load-balancing-in-amazon-ec2-with.html"&gt;Agile Testing: Load Balancing in Amazon EC2 with HAProxy&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content><feedburner:origLink>http://del.icio.us/obie#2009-02-05</feedburner:origLink></entry><entry><title type="text">Links for 2009-02-04 [del.icio.us]</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/obie/~3/rjbY6CRVDhQ/obie" /><updated>2009-02-05T00:00:00-08:00</updated><id>http://del.icio.us/obie#2009-02-04</id><content type="html">&lt;ul&gt;
&lt;li&gt;&lt;a href="http://blogs.digitar.com/jjww/2009/01/rabbits-and-warrens/"&gt;Rabbits and warrens. - Jason&amp;rsquo;s .plan&lt;/a&gt;&lt;br/&gt;
AMQP and RabbitMQ Primer&lt;/li&gt;
&lt;li&gt;&lt;a href="http://magicscalingsprinkles.wordpress.com/2008/11/24/write-through-cacheing-is-an-essential-part-of-a-healthy-scaling-strategy/"&gt;Write-Through Cacheing is an Essential Part of a Healthy Scaling Strategy &amp;laquo; Magic Scaling Sprinkles&lt;/a&gt;&lt;br/&gt;
Nick Kallen explains why write-through cacheing is necessary prior to debuting cache-money.&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.boingboing.net/2009/01/27/diy-how-to-write-a-b.html"&gt;DIY: How to write a book - Boing Boing&lt;/a&gt;&lt;br/&gt;
Interesting approach that sounds kind of like what I did for The Rails Way. Aggregate content for a long-time and then organize and synthesize your own content from it. Similar to an approach advocated by Gerald Williams.&lt;/li&gt;
&lt;li&gt;&lt;a href="http://groups.google.com/group/ruby-amqp/browse_thread/thread/3b39343aac6a7db5"&gt;AMQP from Rails, crashing intermittently - AMQP | Google Groups&lt;/a&gt;&lt;br/&gt;
Thread.new{ AMQP.start(:host =&amp;gt; &amp;#039;localhost&amp;#039;) }&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.webficient.com/2008/06/30/thin-web-server-benchmarks-using-ruby-on-rails"&gt;Thin Web Server Benchmarks | Webficient&lt;/a&gt;&lt;br/&gt;
Thin uses the Mongrel parser and Event Machine I/O library. In addition, it uses the Rack interface, allowing you to run other frameworks besides Ruby on Rails.&lt;/li&gt;
&lt;/ul&gt;</content><feedburner:origLink>http://del.icio.us/obie#2009-02-04</feedburner:origLink></entry></feed><!-- ph=1 --><!-- nhm:from_kauri -->
