<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Alexandre Gazola</title>
	<atom:link href="http://alexandregazola.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://alexandregazola.wordpress.com</link>
	<description>Stuff that I like</description>
	<lastBuildDate>Fri, 20 Jan 2012 18:14:33 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='alexandregazola.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Alexandre Gazola</title>
		<link>http://alexandregazola.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://alexandregazola.wordpress.com/osd.xml" title="Alexandre Gazola" />
	<atom:link rel='hub' href='http://alexandregazola.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Natural wisdom from the Bible: Ants</title>
		<link>http://alexandregazola.wordpress.com/2012/01/20/natural-wisdom-from-the-bible-ants/</link>
		<comments>http://alexandregazola.wordpress.com/2012/01/20/natural-wisdom-from-the-bible-ants/#comments</comments>
		<pubDate>Fri, 20 Jan 2012 18:14:26 +0000</pubDate>
		<dc:creator>Alexandre Gazola</dc:creator>
				<category><![CDATA[Christian messages]]></category>

		<guid isPermaLink="false">http://alexandregazola.wordpress.com/?p=458</guid>
		<description><![CDATA[I&#8217;ve been listening to an inspiring 4-part series on natural wisdom by Juan Vereecken and Roberto Bautista. In this post, I&#8217;m going to summarize some of the things that I learned about the wisdom related to ants. If you understand Spanish and &#8230; <a href="http://alexandregazola.wordpress.com/2012/01/20/natural-wisdom-from-the-bible-ants/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexandregazola.wordpress.com&amp;blog=8654692&amp;post=458&amp;subd=alexandregazola&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft" src="http://scienceblogs.com.br/brontossauros/files/2011/08/cataglyphis01.jpg" alt="" /></p>
<p>I&#8217;ve been listening to an inspiring 4-part series on natural wisdom by Juan Vereecken and Roberto Bautista. In this post, I&#8217;m going to summarize some of the things that I learned about the wisdom related to <strong>ants</strong>. If you understand Spanish and want to listen to the messages yourself, they can be downloaded <a href="http://www.podcast.com.es/podcastarchive/ense%C3%B1anzas-juan-vereecken-vida-internacional-141752/pagina-6.html" target="_blank">here</a>.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<blockquote><p>“Four things on earth are small,<br />
yet they are extremely wise:<br />
Ants are creatures of little strength,<br />
yet they store up their food in the summer;<br />
hyraxes are creatures of little power,<br />
yet they make their home in the crags;<br />
locusts have no king,<br />
yet they advance together in ranks;<br />
a lizard can be caught with the hand,<br />
yet it is found in kings’ palaces.&#8221; (Proverbs 30:24-28 &#8211; NIV)</p></blockquote>
<h1>Ants</h1>
<p>Ants are wise because they store up their food in the summer <strong>so they&#8217;ll have enough in the winter</strong>. What is the principle here? <strong>Preparation</strong>. They get ready for the winter that eventually will come, <em>before</em> it comes. By preparing ourselves for the &#8220;winters&#8221; that will surely come along, we&#8217;re going to be secure.</p>
<p>Now, there are things that we know they&#8217;ll come and when they&#8217;ll come, such as starting a new job, getting into the university, having a child (for some couples), etc. Besides, there are things we know they&#8217;ll come but we don&#8217;t know when, such as the loss of a loved one. There are still things that we don&#8217;t even know whether they&#8217;ll come, such as a rough financial situation, a disease, etc.The question is: <strong>what can we do <span style="text-decoration:underline;">before</span> those things happen</strong>? The ants give us the answer: <strong>we ought to prepare ourselves beforehand</strong>. How can we do that? Some of the ways include:</p>
<ul>
<li><strong>Establish firm criteria before things happen</strong> &#8211; Roberto gave as example two criteria he and his wife established in their own life: one is to not start something new in life with debts and the other is when they can&#8217;t seem to come to an agreement over any issue, they&#8217;ll look for a third-party opinion. Other firm criteria he mentions include not marrying a non-christian person, not having sexual intercourse before marriage and on and on.</li>
<li><strong>Have right expectations toward people and toward life</strong> &#8211; this one is huge! What disappoints us is not the people or the situations of life, what disappoints us is our expectations toward them. Many people tell their spouses or their friends: &#8220;You disappointed me!&#8221; In fact, <span style="text-decoration:underline;">they disappointed themselves</span> because of the high expectations they placed upon others. As tough as it may sound, that&#8217;s sheer reality. People get frustrated all the time because they have unreal expectations toward others. What&#8217;s worse, the people we love the more are the people who let us down the more, because they are the ones we expect the most from. Thefore, let&#8217;s learn to have balanced expectations toward people and toward the circumstances of life. This will build up a healthy emotional protection in our lives.</li>
<li><strong>Eat healthy food and exercise yourself regularly</strong> - when you take care of your health by eating appropriately and doing physical exercises, you&#8217;re protecting yourself against health problems.</li>
<li><strong>Save money</strong><strong> &#8211; </strong>it&#8217;s important to have a financial reserve to help you when unexpected events happen. Unforeseen things quit being unforeseen when you protect yourself against them in advance.</li>
<li><strong>Take care of your relationships</strong><strong> &#8211; with God and with people </strong>- there are people who have never bothered to grow their faith, who never spend quality time with God. The time will come when they&#8217;ll need God&#8217;s help and, by then, will find themselves in trouble because they have not taken time to develop a steady relationship with God beforehand. How can we avoid that to happen in our lives? By spending daily time with God, praying and reading the Scriptures. In addition, we should take good care of our relationships with other people. Choose wise friends and invest time on them as well! Invest time on your main relationships, your family and friends. But do that in a systematic way! For example: every Friday night you&#8217;re going to spend with your spouse; every week you&#8217;re going to call your loved ones that live away from you, etc.</li>
</ul>
<p>This simple message, extracted from the life of ants, is full of wisdom. In the next days, take time to think of how you can better prepare yourself in advance against the winters that will eventually come. Don&#8217;t forget that <strong>the best time for one to do that is in the <em>summer</em></strong>, when things are well, because when the winter comes, it might be too late to do something about it.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alexandregazola.wordpress.com/458/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alexandregazola.wordpress.com/458/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alexandregazola.wordpress.com/458/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alexandregazola.wordpress.com/458/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/alexandregazola.wordpress.com/458/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/alexandregazola.wordpress.com/458/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/alexandregazola.wordpress.com/458/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/alexandregazola.wordpress.com/458/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alexandregazola.wordpress.com/458/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alexandregazola.wordpress.com/458/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alexandregazola.wordpress.com/458/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alexandregazola.wordpress.com/458/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alexandregazola.wordpress.com/458/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alexandregazola.wordpress.com/458/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexandregazola.wordpress.com&amp;blog=8654692&amp;post=458&amp;subd=alexandregazola&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://alexandregazola.wordpress.com/2012/01/20/natural-wisdom-from-the-bible-ants/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d0c212a14ee4b93b855c8b083a61e371?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Alexandre Gazola</media:title>
		</media:content>

		<media:content url="http://scienceblogs.com.br/brontossauros/files/2011/08/cataglyphis01.jpg" medium="image" />
	</item>
		<item>
		<title>Book review: Domain-driven Design</title>
		<link>http://alexandregazola.wordpress.com/2011/02/05/book-review-domain-driven-design/</link>
		<comments>http://alexandregazola.wordpress.com/2011/02/05/book-review-domain-driven-design/#comments</comments>
		<pubDate>Sat, 05 Feb 2011 19:18:17 +0000</pubDate>
		<dc:creator>Alexandre Gazola</dc:creator>
				<category><![CDATA[Book Review]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://alexandregazola.wordpress.com/?p=437</guid>
		<description><![CDATA[Last year I finished reading the excellent book Domain-driven Design, by Eric Evans; but it was not until now that I&#8217;ve managed to put aside some time to write about it. In a time when we have lots of different kinds &#8230; <a href="http://alexandregazola.wordpress.com/2011/02/05/book-review-domain-driven-design/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexandregazola.wordpress.com&amp;blog=8654692&amp;post=437&amp;subd=alexandregazola&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p style="text-align:left;"><a href="http://alexandregazola.files.wordpress.com/2011/02/ddd-capa.jpg"><img class="alignleft size-medium wp-image-438" title="ddd-capa" src="http://alexandregazola.files.wordpress.com/2011/02/ddd-capa.jpg?w=180&#038;h=240" alt="" width="180" height="240" /></a></p>
<p style="text-align:left;">Last year I finished reading the excellent book <em>Domain-driven Design</em>, by Eric Evans; but it was not until now that I&#8217;ve managed to put aside some time to write about it.</p>
<p style="text-align:left;">In a time when we have lots of different kinds of cool tools and technologies, it can be easy for us developers to become entangled in those issues and forget to pay close attention to the core problem domain. The approach of Domain-driven Design (DDD) shifts the focus back to the domain, joining together developers, users and domain experts through the use of a common language, spoken and understood by everyone: <em>the ubiquitous language</em>. With the terms of this shared language, we can develop a model which will be used to drive design (hence the term &#8220;<em>model-driven design</em>&#8220;). The idea is for the code to faithfully reflect this model. This approach enables excellent communication among the stakeholders and empowers the design with the richness of the domain which in turn makes it possible for the system to evolve more easily as the users demand new features.</p>
<p style="text-align:left;">And that&#8217;s Domain-driven Design in a nutshell! Simple, isn&#8217;t it?</p>
<p style="text-align:left;">Yes, that is DDD. However, putting that into practice is a whole different thing. In the book, Eric Evans explains how to apply DDD, what are the some of the challenges and difficulties, how to express the model in code, supple design, patterns, large-scale structures, etc. I definitely recommend reading the book, especially  parts I, II and III.</p>
<p style="text-align:left;">Just one more comment to finish this post: I came to the conclusion that it is virtually impossible to apply DDD without continuous <a href="http://www.refactoring.com/" target="_blank">Refactoring</a>. This happens because the ubiquitous language and the model are constantly evolving as developers and users gain new insights. Actually, coming up with a good model is a strenuous task and, therefore, things are likely to change often (especially at the beginning of the project) and the code needs to easily accomodate these changes. Since it&#8217;s unwise to do refactoring without automated tests, some flavor of Test-driven Development is highly desirable as well.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alexandregazola.wordpress.com/437/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alexandregazola.wordpress.com/437/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alexandregazola.wordpress.com/437/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alexandregazola.wordpress.com/437/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/alexandregazola.wordpress.com/437/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/alexandregazola.wordpress.com/437/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/alexandregazola.wordpress.com/437/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/alexandregazola.wordpress.com/437/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alexandregazola.wordpress.com/437/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alexandregazola.wordpress.com/437/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alexandregazola.wordpress.com/437/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alexandregazola.wordpress.com/437/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alexandregazola.wordpress.com/437/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alexandregazola.wordpress.com/437/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexandregazola.wordpress.com&amp;blog=8654692&amp;post=437&amp;subd=alexandregazola&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://alexandregazola.wordpress.com/2011/02/05/book-review-domain-driven-design/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d0c212a14ee4b93b855c8b083a61e371?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Alexandre Gazola</media:title>
		</media:content>

		<media:content url="http://alexandregazola.files.wordpress.com/2011/02/ddd-capa.jpg?w=225" medium="image">
			<media:title type="html">ddd-capa</media:title>
		</media:content>
	</item>
		<item>
		<title>Public competitive examinations in IT &#8211; MundoJ 45</title>
		<link>http://alexandregazola.wordpress.com/2011/01/27/public-competitive-examinations-in-it-mundoj-45/</link>
		<comments>http://alexandregazola.wordpress.com/2011/01/27/public-competitive-examinations-in-it-mundoj-45/#comments</comments>
		<pubDate>Fri, 28 Jan 2011 01:00:59 +0000</pubDate>
		<dc:creator>Alexandre Gazola</dc:creator>
				<category><![CDATA[News]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://alexandregazola.wordpress.com/?p=417</guid>
		<description><![CDATA[My new article on MundoJ magazine (former MundoJava) is out, after about one year without publishing. In this article, my colleague Rafael Pereira and I talk about an interesting but rather unusual topic: public competitive examinations (the best translation I &#8230; <a href="http://alexandregazola.wordpress.com/2011/01/27/public-competitive-examinations-in-it-mundoj-45/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexandregazola.wordpress.com&amp;blog=8654692&amp;post=417&amp;subd=alexandregazola&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://alexandregazola.files.wordpress.com/2011/01/mundoj.png"><img class="alignleft size-medium wp-image-418" title="mundoj" src="http://alexandregazola.files.wordpress.com/2011/01/mundoj.png?w=210&#038;h=190" alt="" width="210" height="190" /></a>My new article on <a href="http://www.mundoj.com.br" target="_blank">MundoJ magazine</a> (former MundoJava) is out, after about one year without publishing. In this article, my colleague <a href="http://www.rbper.com/" target="_blank">Rafael Pereira</a> and I talk about an interesting but rather unusual topic: public competitive examinations (the best translation I found for &#8220;concurso público&#8221;, in Portuguese) in IT. The idea for the article came from the desire to help announce the publication of Rafael&#8217;s new book, whose subject is Java for public competitive examinations.</p>
<p>Different from what happens in other countries, here in Brazil the candidates for a job position in public companies must pass these kinds of exams; and they are highly competitive. In the article, we go over the advantages and (a few) disadvantages of working at public companies, with emphasis on the IT industry. At the end, we present some questions of real exams with answers and comments (the questions concern primarily Object-orientation, design patterns, Java SE and Java EE). We appreciate any feedback on the article.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alexandregazola.wordpress.com/417/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alexandregazola.wordpress.com/417/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alexandregazola.wordpress.com/417/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alexandregazola.wordpress.com/417/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/alexandregazola.wordpress.com/417/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/alexandregazola.wordpress.com/417/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/alexandregazola.wordpress.com/417/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/alexandregazola.wordpress.com/417/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alexandregazola.wordpress.com/417/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alexandregazola.wordpress.com/417/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alexandregazola.wordpress.com/417/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alexandregazola.wordpress.com/417/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alexandregazola.wordpress.com/417/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alexandregazola.wordpress.com/417/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexandregazola.wordpress.com&amp;blog=8654692&amp;post=417&amp;subd=alexandregazola&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://alexandregazola.wordpress.com/2011/01/27/public-competitive-examinations-in-it-mundoj-45/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d0c212a14ee4b93b855c8b083a61e371?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Alexandre Gazola</media:title>
		</media:content>

		<media:content url="http://alexandregazola.files.wordpress.com/2011/01/mundoj.png?w=300" medium="image">
			<media:title type="html">mundoj</media:title>
		</media:content>
	</item>
		<item>
		<title>Three things to remember on a software project</title>
		<link>http://alexandregazola.wordpress.com/2010/12/06/three-things-to-remember-on-a-software-project/</link>
		<comments>http://alexandregazola.wordpress.com/2010/12/06/three-things-to-remember-on-a-software-project/#comments</comments>
		<pubDate>Tue, 07 Dec 2010 00:45:29 +0000</pubDate>
		<dc:creator>Alexandre Gazola</dc:creator>
				<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://alexandregazola.wordpress.com/?p=397</guid>
		<description><![CDATA[During our daily meeting today, my manager made three interesting remarks about software construction that IT professionals should be mindful of: 1) Don&#8217;t build the software system whatsoever - This might sound pretty obvious but many people just ignore it. &#8230; <a href="http://alexandregazola.wordpress.com/2010/12/06/three-things-to-remember-on-a-software-project/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexandregazola.wordpress.com&amp;blog=8654692&amp;post=397&amp;subd=alexandregazola&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<div>During our daily meeting today, my manager made three interesting remarks about software construction that IT professionals should be mindful of:</br></br></div>
<div></div>
<div><strong>1) Don&#8217;t build the software system whatsoever </strong>- This might sound pretty obvious but many people just ignore it. Many companies, especially those on a loose budget, think a software system will be the panacea for all their business problems and so they just go for it. Therefore, remember:<em> the best software system is the one that doesn&#8217;t need to be written.</em></div>
<div><em><br />
</em></div>
<div><strong>2) Throw the system away before going into production</strong> &#8211; It may just be the case that you&#8217;ve already started developing the system and maybe are even about to release it into production. Nevertheless, suddenly an idea might strike or a breakthrough might come in such a way that the best thing to do is to throw the system away despite all the effort and resources spent on the project. This reminds me of the essay &#8220;<a href="http://c2.com/cgi/wiki?PlanToThrowOneAway" target="_blank">Plan to throw one away</a>&#8221; of &#8220;<a href="http://alexandregazola.wordpress.com/2010/08/09/book-review-the-mythical-man-month/" target="_blank">The mythical man-month</a>&#8220;. Therefore, remember:<em> the best software system is the one that doesn&#8217;t need to go into production.</em></div>
<div><em><br />
</em></div>
<div><strong>3) Build the system using the best industry practices</strong> &#8211; OK, you&#8217;ve analysed the facts, talked to the stakeholders and came to the conclusion the software system is still currently necessary. Well, in this case, go ahead with the project, use the best industry practices you can and build a software with quality that will make your users happy. Therefore, remember: <em>if you do have to build a software system, do it to the best of your abilities.</em></div>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alexandregazola.wordpress.com/397/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alexandregazola.wordpress.com/397/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alexandregazola.wordpress.com/397/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alexandregazola.wordpress.com/397/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/alexandregazola.wordpress.com/397/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/alexandregazola.wordpress.com/397/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/alexandregazola.wordpress.com/397/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/alexandregazola.wordpress.com/397/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alexandregazola.wordpress.com/397/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alexandregazola.wordpress.com/397/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alexandregazola.wordpress.com/397/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alexandregazola.wordpress.com/397/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alexandregazola.wordpress.com/397/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alexandregazola.wordpress.com/397/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexandregazola.wordpress.com&amp;blog=8654692&amp;post=397&amp;subd=alexandregazola&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://alexandregazola.wordpress.com/2010/12/06/three-things-to-remember-on-a-software-project/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d0c212a14ee4b93b855c8b083a61e371?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Alexandre Gazola</media:title>
		</media:content>
	</item>
		<item>
		<title>QCon Sao Paulo 2010</title>
		<link>http://alexandregazola.wordpress.com/2010/09/15/qcon-sao-paulo-2010/</link>
		<comments>http://alexandregazola.wordpress.com/2010/09/15/qcon-sao-paulo-2010/#comments</comments>
		<pubDate>Wed, 15 Sep 2010 03:20:10 +0000</pubDate>
		<dc:creator>Alexandre Gazola</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://alexandregazola.wordpress.com/?p=374</guid>
		<description><![CDATA[Last weekend I took part in QCon Sao Paulo, the Brazilian edition of one of the main worldwide events of software developers and architects. The conference had a strong focus on issues related to scalability, cloud computing and replication in &#8230; <a href="http://alexandregazola.wordpress.com/2010/09/15/qcon-sao-paulo-2010/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexandregazola.wordpress.com&amp;blog=8654692&amp;post=374&amp;subd=alexandregazola&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Last weekend I took part in <a href="http://www.qconsp.com/" target="_blank">QCon Sao Paulo</a>, the Brazilian edition of one of the main worldwide events of software developers and architects. The conference had a strong focus on issues related to scalability, cloud computing and replication in addition to Java, .NET, Ruby/Rails and Agile. <a href="http://code.google.com/p/redis/" target="_blank">Redis </a>and <a href="http://memcached.org/" target="_blank">memcached </a>were two of the most mentioned tools used to deal with scalability issues.</p>
<p><a href="http://twitter.com/NK" target="_blank">Nick Kallen</a>, Systems Engineer of <a href="http://twitter.com/" target="_blank">Twitter</a>, talked about how he designed and evolved solutions to deal with some of the fundamental types of data of Twitter: tweets, timelines and social graphs. Each of these real time data had different datastore needs. He discussed how the original solution to store the data in MySQL did not scale well and then went on to present the datastore strategies they created to meet their specific needs.  They exploited techniques like master-slave replication with <a href="http://memcached.org/" target="_blank">memcached</a> for reads, data partitioning, temporal locality and indices. A recurring pattern to achieve efficiency and scalability that was identified was to partition, replicate and index the data.</p>
<p><a href="http://twitter.com/guilhermecaelum" target="_blank">Guilherme Silveira</a> talked about <a href="http://en.wikipedia.org/wiki/Representational_State_Transfer" target="_blank">REST</a>, semantics and the future of the web. He presented some ideas that can be used such as exploiting the power of links, microformats with hypermedia, addition of semantics and the existence of a shared vocabulary.</p>
<p>Randy Shoup shared some of the best practices for large-scale web sites based on his experience as a chief engineer at <a href="http://www.ebay.com/" target="_blank">eBay</a>. Some pieces of advice were: 1) partition everything; 2) asynch everywhere; 3) automate everything; 4) remember that everything fails. He&#8217;d already presented this talk at <a href="http://qconsf.com/" target="_blank">QCon San Francisco</a> in 2008 and it can be watched <a href="http://www.infoq.com/presentations/shoup-ebay-architectural-principles" target="_blank">here</a>.</p>
<p><a href="http://www.crockford.com/" target="_blank">Douglas Crockford</a> presented about the future of JavaScript (or ECMAScript as he pointed out). He went through some changes that are being proposed to the language, especially better math support.</p>
<p><a href="http://blog.aspercom.com.br/" target="_blank">Rodrigo Yoshima</a> talked about the <em>method war</em> we are witnessing these days: Scrum vs XP; Scrum vs Kanban; PMBok vs Scrum; Lean vs XP, etc. He reminded that the most important value of Agile is to deliver value more rapidly. We can be applying a handful of agile best practices but if we don&#8217;t stick to that one principle we won&#8217;t truly be Agile. He also pointed out that there is no such thing as a closed scope in software development.</p>
<p><a href="http://twitter.com/paulo_caelum" target="_blank">Paulo Silveira</a> talked about the blurry distinction between architecture and design; and also between design and implementation. He quoted several renowned authors and his conclusion was that &#8220;architecture is every decision that impacts in a big trade-off and can or not be difficult to change&#8221;. It also can be evolutionary (last responsible moment). When questioned about whether it makes sense to be a &#8220;java architect&#8221;, he replied with a <a href="http://www.joelonsoftware.com/items/2006/09/01.html" target="_blank">quote </a>by<a href="http://www.joelonsoftware.com/" target="_blank"> Joel Spolsky</a> that says we need at least one architect with great experience on the chosen platform. Paulo then went on to discuss (with some real examples) the role of  design as a key element to being able to make changes both to the implementation and the architecture of a software system.</p>
<p>The event had several other good talks that I won&#8217;t describe here. The organizers are working to make the talks available on <a href="http://www.infoq.com.br" target="_blank">InfoQ</a>.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alexandregazola.wordpress.com/374/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alexandregazola.wordpress.com/374/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alexandregazola.wordpress.com/374/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alexandregazola.wordpress.com/374/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/alexandregazola.wordpress.com/374/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/alexandregazola.wordpress.com/374/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/alexandregazola.wordpress.com/374/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/alexandregazola.wordpress.com/374/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alexandregazola.wordpress.com/374/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alexandregazola.wordpress.com/374/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alexandregazola.wordpress.com/374/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alexandregazola.wordpress.com/374/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alexandregazola.wordpress.com/374/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alexandregazola.wordpress.com/374/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexandregazola.wordpress.com&amp;blog=8654692&amp;post=374&amp;subd=alexandregazola&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://alexandregazola.wordpress.com/2010/09/15/qcon-sao-paulo-2010/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d0c212a14ee4b93b855c8b083a61e371?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Alexandre Gazola</media:title>
		</media:content>
	</item>
		<item>
		<title>Watch out for TODO comments!</title>
		<link>http://alexandregazola.wordpress.com/2010/09/03/watch-out-for-todo-comments/</link>
		<comments>http://alexandregazola.wordpress.com/2010/09/03/watch-out-for-todo-comments/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 03:21:32 +0000</pubDate>
		<dc:creator>Alexandre Gazola</dc:creator>
				<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://alexandregazola.wordpress.com/?p=352</guid>
		<description><![CDATA[Say you have a class with 40-something methods, doing a number of different things&#8230; You, as a great software developer, identify that as a bloater smell and wisely conclude that code cries out for a refactoring. Sounds pretty reasonable. Nevertheless, &#8230; <a href="http://alexandregazola.wordpress.com/2010/09/03/watch-out-for-todo-comments/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexandregazola.wordpress.com&amp;blog=8654692&amp;post=352&amp;subd=alexandregazola&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Say you have a class with 40-something methods, doing a number of different things&#8230; You, as a great software developer, identify that as a <a href="http://www.soberit.hut.fi/mmantyla/BadCodeSmellsTaxonomy.htm" target="_blank">bloater smell</a> and wisely conclude that code cries out for a <a href="http://www.refactoring.com/" target="_blank">refactoring</a>. Sounds pretty reasonable. Nevertheless, you&#8217;re neck deep in work now trying to meet the deadline for the next release. So what you do? You simply leave a <em>TODO </em>comment next to the code for you to perform that change as soon as you have enough time available.</p>
<p><pre class="brush: java;">
 // TODO: This class is doing too many things. Refactor!
 public class BloatedClass {

    // 40-something methods

}
</pre></p>
<p>That&#8217;s it! Now you move on with your next task feeling good about yourself because you think you&#8217;ve already handled the problem &#8220;appropriately&#8221;.</p>
<p>&#8220;What&#8217;s wrong with that?&#8221; &#8211; you may ask &#8211; &#8220;after all, I do intend to deal with that later&#8221; . Come on, my friend! Let&#8217;s be realistic and face the facts! Chances are you&#8217;ll forget about that comment and it will remain there forever since neither you nor anyone else on the team will have the guts to carry out that refactoring afterward for fear that something might stop working. This happens because <em>if </em>you remember that comment, you&#8217;ll probably already have lost the general context that surrounds that code and thus you may not have enough confidence to refactor. Worse comes to worst when there isn&#8217;t a good suite of automated tests to back you up. As a consequence, your fellow workers will have to work and get along with that poor <a href="http://www.infoq.com/articles/Dealing-with-legacy-code" target="_blank">legacy code</a>.</p>
<p>Bottom line: it&#8217;s best to try to keep yourself from adding TODO comments to your source code in the first place (in fact, <a href="http://guilherme.pro/2009/04/05/why-i-dont-write-code-comments/" target="_blank">this applies to code comments in general</a>); but, if you do, make sure you don&#8217;t forget about them (Eclipse has a &#8220;Tasks view&#8221;, which can be useful to track those notes). Those comments might be indications of <a href="http://martinfowler.com/bliki/TechnicalDebt.html" target="_blank">technical debt</a> that you need to be mindful of, yet more often they&#8217;ll just be <a href="http://blog.objectmentor.com/articles/2009/09/22/a-mess-is-not-a-technical-debt" target="_blank">deodorant for poorly written code</a>.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alexandregazola.wordpress.com/352/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alexandregazola.wordpress.com/352/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alexandregazola.wordpress.com/352/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alexandregazola.wordpress.com/352/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/alexandregazola.wordpress.com/352/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/alexandregazola.wordpress.com/352/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/alexandregazola.wordpress.com/352/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/alexandregazola.wordpress.com/352/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alexandregazola.wordpress.com/352/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alexandregazola.wordpress.com/352/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alexandregazola.wordpress.com/352/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alexandregazola.wordpress.com/352/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alexandregazola.wordpress.com/352/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alexandregazola.wordpress.com/352/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexandregazola.wordpress.com&amp;blog=8654692&amp;post=352&amp;subd=alexandregazola&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://alexandregazola.wordpress.com/2010/09/03/watch-out-for-todo-comments/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d0c212a14ee4b93b855c8b083a61e371?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Alexandre Gazola</media:title>
		</media:content>
	</item>
		<item>
		<title>Book review: The mythical man-month</title>
		<link>http://alexandregazola.wordpress.com/2010/08/09/book-review-the-mythical-man-month/</link>
		<comments>http://alexandregazola.wordpress.com/2010/08/09/book-review-the-mythical-man-month/#comments</comments>
		<pubDate>Mon, 09 Aug 2010 23:14:24 +0000</pubDate>
		<dc:creator>Alexandre Gazola</dc:creator>
				<category><![CDATA[Book Review]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://alexandregazola.wordpress.com/?p=309</guid>
		<description><![CDATA[After nearly two years of procrastination, I finally finished reading Fred Brook&#8217;s classic &#8220;The mythical man-month: essays on software engineering&#8221;. It has lots of useful insights on software project management and development. Rather than making a summary, I&#8217;ll just go &#8230; <a href="http://alexandregazola.wordpress.com/2010/08/09/book-review-the-mythical-man-month/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexandregazola.wordpress.com&amp;blog=8654692&amp;post=309&amp;subd=alexandregazola&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p style="text-align:center;"><a href="http://alexandregazola.files.wordpress.com/2010/07/capa-the-mythical.jpg"><img class="size-full wp-image-312 aligncenter" title="capa-the-mythical" src="http://alexandregazola.files.wordpress.com/2010/07/capa-the-mythical.jpg?w=584" alt=""   /></a></p>
<p style="text-align:left;">After nearly two years of procrastination, I finally finished reading Fred Brook&#8217;s classic &#8220;The mythical man-month: essays on software engineering&#8221;. It has lots of useful insights on software project management and development. Rather than making a <a href="http://en.wikipedia.org/wiki/The_Mythical_Man-Month" target="_blank">summary</a>, I&#8217;ll just go over the pivotal concept found in the book: <strong>conceptual integrity</strong>.</p>
<p style="text-align:left;">The author goes at great lengths in how to achieve <strong>conceptual integrity</strong> in our software products. From my understanding, he considers conceptual integrity as a user-centered view of the software system; and, therefore, it&#8217;s something deeply connected to ease of use. For the author, this is the most important thing to consider in system design. There are severe challenges that stem from large programming projects, where division of labor can make it harder to preserve conceptual integrity. And that&#8217;s why he suggests the role of the architect, who is the person responsible to envision the system as a whole and make sure the conceptual integrity will be preserved. As I mentioned, Brooks used this concept primarily to talk about the software product as perceived by its users. In my view, the idea of conceptual integrity is one also to be pursued and applied to the more inferior levels of the software system (e.g. software design, code). On a project using Agile practices, such as <a href="http://www.extremeprogramming.org/rules/collective.html" target="_blank">XP</a>&#8216;s <a href="http://www.extremeprogramming.org/rules/collective.html" target="_blank">collective code ownership</a> and <a href="http://www.ibm.com/developerworks/java/library/j-eaed1/index.html" target="_blank">emergent design</a>, <strong>good communication is crucial to achieving conceptual integrity in code</strong>.</p>
<p style="text-align:left;">The book is mandatory reading  for any developer or software development manager. The phrase &#8220;there is no silver bullet&#8221;, for example, which has become something of a cliché in our industry, comes from an author&#8217;s paper &#8220;No Silver Bullet &#8211; essence and accident&#8221; and it was included as a chapter in the book.</p>
<p style="text-align:left;">Nevertheless, I do consider some parts of the book to be dated (the book was first published in 1975!). If you have little time, in a first reading consider reading chapters 1, 2, 3, 4, 7, 10, 11, 13, 16 (No silver bullet), 17, 18 (this chapter is a nice summary of the whole book) and 19 (this is a review of the original publication after 20 years). After reading this book, you may also consider reading the author&#8217;s new publication &#8220;<a href="http://www.amazon.com/Design-Essays-Computer-Scientist/dp/0201362988/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1281298951&amp;sr=8-1" target="_blank">The design of design</a>&#8221; (I myself haven&#8217;t read it yet, but have seen good comments about it).</p>
<p style="text-align:left;">As a side note, I liked seeing the author use some bible-inspired thoughts to make some of his points in a technical book. A few areas of knowledge (e.g.: management, oceanography, etc.) have already benefited somehow from the wisdom found in the Scriptures. We still have a whole lot to learn in our craft and I really think the Word of God can be a source of inspiration no matter the subject matter. I finish this post with a quote by Brook&#8217;s himself:</p>
<p style="text-align:left;">&#8220;We need a God-given humility to recognize our fallibility and limitations&#8221;.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alexandregazola.wordpress.com/309/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alexandregazola.wordpress.com/309/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alexandregazola.wordpress.com/309/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alexandregazola.wordpress.com/309/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/alexandregazola.wordpress.com/309/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/alexandregazola.wordpress.com/309/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/alexandregazola.wordpress.com/309/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/alexandregazola.wordpress.com/309/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alexandregazola.wordpress.com/309/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alexandregazola.wordpress.com/309/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alexandregazola.wordpress.com/309/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alexandregazola.wordpress.com/309/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alexandregazola.wordpress.com/309/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alexandregazola.wordpress.com/309/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexandregazola.wordpress.com&amp;blog=8654692&amp;post=309&amp;subd=alexandregazola&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://alexandregazola.wordpress.com/2010/08/09/book-review-the-mythical-man-month/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d0c212a14ee4b93b855c8b083a61e371?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Alexandre Gazola</media:title>
		</media:content>

		<media:content url="http://alexandregazola.files.wordpress.com/2010/07/capa-the-mythical.jpg" medium="image">
			<media:title type="html">capa-the-mythical</media:title>
		</media:content>
	</item>
		<item>
		<title>Happy Birthday: one year!</title>
		<link>http://alexandregazola.wordpress.com/2010/07/20/happy-birthday-one-year/</link>
		<comments>http://alexandregazola.wordpress.com/2010/07/20/happy-birthday-one-year/#comments</comments>
		<pubDate>Tue, 20 Jul 2010 23:20:22 +0000</pubDate>
		<dc:creator>Alexandre Gazola</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://alexandregazola.wordpress.com/?p=316</guid>
		<description><![CDATA[This blog completes one year today. It took me a while  to start it, mainly because I didn&#8217;t know if I would have time to write (interesting) things regularly. Well, it turned out I&#8217;ve really liked the experience so far. &#8230; <a href="http://alexandregazola.wordpress.com/2010/07/20/happy-birthday-one-year/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexandregazola.wordpress.com&amp;blog=8654692&amp;post=316&amp;subd=alexandregazola&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://alexandregazola.files.wordpress.com/2010/07/bolo3.jpg"><img class="alignleft size-thumbnail wp-image-321" title="bolo" src="http://alexandregazola.files.wordpress.com/2010/07/bolo3.jpg?w=143&#038;h=150" alt="" width="143" height="150" /></a>This blog completes one year today. It took me a while  to start it, mainly because I didn&#8217;t know if I would have time to write (interesting) things regularly. Well, it turned out I&#8217;ve really liked the experience so far.</p>
<p>Among other benefits, with the blog I force myself to write down <a href="http://alexandregazola.wordpress.com/category/book-review/" target="_blank">book reviews</a>, which makes me review and ponder a little about what I read. I also like to summarize the talks I hear in <a href="http://alexandregazola.wordpress.com/category/events/" target="_blank">events</a> I go about <a href="http://alexandregazola.wordpress.com/category/software-development/" target="_blank">software development</a> as well as <a href="http://alexandregazola.wordpress.com/category/christian-messages/" target="_blank">Christian messages</a>. For this second year, I&#8217;d like to increase the number of general posts related to something other than books and events.</p>
<p>The blog still has modest numbers: 22 posts, 30 comments and 1,976 views (tracked by WordPress). I hope to improve on those.</p>
<p>&#8220;I will exalt you, my God the King;<br />
I will praise your name for ever and ever.&#8221; (Psalm 145:1)</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alexandregazola.wordpress.com/316/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alexandregazola.wordpress.com/316/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alexandregazola.wordpress.com/316/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alexandregazola.wordpress.com/316/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/alexandregazola.wordpress.com/316/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/alexandregazola.wordpress.com/316/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/alexandregazola.wordpress.com/316/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/alexandregazola.wordpress.com/316/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alexandregazola.wordpress.com/316/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alexandregazola.wordpress.com/316/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alexandregazola.wordpress.com/316/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alexandregazola.wordpress.com/316/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alexandregazola.wordpress.com/316/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alexandregazola.wordpress.com/316/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexandregazola.wordpress.com&amp;blog=8654692&amp;post=316&amp;subd=alexandregazola&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://alexandregazola.wordpress.com/2010/07/20/happy-birthday-one-year/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d0c212a14ee4b93b855c8b083a61e371?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Alexandre Gazola</media:title>
		</media:content>

		<media:content url="http://alexandregazola.files.wordpress.com/2010/07/bolo3.jpg?w=143" medium="image">
			<media:title type="html">bolo</media:title>
		</media:content>
	</item>
		<item>
		<title>Agile Brazil &#8211; Second day</title>
		<link>http://alexandregazola.wordpress.com/2010/07/01/agile-brazil-second-day/</link>
		<comments>http://alexandregazola.wordpress.com/2010/07/01/agile-brazil-second-day/#comments</comments>
		<pubDate>Fri, 02 Jul 2010 01:27:52 +0000</pubDate>
		<dc:creator>Alexandre Gazola</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://alexandregazola.wordpress.com/?p=294</guid>
		<description><![CDATA[The second day of Agile Brazil started with Professor Philippe Kruchten&#8216;s keynote &#8220;Agility in Context&#8221;. In my opinion, this was one the the best talks of the event. The professor started mentioning agility as a culture and went on to &#8230; <a href="http://alexandregazola.wordpress.com/2010/07/01/agile-brazil-second-day/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexandregazola.wordpress.com&amp;blog=8654692&amp;post=294&amp;subd=alexandregazola&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>The second day of <a href="http://www.agilebrazil.com/2010/en/index.html" target="_blank">Agile Brazil</a> started with Professor <a href="http://philippe.kruchten.com/" target="_blank">Philippe Kruchten</a>&#8216;s keynote &#8220;Agility in Context&#8221;. In my opinion, this was one the the best talks of the event. The professor started mentioning agility as a culture and went on to reason about the issue of lack of <a href="http://www.context-driven-testing.com/" target="_blank">context</a> when using  agile methods. <strong>There are contexts where agile methods might not be the best option</strong>. He also advised <strong>not to adopt practices out of the box</strong> (agility does not come in a can &#8211; most approaches are valid with a context).  There is a <span style="text-decoration:underline;">sweet spot</span>, where agile adoption is easy, but there are projects that do not fall into that category. So, we should choose the practices that fit our needs by asking:  1) what is our environment?    2) what is the specific context of this project?  3) what practices will be best suited for this context? The professor then asked the rhetorical question: &#8220;what is agility?&#8221; &#8211; and gave this answer: <strong>Agility is the ability of an organization to react and adapt to changes in its environment faster than the rate of these changes (-known agile practices can help; &#8211; conformance to the <a href="http://agilemanifesto.org" target="_blank">agile manifesto</a> can help; but <em>none</em> are absolute musts &#8211; <em>situated agility</em>). </strong>Kruchten concluded talking about <em>post-agilism</em>: keep a skeptical eye on the agile movement and have in mind that <strong>agility is not an end in itself</strong> (<strong>it&#8217;s mostly opinions, not science</strong>). Bottom line is: figure out the context in which a thing is created before adopting it (during the talk he showed the <em>Octopus</em>, an interesting model to do that evaluation).</p>
<p><a href="http://leandrosilva.com.br" target="_blank">Leandro Silva</a> talked about how a company, leading in its segment, completely failed with the adoption of <a href="http://en.wikipedia.org/wiki/Scrum_%28development%29" target="_blank">Scrum</a>. The company&#8217;s worst mistakes were: 1) lack of knowledge on agile; 2) lack of support from the IT directors; 3) &#8220;hybrid adoption&#8221; (they tried to adapt the practices with no support and at the same time satisfy the company&#8217;s culture). As Leandro pointed out, <strong>if the company&#8217;s culture does not change, it&#8217;s difficult to be agile</strong>. It&#8217;s necessary to influence and change the mindset of the people that make up the company.</p>
<p><a href="http://bovon.org/" target="_blank">James Lewis</a> talked about agile adoption anti-patterns, which he defined as the following: &#8220;Stuff I see as a practitioner time and time again&#8230; and I wish I didn&#8217;t&#8221;. The anti-patterns he presented are: 1) Flaccid technical lead (lack of technical direction), 2) Inverted servant leader, 3) Novice in charge, 4) Change everything at once, 5) Be careful what you wish for, 6) Novices don&#8217;t know what they want, 7) New architecture team, 8 ) Process mavens (you have a team whose job is to create the best process and then tell the others to use it), 9) Stagnant agile, 10) Agile adapter and 11) Hamstrung Scrum (this is taking some practices of Scrum and neglecting the best engineering practices &#8211; TDD, CI, etc.). The root causes for these anti-patterns include issues related to organizational change and the fact that people have a hard time changing. James pointed out that there are local and global optimizations, and sometimes incremental change is not enough. People will break, we must deal with it. In addition, he mentioned the <a href="http://en.wikipedia.org/wiki/Dreyfus_model_of_skill_acquisition" target="_blank">Dreyfus Model of skill acquisition</a> and, in particular, a workshop <a href="http://www.thekua.com/atwork/" target="_blank">Pat Kua</a> put together, applying the <a href="http://www.thekua.com/atwork/presentations-and-papers/xp2009/" target="_blank">Dreyfus model to pair programming</a>. In regard to changes to teams, James quoted <a href="http://en.wikipedia.org/wiki/Conway%27s_Law" target="_blank">Conway&#8217;s law</a>: &#8220;organizations which design systems &#8230; are constrained to produce designs which are copies of the communication structures of these organizations&#8221;.</p>
<p>Klauss Wuestefeld closed the conference talking about the values and practices of <a href="http://www.extremeprogramming.org/" target="_blank">XP</a> after his 10 years of experience. He started by using a few analogies to explain the nature of software development, such as <a href="http://alistair.cockburn.us/Software+development+as+a+cooperative+game" target="_blank">software development as a cooperative game</a>, <a href="http://alistair.cockburn.us/Osmotic+communication" target="_blank">osmosis</a> and fragments, the fractal nature of software and project vs projectile. He then gave a nice metaphor for software: <strong>a representation of what the team knew at a specific moment in time.</strong> This definition eliminates the view of software as a product of construction and connects it to the concept of <em>learning</em>. Together with learning, he adds <em>coolness </em>as the &#8216;new&#8217; principles. As to the practices, Klaus sticks with the following: planning on demand,  periscope,  forget feature requests (&#8220;let your customer remind you what is important&#8221; &#8211; <a href="http://gettingreal.37signals.com/" target="_blank">Getting Real</a> &#8211; 37 signals), continuous deployment and cleaners (this last one means having people to clean things&#8230; I myself prefer the <a href="http://programmer.97things.oreilly.com/wiki/index.php/The_Boy_Scout_Rule" target="_blank">Boy Scout Rule</a>).</p>
<p>Overall, this was a nice conference, well-organized, held in a great venue and in a great city.</p>
<p>Hope to see you in Agile Brazil 2011!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alexandregazola.wordpress.com/294/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alexandregazola.wordpress.com/294/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alexandregazola.wordpress.com/294/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alexandregazola.wordpress.com/294/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/alexandregazola.wordpress.com/294/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/alexandregazola.wordpress.com/294/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/alexandregazola.wordpress.com/294/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/alexandregazola.wordpress.com/294/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alexandregazola.wordpress.com/294/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alexandregazola.wordpress.com/294/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alexandregazola.wordpress.com/294/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alexandregazola.wordpress.com/294/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alexandregazola.wordpress.com/294/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alexandregazola.wordpress.com/294/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexandregazola.wordpress.com&amp;blog=8654692&amp;post=294&amp;subd=alexandregazola&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://alexandregazola.wordpress.com/2010/07/01/agile-brazil-second-day/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d0c212a14ee4b93b855c8b083a61e371?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Alexandre Gazola</media:title>
		</media:content>
	</item>
		<item>
		<title>Agile Brazil 2010 &#8211; First day</title>
		<link>http://alexandregazola.wordpress.com/2010/06/26/agile-brazil-2010-first-day/</link>
		<comments>http://alexandregazola.wordpress.com/2010/06/26/agile-brazil-2010-first-day/#comments</comments>
		<pubDate>Sat, 26 Jun 2010 23:59:25 +0000</pubDate>
		<dc:creator>Alexandre Gazola</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://alexandregazola.wordpress.com/?p=270</guid>
		<description><![CDATA[I just had the opportunity to participate in Agile Brazil, our national conference on agile methods. It was worth attending, I heard some good talks and also enjoyed traveling to Porto Alegre. In this post, I&#8217;ll summarize some of the &#8230; <a href="http://alexandregazola.wordpress.com/2010/06/26/agile-brazil-2010-first-day/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexandregazola.wordpress.com&amp;blog=8654692&amp;post=270&amp;subd=alexandregazola&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.agilebrazil.com/2010/en/index.html" target="_blank"><img class="aligncenter size-full wp-image-271" title="logo-trans" src="http://alexandregazola.files.wordpress.com/2010/06/logo-trans1.png?w=584" alt=""   /></a></p>
<p>I just had the opportunity to participate in <a href="http://www.agilebrazil.com/2010/en/index.html" target="_blank">Agile Brazil</a>, our national conference on agile methods. It was worth attending, I heard some good talks and also enjoyed traveling to Porto Alegre. In this post, I&#8217;ll summarize some of the talks of the first day of the conference.</p>
<p><a href="http://martinfowler.com/" target="_blank">Martin Fowler</a> opened the event with a keynote encompassing <a href="http://martinfowler.com/bliki/SuiteOfTalks.html" target="_blank">three topics</a>: <strong>the essence of agile</strong>, <strong>the value of software design</strong> and <strong>continuous integration and delivery</strong>. <a href="http://martinfowler.com/articles/newMethodology.html" target="_blank">Agile methods</a> appeared as an attempt to change the chaotic situation software development was in, in the 90&#8242;s: late projects, unhappy users, buggy software, etc. People from the Smalltalk community, <a href="http://en.wikipedia.org/wiki/Scrum_%28development%29" target="_blank">Scrum</a>, <a href="http://en.wikipedia.org/wiki/Feature_Driven_Development" target="_blank">FDD</a>, <a href="http://en.wikipedia.org/wiki/Extreme_programming" target="_blank">XP</a> and others got together and created the <a href="http://agilemanifesto.org/" target="_blank">Agile Manifesto for Software Development</a>. Martin mentioned the <a href="http://martinfowler.com/bliki/SemanticDiffusion.html" target="_blank">semantic diffusion</a> problem &#8211; how ideas can quickly get lost, so it&#8217;s important to remind the key points. He then compared agile with plan-driven approaches to software development.  The former emphasizes <strong>adaptive planning</strong> (1 -<strong> release early and often; </strong>2 &#8211; <strong>learn</strong>), whereas the latter values predictive planning (sucess = being in accordance to the plan). Predictive planning has its strengths, but has weaknesses, and a major drawback of them is depending on requirements stability. But the question is: <strong>in software development, how stable can our requirements be</strong>? So they try to stabilize requirements by using change control, sign-offs and up-front requirements gathering. As opposed to that, in adaptive planning, the plan is seen as a tool rather than a prediction, &#8220;a late change in requirements is a competitive  advantage&#8221; (Mary  Poppendieck). Adaptive planning gives rise to evolutionary design, which involves self-testing code, continuous integration, refactoring and simple design. Martin also compared the two approaches in regard to <strong>people vs process</strong>. Agile methods put people first, while plan-driven approaches put processes first. Plan-driven processes design the process first and then &#8220;slot the people in&#8221;. They don&#8217;t realize that &#8220;a bad process will beat a good person every time&#8221; ( W. Edwards Demming).</p>
<p>Martin went on to his next short talk about the value of software design. People sometimes cut down on quality to add more features to a software in less time. Quality has two dimensions: external quality and internal quality. The former is visible to the users and customers and comprises things like a pleasant user interface and few defects. The latter comprises good modular design. The reason we care about internal quality is referred by Martin is the <a href="http://www.martinfowler.com/bliki/DesignStaminaHypothesis.html" target="_blank"><strong>design stamina hypothesis</strong></a>. It comes down to how much effort it takes to add new features. With good design, over time we can add more features quickly and more cheaply. He also talked about code base complexity (essential complexities and accidental complexities.) and the metaphor of <a href="http://www.martinfowler.com/bliki/TechnicalDebt.html" target="_blank">technical debt</a>. In particular, he emphasized the<a href="http://martinfowler.com/bliki/TechnicalDebtQuadrant.html" target="_blank"> technical debt quadrant</a> and remembered that <a href="http://blog.objectmentor.com/articles/2009/09/22/a-mess-is-not-a-technical-debt" target="_blank">a mess a not a technical debt</a>. Just like in our finances, sometimes it&#8217;s necessary to take a prudent amount of debt. &#8220;The very best team will produce technical debt, we need to manage the quality of our debt&#8221;, he concluded.</p>
<p>Martin&#8217;s last talk was about Continuous Integration and Delivery, which I have already commented in a <a href="http://alexandregazola.wordpress.com/2010/06/15/software-design-in-the-xxi-century/" target="_blank">previous post</a>.</p>
<p><a href="http://alissonvale.com" target="_blank">Alisson Vale</a> talked about Kanban, a process based on the toyota production system whose main idea is to limit the Work in Progress (WIP). He talked about the differences between manufacturing and knowledge work, and that the essence of this difference lies in the concept of variability. In manufacturing, variability is always harmful and needs to be avoided. In knowledge work, variability is inherent to the activity and we need to adapt to it. Kanban&#8217;s <em>principles</em> can be adapted to software, but the <em>way</em> it is implemented needs to be adapted for the work&#8217;s context and nature. When we speak about Kanban in software development, we have three guidelines: 1- make work visible , 2 &#8211; limit WIP and 3 &#8211; help work to flow. Alisson also stressed that Kanban is not a methodology for process management, it requires a pre-existing process/methodology. Kanban is a starting point to continuous improvement.</p>
<p><a href="http://www.devjam.com/" target="_blank">David Hussman</a> talked about products and people over process and technology. He gave an informal talk with some good advice. First, he pointed out the idea of learning by comparing and indicated three &#8220;agile&#8221; books: <a href="http://www.amazon.com/Black-Swan-Improbable-Robustness-Fragility/dp/081297381X/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1277838630&amp;sr=8-1" target="_blank">the Black Swan</a>, <a href="http://www.amazon.com/Freakonomics-Economist-Explores-Hidden-Everything/dp/0060731338/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1277838670&amp;sr=1-1" target="_blank">Freakonomics</a> and <a href="http://www.amazon.com/Blink-Power-Thinking-Without/dp/0316010669/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1277838694&amp;sr=1-1" target="_blank">Blink</a>. He also mentioned the <a href="http://www.amazon.com/Checklist-Manifesto-How-Things-Right/dp/0805091742" target="_blank">Checklist Manifesto &#8211; how to get things right</a>. David said we have three kinds of problems: the simple (e.g.: preparing a cake), the complicated (e.g.: sending a rocket) and the complex (e.g.: being a parent &#8211; though for this last one we have the biblical advice in proverbs 22:6). The complicated problems are difficult but have a solution. The complex ones have no defined solution. Agile methods help with dealing with complex problems. What do we know about the people we&#8217;re making software for? We have two aspects to consider: Discovery (what and why) and Delivery (how and when). Are we building the right thing? Are we doing it in time? Most companies are just concerned about the last question. Our focus should be in continuous product learning. The question we should be continually asking ourselves should be: &#8220;why are we doing what we are doing?&#8221; David concluded by giving the equation: <strong>value = why / how</strong>.</p>
<p>Paulo Camara and Daniel Vieira Magalhães, from <a href="http://www.ciandt.com/" target="_blank">Ci&amp;T</a>,  talked about how it is possible to have a lean software architecture. The idea is to avoid <a href="http://en.wikipedia.org/wiki/Big_Design_Up_Front" target="_blank">BDUF </a>and &#8220;see the whole&#8221;. Is it useful to have an architect? In their view, yes, it is, but what we need is an architect with a different profile. That will be the person who&#8217;ll bring the necessary skills (technical knowledge) and experience. This architect should be 100% hands-on, a leader not a boss, an example, a reference and his major ambition should be to become dispensable (this reminded me of <a href="http://martinfowler.com/ieeeSoftware/whoNeedsArchitect.pdf" target="_blank">this article</a>). They like to do on their projects what they call &#8220;setup sprints&#8221;, one or two week sprints whose objective is to address the &#8220;high stake constraints&#8221;. For the production sprints, the focus is on collaborative design. Architecture activities are tasks associated to stories and it needs to be a competence of the team. Lastly, they quoted some lean principles found in Mary and Tom Poppendieck&#8217;s book <a href="http://en.wikipedia.org/wiki/Lean_software_development" target="_blank">Lean Software Development </a>(eliminate waste, amplify learning, decide as late as possible, deliver as fast as possible, etc.). I really liked to see Agile gaining popularity in a CMMi-5 company.</p>
<p>Rodrigo de Toledo and Daniel Teixeira talked about their experience of three years using <a href="http://en.wikipedia.org/wiki/Scrum_%28development%29" target="_blank">Scrum </a>on a Research and Development project for the Oil Industry. The system that was to be developed was for integrated 3D visualization for exploration and production. The project started in 2006 and they spent one year just discussing how the system would be. It was one year with no software! By this time, some team members got the opportunity to learn <a href="http://en.wikipedia.org/wiki/Scrum_%28development%29" target="_blank">Scrum</a> and set out to use it on this project. Nevertheless, they had a challenge:  how to do R&amp;D with Scrum? They came up with <em>research stories</em>. These stories had limited scope, they were time-boxed (e.g.: one or two weeks to research) and paper-boxed (e.g.: read the three most relevant papers on the topic). The acceptance criteria for these stories included documentation generated in a wiki and the capability to assess the development story.</p>
<p><a href="http://twitter.com/mauricioaniche" target="_blank">Mauricio Aniche</a> talked about common deviations when applying <a href="http://en.wikipedia.org/wiki/Test-driven_development" target="_blank">Test-driven development (TDD)</a>. He started off by reminding the audience that TDD is about design and for one to do TDD effectively it&#8217;s necessary to explicit dependencies. He took a survey asking lots of developers, both experienced and beginners with TDD, whether they followed some TDD&#8217;s principles all the time, rarely, never, etc. The principles he used were: 1- not seeing the test fail, 2- forgetting to refactor, 3-refactoring another part of the code, 4-not starting with the simplest test first, 5- running only the current test, 6- writing complex tests, 7- not implementing the simplest code to make the test run, 8- giving unclear names for tests and 9- not refactoring the test code. The most common deviations were: writing complex tests, forgetting to refactor and refactoring another piece of code. He concluded by saying we should take into account our experience when deciding whether to break a TDD principle or not, but we should be careful since breaking the rules all the time can be dangerous. More information about his survey can be found <a href="http://www.ime.usp.br/~aniche/tdd-survey/" target="_blank">here</a>.</p>
<p>To conclude the first day of the conference, <a href="http://twitter.com/brunopedroso" target="_blank">Bruno Pedroso</a> presented his ideas about the mixture of the following techniques: <a href="http://en.wikipedia.org/wiki/Getting_Things_Done" target="_blank">GTD</a>, <a href="http://en.wikipedia.org/wiki/Scrum_%28development%29" target="_blank">Scrum</a>, <a href="http://www.pomodorotechnique.com/" target="_blank">Pomodoro</a> and <a href="http://en.wikipedia.org/wiki/Test-driven_development" target="_blank">TDD</a>. After giving an overview of each technique, he described the fractal nature of each one. For him, GTD focuses on &#8220;me&#8221;, Scrum focuses on &#8220;us&#8221;, Pomodoro focuses on &#8220;now&#8221; and TDD focuses on &#8220;code&#8221;. We should balance static and dynamic quality, we need to balance the period when we think and when we do and the principles are: 1) don&#8217;t mixture, 2) make things explicit and 3) conclude often.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alexandregazola.wordpress.com/270/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alexandregazola.wordpress.com/270/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alexandregazola.wordpress.com/270/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alexandregazola.wordpress.com/270/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/alexandregazola.wordpress.com/270/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/alexandregazola.wordpress.com/270/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/alexandregazola.wordpress.com/270/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/alexandregazola.wordpress.com/270/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alexandregazola.wordpress.com/270/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alexandregazola.wordpress.com/270/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alexandregazola.wordpress.com/270/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alexandregazola.wordpress.com/270/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alexandregazola.wordpress.com/270/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alexandregazola.wordpress.com/270/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexandregazola.wordpress.com&amp;blog=8654692&amp;post=270&amp;subd=alexandregazola&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://alexandregazola.wordpress.com/2010/06/26/agile-brazil-2010-first-day/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d0c212a14ee4b93b855c8b083a61e371?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Alexandre Gazola</media:title>
		</media:content>

		<media:content url="http://alexandregazola.files.wordpress.com/2010/06/logo-trans1.png" medium="image">
			<media:title type="html">logo-trans</media:title>
		</media:content>
	</item>
	</channel>
</rss>
