<?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>Grupo Haw</title>
	<atom:link href="http://grupohaw.com.br/feed/" rel="self" type="application/rss+xml" />
	<link>http://grupohaw.com.br</link>
	<description>Compartilhando conhecimento</description>
	<lastBuildDate>Thu, 03 Apr 2014 02:26:14 +0000</lastBuildDate>
	<language>pt-BR</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=4.1.5</generator>
	<item>
		<title>Mantendo seus Testes de Unidade desacoplados &#8211; Teste Isolado (Isolated Test)</title>
		<link>http://grupohaw.com.br/2014/04/02/mantendo-seus-testes-de-unidade-desacoplados-teste-isolado-isolated-test/</link>
		<comments>http://grupohaw.com.br/2014/04/02/mantendo-seus-testes-de-unidade-desacoplados-teste-isolado-isolated-test/#comments</comments>
		<pubDate>Thu, 03 Apr 2014 02:12:30 +0000</pubDate>
		<dc:creator><![CDATA[Gabriel Rubens]]></dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Orientação a Objeto]]></category>

		<guid isPermaLink="false">http://grupohaw.com.br/?p=1147</guid>
		<description><![CDATA[<div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_5080762"></div></div></div>Um teste de unidade nunca deve interferir em outro, e isso significa que se um teste falha, você deve ter um problema e se dois testes falham, você deve ter dois problemas. Isolar os testes de unidade garantem manutenibilidade pois impede que algum erro no código quebre vários testes. Um problema que podemos enfrentar ao [...]<div class='yarpp-related-rss'>
<h3>Postagens Relacionadas:</h3><ol>
<li><a href="http://grupohaw.com.br/2010/04/16/teste-unitario-com-junit-rapidinha/" rel="bookmark" title="Teste Unitário com JUnit &#8211; Rapidinho">Teste Unitário com JUnit &#8211; Rapidinho </a></li>
<li><a href="http://grupohaw.com.br/2010/10/04/enums/" rel="bookmark" title="Enums &#8211; Rapidinho">Enums &#8211; Rapidinho </a></li>
<li><a href="http://grupohaw.com.br/2009/11/07/metodo-variavel-e-classe-final/" rel="bookmark" title="Método, Variável e Classe Final">Método, Variável e Classe Final </a></li>
</ol>
<img src="http://yarpp.org/pixels/2dafabbfbd5e04d2e58019e85e695e8d" alt="YARPP"/>
</div>
]]></description>
				<content:encoded><![CDATA[<div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_5080762"></div></div></div><div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_5080762"></div></div></div><p dir="ltr">Um teste de unidade nunca deve interferir em outro, e isso significa que se um teste falha, você deve ter um problema e se dois testes falham, você deve ter dois problemas. Isolar os testes de unidade garantem manutenibilidade pois impede que algum erro no código quebre vários testes.</p>
<p>Um problema que podemos enfrentar ao escrever testes de forma isolada é que algumas vezes temos que utilizar objetos semelhantes em vários testes, usando o <a title="JUnit" href="http://junit.org/" target="_blank">JUnit </a>como exemplo podemos contornar isso com a utilização das <a title="Documentação Annotations" href="http://docs.oracle.com/javase/tutorial/java/annotations/index.html" target="_blank">Annotations</a> que o framework nos fornece como o <a title="Annotarion @Before do JUnit" href="http://junit.sourceforge.net/javadoc/org/junit/Before.html" target="_blank">@Before</a>, ou até mesmo somente isolando em um método privado para criar os objetos. Vamos ver uma classe de Test de Exemplo:</p><pre class="crayon-plain-tag"></pre><p></p>
<p> <span style="line-height: 1.714285714; font-size: 1rem;">Veja como há algumas linhas que se repetem algumas vezes:<span id="more-1147"></span></span></p>
<p></p><pre class="crayon-plain-tag">List&lt;Integer&gt; esperado = Arrays.asList([alguns valores aqui]);
List&lt;Integer&gt; recebido = new ArrayList&lt;Integer&gt;();
FibonacciIteratorFinal finonacci = new FibonacciIteratorFinal();</pre><p>A primeira coisa que poderíamos fazer é transformar esses objetos (esperado, recebido e fibonacci) em propriedades da classe, pois a manutenção vai ficar bem complicada se essa classe crescer e continuarmos copiando e colando esse mesmo trecho de código. Aliais, um bom sina de que temos que há algo errado em nossa classe é a repetição de trechos de código. Para transformar essas variáveis locais repetidas em propriedades podemos utilizar a própria IDE, no caso do Eclipse podemos colocar o cursor do mouse na variável local e pressionar <strong>Ctrl+1</strong> e selecionar <strong>Convert Local Variable to Field</strong>.</p>
<p>Feito isso podemos utilizar um método que configure (instancie) os nossos objetos esperado, recebido e fibonacci. Podemos fazer um método privado que faça isso, mas mesmo assim teríamos que chamar esse método a cada teste que for executado, é menos pior do que o código repetido, mas da pra ficar ainda melhor.</p><pre class="crayon-plain-tag">private void setUp() {
	recebido = new ArrayList&lt;Integer&gt;();
	finonacci = new FibonacciIteratorFinal();
}

@Test
public void deveRetonarZeroUmeUmComoPrimeirosElementos() {
	//chamamos setUp() antes de cada método de teste
	setUp();
	esperado = Arrays.asList(0, 1, 1);
	recebido = retornaQuantidadeDeElementos(3);

	assertEquals(esperado, recebido);
	assertTrue(finonacci.hasNext());
}</pre><p>A opção ninja pra melhorar a nossa classe é não chamar método privado algum, simplesmente passamos o método para público novamente e usamos a Annotation @Before que faz com que o JUnit execute esse método antes de cada método de teste (que está com o @Test):</p><pre class="crayon-plain-tag">@Before
public void setUp() {
	recebido = new ArrayList&lt;Integer&gt;();
	finonacci = new FibonacciIteratorFinal();
}

@Test
public void deveRetonarZeroUmeUmComoPrimeirosElementos() {
	List&lt;Integer&gt; esperado = Arrays.asList(0,1,1);
	List&lt;Integer&gt; recebido = new ArrayList&lt;Integer&gt;();
	FibonacciIteratorFinal finonacci = new FibonacciIteratorFinal();

	recebido.add(finonacci.value());
	finonacci = finonacci.next();
	recebido.add(finonacci.value());
	finonacci = finonacci.next();
	recebido.add(finonacci.value());

	assertEquals(esperado, recebido);
	assertTrue(finonacci.hasNext());
}

@Test
public void deveRetonarOsOitoPrimeirosElementos() {
	List&lt;Integer&gt; esperado = Arrays.asList(0,1,1,2,3,5,8,13);
	List&lt;Integer&gt; recebido = new ArrayList&lt;Integer&gt;();
	FibonacciIteratorFinal finonacci = new FibonacciIteratorFinal();

	recebido.add(finonacci.value());
	finonacci = finonacci.next();
	recebido.add(finonacci.value());
	finonacci = finonacci.next();
	recebido.add(finonacci.value());
	finonacci = finonacci.next();
	recebido.add(finonacci.value());
	finonacci = finonacci.next();
	recebido.add(finonacci.value());
	finonacci = finonacci.next();
	recebido.add(finonacci.value());
	finonacci = finonacci.next();
	recebido.add(finonacci.value());
	finonacci = finonacci.next();
	recebido.add(finonacci.value());

	assertEquals(esperado, recebido);
	assertTrue(finonacci.hasNext());
}</pre><p><span style="font-size: 1rem; line-height: 1.714285714;">Outro trecho de código que se repete bastante é a chamada ao next() e value(), e isso pode piorar dependendo da quantidade que queremos retornar para o nosso teste. Nesse caso pode ser uma boa alternativa criar um método privado para eliminar esse código repetido que torna a leitura do métodos de teste um pouco mais complicado. E a refatoração fica assim:</span></p><pre class="crayon-plain-tag">@Test
public void deveRetonarZeroUmeUmComoPrimeirosElementos() {
	esperado = Arrays.asList(0, 1, 1);
	recebido = retornaQuantidadeDeElementos(3);

	assertEquals(esperado, recebido);
	assertTrue(finonacci.hasNext());
}

@Test
public void deveRetonarOsOitoPrimeirosElementos() {
	esperado = Arrays.asList(0, 1, 1, 2, 3, 5, 8, 13);
	recebido = retornaQuantidadeDeElementos(8);

	assertEquals(esperado, recebido);
	assertTrue(finonacci.hasNext());
}

private List&lt;Integer&gt; retornaQuantidadeDeElementos(int qtd) {
	qtd--;
	recebido.add(finonacci.value());
	for (int i = 0; i &lt; qtd; i++) {
		finonacci = finonacci.next();
		recebido.add(finonacci.value());
	}
	return recebido;
}</pre><p>Assim deixamos a nossos testes desacoplados, é claro que existem mais situações e técnicas que não foram abordados nesse post, mas esses são os alguns dos problemas mais recorrente que podem ocorrer. Observe que utilizamos o @Before no setup() fazendo com que o JUnit execute esse método antes de cada teste, e de modo semelhante temos também o método <a title="Annotation @After Junit" href="http://junit.sourceforge.net/javadoc/org/junit/After.html" target="_blank">@After</a> que é executado depois de cada método de teste, que é bastante útil quando temos que liberar recursos, como por exemplo quando abrimos um arquivo ou conexão com o banco de dados.</p>
<div class='yarpp-related-rss'>
<h3>Postagens Relacionadas:</h3><ol>
<li><a href="http://grupohaw.com.br/2010/04/16/teste-unitario-com-junit-rapidinha/" rel="bookmark" title="Teste Unitário com JUnit &#8211; Rapidinho">Teste Unitário com JUnit &#8211; Rapidinho </a></li>
<li><a href="http://grupohaw.com.br/2010/10/04/enums/" rel="bookmark" title="Enums &#8211; Rapidinho">Enums &#8211; Rapidinho </a></li>
<li><a href="http://grupohaw.com.br/2009/11/07/metodo-variavel-e-classe-final/" rel="bookmark" title="Método, Variável e Classe Final">Método, Variável e Classe Final </a></li>
</ol>
<img src="http://yarpp.org/pixels/2dafabbfbd5e04d2e58019e85e695e8d" alt="YARPP"/>
</div>
]]></content:encoded>
			<wfw:commentRss>http://grupohaw.com.br/2014/04/02/mantendo-seus-testes-de-unidade-desacoplados-teste-isolado-isolated-test/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Energizando as Reuniões Diárias</title>
		<link>http://grupohaw.com.br/2014/04/01/energizando-as-reunioes-diarias/</link>
		<comments>http://grupohaw.com.br/2014/04/01/energizando-as-reunioes-diarias/#comments</comments>
		<pubDate>Wed, 02 Apr 2014 01:49:07 +0000</pubDate>
		<dc:creator><![CDATA[Gabriel Rubens]]></dc:creator>
				<category><![CDATA[Engenharia de Software]]></category>
		<category><![CDATA[Reunião Diária]]></category>
		<category><![CDATA[reunião em pé]]></category>
		<category><![CDATA[Scrum]]></category>
		<category><![CDATA[Stand-up meeting]]></category>

		<guid isPermaLink="false">http://grupohaw.com.br/?p=1207</guid>
		<description><![CDATA[<div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_50170689"></div></div></div>Algumas vezes temos o “problema” da equipe começar a crescer, e isso torna a Reuniões Diárias, e a primeira solução pra isso é dividir em equipes menores, com até 9 membros. Mas nem sempre a ambiente permite isso, há diversos problemas que posso sitar, mas esse não é o foco. O fato é, algumas pessoas [...]<div class='yarpp-related-rss'>
<h3>Postagens Relacionadas:</h3><ol>
<li><a href="http://grupohaw.com.br/2011/02/18/todos-de-pe/" rel="bookmark" title="Todos de pé!">Todos de pé! </a></li>
<li><a href="http://grupohaw.com.br/2013/07/17/scrum-em-acao-scrum-in-action-voce-deveria-ler/" rel="bookmark" title="Scrum em Ação &#8220;Scrum in Action&#8221; você deveria ler">Scrum em Ação &#8220;Scrum in Action&#8221; você deveria ler </a></li>
</ol>
<img src="http://yarpp.org/pixels/2dafabbfbd5e04d2e58019e85e695e8d" alt="YARPP"/>
</div>
]]></description>
				<content:encoded><![CDATA[<div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_50170689"></div></div></div><div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_50170689"></div></div></div><p>Algumas vezes temos o “problema” da equipe começar a crescer, e isso torna a <a title="Todos de pé!" href="http://grupohaw.com.br/2011/02/18/todos-de-pe/" target="_blank">Reuniões Diárias</a>, e a primeira solução pra isso é dividir em equipes menores, com até 9 membros. Mas nem sempre a ambiente permite isso, há diversos problemas que posso sitar, mas esse não é o foco.<br />
O fato é, algumas pessoas tem mais dificuldades em manter a atenção em reuniões (mesmo quando há menos de 9 membros), algumas ficam conversando até chegar na vez dela de falar… E assim vai!<br />
Uma possível solução é tentar aplicar alguma dinâmica de grupo para energizar a Reunião Diária, e a premissa básica é que a dinâmica tem que ser fácil o suficiente para não tornar a Reunião demorada e tem que prender a atenção para que os envolvidos não percam o foco.<span id="more-1207"></span></p>
<p>As equipes iniciantes normalmente seguem o modelo que é proposto no Guia Scrum para manter um padrão de fala, mas as mais maduras acabam deixando de lado esse modo “mecânico” de falar. Para a dinâmica dar certo é necessário estabelecer duas pequenas restrições.</p>
<ol>
<li>Uma pessoa inicia a Reunião falando qual o valor entregou desde a Reunião anterior (só manter o mesmo modo de falar usado pela equipe).</li>
<li>A pessoa que acabou de falar indica quem é a próxima pessoa que deve falar e não pode ser a pessoa que está do lado dela.</li>
</ol>
<p>Esse é um bom modo de fazer com que todos os envolvidos na Reunião tenham que manter a atenção, por ter que ficar de olho se é o próximo a falar, diferente de quando a Reunião vai seguindo em circulo. Além disso cada membro deve ter atenção para saber que a próxima pessoa que ele vai indicar não pode ter falado ainda.</p>
<p>Desse jeito as pessoas saiam um pouco da rotina.</p>
<p>Abraço</p>
<div class='yarpp-related-rss'>
<h3>Postagens Relacionadas:</h3><ol>
<li><a href="http://grupohaw.com.br/2011/02/18/todos-de-pe/" rel="bookmark" title="Todos de pé!">Todos de pé! </a></li>
<li><a href="http://grupohaw.com.br/2013/07/17/scrum-em-acao-scrum-in-action-voce-deveria-ler/" rel="bookmark" title="Scrum em Ação &#8220;Scrum in Action&#8221; você deveria ler">Scrum em Ação &#8220;Scrum in Action&#8221; você deveria ler </a></li>
</ol>
<img src="http://yarpp.org/pixels/2dafabbfbd5e04d2e58019e85e695e8d" alt="YARPP"/>
</div>
]]></content:encoded>
			<wfw:commentRss>http://grupohaw.com.br/2014/04/01/energizando-as-reunioes-diarias/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Como desmotivar pessoas, silos/ilhas de conhecimento e mais</title>
		<link>http://grupohaw.com.br/2014/03/05/como-desmotivar-pessoas-silosilhas-de-conhecimento-e-mais/</link>
		<comments>http://grupohaw.com.br/2014/03/05/como-desmotivar-pessoas-silosilhas-de-conhecimento-e-mais/#comments</comments>
		<pubDate>Wed, 05 Mar 2014 12:44:35 +0000</pubDate>
		<dc:creator><![CDATA[Gabriel Rubens]]></dc:creator>
				<category><![CDATA[Off Topic]]></category>

		<guid isPermaLink="false">http://grupohaw.com.br/?p=1200</guid>
		<description><![CDATA[<div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_61947223"></div></div></div>- Junta essas classes em uma só, muda isso e apaga aquilo. &#8211; Assim fica mais fácil de entender, e as responsabilidades são diferentes. Você enxerga algum problema? Qual o motivo de juntar tudo? &#8211; Porque eu quero que junte! &#8211; Estamos gravando os logs SGDBR. &#8211; Poderia gravar em um NoSQL pra ser mais [...]<div class='yarpp-related-rss'>
<h3>Postagens Relacionadas:</h3><ol>
<li><a href="http://grupohaw.com.br/2011/01/18/ruprica-utopia-pobre-ou-a-vida-como-ela-e/" rel="bookmark" title="RUP(Rica Utopia Pobre) ou A vida como ela é.">RUP(Rica Utopia Pobre) ou A vida como ela é. </a></li>
<li><a href="http://grupohaw.com.br/2013/08/08/5-dicas-para-ser-mais-efetivo-em-suas-apresentacoes/" rel="bookmark" title="5 dicas para ser mais efetivo em suas apresentações">5 dicas para ser mais efetivo em suas apresentações </a></li>
<li><a href="http://grupohaw.com.br/2009/10/10/como-configurar-variaveis-de-ambiente-para-usar-o-java-2/" rel="bookmark" title="Como Configurar Variáveis de Ambiente para Usar o Java?">Como Configurar Variáveis de Ambiente para Usar o Java? </a></li>
</ol>
<img src="http://yarpp.org/pixels/2dafabbfbd5e04d2e58019e85e695e8d" alt="YARPP"/>
</div>
]]></description>
				<content:encoded><![CDATA[<div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_61947223"></div></div></div><div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_61947223"></div></div></div><blockquote><p>- Junta essas classes em uma só, muda isso e apaga aquilo.<br />
&#8211; Assim fica mais fácil de entender, e as responsabilidades são diferentes. Você enxerga algum problema? Qual o motivo de juntar tudo?<br />
&#8211; Porque eu quero que junte!</p>
<p>&#8211; Estamos gravando os logs SGDBR.<br />
&#8211; Poderia gravar em um NoSQL pra ser mais rápido e não gastar recursos da aplicação. E com o MongoDB podemos configurar pra um escrita mais rápida já que esse tipo de log aqui não há problema em perder alguma linha o mais importante é a velocidade.<br />
&#8211; Poderia sim, mas eu não quero fazer assim!</p></blockquote>
<p>Esses diálogos hipotéticos já falam por si, mas vamos continuar&#8230;<span id="more-1200"></span></p>
<p>Imagine a situação:<br />
Uma empresa tem um problema, esse problema afeta o trabalhos de todos da equipe. A solução pode ser uma nova tecnologia que será adotada ou um novo modo de usar a engenharia.<br />
E pra completar a situação anterior…<br />
Nessa empresa há ilhas de conhecimento (ou silos), onde uma pessoa (ou grupo) detém o conhecimento total de determinada parte do processo (talvez essa pessoa impeça que outras melhorem esse processo pra não ter que sair da zona de conforto), e só para ela é delegada a tarefa de fazer pesquisas novas, pode ser que essa pessoa nem tenham tando conhecimento assim e é bem provável que não tenha mesmo.<br />
Pra piorar ainda mais tudo isso, a parte superior da hierarquia só delega as mudanças para essa pessoa, deixando de fora qualquer outro membro da equipe que tenha mais conhecimento. <a title="Pollice verso" href="http://pt.wikipedia.org/wiki/Pollice_verso" target="_blank">Sendo assim há alguém que é o dono da verdade e levanta ou abaixa o polegar pra todas as situações</a>.</p>
<p>Nessa situação relatada podemos observar uma série de problemas, não precisamos nem pensar muito, mas vou listar alguns:<br />
<a title="Inteligência coletiva" href="http://pt.wikipedia.org/wiki/Intelig%C3%AAncia_coletiva" target="_blank">Um só pessoa tem um conhecimento limitado</a>, e quando delegamos as tarefas pra essa única pessoa deixamos de aproveitar o <a title="Conhecimento coletivo" href="http://www.tiespecialistas.com.br/2013/11/afinal-o-que-e-conhecimento-coletivo/" target="_blank">conhecimento coletivo</a> da equipe, e é sabido que <a title="Duas cabeças pensam melhor que uma só" href="http://www.edigital.com.br/categoryblog/78-a-sociedade-baseada-no-conhecimento-coletivo" target="_blank">duas cabeças pensam melhor que uma só</a>.<br />
Outro problema é que ninguém gosta de ser pego de surpresa, imagine você de uma hora para outra saber que não pode mais usar a <a title="Eclipse IDE" href="https://www.eclipse.org/" target="_blank">IDE Eclipse</a> e de agora em diante todos tem que usar <a title="JBoss IDE" href="http://www.jboss.org/jbosside" target="_blank">JBoss IDE</a> ou até mesmo o <a title="Netbeans" href="https://netbeans.org/" target="_blank">NetBeans</a>, é claro que esse exemplo é bem simples, e pode até ser que essa mudança vá resultar em ganhos de alguma natureza, mas o problema entra quando a mudança é imposta, quando não há avisos nem consultas, quando você deixa de perguntar pra outras pessoas da equipe se mais alguém tem alguma ideia melhor ou possui experiência pra saber de implicações que podem ocorrer.<br />
As pessoas cuidam das mudanças quando elas sentem que fazem parte dela, quando sentem que de alguma forma a sua opinião foi levada em consideração e mesmo que o resultado final seja uma decisão contrária ao que ela achou, pelo menos deve haver alguma justificativa, não um simples “eu não quero que seja assim”.<br />
E uma das consequências de tudo isso é que a equipe para de zelar pelo bom andamento do trabalho, claro que ninguém vai deixar de fazer o seu trabalho por “birra”, pois aí seria um problema ainda maior (qualquer profissional vai fazer o seu trabalho direito), mas você deixa de aproveitar o conhecimento de outras pessoas da equipe que pode ter experiência ou estudado assuntos semelhantes.<br />
Por exemplo: Você quer implementar os testes de unidade em sua equipe. Pra uma pessoa que nunca nem fez um teste de unidade, há a possibilidade de a primeira coisa que ele vá fazer é procurar uma ferramenta pra isso, e essa pessoa pode ter uma única fonte de pesquisa. Mas para implementar os testes é necessário ter pelo menos conhecimento teórico, saber sobre boas práticas, como organizar o código, quando usar Mocks, quando ir no banco, quando paralelizar os testes e etc… Caso contrário passaremos a ser reféns dessa ferramenta escolhida por achismo e mania de ir sempre na mesma fonte, e indo além, assim que os testes passarem a ser caros de mais pra serem implementados eles serão jogados fora, sendo que o problema pode ser da ferramenta.</p>
<p>Esse simples exemplo ilustra como podemos com pequenas atitude acabar com todo o ânimo de boa parte de uma equipe, e como consequência ir minando as aptidões que cada um tem… As vezes ter um comportamento padronizado pode fazer com que erros sejam evitados, mas isso elimina completamente o trabalho criativo, e sem criatividade não há inovação e provavelmente ainda estaríamos usando o <a title="ENIAC" href="http://pt.wikipedia.org/wiki/ENIAC" target="_blank">ANIAC</a>.<br />
Ao invés de colocar cabrestos em todos da equipe e podar a criatividade centrando todas as decisões em uma única pessoa devemos ter o costume de dar feedbacks para as pessoas, assim fazemos o mais importante: Elevar o nível da equipe!</p>
<div class='yarpp-related-rss'>
<h3>Postagens Relacionadas:</h3><ol>
<li><a href="http://grupohaw.com.br/2011/01/18/ruprica-utopia-pobre-ou-a-vida-como-ela-e/" rel="bookmark" title="RUP(Rica Utopia Pobre) ou A vida como ela é.">RUP(Rica Utopia Pobre) ou A vida como ela é. </a></li>
<li><a href="http://grupohaw.com.br/2013/08/08/5-dicas-para-ser-mais-efetivo-em-suas-apresentacoes/" rel="bookmark" title="5 dicas para ser mais efetivo em suas apresentações">5 dicas para ser mais efetivo em suas apresentações </a></li>
<li><a href="http://grupohaw.com.br/2009/10/10/como-configurar-variaveis-de-ambiente-para-usar-o-java-2/" rel="bookmark" title="Como Configurar Variáveis de Ambiente para Usar o Java?">Como Configurar Variáveis de Ambiente para Usar o Java? </a></li>
</ol>
<img src="http://yarpp.org/pixels/2dafabbfbd5e04d2e58019e85e695e8d" alt="YARPP"/>
</div>
]]></content:encoded>
			<wfw:commentRss>http://grupohaw.com.br/2014/03/05/como-desmotivar-pessoas-silosilhas-de-conhecimento-e-mais/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Livros que li em 2013 &#8211; por Gabriel Rubens</title>
		<link>http://grupohaw.com.br/2014/01/08/livros-que-li-em-2013-por-gabriel-rubens/</link>
		<comments>http://grupohaw.com.br/2014/01/08/livros-que-li-em-2013-por-gabriel-rubens/#comments</comments>
		<pubDate>Wed, 08 Jan 2014 18:18:38 +0000</pubDate>
		<dc:creator><![CDATA[Gabriel Rubens]]></dc:creator>
				<category><![CDATA[Desenvolvimento de Software]]></category>
		<category><![CDATA[Engenharia de Software]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Livro]]></category>
		<category><![CDATA[Orientação a Objeto]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Código Limpo]]></category>
		<category><![CDATA[engenharia de software]]></category>
		<category><![CDATA[Extreme Programming]]></category>
		<category><![CDATA[Scrum]]></category>
		<category><![CDATA[Startup]]></category>
		<category><![CDATA[TDD]]></category>
		<category><![CDATA[Test]]></category>
		<category><![CDATA[VRaptor]]></category>
		<category><![CDATA[XP]]></category>

		<guid isPermaLink="false">http://grupohaw.com.br/?p=1183</guid>
		<description><![CDATA[<div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_1979149"></div></div></div>Olá a todos&#8230; Sem dúvida esse foi um dos anos que mais aprendi, foi um ano incrível. Apesar de ter estudado muito menos do que eu planejava por não ter me organizado muito bem no primeiro semestre (acho que não li nada no primeiro semestre), não por falta de tempo como foi a desculpa de [...]<div class='yarpp-related-rss'>
<h3>Postagens Relacionadas:</h3><ol>
<li><a href="http://grupohaw.com.br/2013/07/28/livro-scrum-gestao-agil-para-projetos-de-sucesso/" rel="bookmark" title="Livro Scrum: Gestão ágil para projetos de sucesso">Livro Scrum: Gestão ágil para projetos de sucesso </a></li>
<li><a href="http://grupohaw.com.br/2011/02/08/quebrando-em-tarefas/" rel="bookmark" title="Quebrando em Tarefas!">Quebrando em Tarefas! </a></li>
<li><a href="http://grupohaw.com.br/2013/08/11/grupo-haw-no-agile-brazil-2013/" rel="bookmark" title="Grupo Haw no Agile Brazil 2013!">Grupo Haw no Agile Brazil 2013! </a></li>
</ol>
<img src="http://yarpp.org/pixels/2dafabbfbd5e04d2e58019e85e695e8d" alt="YARPP"/>
</div>
]]></description>
				<content:encoded><![CDATA[<div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_1979149"></div></div></div><div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_1979149"></div></div></div><p>Olá a todos&#8230;<br />
Sem dúvida esse foi um dos anos que mais aprendi, foi um ano incrível. Apesar de ter estudado muito menos do que eu planejava por não ter me organizado muito bem no primeiro semestre (acho que não li nada no primeiro semestre), não por falta de tempo como foi a desculpa de muitos, mas por não ter conciliado muito bem todas as coisas. Mas como disse, mesmo assim foi um ano em que aprendi muito, me foquei bastante em Engenharia de Software, mais precisamente em Scrum, XP e Kanban, não só nos livros como nas leituras de artigos, mas é claro que li muito sobre programação e também aprendi muitas coisas novas nisso, realmente posso dizer que me tornei um programador melhor.<br />
Mas vamos a lista de livros de 2013:</p>
<p>Guia da Startup: Como startups e empresas estabelecidas podem criar produtos web rentáveis (<a href="https://casadocodigo.refersion.com/l/552.1600" target="_blank">comprar</a>)</p>
<p><a title="Scrum em Ação “Scrum in Action” você deveria ler" href="http://grupohaw.com.br/2013/07/17/scrum-em-acao-scrum-in-action-voce-deveria-ler/" target="_blank">Scrum in Action: Agile Software Project Management and Development</a></p>
<p><a title="Guia do Scrum em Português do Brasil" href="http://grupohaw.com.br/2013/06/16/guia-do-scrum-em-portugues-do-brasil/" target="_blank">Scrum Guide</a> (<a title="Baixar o Guia Srum - Scrum Guide" href="https://www.scrum.org/Scrum-Guide" target="_blank">baixar</a>)</p>
<p>Scrum Gestão ágil para projetos de sucesso (<a title="Link para o Livro de Scrum" href="https://casadocodigo.refersion.com/l/1de.1475" target="_blank">comprar</a>)</p>
<p><span id="more-1183"></span>Test-Driven Development: Teste e Design no Mundo Real (<a href="https://casadocodigo.refersion.com/l/56e.1596" target="_blank">comprar</a>)</p>
<p>VRaptor: Desenvolvimento ágil para web com Java (<a href="https://casadocodigo.refersion.com/l/a12.1597" target="_blank">comprar</a>)</p>
<p><a title="Livro Scrum – Guia Prático para Projetos Ágeis" href="http://grupohaw.com.br/2013/09/20/livro-scrum-guia-pratico-para-projetos-ageis/" target="_blank">Scrum &#8211; Guia Prático para Projetos Ágeis</a></p>
<p>Introdução à Arquitetura e Design de Software (<a href="https://casadocodigo.refersion.com/l/cce.1625" target="_blank">comprar</a>)</p>
<p>Agile: Desenvolvimento de software com entregas frequentes e foco no valor de negócio (<a href="https://casadocodigo.refersion.com/l/b37.1598" target="_blank">comprar</a>)</p>
<p>Test Driven Development: By Example</p>
<p>The Clean Coder: A Code of Conduct for Professional Programmers</p>
<p>JPA Eficaz: As melhores práticas de persistência de dados em Java (<a href="https://casadocodigo.refersion.com/l/188.1599" target="_blank">comprar</a>)</p>
<p>Code Simplicity: The Fundamentals of Software</p>
<p><a title="Lista de livros lidos em 2013" href="https://www.goodreads.com/user_challenges/969672" target="_blank">Clique aqui para ver essa lista no Goodreads.com.</a></p>
<p>Eu queria ter feito um resumo de cada um desses livros, por sorte achei que todos foram legais e mesmo os que eu não gostei tanto houveram coisas que deram pra aproveitar.<br />
Eu sei que foi poucos livros que li comparados a outros Devs que conheço, mas foi alguma coisa, espero melhorar pro próximo ano.</p>
<p>Uma dica pra quem fala que está sem tempo: Todo mundo tem a mesma quantidade de horas no dia, é só parar e analisar quais momentos você pode aproveitar, acho que não da pra ficar o tempo todo lendo e estudando pois também há um mundo fora da programação e dos livros, com eu disse é só achar os tempos que sobram entre família, namorada e amigos, eu por exemplo sempre leio no tempo que pego ônibus e tento ler 1 hora por dia em casa. Como? Eu não sou fã de novelas, então leio enquanto a minha namorada/mão estão vendo, as vezes minha namorada vai estudar depois da novela, então aproveito esse tempo também, outra coisa foi diminuir o acesso ao Facebook, claro que lá eu posso encontrar várias pessoas que não vejo com frequência, mas por outro lado não da pra ficar o tempo todo olhando pra &#8220;nada&#8221; lá. O segredo e maximizar a qualidade e não a quantidade de tempo estudando.<br />
E que venha 2014! <a title="Meta de leituras para 2014" href="https://www.goodreads.com/user_challenges/1108450" target="_blank">Com a nova meta de leitura de 36 livros</a>.</p>
<div class='yarpp-related-rss'>
<h3>Postagens Relacionadas:</h3><ol>
<li><a href="http://grupohaw.com.br/2013/07/28/livro-scrum-gestao-agil-para-projetos-de-sucesso/" rel="bookmark" title="Livro Scrum: Gestão ágil para projetos de sucesso">Livro Scrum: Gestão ágil para projetos de sucesso </a></li>
<li><a href="http://grupohaw.com.br/2011/02/08/quebrando-em-tarefas/" rel="bookmark" title="Quebrando em Tarefas!">Quebrando em Tarefas! </a></li>
<li><a href="http://grupohaw.com.br/2013/08/11/grupo-haw-no-agile-brazil-2013/" rel="bookmark" title="Grupo Haw no Agile Brazil 2013!">Grupo Haw no Agile Brazil 2013! </a></li>
</ol>
<img src="http://yarpp.org/pixels/2dafabbfbd5e04d2e58019e85e695e8d" alt="YARPP"/>
</div>
]]></content:encoded>
			<wfw:commentRss>http://grupohaw.com.br/2014/01/08/livros-que-li-em-2013-por-gabriel-rubens/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Por onde começar no desenvolvimento de um software</title>
		<link>http://grupohaw.com.br/2013/11/21/por-onde-comecar-no-desenvolvimento-de-um-software/</link>
		<comments>http://grupohaw.com.br/2013/11/21/por-onde-comecar-no-desenvolvimento-de-um-software/#comments</comments>
		<pubDate>Thu, 21 Nov 2013 02:26:00 +0000</pubDate>
		<dc:creator><![CDATA[Gabriel Rubens]]></dc:creator>
				<category><![CDATA[Engenharia de Software]]></category>
		<category><![CDATA[Off Topic]]></category>

		<guid isPermaLink="false">http://grupohaw.com.br/?p=1126</guid>
		<description><![CDATA[<div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_61194711"></div></div></div>Lembro de ter lido esse um post com o título &#8220;Por onde começar no desenvolvimento de um software&#8221; no dia em que foi publicado no GUJ 01/02/2011, e esses dias eu estava procurando um post que eu tinha marcado como favoritos no GUJ e me deparei com esse. O Tiago Peczenyj (http://pacman.blog.br/) escreveu uma resposta de forma [...]<div class='yarpp-related-rss'>
<h3>Postagens Relacionadas:</h3><ol>
<li><a href="http://grupohaw.com.br/2011/01/03/desenvolvimento-de-software-nao-e-especulacao/" rel="bookmark" title="Desenvolvimento de Software não é especulação!">Desenvolvimento de Software não é especulação! </a></li>
<li><a href="http://grupohaw.com.br/2013/07/22/manifesto-para-desenvolvimento-agil-de-software/" rel="bookmark" title="Manifesto para Desenvolvimento Ágil de Software">Manifesto para Desenvolvimento Ágil de Software </a></li>
<li><a href="http://grupohaw.com.br/2011/03/21/o-efeito-stroop-no-desenvolvimento-de-software/" rel="bookmark" title="O Efeito Stroop no desenvolvimento de software">O Efeito Stroop no desenvolvimento de software </a></li>
</ol>
<img src="http://yarpp.org/pixels/2dafabbfbd5e04d2e58019e85e695e8d" alt="YARPP"/>
</div>
]]></description>
				<content:encoded><![CDATA[<div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_61194711"></div></div></div><div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_61194711"></div></div></div><p>Lembro de ter lido esse um post com o título &#8220;Por onde começar no desenvolvimento de um software&#8221; no dia em que foi publicado no <a title="GUJ" href="http://guj.com.br" target="_blank">GUJ</a> 01/02/2011, e esses dias eu estava procurando um post que eu tinha marcado como favoritos no GUJ e me deparei com esse. O <a title="Twitter Tiago Peczenyj" href="https://twitter.com/pac_man" target="_blank">Tiago Peczenyj</a> (<a href="http://pacman.blog.br/">http://pacman.blog.br/</a>) escreveu uma resposta de forma totalmente descontraída mas ele não tem ideia influência teve sobre o modo como eu vejo e desenvolvimento, lembro que naquele tempo eu já lia muito sobre Agile, XP, Scrum, TDD e etc, já havia até lido livros, mas como eu não trabalhava com isso ficava uma lacuna, faltava alguma coisa/alguém que me explicasse qual o fluxo de trabalho de tudo isso, o pulo do gato pra juntar aquele monte de informações que eu estava lendo e vendo em palestras. E foi aí que por acaso eu li esses <a title="GUJ Por onde começar no desenvolvimento de um software" href="http://www.guj.com.br/java/231734-por-onde-comecar-no-desenvolvimento-de-um-software" target="_blank">post</a> e vi a seguinte resposta:</p>
<blockquote><p><b>inicie </b>usando um software parecido.</p>
<p>vc quer fazer um webmail? use o gmail, hotmail, mailinator (não lembro de outro minimalista apesar deste ter uma proposta bem DIFERENTE).</p>
<p>ja usou? faça uma prova de conceito. Uns htmls estaticos por exemplo, para vc clicar e brincar. Adicione um javascriptzinho se desejar.</p>
<p>entendeu como alguem usaria? então pense na coisa mais simples possivel de ser feita. Por exemplo, mandar um email para vc mesmo com subject de teste e mensagem teste 123. Não serve pra nada mas vc ENVIOU um email, vc fez um software que chama uma biblioteca ou componente que manda email provavelmente e configurou as coisas certas. Agora disso para algo que recebe os dados de um POST HTTP é um pulo, assim como um login para dar acesso ao mesmo.</p>
<p>é claro que existe banco, design grafico,SEO, segurança, etc. Mas se vc extrai o VALOR do software e proriza o mesmo, fazendo algo que funciona desde a versão 0.0.1 é maneiro para caramba.</p>
<p>Agora imagine que vc faz com TDD ou ATDD ?</p>
<p>Vc tem que fazer um webmail. Vc cria um teste onde vc recebe um email e executa o software e o teste falha pq vc não implementou. Vc implementa e roda o teste. Mas como testar isto?</p>
<p>Ai entra a safadeza. Digamos que vc usa o PQPMail, um framework BOLADÃO de envio de email. E é simples</p>
<div>
<div></div>
<p></p><pre class="crayon-plain-tag">IPQPMail pqpmail = new PQPMail(configuration);
pqpmail.to("vc@mail.com");
pqpmail.from("papainoel@mail.com");
pqpmail.subject("teste");
pqpmail.message("teste 123");
pqpmail.send();</pre><p><span style="line-height: 1.714285714; font-size: 1rem;">OPA! o seu codigo não é nada mais do que chamar um codigo de terceiros com os parametros certos e &#8220;enviar&#8221;.<span id="more-1126"></span></span></p>
</div>
<p>Eu posso substituir o objeto pqpmail por um Mock &#8211; um objeto falso, de testes &#8211; e verifico se os metodos foram chamados com os argumentos certos. Existem varias bibliotecas para criar Mocks em java.</p>
<p>Mas isto manda email? Bom vc pode conferir na sua caixa postal. Vc pode automatizar isto? Pode, assim que descobrir como.</p>
<p>Mas vc precisa de muitas firulas no sistema, muitas funcionalidades! E agora?</p>
<p>Bom, se vc quebra em funcionalidades e pensa em uma trilha para implementar as paradas, o resto vc cria com o tempo. Pense bem, um webmail pode ser algo tão simples quanto o formulario de post do GUJ removendo os botoes para negrito, italico, etc!</p>
<p>E como vc evolui? Deixe as pessoas mandar email ue. Elas vão comentar o que pode ser e o que não pode. De repente vc não precisa ter as funcionalidades X e Y e sim A e B. De repente vc não precisa de banco de dados.</p>
<p>Mas como o software escala? Isto é uma boa pergunta. Se é um sistema web, vc tem certas tecnicas para escalar um sistema assim. Para isso vc vai querer saber quanta carga um servidor aguenta. Se vc deixa rodando toda a noite um teste de carga e analisa CPU, IO, Memoria, etc vc sabe como a adição de codigo afeta a performance. Se cair 1000x de um dia para o outro tem algo errado. Se vc sabe como escala e quanto um servidor aguenta vc consegue prever coisas como</p>
<p>&#8211; quanto precisa para suportar 1000 usuarios simultaneos? e 1 milhão?</p>
<p>É claro que vc parar uma hora para produzir um CSS maneiro. Fazer uma documentação DUCA ou tunar o banco de dados socando indices e outras coisas, ou vendo opções de cache para os servidores. Mas faça isso sob demanda ou quando estiver de saco cheio.</p>
<p>Tenho amigos que adicionaram track via analitics de TODAS as funcionalidades de um dado site. Eis que descobriram coisas como 90% das pessoas usavam um dado link ao inves de um botão. Dai removiam o botão e colocavam mais links. Navegação dobrou.</p>
<p>Nessas horas tem que ser malandro. Para isso:</p>
<p>quer fazer um software? use software. use bastante!<br />
quer programar? conheça quem programa coisas e aprenda.<br />
coloque logo em produção e deixe as pessoas usarem. sei la, seu pai, sua irmã, seus colegas de AD&amp;D.</p>
<p>&#8220;fiz um software que calcula o Indice de Massa Corporal. os gordinhos vão usar?&#8221;<br />
&#8220;fiz um programa que calcula a expectativa de vida a partir da quantidade de cigarros fumados. fumantes vão usar?&#8221;<br />
&#8220;fiz um site de compras coletivas focado no publico marciano. os ets vão dar dinheiro pra essa parada?&#8221;</p>
<p>perceba que é menos tecnico e mais jeito de fazer as coisas.</p></blockquote>
<p>Essa descrição descontraída pode não ser o melhor lugar para aprender sobre Agile, mas lembro bem de ter lido esse post várias vezes e ter a sensação de finalmente estar entendendo como as coisas funcionam (é menos técnico e mais jeito de fazer as coisas).</p>
<p>Link do post: <a href="http://www.guj.com.br/java/231734-por-onde-comecar-no-desenvolvimento-de-um-software#1192186">http://www.guj.com.br/java/231734-por-onde-comecar-no-desenvolvimento-de-um-software#1192186</a></p>
<div class='yarpp-related-rss'>
<h3>Postagens Relacionadas:</h3><ol>
<li><a href="http://grupohaw.com.br/2011/01/03/desenvolvimento-de-software-nao-e-especulacao/" rel="bookmark" title="Desenvolvimento de Software não é especulação!">Desenvolvimento de Software não é especulação! </a></li>
<li><a href="http://grupohaw.com.br/2013/07/22/manifesto-para-desenvolvimento-agil-de-software/" rel="bookmark" title="Manifesto para Desenvolvimento Ágil de Software">Manifesto para Desenvolvimento Ágil de Software </a></li>
<li><a href="http://grupohaw.com.br/2011/03/21/o-efeito-stroop-no-desenvolvimento-de-software/" rel="bookmark" title="O Efeito Stroop no desenvolvimento de software">O Efeito Stroop no desenvolvimento de software </a></li>
</ol>
<img src="http://yarpp.org/pixels/2dafabbfbd5e04d2e58019e85e695e8d" alt="YARPP"/>
</div>
]]></content:encoded>
			<wfw:commentRss>http://grupohaw.com.br/2013/11/21/por-onde-comecar-no-desenvolvimento-de-um-software/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>O que você quer ser quando crescer? Programador.</title>
		<link>http://grupohaw.com.br/2013/11/09/o-que-voce-quer-ser-quando-crescer-programador/</link>
		<comments>http://grupohaw.com.br/2013/11/09/o-que-voce-quer-ser-quando-crescer-programador/#comments</comments>
		<pubDate>Sat, 09 Nov 2013 17:49:05 +0000</pubDate>
		<dc:creator><![CDATA[Gabriel Rubens]]></dc:creator>
				<category><![CDATA[Off Topic]]></category>

		<guid isPermaLink="false">http://grupohaw.com.br/?p=1129</guid>
		<description><![CDATA[<div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_67899697"></div></div></div>Todo mundo nesse país deveria prender a programar um computador&#8230; Porque isso nos ensina a pensar. Para saber mais sobre esse projeto vá em Code.org.<div class='yarpp-related-rss'>
<h3>Postagens Relacionadas:</h3><ol>
<li><a href="http://grupohaw.com.br/2010/10/06/o-programador-pragmatico%e2%80%93capitulo-2-segunda-parte-2/" rel="bookmark" title="O Programador Pragmático – Capítulo 2 – segunda parte">O Programador Pragmático – Capítulo 2 – segunda parte </a></li>
<li><a href="http://grupohaw.com.br/2010/10/02/o-programador-pragmatico-capitulo-1/" rel="bookmark" title="O Programador Pragmático – Capítulo 1">O Programador Pragmático – Capítulo 1 </a></li>
<li><a href="http://grupohaw.com.br/2010/10/05/o-programador-pragmatico-capitulo-2-primeira-parte/" rel="bookmark" title="O Programador Pragmático – Capítulo 2 – primeira parte">O Programador Pragmático – Capítulo 2 – primeira parte </a></li>
</ol>
<img src="http://yarpp.org/pixels/2dafabbfbd5e04d2e58019e85e695e8d" alt="YARPP"/>
</div>
]]></description>
				<content:encoded><![CDATA[<div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_67899697"></div></div></div><div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_67899697"></div></div></div><blockquote><p><span style="line-height: 1.714285714; font-size: 1rem;">Todo mundo nesse país deveria prender a programar um computador&#8230; Porque isso nos ensina a pensar.</span></p></blockquote>
<p><iframe width="640" height="480" src="//www.youtube.com/embed/SSjm0046GwM" frameborder="0" allowfullscreen=""></iframe></p>
<p>Para saber mais sobre esse projeto vá em <a title="Code.org" href="http://code.org/" target="_blank">Code.org</a>.</p>
<div class='yarpp-related-rss'>
<h3>Postagens Relacionadas:</h3><ol>
<li><a href="http://grupohaw.com.br/2010/10/06/o-programador-pragmatico%e2%80%93capitulo-2-segunda-parte-2/" rel="bookmark" title="O Programador Pragmático – Capítulo 2 – segunda parte">O Programador Pragmático – Capítulo 2 – segunda parte </a></li>
<li><a href="http://grupohaw.com.br/2010/10/02/o-programador-pragmatico-capitulo-1/" rel="bookmark" title="O Programador Pragmático – Capítulo 1">O Programador Pragmático – Capítulo 1 </a></li>
<li><a href="http://grupohaw.com.br/2010/10/05/o-programador-pragmatico-capitulo-2-primeira-parte/" rel="bookmark" title="O Programador Pragmático – Capítulo 2 – primeira parte">O Programador Pragmático – Capítulo 2 – primeira parte </a></li>
</ol>
<img src="http://yarpp.org/pixels/2dafabbfbd5e04d2e58019e85e695e8d" alt="YARPP"/>
</div>
]]></content:encoded>
			<wfw:commentRss>http://grupohaw.com.br/2013/11/09/o-que-voce-quer-ser-quando-crescer-programador/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Guia para melhorar a performance para front-end &#8211; Perca peso com essa dieta milagrosa</title>
		<link>http://grupohaw.com.br/2013/09/25/guia-para-melhorar-a-performance-para-front-end-perca-peso-com-essa-dieta-milagrosa/</link>
		<comments>http://grupohaw.com.br/2013/09/25/guia-para-melhorar-a-performance-para-front-end-perca-peso-com-essa-dieta-milagrosa/#comments</comments>
		<pubDate>Wed, 25 Sep 2013 14:37:52 +0000</pubDate>
		<dc:creator><![CDATA[Gabriel Rubens]]></dc:creator>
				<category><![CDATA[Front-end]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Otimização]]></category>

		<guid isPermaLink="false">http://grupohaw.com.br/?p=1119</guid>
		<description><![CDATA[<div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_80501067"></div></div></div>Não tenho palavras pra acrescentar&#8230; Apenas aprenda como tornar as suas páginas mais leves. E se juntássemos os feras que trabalham em grandes portais para criar o guia definitivo de performance para front-end? Mas nada daqueles guias chatos feitos para robôs, que tal fazer algo divertido? Que tal juntar Briza Bueno(Americanas.com), Davidson Fellipe(Globo.com), Giovanni Keppelen(ex-Peixe Urbano), Jaydson Gomes(Terra), Marcel Duran(Twitter), Mike [...]<div class='yarpp-related-rss'>
<h3>Postagens Relacionadas:</h3><ol>
<li><a href="http://grupohaw.com.br/2013/09/20/livro-scrum-guia-pratico-para-projetos-ageis/" rel="bookmark" title="Livro Scrum &#8211; Guia Prático para Projetos Ágeis">Livro Scrum &#8211; Guia Prático para Projetos Ágeis </a></li>
</ol>
<img src="http://yarpp.org/pixels/2dafabbfbd5e04d2e58019e85e695e8d" alt="YARPP"/>
</div>
]]></description>
				<content:encoded><![CDATA[<div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_80501067"></div></div></div><div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_80501067"></div></div></div><p>Não tenho palavras pra acrescentar&#8230; Apenas aprenda como tornar as suas páginas mais leves.</p>
<blockquote><p>E se juntássemos os feras que trabalham em grandes portais para criar o guia definitivo de performance para front-end?</p>
<p>Mas nada daqueles guias chatos feitos para robôs, que tal fazer algo divertido? Que tal juntar <a href="http://www.brizabueno.com/">Briza Bueno</a><em>(Americanas.com)</em>, <a href="https://github.com/davidsonfellipe">Davidson Fellipe</a><em>(Globo.com)</em>, <a href="https://github.com/keppelen">Giovanni Keppelen</a><em>(ex-Peixe Urbano)</em>, <a href="https://github.com/jaydson">Jaydson Gomes</a><em>(Terra)</em>, <a href="https://github.com/marcelduran">Marcel Duran</a><em>(Twitter)</em>, <a href="https://github.com/miketaylr">Mike Taylor</a><em>(Opera)</em>, <a href="https://github.com/mangini">Renato Mangini</a><em>(Google)</em> e <a href="http://sergiolopes.org/">Sérgio Lopes</a><em>(Caelum)</em> para criar a melhor referência possível?</p>
<p>Foi isso mesmo que fizemos! E iremos te ajudar nessa batalha de criar sites cada vez mais rápidos.</p>
<p>— <a href="http://zenorocha.com/">Zeno Rocha</a>, líder do projeto.</p></blockquote>
<p><a href="http://browserdiet.com/pt/">http://browserdiet.com/pt/</a></p>
<p>Se você preferir pode dar uma olhada na apresentação antes de ler o site. Além de ser bem legal você já vai poder ter uma ideia do excelente conteúdo que terá a disposição.</p>
<iframe allowfullscreen="true" allowtransparency="true" frameborder="0" height="532" id="talk_frame_38511" mozallowfullscreen="true" src="//speakerdeck.com/player/31ed55c06ab8013086e822000a8f982b" style="border:0; padding:0; margin:0; background:transparent;" webkitallowfullscreen="true" width="625"></iframe>
<p>Obs.: O site deveria ter uma parte para doações, um trabalho bem feito desses custa no mínimo muito tempo e dedicação. Parabéns!</p>
<div class='yarpp-related-rss'>
<h3>Postagens Relacionadas:</h3><ol>
<li><a href="http://grupohaw.com.br/2013/09/20/livro-scrum-guia-pratico-para-projetos-ageis/" rel="bookmark" title="Livro Scrum &#8211; Guia Prático para Projetos Ágeis">Livro Scrum &#8211; Guia Prático para Projetos Ágeis </a></li>
</ol>
<img src="http://yarpp.org/pixels/2dafabbfbd5e04d2e58019e85e695e8d" alt="YARPP"/>
</div>
]]></content:encoded>
			<wfw:commentRss>http://grupohaw.com.br/2013/09/25/guia-para-melhorar-a-performance-para-front-end-perca-peso-com-essa-dieta-milagrosa/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Livro Scrum &#8211; Guia Prático para Projetos Ágeis</title>
		<link>http://grupohaw.com.br/2013/09/20/livro-scrum-guia-pratico-para-projetos-ageis/</link>
		<comments>http://grupohaw.com.br/2013/09/20/livro-scrum-guia-pratico-para-projetos-ageis/#comments</comments>
		<pubDate>Fri, 20 Sep 2013 14:30:24 +0000</pubDate>
		<dc:creator><![CDATA[Gabriel Rubens]]></dc:creator>
				<category><![CDATA[Livro]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Scrum]]></category>

		<guid isPermaLink="false">http://grupohaw.com.br/?p=1111</guid>
		<description><![CDATA[<div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_66777397"></div></div></div>Olá… Esses dias estava dando uma olhada no sumários de um livro no site da editora Novatec e acabei me deparando com o lançamento do livro Scrum &#8211; Guia Prático para Projetos Ágeis do autor Cesar Brod. Preço e escopo fixo não combinam com dinamismo. O livro foi uma surpresa bem legal, o Cesar Brod [...]<div class='yarpp-related-rss'>
<h3>Postagens Relacionadas:</h3><ol>
<li><a href="http://grupohaw.com.br/2013/07/28/livro-scrum-gestao-agil-para-projetos-de-sucesso/" rel="bookmark" title="Livro Scrum: Gestão ágil para projetos de sucesso">Livro Scrum: Gestão ágil para projetos de sucesso </a></li>
<li><a href="http://grupohaw.com.br/2010/05/11/livro-scjp-guia-de-bolso/" rel="bookmark" title="Livro SCJP (guia de bolso)">Livro SCJP (guia de bolso) </a></li>
<li><a href="http://grupohaw.com.br/2013/07/17/scrum-em-acao-scrum-in-action-voce-deveria-ler/" rel="bookmark" title="Scrum em Ação &#8220;Scrum in Action&#8221; você deveria ler">Scrum em Ação &#8220;Scrum in Action&#8221; você deveria ler </a></li>
</ol>
<img src="http://yarpp.org/pixels/2dafabbfbd5e04d2e58019e85e695e8d" alt="YARPP"/>
</div>
]]></description>
				<content:encoded><![CDATA[<div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_66777397"></div></div></div><div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_66777397"></div></div></div><p dir="ltr">Olá…<br />
Esses dias estava dando uma olhada no sumários de um livro no site da editora Novatec e acabei me deparando com o lançamento do livro <a title="Scrum – Guia Prático para Projetos Ágeis" href="http://novatec.com.br/livros/scrum-guia-pratico/" target="_blank">Scrum &#8211; Guia Prático para Projetos Ágeis</a> do autor <a title="Twitter Cesar Brod" href="https://twitter.com/cesarbrod" target="_blank">Cesar Brod</a>.</p>
<blockquote>
<p dir="ltr">Preço e escopo fixo não combinam com dinamismo.</p>
</blockquote>
<p dir="ltr">O livro foi uma surpresa bem legal, o Cesar Brod soube expressar as suas idéias e experiências de uma forma bem fluente, e isso tornou a leitura do livro bem agradável, além disso cada capítulo é bem direto ao ponto e isso faz com que o livro seja fácil de consultar, coisa que já fiz algumas vezes.</p>
<blockquote><p><span style="line-height: 1.714285714; font-size: 1rem;">Decore o mantra do Manifesto Ágil, até que ele esteja tatuado de tal forma em sua mente que você passe a vivê-lo de forma integral.</span></p></blockquote>
<p dir="ltr">O autor expõem  como o Scrum é e o modo que ele usou em seus projetos, algo semelhante ao <a title="Scrum em Ação “Scrum in Action” você deveria ler" href="http://grupohaw.com.br/2013/07/17/scrum-em-acao-scrum-in-action-voce-deveria-ler/" target="_blank">livro Scrum em Ação/Scrum in Action</a> mas ao mesmo tempo com uma abordagem bem diferente. Com o livro deu pra aprender um pouco mais como não “estragar” o Scrum, e como fazer as adaptações para o tipo de ambiente sem deixar a cheirinho de Scrum de toda manhã se transformar em <a title="Agile Smells: Lack of Progress" href="http://www.scrumalliance.org/community/articles/2007/october/agile-smells-lack-of-progress" target="_blank">algum dos odores</a>.</p>
<blockquote><p><span style="line-height: 1.714285714; font-size: 1rem;">O que abunda não prejudica, mas o que é demais atrapalha [&#8230;]</span></p></blockquote>
<p><span style="line-height: 1.714285714; font-size: 1rem;">Uma técnica apresentada no livro que eu gostei bastante é a utilização de Mapas Mentais, apesar de já ter visto isso antes e até mesmo ter comprado um livro pra aprender como fazer, os exemplos do livro me deram uma motivação maior para aprender a utilizá-lo de verdade e o mais importante é que agora vou tentar colocar a técnica em prática.</span></p>
<blockquote><p>Não se aprisione a contratos que tornarão seu trabalho inútil e seu cliente infeliz</p></blockquote>
<p><span style="line-height: 1.714285714; font-size: 1rem;">Pra finalizar, é mais um livro que  valeu o investimento, aprendi muito sobre Scrum e aprendi mais ainda como transmitir ideias, pois o autor escreve de maneira bem agradável, e isso me levou a chegar no último capítulo sem mesmo ter percebido que o livro já estava acabando.</p>
<p>Abraço!</span></p>
<div class='yarpp-related-rss'>
<h3>Postagens Relacionadas:</h3><ol>
<li><a href="http://grupohaw.com.br/2013/07/28/livro-scrum-gestao-agil-para-projetos-de-sucesso/" rel="bookmark" title="Livro Scrum: Gestão ágil para projetos de sucesso">Livro Scrum: Gestão ágil para projetos de sucesso </a></li>
<li><a href="http://grupohaw.com.br/2010/05/11/livro-scjp-guia-de-bolso/" rel="bookmark" title="Livro SCJP (guia de bolso)">Livro SCJP (guia de bolso) </a></li>
<li><a href="http://grupohaw.com.br/2013/07/17/scrum-em-acao-scrum-in-action-voce-deveria-ler/" rel="bookmark" title="Scrum em Ação &#8220;Scrum in Action&#8221; você deveria ler">Scrum em Ação &#8220;Scrum in Action&#8221; você deveria ler </a></li>
</ol>
<img src="http://yarpp.org/pixels/2dafabbfbd5e04d2e58019e85e695e8d" alt="YARPP"/>
</div>
]]></content:encoded>
			<wfw:commentRss>http://grupohaw.com.br/2013/09/20/livro-scrum-guia-pratico-para-projetos-ageis/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Editor de imagens online e ferramenta para thumbnails</title>
		<link>http://grupohaw.com.br/2013/09/06/editor-de-imagens-online-e-ferramenta-para-thumbnails/</link>
		<comments>http://grupohaw.com.br/2013/09/06/editor-de-imagens-online-e-ferramenta-para-thumbnails/#comments</comments>
		<pubDate>Fri, 06 Sep 2013 11:00:28 +0000</pubDate>
		<dc:creator><![CDATA[Lucas Menezes]]></dc:creator>
				<category><![CDATA[Desenvolvimento de Software]]></category>

		<guid isPermaLink="false">http://grupohaw.com.br/?p=1098</guid>
		<description><![CDATA[<div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_10363513"></div></div></div>Fala galera, Eu estou desenvolvendo um site para o meu casamento e queria compartilhar com vocês duas alternativas bem úteis que eu não conhecia e me ajudaram no processo de construção. A primeira é o site editar-fotos.net, que é um site que disponibiliza as principais funcionalidades que um editor de imagens precisa ter, tudo gratuito. Possui [...]<div class='yarpp-related-rss yarpp-related-none'>

No related posts.
<img src="http://yarpp.org/pixels/2dafabbfbd5e04d2e58019e85e695e8d" alt="YARPP"/>
</div>
]]></description>
				<content:encoded><![CDATA[<div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_10363513"></div></div></div><div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_10363513"></div></div></div><p>Fala galera,</p>
<p>Eu estou desenvolvendo um site para o meu casamento e queria compartilhar com vocês duas alternativas bem úteis que eu não conhecia e me ajudaram no processo de construção.</p>
<p>A primeira é o site <a title="Quebra um galho!" href="http://editar-fotos.net/" target="_blank">editar-fotos.net</a>, que é um site que disponibiliza as principais funcionalidades que um editor de imagens precisa ter, tudo gratuito.<span id="more-1098"></span> Possui redimensionamento de imagens, filtros, ajustes, e outras opções simples que precisamos no dia a dia. É uma boa saída para aqueles que não querem gastar com licença do Photoshop e nem instalar algum outro software gratuito.</p>
<p style="text-align: center;"><a href="http://grupohaw.com.br/wp-content/uploads/2013/09/editar-fotos.png"><img class=" wp-image-1099 aligncenter" title="editar-fotos.net" alt="" src="http://grupohaw.com.br/wp-content/uploads/2013/09/editar-fotos.png" width="906" height="594" /></a></p>
<dl class="wp-caption aligncenter" id="attachment_1099" style="width: 916px;">
<dd class="wp-caption-dd">Interface inicial do site</dd>
</dl>
<p>A segunda dica é um programinha utilizado para criar <a href="http://pt.wikipedia.org/wiki/Thumbnail">thumbnails</a> &#8211; que são versões reduzidas de imagens &#8211; gratuito e muito prático. É o <a title="Download do Easy Thumbnails" href="http://www.baixaki.com.br/download/easy-thumbnails.htm" target="_blank">Easy Thumbnails</a>, programa que possui uma interface bem simples e permite transformar várias fotos de uma vez e em diversos formatos. Ele permite também que seja selecionado o algoritmo utilizado na conversão das imagens.</p>
<p style="text-align: center;"><a href="http://grupohaw.com.br/wp-content/uploads/2013/09/easythumb.png"><img class="aligncenter size-full wp-image-1103" title="Interface do Easy Thumbnail" alt="" src="http://grupohaw.com.br/wp-content/uploads/2013/09/easythumb.png" width="600" height="429" /></a></p>
<p>Então é isso. Acho que não apresentei nenhuma novidade aos mais experientes, mas é sempre bom divulgar.</p>
<p>Valeu.</p>
<p><object id="eacab82b-5ab8-84b5-3a09-2a99a9b3a4ae" width="0" height="0" type="application/gas-events-abn"></object></p>
<div class='yarpp-related-rss yarpp-related-none'>
<p>No related posts.</p>
<img src="http://yarpp.org/pixels/2dafabbfbd5e04d2e58019e85e695e8d" alt="YARPP"/>
</div>
]]></content:encoded>
			<wfw:commentRss>http://grupohaw.com.br/2013/09/06/editor-de-imagens-online-e-ferramenta-para-thumbnails/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Democracia Eletrônica (e-Democracy)</title>
		<link>http://grupohaw.com.br/2013/08/19/democracia-eletronica-e-democracy/</link>
		<comments>http://grupohaw.com.br/2013/08/19/democracia-eletronica-e-democracy/#comments</comments>
		<pubDate>Tue, 20 Aug 2013 01:59:31 +0000</pubDate>
		<dc:creator><![CDATA[Eduardo Gomes]]></dc:creator>
				<category><![CDATA[Off Topic]]></category>
		<category><![CDATA[democracia eletrônica]]></category>
		<category><![CDATA[e-Democracia]]></category>
		<category><![CDATA[e-Democracy]]></category>
		<category><![CDATA[e-Gov]]></category>
		<category><![CDATA[eDemocracia]]></category>
		<category><![CDATA[eDemocracy]]></category>
		<category><![CDATA[eGov]]></category>
		<category><![CDATA[governo eletrônico]]></category>

		<guid isPermaLink="false">http://grupohaw.com.br/?p=1075</guid>
		<description><![CDATA[<div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_9764577"></div></div></div>Olá pessoal, hoje vou postar uma introdução a um tema que utilizo em minha dissertação de mestrado que é chamado de Democracia Eletrônica, ou seja, e-Democracia (também muito conhecido pelo termo em inglês, e-Democracy. O que vem a ser e-Democracy? São tipos de sistemas que se fazem do uso dos meios da tecnologia da informação [...]<div class='yarpp-related-rss yarpp-related-none'>

No related posts.
<img src="http://yarpp.org/pixels/2dafabbfbd5e04d2e58019e85e695e8d" alt="YARPP"/>
</div>
]]></description>
				<content:encoded><![CDATA[<div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_9764577"></div></div></div><div align="right"><div class="sharexyWidgetNoindexUniqueClassName"><div id="shr_9764577"></div></div></div><p>Olá pessoal, hoje vou postar uma introdução a um tema que utilizo em minha dissertação de mestrado que é chamado de Democracia Eletrônica, ou seja, e-Democracia (também muito conhecido pelo termo em inglês, e-Democracy.</p>
<p>O que vem a ser e-Democracy? São tipos de sistemas que se fazem do uso dos meios da tecnologia da informação e comunicação para prover melhorias para um determinado governo (regional, municipal, estadual, nacional ou global) atuando em processos democráticos dos mesmos.<br />
<span id="more-1075"></span></p>
<p>Meio vago ainda né? Vou citar um exemplo para dar um pouco mais de clareza ao que vem a ser e-Democracy. O voto eletrônico brasileiro é um bom exemplo, pois é um meio digital eletrônico que beneficia e agiliza o processo de votação e apuração dos votos.</p>
<p>O voto eletrônico é utilizado desde o ano de 2000, é composto por urnas eletrônicas formadas por um sistema eletrônico embarcado em cada um das urnas e são distribuídas por todo o país em zonas eleitorais. Ao término das votações as urnas são recolhidas e os votos são contabilizados muito rapidamente.<br />
Quem não se lembra que a apuração dos votos chegava demorar vários dias para sua definição.</p>
<p>Outro bom exemplo é o portal e-Democracia (<a href="http://edemocracia.camara.gov.br/">http://edemocracia.camara.gov.br/</a>) que não poderia ter um nome melhor do que esse.<br />
O e-Democracia é um portal brasileiro que permite a participação da sociedade no debate de temas importantes para o país, como por exemplo, na discussão de novas propostas de lei</p>
<p>Segundo descrição do próprio e-Democracia, ele foi desenvolvido pela Câmara dos Deputados, é dividido em dois grandes espaços de participação: as Comunidades Legislativas e o Espaço Livre. No primeiro, você pode participar de debates de temas específicos, normalmente, relacionados a projetos de lei já existentes.</p>
<p>Essas Comunidades oferecem diferentes instrumentosde participação e, ainda, orientações quanto ao andamento da matéria no Congresso Nacional. Já no Espaço Livre, você mesmo pode definir o tema da discussão e ser o grande motivador dela. O debate será acompanhado pela equipe e-Democracia e pode vir a se tornar uma Comunidade Legislativa.</p>
<p>Os parlamentares envolvidos com a matéria acompanham as discussões e as consideram para auxiliar suas decisões.</p>
<p>Existem outros exemplos que não cito aqui mas através destes já podemos entender um pouco sobre o tema deste post.</p>
<p>Ferramentas como estas nos auxiliam na governança e nos aproximam de maneira simples da construção de uma sociedade mais justa.</p>
<p>Por que eu resolvi falar de e-Democracy hoje? Simplesmente para motivar a criação, a busca e o compartilhamento destes tipos de ferramentas entre todos os cidadãos. É imprescindível que saibamos o que esta a nossa disposição, o que podemos fazer para auxiliar o governo, a idéia do e-Democracy é sempre melhorar a sociedade em que vivemos.</p>
<p>Precisamos ser mais atuantes para que a engrenagem &#8220;cidadão&#8221; comece a movimentar positivamente a máquina chamada &#8220;Brasil&#8221;.</p>
<p>Bom, este foi uma pequena introdução ao tema e-Democracy, em breve postarei mais alguns tópicos que estão sendo utilizados em minha dissertação.</p>
<p>Se vocês conhecerem ferramentas úteis, comenta aqui em baixo, coloque o link para que outras pessoas também a conheçam ok&#8230;</p>
<p>Grande abraço a todos e fiquem com Deus.</p>
<div class='yarpp-related-rss yarpp-related-none'>
<p>No related posts.</p>
<img src="http://yarpp.org/pixels/2dafabbfbd5e04d2e58019e85e695e8d" alt="YARPP"/>
</div>
]]></content:encoded>
			<wfw:commentRss>http://grupohaw.com.br/2013/08/19/democracia-eletronica-e-democracy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
