<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Stefano Ricciardi &#187; Agile</title>
	<atom:link href="http://stefanoricciardi.com/category/agile/feed/" rel="self" type="application/rss+xml" />
	<link>http://stefanoricciardi.com</link>
	<description>On Software Development and Thereabouts</description>
	<lastBuildDate>Tue, 15 Nov 2011 07:57:34 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Interview: Being an Agile Coach</title>
		<link>http://stefanoricciardi.com/2010/11/15/interview-being-an-agile-coach/</link>
		<comments>http://stefanoricciardi.com/2010/11/15/interview-being-an-agile-coach/#comments</comments>
		<pubDate>Mon, 15 Nov 2010 16:40:27 +0000</pubDate>
		<dc:creator>stefanoricciardi</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[interview]]></category>
		<category><![CDATA[xp]]></category>

		<guid isPermaLink="false">http://stefanoricciardi.com/?p=1218</guid>
		<description><![CDATA[&#160; In this blog post I interview Davide Varvello, currently working as XP coach at 7Pixel. I&#8217;ve had the pleasure to work with Davide for a couple of years during the early 2000&#8217;s in Motorola; back then, he first introduced me to the practices of eXtreme Programming and Kent Beck&#8217;s books (ironically enough, at the [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fstefanoricciardi.com%2F2010%2F11%2F15%2Finterview-being-an-agile-coach%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fstefanoricciardi.com%2F2010%2F11%2F15%2Finterview-being-an-agile-coach%2F&amp;style=normal&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>&nbsp;</p>
<p><strong><a href="http://www.flickr.com/photos/9910730@N08/3086702322/" title="leader" class="broken_link"><img align="left" alt="leader" border="0" src="http://farm4.static.flickr.com/3105/3086702322_593fd3f899_m.jpg" style="margin: 0px 0px 5px; display: inline" /></a></strong><em>In this blog post I interview <strong><a href="http://www.twitter.com/Varvello">Davide Varvello</a></strong>, currently working as XP coach at <a href="http://www.7pixel.it/index_ENG.asp">7Pixel</a>. I&rsquo;ve had the pleasure to work with Davide for a couple of years during the early 2000&rsquo;s in Motorola; back then, he first introduced me to the practices of eXtreme Programming and Kent Beck&rsquo;s books (ironically enough, at the time we were attending an internal training to apply CMM processes to our daily job as Motorola software developers &ndash; our center in Turin would have eventually been rated at CMM level 5 years later, long after Davide had left the company).</em></p>
<p><strong>Stefano: Can you tell our readers a bit about yourself?</strong></p>
<p><strong>Davide:</strong> I&rsquo;ve been fond of computers since the 80s, I had a Commodore 64 and I loved playing and programming with my friends even if they were better than me <img src='http://stefanoricciardi.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Next I turned my passion into a work, I&#39;ve been busy with software for about 14 years wearing several hats: programmer, coach, mentor, tester.</p>
<p>The lovely thing about software building is that it&#39;s a creative activity like poetry or painting even if it does not follow the same goal. From an external point of view it&#39;s difficult to understand it, because a sw developer has always been seen like a guy struggling with weird numbers and cryptic algorithms, instead he is like a child with his modeling clay, taking care of it, pressing a bit, removing a bit to generate something new.</p>
<p><strong><strong>Stefano</strong>: How did you first get involved in Agile?</strong></p>
<p><strong><strong>Davide</strong>:</strong> I think Agile is a <em>forma mentis</em>, it&#39;s not only linked to the will you have to improve the way of producing software, but it&#39;s the natural tendency to think how you see your life. I&#39;ve always searched how to work better and I had an &quot;Ah-ha&quot; moment several years ago when I read an article of Bob Martin about changes in software requirements, I believe it was 1999 or 1998, anyway, Martin said requirements change 100% of the times and we, as sw engineer, should address that issue instead of wining. As I was facing a project with al lot of unclear requirements and with many changes, that words had a big impact on me. So I started to improve my technical skills and study more at night after work. At that time there was a lot of hype on XP and it was clear to me XP matched my ideas to build software. Through an ex-colleague of mine I met <a href="http://www.francescocirillo.com/fc.html" class="broken_link">Francesco Cirillo</a> who gave me a lot of spurs on studying something valuable for my work.</p>
<p><strong><strong>Stefano</strong>: What motivated you to become a coach?</strong></p>
<p><strong><strong>Davide</strong>:</strong> Every Xprogrammer is an XP coach; every single development day you, as a programmer, are facing problems about how to implement some features: &quot;is there a simpler way to do that?&quot; &quot;Is there a better test to implement?&quot; &quot;Ouch, that object doesn&#39;t behave in the right way, I have to fix it now.&quot; &quot;Can I understand that deploy script?&quot;. All these questions rise every minute, what I like as a coach is to help the team to find a way to answer those issues.</p>
<p><strong><strong>Stefano</strong>: Can you describe what a typical day of a coach looks like?</strong></p>
<p><strong><strong>Davide</strong>:</strong> It&#39;s like to be an alien on the Earth, you have to see and listen a lot: comments, postures, level of good noise, level of bad noise, flying questions, mechanical typing <img src='http://stefanoricciardi.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  and&#8230; code, of course. I don&#39;t have a private office, my work is in the bullpen and I keep attention to that indicators, than I try to help the team to work together. It&#39;s not easy because people have consolidated habits and dynamics but, all together, we have to move from a local optima to a better one.</p>
<p><strong><strong>Stefano</strong>: What is the single most important factor within an organization to succeed with agile?</strong></p>
<p><strong><strong>Davide</strong>:</strong> That&#39;s a good question. There is a no single answer, but there are four <img src='http://stefanoricciardi.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> &nbsp; simplicity, communication, feedback and courage i.e. the Values. If a company or a slice of it is not ready to sustain those values, probably it will be precluded to the benefits that agile methods can produce.</p>
<p><strong><strong>Stefano</strong>: Have you found any connection between the platform/language a team uses and its success in agile?</strong></p>
<p><strong><strong>Davide</strong>:</strong> Yep. If you are a professional and can embrace the values above, you are in the right direction, but there are technologies or languages that can match your expectations better than others, so they can make your work easier.</p>
<p>Let&#39;s take the value of feedback: you are considering a new language to study, you don&#39;t know anything about it, but there is some buzz on the net, so you give it a chance and start downloading the development environment; then you start with a tutorial, but unfortunately you face some show stoppers: you should configure this or that, you are constrained to compile and/or link whatever, you should validate something or throwing some mandatory exceptions to produce your first piece of new software, clearly that scenario does not work in the direction of a fast feedback.</p>
<p>So, it&#39;s not a secret I like a lot simple languages like Smalltalk.</p>
<p><strong><strong>Stefano</strong>: What final recommendations can you give to team who might want to try or just starting with agile?</strong></p>
<p><strong>Davide</strong><strong>:</strong> The team members (in the whole) should be professional and disciplined, they should study a lot, start small and ask themselves the whys of every step in their working efforts. Organizing your work this way is a useful path towards improvement and it&#39;s fun too <img src='http://stefanoricciardi.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p><em>Photo by </em><a href="http://www.flickr.com/photos/varnent/with/3086702322/" class="broken_link"><em>Varnent</em></a></p>
<p><a href="http://www.dotnetkicks.com/kick/?url=http://stefanoricciardi.com/2010/11/15/interview-being-an-agile-coach/"><img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http://stefanoricciardi.com/2010/11/15/interview-being-an-agile-coach/" border="0" alt="kick it on DotNetKicks.com" /></a></p>
<p><a href="http://dotnetshoutout.com/Interview-Being-an-Agile-Coach-Stefano-Ricciardi" rev="vote-for" class="broken_link"><img alt="Shout it" src="http://dotnetshoutout.com/image.axd?url=http%3A%2F%2Fstefanoricciardi.com%2F2010%2F11%2F15%2Finterview-being-an-agile-coach%2F" style="border:0px" /></a></p>

]]></content:encoded>
			<wfw:commentRss>http://stefanoricciardi.com/2010/11/15/interview-being-an-agile-coach/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Book Review: The Pragmatic Programmer</title>
		<link>http://stefanoricciardi.com/2009/11/09/book-review-the-pragmatic-programmer/</link>
		<comments>http://stefanoricciardi.com/2009/11/09/book-review-the-pragmatic-programmer/#comments</comments>
		<pubDate>Mon, 09 Nov 2009 11:05:26 +0000</pubDate>
		<dc:creator>stefanoricciardi</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Reviews]]></category>
		<category><![CDATA[book]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[review]]></category>
		<category><![CDATA[software craftsmanship]]></category>

		<guid isPermaLink="false">http://stefanoricciardi.wordpress.com/?p=530</guid>
		<description><![CDATA[I recently embarked on a journey to read (or re-read) all the great classic books in the software literature. The Pragmatic Programmer is one of those books which is usually included in the recommended readings for a software developer, and deservedly so. The book, released in 1999, has been so successful that the two authors, [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fstefanoricciardi.com%2F2009%2F11%2F09%2Fbook-review-the-pragmatic-programmer%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fstefanoricciardi.com%2F2009%2F11%2F09%2Fbook-review-the-pragmatic-programmer%2F&amp;style=normal&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<h1><a title="The Pragmatic Programmer" href="http://www.amazon.co.uk/Pragmatic-Programmer-Andrew-Hunt/dp/020161622X/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1256673093&amp;sr=8-1"><img style="display:inline;border-width:0;margin:0 5px 0 0;" title="thepragrmaticprogrammer" src="http://69.175.59.226/~stefano3/blog/wp-content/uploads/2009/10/thepragrmaticprogrammer.jpg" border="0" alt="The Pragmatic Programmer" width="244" height="244" align="left" /></a></h1>
<p>I recently embarked on a journey to read (or re-read) all the great classic books in the software literature.</p>
<p>The <a title="The Pragmatic Programmer" href="http://www.amazon.co.uk/Pragmatic-Programmer-Andrew-Hunt/dp/020161622X/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1256673093&amp;sr=8-1">Pragmatic Programmer</a> is one of those books which is usually included in the recommended readings for a software developer, and deservedly so. The book, released in 1999, has been so successful that the two authors, <a href="http://pragprog.com/about">Andrew Hunt</a> and <a href="http://pragprog.com/about">David Thomas</a>, have since created their own publishing company, the <a href="http://pragprog.com/">Pragmatic Bookshelf</a> (with titles spanning a broad range of programming topics).</p>
<p>This book must really  have been a breakthrough when it hit the bookstores about 10 years ago. 1999 is one year before Kent Beck released his seminal book <a href="http://www.amazon.co.uk/Extreme-Programming-Explained-Embrace-Change/dp/0321278658/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1257536953&amp;sr=8-1"><em>Extreme Programming Explained: Embrace Change</em></a><em> </em>which exposed the agile software process to the masses<strong>.</strong> Both Andrew Hunt and David Thomas originally signed the <a href="http://agilemanifesto.org/">Agile Manifesto</a>, together with Kent Beck himself and a few others, and it shows. But it would be dismissive to describe this as a book on agile since it’s much more.</p>
<p>The book is structured as a series short 46 sections. Each section has challenges and even exercises where appropriate. It touches on <strong>design</strong> concepts such as orthogonality, decoupling, <a href="http://en.wikipedia.org/wiki/DRY">DRY</a> (which it coined), <a href="http://en.wikipedia.org/wiki/Domain_Specific_Languages">Domain Specific Languages</a>, <a href="http://en.wikipedia.org/wiki/Design_By_Contract">Design By Contract</a>, <a href="http://en.wikipedia.org/wiki/Metaprogramming">Metaprogramming</a>, <a href="http://en.wikipedia.org/wiki/Refactoring">Refactoring</a>; it has pages on <strong>process</strong> topics like build automation, “design to test”, test automation, estimation, requirements collection.</p>
<p>But where the book really shines is where it shows you how to “<em>become a better programmer</em>” (today we might say a <em>software</em> <em>craftsman</em>) and to take pride from it.</p>
<p>The <strong>pragmatic programmer</strong> is an early adopter, is inquisitive and realistic, and tries to be &#8220;f<em>amiliar with a broad range of technologies and environments</em>&#8220;.</p>
<p>The pragmatic programmer takes responsibility, values quality but recognizes when the software is “<em>good enough</em>”. The pragmatic programmer is a continuous learner (the “<em>learn at least one new language every year</em>” advice is often quoted), thinks critically about what he reads and hear, and knows how to communicate. The books explains how you can build these qualities.</p>
<p>The sections that I enjoyed the most is when the authors discuss about <em>tools</em>: the pragmatic programmer prefers working with plain text (the book itself it’s been written from XML transformed into TeX), masters a shell (command line) which he/she can program, knows at least one text manipulation language (e.g. Perl) and how to generate code from metadata.</p>
<p>Even though the recent reprints have links to later tools like JUnit, Ant, etc… still a few parts of the book begin to show its age. For example the authors suggest to pick <em>one</em> text editor (e.g. Emacs or VI) and become a power user (not just know the keyboard shortcuts but also how to extend it to suit your needs). There used to be a time when you could spend your whole working day inside Emacs: you could edit and build your programs, open a shell, handle emails and browse newsgroups, edit text documents (with LaTeX for example), even play games. As much as I love Emacs, I believe today it’s virtually impossible to beat the productivity gains you can get with specialized IDEs like Visual Studio or Eclipse, with their intellisense and plug-in ecosystems.</p>
<p>All in all, the Pragmatic Programmer is easily one of the best book on software development I have ever read. It has really inspired me to continue my journey to become a <em>“better programmer”</em>. Thanks to this book, I have now in my action list: learn a scripting language (Ruby?); learn a functional language (F#?); learn how to use a shell in the Windows environment (PowerShell?); read a book on usability; read a book on the human side of software development (“Peopleware&#8221;?). A lot of things. A lot of fun ahead.</p>
<p><!-- Kick it BEGIN --><br />
<a href="http://www.dotnetkicks.com/kick/?url=http%3A%2F%2Fstefanoricciardi.net%2F2009%2F11%2F09%2Fbook-review-th%E2%80%A6tic-programmer%2F"><img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3A%2F%2Fstefanoricciardi.net%2F2009%2F11%2F09%2Fbook-review-th%E2%80%A6tic-programmer%2F" border="0" alt="kick it on DotNetKicks.com" /></a><br />
<!-- Kick it END --></p>
<p><a rev="vote-for" href="http://dotnetshoutout.com/Book-Review-The-Pragmatic-Programmer" class="broken_link"><img src="http://dotnetshoutout.com/image.axd?url=http%3A%2F%2Fstefanoricciardi.net%2F2009%2F11%2F09%2Fbook-review-the-pragmatic-programmer%2F" alt="Shout it" /></a></p>
<p><!-- AddThis Button BEGIN --></p>
<p><a href="http://www.addthis.com/bookmark.php?v=250"><img style="border:0 none;" src="http://s7.addthis.com/static/btn/lg-share-en.gif" alt="Bookmark and Share" width="125" height="16" /></a></p>
<p><!-- AddThis Button END --></p>
<div id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:e6ceeafa-fe5c-4bd6-a48d-325da43e5abc" style="display:inline;float:none;margin:0;padding:0;">Technorati Tags: <a rel="tag" href="http://technorati.com/tags/Programming">Programming</a>, <a rel="tag" href="http://technorati.com/tags/review">Review</a>, <a rel="tag" href="http://technorati.com/tags/ood">OOD</a></div>

]]></content:encoded>
			<wfw:commentRss>http://stefanoricciardi.com/2009/11/09/book-review-the-pragmatic-programmer/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
	</channel>
</rss>

