<?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>GString *blog = g_string_new(&#34;Hacking&#34;); &#187; agile</title>
	<atom:link href="http://gabrielfalcao.com/category/agile/feed/" rel="self" type="application/rss+xml" />
	<link>http://gabrielfalcao.com</link>
	<description>Hacking for a better world</description>
	<lastBuildDate>Thu, 21 Jan 2010 10:59:43 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Solving &#8220;connection refused&#8221; issues on Debian Sid</title>
		<link>http://gabrielfalcao.com/2010/01/05/solving-connection-refused-issues-on-debian-sid/</link>
		<comments>http://gabrielfalcao.com/2010/01/05/solving-connection-refused-issues-on-debian-sid/#comments</comments>
		<pubDate>Wed, 06 Jan 2010 01:43:27 +0000</pubDate>
		<dc:creator>Gabriel Falcão</dc:creator>
				<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Sysadmin]]></category>
		<category><![CDATA[agile]]></category>

		<guid isPermaLink="false">http://gabrielfalcao.com/?p=143</guid>
		<description><![CDATA[Some weeks ago I started to experiment some network issues on my debian sid:

The selenium-remote-control was not running:

I could even try to do a: &#8220;telnet localhost 4444&#8243;, it just did not work.

My Apache-Solr was not capable to subscribe to apache-activemq

When reading the log, I saw:

javax.jms.JMSException: Could not connect to broker URL: tcp://localhost:61616. Reason: java.net.ConnectException: Connection [...]]]></description>
			<content:encoded><![CDATA[<p>Some weeks ago I started to experiment some network issues on my debian sid:</p>
<ul>
<li>The selenium-remote-control was not running:</li>
</ul>
<p>I could even try to do a: &#8220;telnet localhost 4444&#8243;, it just did not work.</p>
<ul>
<li>My Apache-Solr was not capable to subscribe to apache-activemq</li>
</ul>
<p>When reading the log, I saw:</p>
<pre>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 57px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">javax.jms.JMSException: Could not connect to broker URL: tcp://localhost:61616. Reason: java.net.ConnectException: Connection refused</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 57px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>at org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:35)</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 57px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>at org.apache.activemq.ActiveMQConnectionFactory.createActiveMQConnection(ActiveMQConnectionFactory.java:280</div>

Could not connect to broker URL: tcp://localhost:61616. Reason: java.net.ConnectException: Connection refused</pre>
<pre>Suddenly I noticed something weird in my netstat:</pre>
<pre>tcp6       0      0 :::8983                 :::*                    LISTEN      3865/solr-globocom
tcp6       0      0 :::8161                 :::*                    LISTEN      3901/activemq-globo
tcp6       0      0 :::61616                :::*                    LISTEN      3901/activemq-globo
tcp6       0      0 127.0.0.1:41879         127.0.0.1:61616         ESTABLISHED 3865/solr-globocom
tcp6       0      0 127.0.0.1:61616         127.0.0.1:41879         ESTABLISHED 3901/activemq-globo</pre>
<p>Everything is being bound as IPv6&#8230; humm, that doesn&#8217;t have a good smell&#8230;.</p>
<p>Looking for solutions I&#8217;ve found this file:</p>
<pre>/etc/sysctl.d/bindv6only.conf</pre>
<p>interesting, huh?!?</p>
<p>Openning up that file, I saw a full description of it, then I just needed to change its property from this:</p>
<pre>net.ipv6.bindv6only = 1</pre>
<p>to this:</p>
<pre>net.ipv6.bindv6only = 0</pre>
<pre>Well, if you have the same problem, jsut change that, restart your PC, and be happy!</pre>
]]></content:encoded>
			<wfw:commentRss>http://gabrielfalcao.com/2010/01/05/solving-connection-refused-issues-on-debian-sid/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New projects + agile = releases</title>
		<link>http://gabrielfalcao.com/2009/07/05/new-projects-agile-releases/</link>
		<comments>http://gabrielfalcao.com/2009/07/05/new-projects-agile-releases/#comments</comments>
		<pubDate>Sun, 05 Jul 2009 20:50:31 +0000</pubDate>
		<dc:creator>Gabriel Falcão</dc:creator>
				<category><![CDATA[Free Software]]></category>
		<category><![CDATA[GNU]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[agile]]></category>

		<guid isPermaLink="false">http://gabrielfalcao.com/?p=113</guid>
		<description><![CDATA[When I lived in Belo Horizonte/MG, I used to make hack parties with some friends of mine (nothing to say about all those pizzas and beer).
The hack parties had no specific goal, but a main idea: Hack some free software, and share the knowledge.
Many of us, but specifically Lincoln and I, used to create new [...]]]></description>
			<content:encoded><![CDATA[<p>When I lived in Belo Horizonte/MG, I used to make hack <a href="http://leoserra.iaaeee.org/">parties</a> <a href="http://lincoln.alfaiati.net/">with</a> <a href="http://cascardo.info/">some</a> <a href="http://blog.kov.eti.br/">friends</a> <a href="http://fujii.iaaeee.org/diario/">of</a> <a href="http://metaldot.alucinados.com/">mine</a> (nothing to say about all those pizzas and beer).</p>
<p>The hack parties had no specific goal, but a main idea: Hack some free software, and share the knowledge.</p>
<p>Many of us, but specifically Lincoln and I, used to create new projects in every hack party,but only a handful of those were actually released. It was often matter for jokes like: &#8220;Oh, you are up to raise the &#8220;too many projects&#8221; exception&#8221;.</p>
<p>I have two words for that fact: &#8220;not agile&#8221;.</p>
<p>Our projects were often <a href="http://en.wikipedia.org/wiki/Proof_of_concept">POCs</a>, and we had no culture of TDD, short releases and so on.</p>
<p>But since I started to work at <a href="http://globo.com">Globo.com</a>, I learned so much about agile, specially Scrum. And some months ago I&#8217;ve just accomplished what I call as &#8220;agile feeling&#8221;.</p>
<p>I mean, it&#8217;s a feeling that I can deliver software with quality in a short period of time.</p>
<p>But how ?</p>
<p>The idea is quite simple, you just have to follow some principles:</p>
<h2>Think simple</h2>
<p>This basically means focusing at the problem at hand, never trying to solve future problems you don&#8217;t have. Most of the time the problems your foresaw will never happen, yet you spent a lot of time preparing for them.</p>
<h2>Test before programming</h2>
<p>Write tests for small parts of your software, they will be very modular, and you will get a trust-able software, and I can assure you that you will be 100% able to embrace the changes.</p>
<h2>Release fully functional versions, with simple features</h2>
<p>As human beings, we want to embrace all possibilities and solve all possible problems at once.</p>
<p>But this is not agile at all. Talk to your client, be pragmatic, he will like to listen the truth: &#8220;You can not ship a full-featured final version of software within the term. But you can totally ship a primary version, fully functional, with all the basic needs of the client. Keep improving the software in next releases&#8221;</p>
<p>I tried to summarize those thoughts, but I need blog posts for each one.</p>
<h1>Applying those thoughts to personal projects</h1>
<p>As I said, I have unfinished projects, and they are still unfinished, mostly because were started with a non-agile approach, and I can&#8217;t get interested to finish them.</p>
<p>But there are a few projects I worked in, and others I am the creator. For instance:</p>
<ul>
<li>Dead Parrot, a pythonic RESTFul framework django-based. Is on release 0.1-hellopolly, being used within some globo.com projects.</li>
<li>Ma-Chérie, a simple filesystem-based web application to navigate through pictures. Current release: 0.1</li>
<li>Sponge, a tiny web framework built on top of CherryPy and used Genshi as default template language. Sponge is the base of Ma-Chérie. Current release: 0.1</li>
<li>Pyccuracy, s BDD acceptance testing tool. <a href="http://tinyurl.com/heynemann">Heynemann</a> started that project, as a comitter, I worked in the biggest refactoring. Current release 1.0.3-viagra</li>
<li>Sleepy, is a crude, slow and rough template language, 100% based in regular expressions (which mades sleepy so slow). Actually I do not plan release it by now,  I am just having some proofs of concept of how possible is to write a template language 100% regex based, just with TDD.</li>
</ul>
<p>All projects above, except Sleepy, were released as well, all them were developed with TDD and have  a good code coverage.</p>
<p>But the big deal is that, actually they will never get finished, for a simple reason. They will be in continuous development and continuous released as well.</p>
<p>By the way, if you want to contribute, just go to <a href="https://github.com/gabrielfalcao">my github</a> profile and check them out.</p>
]]></content:encoded>
			<wfw:commentRss>http://gabrielfalcao.com/2009/07/05/new-projects-agile-releases/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
