<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>Development Community</title>
        <link>http://geekswithblogs.net/UlteriorMotiveLounge/category/9123.aspx</link>
        <description>Discussion and review of community events.</description>
        <language>en-US</language>
        <copyright>Martin L. Shoemaker</copyright>
        <managingEditor>Martin@TheUMLGuy.com</managingEditor>
        <generator>Subtext Version 0.0.0.0</generator>
        <item>
            <title>All right, Mr. DeMille, I'm ready for my close-up</title>
            <link>http://geekswithblogs.net/UlteriorMotiveLounge/archive/2009/05/26/all-right-mr.-demille-im-ready-for-my-close-up.aspx</link>
            <description>&lt;p&gt;Back in January, &lt;a target="_blank" href="http://www.brianhprince.com/"&gt;Brian H. Prince&lt;/a&gt; from Microsoft interviewed me about the UML features in Visual Studio Team System 2010. Today, he informed me that &lt;a target="_blank" href="http://channel9.msdn.com/shows/ARCast.TV/ARCastTV-Martin-Shoemaker-discusses-UML-in-VSTS2010/"&gt;the interview is finally live on Channel 9&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=132437"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=132437" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/UlteriorMotiveLounge/aggbug/132437.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Martin L. Shoemaker</dc:creator>
            <guid>http://geekswithblogs.net/UlteriorMotiveLounge/archive/2009/05/26/all-right-mr.-demille-im-ready-for-my-close-up.aspx</guid>
            <pubDate>Tue, 26 May 2009 23:58:43 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/UlteriorMotiveLounge/comments/132437.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/UlteriorMotiveLounge/archive/2009/05/26/all-right-mr.-demille-im-ready-for-my-close-up.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/UlteriorMotiveLounge/comments/commentRss/132437.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Some Recruiting and Placement Resources, in Case You Need Them</title>
            <link>http://geekswithblogs.net/UlteriorMotiveLounge/archive/2009/03/11/130020.aspx</link>
            <description>&lt;p&gt;Based in part on &lt;a target="_blank" href="http://www.pcmag.com/article2/0,2817,2342781,00.asp"&gt;PC Magazine’s Top 20 list&lt;/a&gt;. Offered in alphabetical order, with no comment on quality or usefulness. But I hope you find them useful. Feel free to comment with more.&lt;/p&gt;
&lt;table cellspacing="0" cellpadding="0" border="0"&gt;
    &lt;tbody&gt;
        &lt;tr&gt;
            &lt;td width="218"&gt;&lt;a href="http://www.advancedtechno.com/"&gt;Advanced Technology&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.aitcusa.com/"&gt;AITC&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.ajmps.com/"&gt;AJM Professional Services&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://amtecsys.com/"&gt;AMTEC Systems Corporation&lt;/a&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td&gt;&lt;a href="http://www.aquent.com/"&gt;Aquent&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.austinpark.com/"&gt;Austin Park&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.azad.com/"&gt;Azad&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.balionisgroup.com/"&gt;Balionis Group&lt;/a&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td&gt;&lt;a href="http://www.betatechinc.com/"&gt;BetaTech, Inc.&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.beyond.com/"&gt;Beyond&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.billyoung.com/"&gt;Bill Young &amp;amp; Associates&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.bren-bna.com/"&gt;Bren Norris Associates, Inc.&lt;/a&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td&gt;&lt;a href="http://www.careerbuilder.com/"&gt;CareerBuilder&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.careernet.com/"&gt;Careernet.com&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.ciber.com/jobs"&gt;CIBER&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.computerexpress.com/"&gt;Computer Express, Inc.&lt;/a&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td&gt;&lt;a href="http://www.craigslist.org/"&gt;CraigsList&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.creativegroup.com/SearchJobs"&gt;Creative Group&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.creativehotlist.com/"&gt;Creative Hotlist&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.cybercoders.com/"&gt;CyberCoders&lt;/a&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td&gt;&lt;a href="http://www.dsninc.com/"&gt;Data Search Network, Inc.&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.dice.com"&gt;Dice&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.execu-search.com/"&gt;Execu|Search&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.findersit.com/"&gt;Finders Inc.&lt;/a&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td&gt;&lt;a href="http://www.grandrapidsgigs.com/"&gt;Grand Rapids Gigs&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.hound.com/"&gt;Hound&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.indeed.com/"&gt;Indeed&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.jobcentral.com/"&gt;JobCentral&lt;/a&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td&gt;&lt;a href="http://www.jobfox.com/"&gt;JobFox&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.jobserve.us/"&gt;JobServe&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.jobster.com/"&gt;Jobster&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.karlassociates.com/"&gt;Karl Associates&lt;/a&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td&gt;&lt;a href="http://www.kforce.com/"&gt;KForce&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.michigan.org/medc"&gt;MEDC Business Directory&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.michiganjobnetwork.com/jobs.asp"&gt;Michigan Job Network&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.monster.com/"&gt;Monster.com&lt;/a&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td&gt;&lt;a href="http://www.ontargetjobs.com/"&gt;onTargetJobs&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.oodle.com/job/"&gt;Oodle&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.otterbase.com/"&gt;Otterbase&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://paragonusa.com/candidate/currentopenings/jobalert/index.asp"&gt;Paragon Recruiting&lt;/a&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td&gt;&lt;a href="http://www.pcp-inc.com/"&gt;PCPI Inc.&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.primesourcemgmt.com/"&gt;Prime Source Management Inc.&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.setfocus.com/"&gt;SetFocus&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.ontargetjobs.com/"&gt;SimplyHired&lt;/a&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td&gt;&lt;a href="http://www.sologig.com/"&gt;SoloGig&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.spherion.com/:&amp;gt;Spherion Corporation&amp;lt;/a&amp;gt;&amp;lt;/td&amp;gt;      &amp;lt;td&amp;gt;&amp;lt;a href="&gt;Spherion Corporation Stout Systems&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.sunfieldconsulting.com"&gt;Sunfield Consulting&lt;/a&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td&gt;&lt;a href="http://www.technisource.com/"&gt;Technisource&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.teksystems.com/"&gt;TEK Systems&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.thelasallenetwork.com/"&gt;The LaSalle Netowrk&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.thenormandingroup.com/"&gt;The Normandin Group&lt;/a&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td&gt;&lt;a href="http://www.trovix.com/"&gt;Trovix&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://truesourcerecruiting.com/"&gt;True Source Recruiting&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.tweetmyjobs.com/"&gt;TweetMyJobs&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.usajobs.com/"&gt;USAJobs&lt;/a&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td&gt;&lt;a href="http://www.vault.com/"&gt;Vault Technology Jobs&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://www.williamsonemployment.com/jobs.html"&gt;Williamson Employment Services&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt;&lt;a href="http://hotjobs.yahoo.com/"&gt;Yahoo HotJobs&lt;/a&gt;&lt;/td&gt;
            &lt;td&gt; &lt;/td&gt;
        &lt;/tr&gt;
    &lt;/tbody&gt;
&lt;/table&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=130020"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=130020" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/UlteriorMotiveLounge/aggbug/130020.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Martin L. Shoemaker</dc:creator>
            <guid>http://geekswithblogs.net/UlteriorMotiveLounge/archive/2009/03/11/130020.aspx</guid>
            <pubDate>Wed, 11 Mar 2009 19:11:02 GMT</pubDate>
            <comments>http://geekswithblogs.net/UlteriorMotiveLounge/archive/2009/03/11/130020.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/UlteriorMotiveLounge/comments/commentRss/130020.aspx</wfw:commentRss>
        </item>
        <item>
            <title>The U-Shaped Curve (A few more reasons why Coding Geekette is right)</title>
            <link>http://geekswithblogs.net/UlteriorMotiveLounge/archive/2009/01/09/the-u-shaped-curve-a-few-more-reasons-why-coding-geekette.aspx</link>
            <description>&lt;div class="bvEntry" id="entrycns!B4665B67C2981533!259" bv:cns="cns!B4665B67C2981533!259" bv:ca="true" bv:cat="Development Community"&gt;
&lt;div class="bvMsg" id="msgcns!B4665B67C2981533!259"&gt;
&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; This is a Best Of post from &lt;a href="http://theumlguy.spaces.live.com"&gt;my other blog&lt;/a&gt;. The topic came up on Twitter, so I'm rerunning it here.&lt;/p&gt;
&lt;p&gt;&lt;a target="_blank" href="http://www.codinggeekette.com/"&gt;Coding Geekette&lt;/a&gt; has &lt;a target="_blank" href="http://www.codinggeekette.com/2008/07/making-of-good-developer.aspx"&gt;a slightly dated but still timely post&lt;/a&gt; about The Making of a Good Developer. That post was inspired by &lt;a target="_blank" href="http://www.codethinked.com/"&gt;Justin Etheredge's&lt;/a&gt; equally interesting post on why &lt;a target="_blank" href="http://www.codethinked.com/post/2008/07/Being-Smart-Does-Not-a-Good-Developer-Make.aspx"&gt;Being Smart Does Not a Good Developer&lt;/a&gt; make. Both address the idea that good developers are those who like to learn new things, not just smart people. And they lament or wonder that so many people in the software development industry aren't interested in learning new things. I admit, this attitude puzzles me. I love to learn. I remember as a kid watching &lt;em&gt;M*A*S*H&lt;/em&gt; and seeing that Hawkeye and BJ were reading medical books and journals, even though they were already doctors. I asked my Mom, and she explained that doctors have to keep learning new stuff all the time. I thought that sounded incredibly cool; but eventually, I learned that most kids didn't &lt;em&gt;like&lt;/em&gt; school, and thought the idea of learning all the time sucked. I didn't get it, and I still don't. &lt;/p&gt;
&lt;p&gt;But lamenting isn't my style; and wondering about someone's motivations isn't productive (better just to ask them). But being a proactive kind of UML Guy, I prefer trying to persuade them, through the power of raw, naked greed. &lt;/p&gt;
&lt;p&gt;And that brings us to the U-Shaped Curve, which will eventually lead to a great argument for why they should keep learning. Now this idea isn't original with me. I would swear I learned it from &lt;a target="_blank" href="http://www.stoutsystems.com/"&gt;John Stout&lt;/a&gt; at an &lt;a target="_blank" href="http://www.computersociety.org/"&gt;AACS&lt;/a&gt; presentation; but John denies ever mentioning it, so it must've been a panel he hosted. Someone on that panel deserves credit, but I can't recall who. &lt;strong&gt;Update:&lt;/strong&gt; &lt;a target="_blank" href="http://www.joshholmes.com/"&gt;Josh Holmes&lt;/a&gt; tells me it was &lt;a target="_blank" href="http://srtsolutions.com/blogs/billwagner/default.aspx"&gt;Bill Wagner&lt;/a&gt;. &lt;/p&gt;
&lt;p&gt;The basic idea of the U-Shaped Curve is seen in this picture: &lt;/p&gt;
&lt;p&gt;&lt;a href="http://5rhwsa.blu.livefilestore.com/y1pib6ohChkHD7L1w72OlowbNre3FFRDLi0HvwlNRhDy4GvOeRnxg3z5dtrgVljtSTmLuI6d7Ds37Y6A3ODw7LH5w?PARTNER=WRITER"&gt;&lt;img height="464" alt="U-Shaped 1" width="614" border="0" src="http://5rhwsa.blu.livefilestore.com/y1pPDTFnCKOgztStGEBiI2n48BRbn9hteq-mVN5n1TVDq-_ROaBt4srzZlVLxKDkQfEe446wlzy8PMxfcc1JAC9Nw?PARTNER=WRITER" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Figure 1: The U-Shaped Curve&lt;/strong&gt; &lt;/p&gt;
&lt;p&gt;The axes of the Curve are: &lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;strong&gt;Newness&lt;/strong&gt; (horizontal): Newer technologies toward the right, older technologies toward the left. And remember, today's Bleeding Edge will be common in a few years, and Paleontological in a couple of decades. &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;$ or Value&lt;/strong&gt; (vertical): More $ toward the top &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The idea is simple supply and demand: if you know a Bleeding Edge technology, you can charge through the ceiling, because nobody knows it. And if you know a Paleontology technology, you can charge through the ceiling, because everybody else who knows it is dead. But if you know only common technologies, you sit in the bottom of the U, with the bottom rising or occasionally sinking over time. &lt;/p&gt;
&lt;p&gt;Now there's a complication for both Bleeding Edge and Paleo: you have to find someone who needs those skills. For bleeding edge, that's especially difficult, because few people know those skills even exist. For Paleo, it's a little easier, because those skills are known, proven technologies. Of course, they're technologies that have mostly been abandoned years ago, but they're still better known than the Bleeding Edge stuff. &lt;/p&gt;
&lt;p&gt;A lot of people aren't interested in chasing the Bleeding Edge; and most people aren't learning Paleo tools just for fun (some do), so only time will make them Paleo experts. But of course, those are only two extremes on the curve. There are some pretty common waypoints as well (as described in Steve McConnell's &lt;a target="_blank" href="http://www.amazon.com/Professional-Software-Development-Schedules-Successful/dp/0321193679"&gt;Professional Software Development&lt;/a&gt;): &lt;/p&gt;
&lt;p&gt;&lt;a href="http://5rhwsa.blu.livefilestore.com/y1poCYo3Q38GYLGkSfdL1PTn75ZSWCDGIcZHKLNfDMNdwvpjS1xV8mjzhgFMOfSg6vyMjxLrmwr0c_2DlUPieVrPA?PARTNER=WRITER"&gt;&lt;img height="464" alt="U-Shaped 2" width="614" border="0" src="http://5rhwsa.blu.livefilestore.com/y1pFhmqXlxj-qJSDn680Lnn18_GcCOkJUAKJlJELtAbw_5NZgIk5tIzLUTmt6OoC0Saa4-2tUp3eiGKginSkWOvbA?PARTNER=WRITER" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Figure 2: Waypoints along the U-Shaped Curve (inspired by Steve McConnell)&lt;/strong&gt; &lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;strong&gt;Early Adopters.&lt;/strong&gt; These people jump on new technology as soon as it's publicly released. Between the Early Adopters and the Bleeding Edge are the Scouts: people who like to learn about the pre-release tools, but aren't going to jump in with both feet until the tools near release. (I'm a Scout by temperament. I don't have the time to keep up with Bleeding Edge, but I want to see what's coming.) Early Adopters can't charge as much as Bleeding Edge folks; but they're pretty valuable, and they have more opportunities. &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Middle Adopters.&lt;/strong&gt; These people jump on new technology later, usually when they finish their current projects and start on new projects. Of course, since projects frequently run over schedule, and since new tools sometimes -- &lt;em&gt;sometimes!&lt;/em&gt; -- can make help you to meet a schedule, these people may be too cautious. (In fact, I would argue that they're &lt;em&gt;usually&lt;/em&gt; too cautious; but that's a very long discussion, and I'm tired.) Middle adopters are near the bottom of the U, but probably still above it. &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Late Adopters.&lt;/strong&gt; These people think they're being safe by waiting until a technology is "proven". What they're really doing, more often than not, is being too cheap or too busy to learn anything new. These are the people Coding Geekette wonders about. They willingly give up a competitive edge to all the Early and Middle adopters who aren't so short-sighted. This is a false economy. And it makes it hard to attract and retain good people like Coding Geekette, who thrive on constant learning. Plus the U-bottom rates these companies pay won't catch the attention of anyone who can work higher up the U. &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Forced Adopters.&lt;/strong&gt; These people cling to old technology until it's no longer supported. Then, kicking and screaming, they upgrade. The people who work at these companies may cling to their old skills long enough to reach Paleo, or they may slide back to the U-bottom. If they're smart, they'll grab the opportunity to move to Leading Edge. It's often easier to just skip all the intermediate generations of technology and go straight to the new stuff; but that takes a willingness to change that's rare in Forced Adopters. &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Now you might look at Figure 2 and think, "Eh, Middle Adoption's not that bad. The pay is decent, and you don't have to deal with all the Version 1 bugs. That's what I'll do." And that can work (though McConnell describes some real opportunity costs you can lose if the Early Adopters pick a really good technology that gives them an edge over you). But you have to pick your next sentence carefully. Is it... &lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;"So I'll learn this stuff that's been out for a while, and then just keep using it until it's phased out."?&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Or... &lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;"So I'll learn this stuff that's been out for a while, and then next year I'll learn the stuff that's new this year, and then the following year I'll learn the stuff that's Bleeding Edge right now, and..."?&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;If you're Coding Geekette (I hope she doesn't mind me using her as an example over and over again, but I thought her post proved that she has the right attitude), you'll give the second answer, because you love to learn this stuff. (Although I suspect she's probably more of an Early Adopter, from her post). But if you're in this field for a job not a passion, you may be tempted to give the first answer. &lt;/p&gt;
&lt;p&gt;Don't. &lt;/p&gt;
&lt;p&gt;If you have kids to put through school, or you have a mortgage to pay, or you just want to buy a nice fishing boat and spend summers on the lake, give the second answer. &lt;/p&gt;
&lt;p&gt;Because remember: the whole U-Shaped Curve isn't static: it keeps sliding to the right, so static skills keep sliding to the left. Your skills that are new today are common next year, and old the year after that. Unless your career plan is to Go Paleo (live through the curve bottom and ride out the trailing edge), sooner or later you'll find yourself in Forced Adoption. That's a hard spot to ever escape, and it's not a spot with high financial reward. &lt;/p&gt;
&lt;p&gt;In fact, becoming a Late or Forced Adopter can lead to financial or career risk, because pay rates aren't static, either. Unless your company's fortunes turn really bad, most employees can count on &lt;em&gt;some&lt;/em&gt; sort of pay increase over time, even if only a cost of living adjustment. So at the same time your static skills are sliding &lt;em&gt;down&lt;/em&gt; the U, your pay is &lt;em&gt;increasing&lt;/em&gt;: &lt;/p&gt;
&lt;p&gt;&lt;a href="http://5rhwsa.blu.livefilestore.com/y1pOHdSQYH8HM3N-joniCRsFlfXqReP-GTCx0uxyix07gWmajt4y1G1Z402asQAwclnzGUpaR1sS9TXLuIowtv37g?PARTNER=WRITER"&gt;&lt;img height="448" alt="U-Shaped 5" width="614" border="0" src="http://5rhwsa.blu.livefilestore.com/y1p5VqslLhyWAUieHbvge7Ay6nENGCYszx4p9P4HK9FiSjVgshLGQrU_KAvcTa-swGspOObB_aj9ZvY10wTJnqjzA?PARTNER=WRITER" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Now at first glance, that looks attractive: "You mean I can beat the curve simply by holding my ground?" But that's a trap. At some point, your pay so far exceeds your worth on the curve that no one but your current employer would conceivably pay that much for your skills. In the mean time, if you're a typical person, your cost of living has increased due to many factors: inflation, growing family, kids in college, etc. So that means your only choice for work is your current employer. Is that bad? Not at all, for some people; but if you want options in your career, static skills are &lt;em&gt;not&lt;/em&gt; the way to get them. And you also risk becoming too expensive for your employer: you can be replaced by someone with the same skills but a much lower price tag. (&lt;strong&gt;Note:&lt;/strong&gt; This simplistic analysis ignores your accumulated knowledge of the company, its business, and its customers. The U-Shaped Curve is &lt;strong&gt;not&lt;/strong&gt; the only measure of your value to the company, and it's short-sighted for employers to think it is.) &lt;/p&gt;
&lt;p&gt;But suppose you love your current employer and wouldn't ever want to go elsewhere. In that case, you &lt;em&gt;still&lt;/em&gt; should keep moving to keep your skills up to date (wherever you pick on the U). After all, if you like the job, don't you have loyalty to them? Don't you want them to succeed? At a minimum, don't you want them to stay in business so you can keep enjoying the cushy job? Well, if your skills are static and your pay isn't, then your employer is effectively losing value. Don't you want to maintain or even grow their value in order to protect your job? Now one way to grow their value is through your expanding expertise in their business and customers; but another is to keep growing your skills. &lt;/p&gt;
&lt;p&gt;So I think that if you're in software development, you're in the learning business or the falling-behind business. This may not appeal to you, and I'm sorry, but that's the way it is. Some people don't invest themselves in their work: they may work competently and professionally, but work is simply what they do to support their lives and lifestyles. But some people like to find a task, master that task, and keep improving until they're the best they can be at that task. They take pride and pleasure in knowing their job and doing it well. And finally, other people like to keep finding and tackling new challenges. They take pride and pleasure in new conquests and new things they know (and may quickly get bored with the old challenges). If you're not in the last group -- or you can't at least act like you are -- then software development may be the wrong profession for you. &lt;/p&gt;
&lt;p&gt;So my advice to those who want to excel as developers: &lt;em&gt;Run! Run like the wind!&lt;/em&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=128520"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=128520" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/UlteriorMotiveLounge/aggbug/128520.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Martin L. Shoemaker</dc:creator>
            <guid>http://geekswithblogs.net/UlteriorMotiveLounge/archive/2009/01/09/the-u-shaped-curve-a-few-more-reasons-why-coding-geekette.aspx</guid>
            <pubDate>Fri, 09 Jan 2009 19:18:29 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/UlteriorMotiveLounge/comments/128520.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/UlteriorMotiveLounge/archive/2009/01/09/the-u-shaped-curve-a-few-more-reasons-why-coding-geekette.aspx#feedback</comments>
            <slash:comments>5</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/UlteriorMotiveLounge/comments/commentRss/128520.aspx</wfw:commentRss>
        </item>
        <item>
            <title>And somehow...</title>
            <link>http://geekswithblogs.net/UlteriorMotiveLounge/archive/2008/11/15/and-somehow.aspx</link>
            <description>&lt;div class="bvMsg" id="msgcns!B4665B67C2981533!251"&gt;
&lt;div&gt;...I managed to get through the entire &lt;a target="_blank" href="http://www.agilesummercamp.com/"&gt;Agile Summer Camp&lt;/a&gt; without drawing a single UML diagram. I must be coming down with something...&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=127069"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=127069" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/UlteriorMotiveLounge/aggbug/127069.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Martin L. Shoemaker</dc:creator>
            <guid>http://geekswithblogs.net/UlteriorMotiveLounge/archive/2008/11/15/and-somehow.aspx</guid>
            <pubDate>Sat, 15 Nov 2008 21:39:39 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/UlteriorMotiveLounge/comments/127069.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/UlteriorMotiveLounge/archive/2008/11/15/and-somehow.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/UlteriorMotiveLounge/comments/commentRss/127069.aspx</wfw:commentRss>
        </item>
        <item>
            <title>What you missed at Agile Summer Camp 2008...</title>
            <link>http://geekswithblogs.net/UlteriorMotiveLounge/archive/2008/11/15/what-you-missed-at-agile-summer-camp-2008.aspx</link>
            <description>&lt;div class="bvEntry" id="entrycns!B4665B67C2981533!249" bv:cns="cns!B4665B67C2981533!249" bv:ca="true" bv:cat="Development Community"&gt;
&lt;div class="bvMsg" id="msgcns!B4665B67C2981533!249"&gt;
&lt;p&gt;(Reposted from &lt;a target="_blank" href="http://www.agilesummercamp.com/wiki/proposedTopics.ashx"&gt;Agile Summer Camp&lt;/a&gt;. The team will edit and improve that version, filling in the gaps in my memory and understanding. This is my rough draft.) &lt;/p&gt;
&lt;p&gt;Organized by Chris Woodruff with the able assistance of Josh Holmes and Michael Eaton, &lt;a target="_blank" href="http://www.agilesummercamp.com/"&gt;Agile Summer Camp 2008&lt;/a&gt; was a fantastic success. This is an Agile Summer Camp Diary, documenting bits and pieces of a fun, rich, informative weekend with a crowd of unwashed geeks. No text page (nor even &lt;a href="http://twitter.com/sadukie"&gt;sadukie's&lt;/a&gt; &lt;a href="http://www.flickr.com/photos/sadukie/tags/agilesummercamp"&gt;great pictures&lt;/a&gt;) can capture the full experience of what you missed. You had to be there. Agile is all about the conversation. &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Style Note:&lt;/strong&gt; A common principle in many Agile processes is collective responsibility and collective ownership of the code and the message. That leads to a team that collectively commits to their results. In keeping with that principle, this diary emphasizes what &lt;strong&gt;we&lt;/strong&gt; asked and discussed, more than what individuals contributed. Individual comments will be minimal, and "our" comments will dominate. Partly that's because my flawed memory can't always put a name to each line in my notes; but mostly it's because this was &lt;em&gt;our&lt;/em&gt; conversation, not individuals dictating to listeners. There were actually very few points where we disagreed, and everyone learned from everyone. Sometimes this may result in statements written in an annoying passive voice. Sorry. &lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;a href="http://theumlguy.spaces.live.com/mmm2008-07-24_12.50/#Introduction"&gt;Introduction&lt;/a&gt; &lt;/li&gt;
    &lt;li&gt;&lt;a href="http://theumlguy.spaces.live.com/mmm2008-07-24_12.50/#Arrival"&gt;Arrival&lt;/a&gt; &lt;/li&gt;
    &lt;li&gt;&lt;a href="http://theumlguy.spaces.live.com/mmm2008-07-24_12.50/#OpenDay"&gt;Open Day&lt;/a&gt; &lt;/li&gt;
    &lt;li&gt;&lt;a href="http://theumlguy.spaces.live.com/mmm2008-07-24_12.50/#ManyPartings"&gt;Many Partings&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Introduction&lt;/h3&gt;
&lt;p&gt;Matt Werstler has the list of us who actually made it to the Camp. The &lt;a href="http://www.agilesummercamp.com/whosComing.ashx"&gt;Who's Coming&lt;/a&gt; list covers most of us, though some couldn't make it and some never got the chance to sign up but joined us anyway: &lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Josh Holmes &lt;/li&gt;
    &lt;li&gt;Chris Woodruff &lt;/li&gt;
    &lt;li&gt;Michael Eaton &lt;/li&gt;
    &lt;li&gt;Michael Letterle &lt;/li&gt;
    &lt;li&gt;Corey Haines &lt;/li&gt;
    &lt;li&gt;Sarah Dutkiewicz &lt;/li&gt;
    &lt;li&gt;John Hopkins &lt;/li&gt;
    &lt;li&gt;Martin L. Shoemaker &lt;/li&gt;
    &lt;li&gt;Gayle Craig &lt;/li&gt;
    &lt;li&gt;James Bender &lt;/li&gt;
    &lt;li&gt;Brandon Zylstra &lt;/li&gt;
    &lt;li&gt;Brandon Joyce &lt;/li&gt;
    &lt;li&gt;Matthew Werstler &lt;/li&gt;
    &lt;li&gt;Aaron Worsham &lt;/li&gt;
    &lt;li&gt;Duane Collicott &lt;/li&gt;
    &lt;li&gt;Steve Andrews&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Lee signed up at the last minute, but I never caught her full name. She's a Project Manager from Proquest, and made an awesome contribution. We needed someone with a PM perspective. Dianne Marsh joined us briefly, with a little one in tow. Tim O'Connell and Dave Giard also joined us for part of the day. &lt;/p&gt;
&lt;h3&gt;&lt;a&gt;&lt;/a&gt;Friday, Sept. 5: Arrival&lt;/h3&gt;
With people arriving at all times through the night and most weary from the road, we chose not to try to organize any formal talks on Friday night. Numerous informal Agile discussions broke out, along with discussions on other topics, lots of good food, fire, socializing, drinking, music, and a great time.&lt;br /&gt;
&lt;h3&gt;Saturday, Sept. 7: Open Day&lt;/h3&gt;
&lt;p&gt;Agile Summer Camp was &lt;a href="http://en.wikipedia.org/wiki/Open_Space_Technology"&gt;an Open Spaces event&lt;/a&gt;. As Josh explained, that meant impromptu but organized talks on topics selected by the attendees, as well as a small set of rules for keeping the talks relevant. Among these rules are: &lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Whoever attends are the right people. The attendees are the right people to discuss what interests the attendees. &lt;/li&gt;
    &lt;li&gt;Whatever is discussed is the right discussion. &lt;/li&gt;
    &lt;li&gt;The Law of Two Feet: if you're not interested in a topic, leave that area and find an interesting discussion. This is your time, and you're not obligated to waste it. You &lt;em&gt;are&lt;/em&gt; obligated not to start a side topic in the same space, disrupting those who &lt;em&gt;are&lt;/em&gt; interested.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;So we nominated topics, voted, and began our discussions. The topics we selected were: &lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;a href="http://theumlguy.spaces.live.com/mmm2008-07-24_12.50/#Agile101"&gt;Agile 101&lt;/a&gt; &lt;/li&gt;
    &lt;li&gt;&lt;a href="http://theumlguy.spaces.live.com/mmm2008-07-24_12.50/#OneManAgile"&gt;One-Man Agile Development&lt;/a&gt; &lt;/li&gt;
    &lt;li&gt;&lt;a href="http://theumlguy.spaces.live.com/mmm2008-07-24_12.50/#Complexity"&gt;Complexity in Agile Projects&lt;/a&gt; &lt;/li&gt;
    &lt;li&gt;&lt;a href="http://theumlguy.spaces.live.com/mmm2008-07-24_12.50/#SellingAgile"&gt;Selling Agile to Clients and MAnagers&lt;/a&gt; &lt;/li&gt;
    &lt;li&gt;&lt;a href="http://theumlguy.spaces.live.com/mmm2008-07-24_12.50/#PlanningWithDeadlines"&gt;Planning with Deadlines&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;And then we ended with a &lt;a href="http://theumlguy.spaces.live.com/mmm2008-07-24_12.50/#WrapUp"&gt;Closing Circle&lt;/a&gt;. &lt;/p&gt;
&lt;h4&gt;Agile 101&lt;/h4&gt;
&lt;p&gt;Given the wide range of Agile experience at the camp, it was good to start with an introduction to what Agile Development is (and isn't). We discussed the origins of Agile: how projects run according to the traditional &lt;a href="http://en.wikipedia.org/wiki/Waterfall_process"&gt;Waterfall model&lt;/a&gt; had a high failure rate often related to the implementation of Waterfall itself; and so there was a push for more agile processes which would better fit for how software development really happens. At the same time, we emphasized how the idea that Agile "competes" with Waterfall can be misleading, and often leads to religious wars rather than working code. Agile is about a fix for chaos, and in fact can have a lot in common with Waterfall. &lt;/p&gt;
&lt;p&gt;So if Agile isn't a competitor to Waterfall, what is it? It starts with a philosophy, as captured in &lt;a href="http://agilemanifesto.org/"&gt;the Agile Manifesto&lt;/a&gt;. We summarized the Manifesto at the Camp; but for copyright reasons, we include it in full here:&lt;br /&gt;
&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;_ &lt;/p&gt;
&lt;h5&gt;Manifesto for Agile Software Development&lt;/h5&gt;
&lt;p&gt;We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: &lt;br /&gt;
&lt;strong&gt;Individuals and interactions&lt;/strong&gt; over processes and tools &lt;br /&gt;
&lt;strong&gt;Working software&lt;/strong&gt; over comprehensive documentation &lt;br /&gt;
&lt;strong&gt;Customer collaboration&lt;/strong&gt; over contract negotiation &lt;br /&gt;
&lt;strong&gt;Responding to change&lt;/strong&gt; over following a plan &lt;br /&gt;
That is, while there is value in the items on the right, we value the items on the left more. &lt;br /&gt;
Kent Beck - Mike Beedle - Arie van Bennekum - Alistair Cockburn - Ward Cunningham - Martin Fowler - James Grenning - Jim Highsmith - Andrew Hunt - Ron Jeffries - Jon Kern - Brian Marick - Robert C. Martin - Steve Mellor - Ken Schwaber - Jeff Sutherland - Dave Thomas&lt;br /&gt;
© 2001, the above authors&lt;br /&gt;
this declaration may be freely copied in any form, but only in its entirety through this notice. &lt;br /&gt;
&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;_ &lt;/p&gt;
&lt;p&gt;We discussed the importance of "over" in the Manifesto. For instance, "working software over documentation" doesn't say that documentation is bad; but it recognizes that working software can be &lt;em&gt;the best&lt;/em&gt; documentation, because it has concrete meaning to users. &lt;/p&gt;
&lt;p&gt;We returned to the idea that Agile is an alternative to Waterfall, and how some Agile proponents will make bold claims like "Agile never works." Given that there are plenty of case studies of Waterfall projects that have worked, that approach divides the community and can give Agile a bad name. Agile simply shifts our focus to processes that emphasize the importance of people and the acceptance of change. An Agile process should be regularly reevaluated and updated to use more of what works and less of what doesn't. "Waterfall never works" is the sort of statement that arises from an emotional attachment, not a rational evaluation. Because developers are people, we appreciate developers who commit to the effort; but there's a line between having a stake in the effort and having an emotional attachment. The emotional attachment can blind us, emphasizing "our" process over our goal of processes that work. There's no one-size-fits-all process. &lt;/p&gt;
&lt;p&gt;At the same time, most of us wouldn't have been at Agile Summer Camp - company and great weather notwithstanding - if we didn't see value in Agile Processes, value that we haven't always found in other processes. As Corey said, "Agile made it so I could stop lying." He didn't have faith in most of the non-Agile practices he had followed in his jobs, but the jobs required him to treat those processes as correct and predictive. With Agile practices, he believes; and the practices (if followed) won't let him make misleading statements, because those run counter to the processes themselves. &lt;/p&gt;
&lt;p&gt;Next we discussed two examples of Agile processes, as we knew them from practicing them:&lt;br /&gt;
&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;_ &lt;/p&gt;
&lt;h5&gt;Extreme Programming (XP)&lt;/h5&gt;
&lt;p&gt;This process includes (at least) the following elements: &lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Short iterations, usually 2 weeks. &lt;/li&gt;
    &lt;li&gt;Requirements defined as user stories, short snippets of work that a user needs. Stories are commonly written on index cards, encouraging the team to keep them brief. Emphasize "naked stories": small, simple stories, without implementation details. &lt;/li&gt;
    &lt;li&gt;Planning meetings where the stories are matched to a timeline based on estimated complexity. The emphasis is &lt;em&gt;not&lt;/em&gt; on "What do we want to do by this date?", but on "Can we do this in this time frame?" or "What can we do in this time frame?" &lt;/li&gt;
    &lt;li&gt;Prior to the planning meeting, a complexity meeting, where the team "scores" each story for complexity. One approach is to assign points to each story - say 1, 3, or 5 - and write those on the cards. &lt;/li&gt;
    &lt;li&gt;In planning, insist that customers understand they can own two of the Three Pillars (a.k.a &lt;a href="http://www.ambysoft.com/essays/brokenTriangle.html"&gt;Iron Triangle&lt;/a&gt;): Time, Money, and Features (sometimes also referred to as Quality). If the client demands control of all three, Agile processes will fail. So will non-Agile processes. So will anything you can try. &lt;/li&gt;
    &lt;li&gt;Pair programming. &lt;/li&gt;
    &lt;li&gt;Test Driven Development. &lt;/li&gt;
    &lt;li&gt;Consistency in the process. Your goal is velocity: a measurable (and, you hope, increasing) rate of feature delivery. &lt;/li&gt;
    &lt;li&gt;A Daily Stand-Up meeting to identify what each person is doing and what's blocking them from doing it. The Daily Stand-Up is supposed to be very brief. (Hence the Stand-Up aspect: no one wants to stand for a long meeting.) Explain just what's going to happen, and what may be a problem. Take problem-solving off-line. &lt;/li&gt;
    &lt;li&gt;Continuous Integration. The entire project is built and tested from checked-in source frequently (preferably daily or even more frequently). Any build problems are found and solved as quickly as possible. &lt;/li&gt;
    &lt;li&gt;On-site client. Because XP emphasizes constant communication so that problems are found and fixed early, XP requires a knowledgeable customer representative to work with the team all day, every day. It's often hard to get a client to commit to this, but it has significant impact on the success of the project.&lt;/li&gt;
&lt;/ul&gt;
&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;_&lt;br /&gt;
&lt;h5&gt;Scrum&lt;/h5&gt;
&lt;p&gt;This process shares many practices with XP (and vice versa), especially short iterations, the Daily Stand-Up, and user stories. Where XP is more developer focused with some emphasis on project management, Scrum is the reverse: largely about the role of management in enabling a team to solve problems. We spent some time discussing &lt;a href="http://danube.com/scrumworks"&gt;ScrumWorks&lt;/a&gt;, a particular Scrum tool that Lee uses in her work; but in keeping with the Agile value of people over tools, we emphasized Scrum as a whole, not just as one tool. &lt;/p&gt;
&lt;p&gt;While Scrum defines many different roles in the process, we looked specifically at two roles: &lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Scrum-Master. This is an observer who doesn't participate directly in the process, but who rather measures progress and looks for problems and ways to improve. &lt;/li&gt;
    &lt;li&gt;Coach. This is an experienced Scrum practitioner who helps team members to learn how to use Scrum better.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;&lt;u&gt;_&lt;/u&gt;_ &lt;/p&gt;
&lt;p&gt;We finished with further discussion of estimating in Agile projects. &lt;/p&gt;
&lt;h4&gt;&lt;a&gt;&lt;/a&gt;One-Man Agile Development&lt;/h4&gt;
&lt;p&gt;Our concern in this discussion was simple: since so much of Agile is about communication within teams, how much of it applies to a one-man (or one-woman) development shop? Of course, Agile also involves customer communications. Those aspects apply no matter what your team size. But a related concern is Agile in a non-collocated situation: how do you manage meetings if you work out of your home office, not on the client's site? We discussed tools and practices for these, including "virtual" Stand-Ups with clients. Stand-Up meetings serve two goals: to provide visible status for the project, and to resolve roadblocks. A one-man team will have to resolve most roadblocks for himself, so Stand-Ups don't help there; but they still help to let a customer know your status. Customer Stand-Ups will perhaps be less frequent than Daily Stand-Ups, but shouldn't be ignored. &lt;/p&gt;
&lt;p&gt;We also discussed how we can work with customers remotely to identify user stories, and use those to reduce complexity. Michael said he uses online bug-tracking software (modified a bit) to let his users create and file stories online; and then he reviews the stories with them to ensure he understands them correctly. &lt;/p&gt;
&lt;p&gt;We diverged a bit from "Can this be done, and how?" to discuss the trust relationship we need with a client for this to work. They have to trust that we're working in an efficient and productive fashion. We have to trust that they will fulfill their responsibilities in defining requirements and priorities. If this trust is absent, it can doom a project, no matter the size &lt;em&gt;or&lt;/em&gt; the process. &lt;/p&gt;
&lt;p&gt;We also discussed how - IP constraints permitting - one-man shops might team for brief bursts of paired coding or mutual Stand-Up meetings to help each other identify problems we might help each other with. Josh is investigating the possibility of a "Community Stand-Up" conference call. &lt;/p&gt;
&lt;h4&gt;&lt;a&gt;&lt;/a&gt;Complexity in Agile Projects&lt;/h4&gt;
&lt;p&gt;This discussion revolved around a complex and sometimes sensitive subject: what is Agile, anyway? Even though we were mostly in agreement with our Agile 101 definitions, some in the development industry can appear to think Agile means using specific languages and tools and processes. This impression is usually mistaken, due to reasons &lt;a href="http://www.amazon.com/Agile-Software-Development/dp/0201699699"&gt;Cockburn&lt;/a&gt; explains in his discussion of the Three Levels of Listening: listeners who are new to a topic can hear black-and-white distinctions when experts discuss shades of grey. But the mistaken impressions can lead those new listeners into black-and-white habits that may lead them to think Agile has failed when they really haven't been Agile at all. (Some in the industry completely miss the point, thinking Agile just means, "Start writing code right away, and lots, and fast, with no time wasted on thinking!" We discussed that in our next session.) &lt;/p&gt;
&lt;p&gt;And as one example of a statement that can mislead new listeners, some Agile proponents will insist at the start of a project - even before they know requirements - that they'll &lt;em&gt;need&lt;/em&gt; certain tools and frameworks, regardless of the complexity those might add. When others ask how they know they'll need those tools, their answer is, "My experience says we always do." To a new listener, that can sound awfully absolute. We saw some irony in that rationale, because it directly contradicts the often-stated Agile mantra, &lt;a href="http://en.wikipedia.org/wiki/You_Ain't_Gonna_Need_It"&gt;YAGNI&lt;/a&gt;: You Ain't Gonna Need It. "Because I said so" or "I know best" thinking is &lt;em&gt;precisely&lt;/em&gt; one of the habits that Agile was designed to counter. Until you see the tool need arise from the user requirements, YAGNI. &lt;/p&gt;
&lt;p&gt;At the same time, we recognize the grey that the new listener might miss, and we understand the speaker's true meaning. There are a lot of reasons why you may lean toward a particular tool or framework. You may have strong intuition that says you'll need it. Or it may be a tool you know well and can comfortably work with quickly and efficiently. There's business value in familiarity if familiarity leads to speed or quality. Those might be reasons for exploring user stories and looking for the reasons you need the tools. &lt;/p&gt;
&lt;p&gt;But the emphasis should be on business value, not "I just know". We discussed a Steve McConnell book where he described how each team member brings to the project a set of personal values for what constitutes "best" coding practices. Some may prefer performance, some brevity, some familiarity, some clarity, some maintainability, and more. McConnell says that it's important to bring these values to the table at the very start of a project, discuss them, and reach agreement on what are the best values &lt;em&gt;for this project&lt;/em&gt;. If the deadline is very close, then maintainability and clarity and reuse may be less important than speed and familiarity. If the deadline is distant but cost is a concern, emphasizing clarity and maintainability can keep total costs lower. Each team member has to agree with the values for this project, even if those don't align with his or her personal values. &lt;/p&gt;
&lt;p&gt;When people advocate for a given tool, that's usually because it strongly supports their development values; but again, those values may not fit the needs of the project. That contradicts the Manifesto. When new listeners hear something is "the one true answer", that isn't Agile; it's the sort of proscribed decision-making that Agile is supposed to solve. &lt;/p&gt;
&lt;p&gt;Of course, just because new listeners might misinterpret is no reason to deprecate the experience of people who know and use good tools. The experts' experience means there's a strong chance that their initial instincts are correct. But there's a line between "probably" and "I just know," a line that new listeners might miss. We should prepare to use the best tools we know, but not pre-decide that we &lt;em&gt;will&lt;/em&gt; need those tools. &lt;/p&gt;
&lt;p&gt;We also discussed how important this issue is to the community as a whole. Do we have a responsibility to say "Yes, but..." in community settings when that may derail a discussion of good technologies? Again, Cockburn points out how that sort of "Yes, but..." discussion can be just as damaging to a new listener, leaving them with so many paths that there's no clear path at all. Until they gain their own experience, too many choices can be worse than no choice at all. Ultimately, we decided that people who are strong advocates of good tools have strong reasons for being advocates, and the community needs to hear what those are. Our responsibility to the community is not to disrupt that message with "Yes, but...", because the proponents are adding value to the community by educating people on the power of those tools. Rather, our responsibility is to do the exact same thing: be strong proponents of Agile and its emphasis on alternative approaches, with strong reasons why we see benefit. Don't muddy the message, add to it. And avoid any black-and-white, right-and-wrong discussions, because Agile tells us there's no right and wrong without context. Let the community hear all positions and decide for themselves. That's fundamental to Agile. &lt;/p&gt;
&lt;h4&gt;&lt;a&gt;&lt;/a&gt;Selling Agile to Clients and Managers&lt;/h4&gt;
&lt;p&gt;This session started as How to Sell Agile to Clients, and quickly expanded to include managers. We found a wide range of experience in whether to sell Agile from top down or bottom up. As with all things Agile, either can work, and either can fail; it all depends on context. We also expanded to a related concern: how to sell what Agile &lt;em&gt;really&lt;/em&gt; is, when people expect it means, "Don't stop to think! Just codecodeCODE!!!" &lt;/p&gt;
&lt;p&gt;And that led to a major point of misconception: people think Agile Development means more productivity. It really doesn't (yet at the same time, it does). Agile Development means more &lt;em&gt;quality&lt;/em&gt; through better requirements definition and better quality control, along with a sustainable and predictable and visible pace of development. Rework due to quality failures and requirements failures causes massive delays in software development; so better quality results in shorter schedules and better productivity over the true life of the project. And the visible pace of development means managers and customers will be less surprised by what they get and when they get it.&lt;br /&gt;
So it's important in selling Agile to emphasize what they &lt;em&gt;won't&lt;/em&gt; get, and what they &lt;em&gt;will&lt;/em&gt; get instead. They &lt;em&gt;won't&lt;/em&gt; get lots of code quickly; but they &lt;em&gt;will&lt;/em&gt; get &lt;em&gt;some&lt;/em&gt; code sooner than they would with a pure Waterfall approach, and more high-quality code on a regular basis. They &lt;em&gt;won't&lt;/em&gt; get everything they ask for on a predicted date at a predicted cost; but they &lt;em&gt;will&lt;/em&gt; get a maximal amount of working, high-quality code on a fixed date; or they &lt;em&gt;will&lt;/em&gt; get everything they ask for in the shortest reasonable schedule; or they &lt;em&gt;will&lt;/em&gt; get the largest volume of high-quality code on a fixed date that their money will buy. &lt;/p&gt;
&lt;p&gt;Another part of selling reluctant stakeholders is to emphasize again that Agile is &lt;em&gt;not&lt;/em&gt; a "competitor" to Waterfall. In fact, Agile is very close to Waterfall, and some Agile processes are virtually identical to Waterfall. What changes primarily are the cycle times. Instead of doing a single long Waterfall cycle or even multiple long cycles, you do a much greater number of much shorter cycles. The software development process can be opqaue even to the developers on the team; and the opacity is far greater for managers and customers (as Spolsky discussed in &lt;a href="http://www.joelonsoftware.com/articles/fog0000000356.html"&gt;The Iceberg Secret, Revealed&lt;/a&gt;). Short cycles increase visibility and thus give managers and customers better feedback and better control. The Agile approach is all about finding and improving requirements as early as possible, and finding defects as soon as possible, all of which help us to mitigate risk. &lt;/p&gt;
&lt;p&gt;We emphasized that it's important to realize that the Agile message - including the message we use to sell Agile - must vary with the audience. Just as no one process fits all, no one sales strategy fits all. We also need to recognize that any process will likely have Champions and Enemies. Agile will appeal to Champions because they see the value in increased visibility and communication, while Enemies may see something unfamiliar or risky. Or Enemies may be experienced managers or team members who have lived through numerous "process improvement" efforts that never really improved any processes (and may have made things worse), leaving them justifiably cynical. &lt;/p&gt;
&lt;p&gt;But in either case - even in the case of a Champion eager to say "yes" - your sales strategy should include educating them on the process. With Champions, you need to be sure they know they're getting visibility and feedback, &lt;em&gt;not&lt;/em&gt; "lots of code really fast". With Enemies, you have to work harder, providing more data and explaining the risk mitigation benefits and showing industry data on the causes of project failures. And for both - and for the team as a whole - you need to educate them on their responsibilities in the process, and the critical importance of meeting those responsibilities. The leading cause of process failure is failure to follow the process. Cynical Enemies have reasons to be cynical, and you should acknowledge those reasons. You should encourage them to point out process failures - actual and potential - because Agile processes are supposed to constantly improve. &lt;/p&gt;
&lt;p&gt;We discussed what to do when management or customers or team members just won't agree to Agile practices. One answer is to Go Guerilla or &lt;a href="http://en.wikipedia.org/wiki/Stone_soup"&gt;Stone Soup&lt;/a&gt;: bring in Agile practices anyway, a little at a time, and gently argue how they actually satisfy the requirements of your current processes. This isn't guaranteed to work by any means, but can often be a way to open people's minds to the possibilities of Agile Processes. &lt;/p&gt;
&lt;p&gt;We emphasized the need to get management and customer involvement in some parts of the Agile Process. We also discussed how critical it is to get them to involve developers more. In particular, we discussed how requirements and estimates formed without strong developer input will usually fail. &lt;/p&gt;
&lt;p&gt;We discussed the two biggest risks to Agile processes &lt;em&gt;after&lt;/em&gt; everyone is sold on them: contractual obligations that no process can possibly meet, and scope creep. Contractual obligations, we agreed, are usually bad (there's a surprise) but usually unavoidable. We discussed these further during our final session on Planning with Deadlines. As for scope creep, we discussed how in Agile, there really is no such thing. The scope is whatever the client says is most important for the next interval, constrained by how much the team can actually accomplish in that time frame. In a side conversation, Corey described a project where his management came to him with a "crisis": system updates outside of their control were crashing the whole system. This had to be solved ASAP! On a more rigid project, they knew, this would cause the programmers to start complaining about feature creep, unexpected features, etc. But because Corey's team was Agile, they didn't complain at all. They said, "The next iteration starts in two days, and we're planning it now. Make this your number 1 priority, while we estimate the size." It ended up a size that fit within one iteration, and they released it without a hiccup, &lt;em&gt;and&lt;/em&gt; without deviating from their process. Their process was designed, as &lt;a href="http://www.amazon.com/Extreme-Programming-Explained-Embrace-Change/dp/0201616416"&gt;Beck&lt;/a&gt; wrote, to Embrace Change, not control it. &lt;/p&gt;
&lt;p&gt;That led again to a discussion of the Three Pillars, which led again to a discussion of how to manage expectations and secure customer involvement. Attendees emphasized that question: "What if customers just won't give us the feedback we need?" Martin gave his own personal answer (while acknowledging not everyone would be comfortable with it): intentionally look stupid. Find an area of confusion, flesh it out in the least likely way that's almost guaranteed to be wrong, and bring that to the customer. When the customer asks how you could be so stupid, &lt;strong&gt;politely&lt;/strong&gt; point out all the times you needed clarification but didn't get it, and how that lack of clarification left you with the wrong answer. And &lt;em&gt;then&lt;/em&gt; pull out and show other possible answers, ones you think are close to correct, and say, "I really need your help to get this right. Please help me." As Josh said, fail early. (That's a common principle in Agile processes as well as other successful processes: make &lt;em&gt;and find&lt;/em&gt; your mistakes early, when it's easier to correct them.) But we agreed: if you're not getting the help you need, &lt;em&gt;don't&lt;/em&gt; pull out a contract and demand they comply. Remember the Agile value of collaboration over contract. As Mike said multiple times (or maybe it was Corey?), when you have to refer to the contract, you've failed. &lt;/p&gt;
&lt;p&gt;We briefly discussed the value of pair programming, along with the &lt;em&gt;perceived&lt;/em&gt; value: managers and accountants may see it as "two programmers doing the job of one", and see it as wasteful. We discussed actual benefits we have experienced with paired programming, and argued that it's two programmers doing the job of two or even three, because code gets tested and reviewed more thoroughly. Pairing also improves communications and spreads cultural knowledge withing the team. Still, we agreed it might be better to split the pair at times, such as having one of the pair write tests while the other writes code to meet those tests. &lt;/p&gt;
&lt;p&gt;We discussed perceived complexity vs. actual complexity. At least, that's what my notes say. I can't remember a single thing about this topic. &lt;/p&gt;
&lt;p&gt;We discussed the danger of a Quiet Client, both in selling Agile practices and in running them. A client &lt;em&gt;may&lt;/em&gt; be quiet because he's just not talkative; but he may be angry, or confused, or tired, or in disagreement, or distracted, and just not willing to speak out. Until he explains to you why he agrees with you, assume that he doesn't. Until then, your job is to probe - gently and politely - for why he's not speaking up. A Quiet Client == Trouble, or usually so.&lt;br /&gt;
We also discussed how selling Agile is easier if you have become a &lt;a href="http://davidmaister.com/books.ta/"&gt;Trusted Advisor&lt;/a&gt; to the client. James (I think it was James?) brought up this theme multiple times over the weekend: if you have a strong trust relationship even outside the bounds of your current work, you'll have better and more productive conversations with your client. The client will let down walls of suspicion and reticence, and really tell you what he needs. Michael described his relationship with a long-standing client, and James held it up as an excellent example of the success that comes from being a Trusted Advisor. &lt;/p&gt;
&lt;p&gt;Finally, we discussed worst-case scenarios. One is not really a worst-case, just pragmatic reality: Agile processes don't work for every project. We need to be aware of that and responsibly evaluate each project. If Agile isn't right for a given project, then the responsible thing to do is to &lt;em&gt;not&lt;/em&gt; sell it, but to sell the best process instead. &lt;/p&gt;
&lt;p&gt;And the other worst case is when Agile &lt;em&gt;is&lt;/em&gt; right, and even the only way likely to succeed in your professional opinion, but the client can't be sold on it. In that case, we argued, walk away. Don't commit yourself to efforts you believe will fail: that's not really a commitment, and false commitment will only doom the project further. Explain your concerns, explain why you just can't commit to a project you don't believe in, and walk away. But then, in keeping with the Trusted Advisor theme, keep up contacts with the client. Don't press for status on the project, and certainly don't point out failures if you know they're happening. The client knows if he's failing or not, and any comment from you will only offend him. Just strive to be a Trusted Advisor. If he asks you to come in and "save" the current effort without changing anything, &lt;em&gt;then&lt;/em&gt; politely explain why the results he has are the outputs of the process he's following, and won't change unless the process changes. And if he agrees to change, point out that time will be lost in the change as well. Don't promise what can't happen. Trusted Advisers don't do that. As Steve said (his recurring theme for the weekend), it's all about Relational Dynamics: how we relate to the customers (and each other) determines our success in understanding and meeting their needs. &lt;/p&gt;
&lt;h4&gt;&lt;a&gt;&lt;/a&gt;Planning with Deadlines&lt;/h4&gt;
&lt;p&gt;I failed to take any notes from this session. Here's hoping someone else can fill in what I missed. &lt;/p&gt;
&lt;h4&gt;&lt;a&gt;&lt;/a&gt;Closing Circle&lt;/h4&gt;
&lt;p&gt;At the end of the day, we reviewed our sessions and the lessons learned. As we did, we kept returning to some core themes: requirements, communications, embracing change, managing expectations, visibility, and complexity. And we said how ultimately success is determined by business value delivered, which depends on requirements communicated. Agile Development is about that, not about particular languages or tools or even practices. We said that in the end, there are only four absolutely mandatory practices in Agile Development: &lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;Listen to the customer. &lt;/li&gt;
    &lt;li&gt;Turn what you heard into a concrete expression of some form. &lt;/li&gt;
    &lt;li&gt;Express what you learned to the customer. &lt;/li&gt;
    &lt;li&gt;Listen again, and repeat.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;It's all about communications. Everything else derives from what gets communicated. &lt;/p&gt;
&lt;h3&gt;&lt;a&gt;&lt;/a&gt;Sunday, Sept. 8: Many Partings&lt;/h3&gt;
&lt;p&gt;Chris had family obligations and had to leave us Saturday night, as did many others. But the diehards among us spent another night in the snore-filled cabin and woke to clean-up under the very diligent supervision of Mike (who also did more than his share of the clean-up work). By 9:30, we were all on the road to our homes, with only one question left unanswered... &lt;/p&gt;
&lt;p&gt;When can we do this again?&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=127068"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=127068" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/UlteriorMotiveLounge/aggbug/127068.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Martin L. Shoemaker</dc:creator>
            <guid>http://geekswithblogs.net/UlteriorMotiveLounge/archive/2008/11/15/what-you-missed-at-agile-summer-camp-2008.aspx</guid>
            <pubDate>Sat, 15 Nov 2008 21:38:06 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/UlteriorMotiveLounge/comments/127068.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/UlteriorMotiveLounge/archive/2008/11/15/what-you-missed-at-agile-summer-camp-2008.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/UlteriorMotiveLounge/comments/commentRss/127068.aspx</wfw:commentRss>
        </item>
    </channel>
</rss>