<?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/"
	>

<channel>
	<title>Fragmental</title>
	<atom:link href="http://blog.fragmental.com.br/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.fragmental.com.br</link>
	<description>Software e Batatas</description>
	<pubDate>Sat, 27 Feb 2010 07:24:39 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Minhas Propostas para a Agile Brazil 2010</title>
		<link>http://blog.fragmental.com.br/2010/02/27/minhas-propostas-para-a-agile-brazil-2010/</link>
		<comments>http://blog.fragmental.com.br/2010/02/27/minhas-propostas-para-a-agile-brazil-2010/#comments</comments>
		<pubDate>Sat, 27 Feb 2010 07:22:48 +0000</pubDate>
		<dc:creator>Phillip Calçado</dc:creator>
		
		<category><![CDATA[brasil]]></category>

		<category><![CDATA[comunidade]]></category>

		<category><![CDATA[engenharia]]></category>

		<category><![CDATA[eventos]]></category>

		<category><![CDATA[fragmental]]></category>

		<category><![CDATA[gerencia]]></category>

		<category><![CDATA[metodologias]]></category>

		<category><![CDATA[palestras]]></category>

		<category><![CDATA[testes]]></category>

		<guid isPermaLink="false">http://blog.fragmental.com.br/?p=561</guid>
		<description><![CDATA[Acabo de submeter algumas atividades para o Agile Brazil 2010, evento que se realizará em Junho em Porto Alegre. Pelo que entendi, as propostas serão avaliadas pelo comitê organizador do evento.
As propostas estão disponíveis no site e o público pode fazer comentários. Minhas submissões:
Líder Técnico - O Ex-Arquiteto virou Faz-Tudo!

Ele era o centro das atenções. [...]]]></description>
			<content:encoded><![CDATA[<p>Acabo de submeter algumas atividades para o <a href="http://www.agilebrazil.com/2010/">Agile Brazil 2010, evento que se realizará em Junho em Porto Alegre</a>. Pelo que entendi, as propostas serão avaliadas pelo comitê organizador do evento.</p>
<p>As propostas estão disponíveis no site e o público pode fazer comentários. <a href="http://submissoes.agilebrazil.com/users/35-pcalcado/my_sessions">Minhas submissões</a>:</p>
<h2><a href="http://submissoes.agilebrazil.com/sessions/63-lider-tecnico-o-ex-arquiteto-virou-faz-tudo">Líder Técnico - O Ex-Arquiteto virou Faz-Tudo!</a></h2>
<blockquote><p>
Ele era o centro das atenções. Nenhuma classe era criada sem a sua aprovação. Nenhuma biblioteca era introduzida sem que ele homologasse. Nada entrava ou saía sem a sua verificação. Seus diagramas formavam o livro sagrado do sistema, se o sistema não reflete o diagrama então os desenvolvedores devem ser punidos, obviamente eles não entender seu Grande Plano para Tudo™.</p>
<p>E daí veio este tal de agile. Não apenas introduziu práticas de qualidade duvidosa (duas pessoas, um computador? Sério?) mas também quer eliminar seu papel de visionário. Como um time poderia funcionar sem a visão inpiradora? Como um mero desenvolvedor pode decidir o que é melhor para um projeto onde são investidos milhões?</p>
<p>Pior ainda, o que o líder faz agora que não existem mais diagramas para desenhar?</p></blockquote>
<h2><a href="http://submissoes.agilebrazil.com/sessions/62-arrumando-a-casa-apos-a-festa-saindo-do-pseudo-agile">Arrumando a Casa Após a Festa: Saindo do Pseudo-Agile</a></h2>
<blockquote><p>
Tudo parecia muito simples. Os cartões vão na parede, os times se auto-gerenciam, o tal do Product Owner escreve nos cartões, o time faz retrospectiva… Tantos casos de sucesso por aí, tantos sorrisos e tapinhas nas costas…</p>
<p>Por que está dando tão errado aqui? Por que está fazendo da minha vida um inferno? Por que meu time não está aumentou a produtividade? Por que meus produtos continuam sendo uma porcaria? Por que parece que ninguém sabe o que está acontecendo?</p>
<p>Este é o saco de dúvidas que tenho encontrado por aí.</p>
<p>A maioria vai achar que basta seguirmos os 12 passos do programa e, eventualmente, as coisas vão entrar nos eixos. A maioria acha que basta demitir os gerentes de projeto e colocar coisas coloridas na parede. A maioria acha que basta escrever testes e seu código vai ter qualidade. A maioria acha que basta quebrar casos de uso em histórias e você terá melhor comunicação.</p>
<p>A maioria vai falhar miseravelmente.</p>
<p>Nos últimos anos tenho gasto uma boa parte do meu tempo tentando fazer clientes entender que não importa a cor do cartão na parede, não importa a sua plataforma de desenvolvimento, não importa se você usa cruise ou hudson, não importa se retrospectivas são quinzenais ou mensais… a única coisa que importa nesses tais métodos ágeis é termos ciclos de feedback curto.</p>
<p>Nesta sessão vamos conversar sobre alguns cenários, todos baseados em projetos reais, e no que pode ser feito para tirar o pseudo do seu agile.</p></blockquote>
<p>E, além das duas palestras, o <a href="http://blog.aspercom.com.br/">Rodrigo Yoshima</a> me convidou para ajudá-lo no seu workshop de modelagem:<br />
<a href="http://submissoes.agilebrazil.com/sessions/33-reconheca-voce-nao-sabe-modelar-iniciando-projetos-ageis"><br />
<h2>Reconheça! Você não sabe modelar! Iniciando Projetos Ágeis</h2>
<p></a></p>
<blockquote><p>Neste workshop prático vamos simular o planejamento inicial de um projeto ágil utilizando as mais variadas técnicas de modelagem como Domain-Driven Design, CRC Cards, User Stories, Paper Prototyping e Brainstorming.</p>
<p>Ajude o cliente a compreender melhor o problema, melhorando seu planejamento e auxiliando as suas estimativas. Um bom modelo ou protótipo serve como uma simplificação de algo complexo, uma abstração útil para o desenvolvimento do projeto. Em projetos ágeis a modelagem está presente, porém, ao invés de uma modelagem solitária numa ferramenta UML, equipes ágeis inovam em colaboração, usando artefatos simples numa dinâmica divertida.
</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://blog.fragmental.com.br/2010/02/27/minhas-propostas-para-a-agile-brazil-2010/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Última Parada no Brasil: Vejo Vocês no Rio!</title>
		<link>http://blog.fragmental.com.br/2010/01/28/ultima-parada-no-brasil-vejo-voces-no-rio/</link>
		<comments>http://blog.fragmental.com.br/2010/01/28/ultima-parada-no-brasil-vejo-voces-no-rio/#comments</comments>
		<pubDate>Wed, 27 Jan 2010 17:18:26 +0000</pubDate>
		<dc:creator>Phillip Calçado</dc:creator>
		
		<category><![CDATA[brasil]]></category>

		<category><![CDATA[comunidade]]></category>

		<category><![CDATA[rio]]></category>

		<category><![CDATA[thoughtworks]]></category>

		<guid isPermaLink="false">http://blog.fragmental.com.br/?p=559</guid>
		<description><![CDATA[Tem um tempinho que comentei sobre os eventos de recrutamento da ThoughtWorks Brasil (não tem porque fingir que não e chamar os eventos de outra coisa, este é o objetivo! Uma surpresa boa é que a Suzi, de quem falei no último post, me pediu para ajudá-la com o evento do Rio, que será realizado [...]]]></description>
			<content:encoded><![CDATA[<p>Tem um tempinho que <a href="http://blog.fragmental.com.br/2010/01/14/thoughtworks-brasil-pronto-para-mudar/">comentei sobre os eventos de recrutamento da ThoughtWorks Brasil</a> (não tem porque fingir que não e chamar os eventos de outra coisa, este é o objetivo! Uma surpresa boa é que a Suzi, de quem falei no último post, me pediu para ajudá-la com o evento do Rio, que será <strong>realizado no próximo Sábado, dia 30</strong>:</p>
<blockquote><p>
Host:	ThoughtWorks Brazil<br />
Date:	<strong>Saturday, 30 January 2010</strong><br />
Time:	<strong>09:00 - 13:00</strong><br />
Location:	<strong>Mercure Botafogo, Sala Petrópolis, Rua Sorocaba, 305- Botafogo</strong><br />
Description<br />
ThoughtWorks is hiring in Porto Alegre. We recognise that not everyone&#8217;s lucky enough to live there yet, so we&#8217;re giving people in Rio the opportunity to find out more about us and to take our assessments :-)</p>
<p>Please note that we do not currently have plans to open an office in Rio. Please only come to this event if you are serious about relocating to Porto Alegre in the next couple of months. I will beat you with twigs if you come along and don&#8217;t want to relocate.</p>
<p>ThoughtWorks&#8217; hiring process includes some assessment tests. Many ThoughtWorkers consider them fun, although they are challenging. We&#8217;re running some sessions for you to take them and to give you a chance to find out more about ThoughtWorks.</p>
<p>We are currently hiring Java developers and testers with automation experience. To be considered for a developer role, you&#8217;ll need to convince us that you&#8217;re already a pretty good Java/Ruby/C# developer who&#8217;s passionate about software development, team work and Agile development. Testers can come from a variety of backgrounds, but you&#8217;re going to be open-minded about a whole new way of testing.</p>
<p>While we usually start our hiring process with a telephone interview, we&#8217;re mixing it up a bit and giving people the opportunity to take our assessments first. The next stage, for developers, is to write some code and testers will do a telephone interview.</p>
<p>If you haven&#8217;t already, please send your CV to work@thoughtworks.com and questions to suzi@thoughtworks.com, or post on here. You only need to attend one event, and numbers are limited to 25 people per session. It would be great if we know in advance that you are coming. So, if you plan to attend, either accept on here or email me.
</p></blockquote>
<p>Mais detalhes na <a href="http://www.facebook.com/event.php?eid=264202799124&#038;index=1">página do Facebook do evento</a>. <strong>Você deve ir na página e dizer que vai para prepararmos o evento, qualquer dúvida me mande um email.</strong></p>
<p>Infelizmente eu não vou ter muito mais que algumas horas para ficar no Rio, mas vai ser uma ótima oportunidade para conhecer e bater um papo com as pessoas que têm interesse em trabalhar para a ThoughtWorks. Não perca esta oportunidade!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.fragmental.com.br/2010/01/28/ultima-parada-no-brasil-vejo-voces-no-rio/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Domain-Driven Bolovo, Passando Conhecimento e etc.</title>
		<link>http://blog.fragmental.com.br/2010/01/18/domain-driven-bolovo-passando-conhecimento-e-etc/</link>
		<comments>http://blog.fragmental.com.br/2010/01/18/domain-driven-bolovo-passando-conhecimento-e-etc/#comments</comments>
		<pubDate>Mon, 18 Jan 2010 11:35:11 +0000</pubDate>
		<dc:creator>Phillip Calçado</dc:creator>
		
		<category><![CDATA[arquitetura]]></category>

		<category><![CDATA[brasil]]></category>

		<category><![CDATA[comunidade]]></category>

		<category><![CDATA[cursos]]></category>

		<category><![CDATA[domain.driven.design]]></category>

		<category><![CDATA[engenharia]]></category>

		<category><![CDATA[fragmental]]></category>

		<category><![CDATA[fragmental.tw]]></category>

		<category><![CDATA[gerencia]]></category>

		<category><![CDATA[negocios]]></category>

		<category><![CDATA[orientacao.a.objetos]]></category>

		<category><![CDATA[palestras]]></category>

		<category><![CDATA[programando]]></category>

		<category><![CDATA[thoughtworks]]></category>

		<guid isPermaLink="false">http://blog.fragmental.com.br/?p=552</guid>
		<description><![CDATA[Segue uma seqüência aleatória quase coesa de pensamentos que me vieram a cabeça enquanto esperava meu vôo para Salvador.
Paulo Silveira surgiu com o termo BOLOVO, usado para indicar uma arquitetura baseada em VOs e BOs, enquanto preparávamos os slides para nossa apresentação em conjunto no JustJava em 2007.
Arquitetura Java em 2007 (Java Architecture in 2007)
View [...]]]></description>
			<content:encoded><![CDATA[<p>Segue uma seqüência <del datetime="2010-01-18T11:25:58+00:00">aleatória</del> quase coesa de pensamentos que me vieram a cabeça enquanto esperava meu vôo para Salvador.</p>
<p>Paulo Silveira surgiu com o termo BOLOVO, usado para indicar uma arquitetura baseada em <a href=http://www.fragmental.com.br/wiki/index.php?title=Evitando_VOs_e_BOs>VOs e BOs</a>, enquanto preparávamos os slides para <a href=http://www.slideshare.net/pcalcado/in-portuguese-arquitetura-java-em-2007>nossa apresentação em conjunto no JustJava em 2007</a>.</p>
<div style="width:425px;text-align:left" id="__ss_1456177"><a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/pcalcado/in-portuguese-arquitetura-java-em-2007" title="Arquitetura Java em 2007 (Java Architecture in 2007)">Arquitetura Java em 2007 (Java Architecture in 2007)</a><object style="margin:0px" width="425" height="355"><param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=arquitetura-090518223707-phpapp02&#038;stripped_title=in-portuguese-arquitetura-java-em-2007" /><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=arquitetura-090518223707-phpapp02&#038;stripped_title=in-portuguese-arquitetura-java-em-2007" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"></embed></object>
<div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;">View more <a style="text-decoration:underline;" href="http://www.slideshare.net/">documents</a> from <a style="text-decoration:underline;" href="http://www.slideshare.net/pcalcado">Phillip Calçado</a>.</div>
</div>
<p>O artigo original sobre BOs e VOs fala basicamente sobre como a arquitetura proposta por EJBs na especificação antiga (2.x) prejudicou o entendimento da comunidade em geral sobre como criar a aquitetura de uma aplicação. </p>
<p>Três anos se passaram mas o artigo ainda recebe um numero de acessos razoável –e eu vivo prometendo que vou atualizá-lo. A última vez que tive que escrever um EJB 2.x foi em 2007, desde então –talvez por sorte- nunca mais entrei em um projeto que usasse estas aberrações. Muitos programadores de hoje em dia começaram suas carreiras na época que EJB já estava morrendo e nunca tiveram o desprazer de lidar com esta porcaria. É de se esperar que estas pessoas, tendo estado sempre cercado por IoC, DDD e técnicas bem razoáveis, iria olhar para um artigo como o que escrevi da mesma forma que eu olho para um livro de linguagem de máquina para Apple II –interessante no contexto histórico mas quase que apenas uma curiosidade.</p>
<p>Vira e mexe, entretanto, eu sou lembrado do porque o artigo ainda recebe tantas visitas todo dia. Os programadores mais novos podem não ter sido influenciados pelos problemas dos EJBs mas ele ainda foram ensinados à programar de uma só maneira: código procedural.</p>
<p>Quando estava preparando a primeira iteração do <a href=http://www.caelum.com.br/curso/ws-46-domain-driven-design/>workshop de Domain-Driven Design que faço em parceria com a Caelum</a> eu <a href=http://fragmental.tw/2008/09/23/object-oriented-design-which-how-and-what/>escrevi um texto para explicitar meu raciocínio sobre como Domain-Driven Design se difere de Orientação a Objetos</a>. No workshop em si eu dediquei boa parte da manhã falando sobre este tema.</p>
<p>E por quê? Porque da mesma maneira que as pessoas utilizavam os conceitos de EJB completamente fora de  contexto o mesmo está acontecendo com Domain-Driven Design. É bem comum, em uma conferencia ou algo do tipo, alguém vir conversar comigo sobre como a empresa dele está eliminando todos os BOs e VOs. No meio da conversa a pessoa começa a me explicar a arquitetura e eu vejo que praticamente o que eles fizeram foi renomear <em>UsuarioBO</em> para <em>UsuarioService</em> e <em>UsuarioVO</em> para <em>Usuario</em>. Repositórios, então&#8230; estes são tão mal utilizados que deram origem à vários textos aqui:</p>
<ul>
<li><a href="http://blog.fragmental.com.br/2007/03/01/voce-pergunta-001-daos-e-repositorios/">http://blog.fragmental.com.br/2007/03/01/voce-pergunta-001-daos-e-repositorios/</a></li>
<li><a href="http://blog.fragmental.com.br/2007/06/05/dao-e-repository/">http://blog.fragmental.com.br/2007/06/05/dao-e-repository/</a></li>
<li><a href="http://blog.fragmental.com.br/2008/05/22/domain-driven-design-e-simples/">http://blog.fragmental.com.br/2008/05/22/domain-driven-design-e-simples/</a></li>
<li><a href="http://fragmental.tw/2008/04/25/repeat-after-me-repositories-arent-daos/">http://fragmental.tw/2008/04/25/repeat-after-me-repositories-arent-daos/</a></li>
<li><a href="http://fragmental.tw/2007/11/29/repositories-misunderstandings/">http://fragmental.tw/2007/11/29/repositories-misunderstandings/</a></li>
<li><a href="http://fragmental.tw/2007/09/05/rounded-tip-scissors/">http://fragmental.tw/2007/09/05/rounded-tip-scissors/</a></li>
</ul>
<p>Independente do uso de DDD e seus padrões ou não eu realmente esperaria que, em 2010, as pessoas já houvessem entendido como objetos deveriam ser criados. A quantidade de material disponível gratuitamente na Internet e em múltiplos idiomas é ridiculamente grande.</p>
<p>Me levou muito tempo para entender que não importa a quantidade de material disponível. Em minha experiência, a maneira mais eficiente de introduzir estes conceitos é programação em par. Quando um cliente me chama para introduzir estes conceitos em seu time eu sempre tenho que tentar explicar porque isso não pode ser apenas um treinamento. Ë difícil de entender porque eu posso treinar alguém em algo complexo como uma linguagem de programação mas não em uma técnica com mais de 40 anos que exige como pré-requisito nada mais que conceitos lógicos básicos. Eu, pessoalmente, não faço a menor idéia do porque as coisas são assim, só sei que o são.</p>
<p>Normalmente eu começo o trabalho com uma apresentação rápida, apenas para tentar fazer as pessoas entenderem o que diabos eu vou tentar fazer. <a href=http://www.slideshare.net/pcalcado/expressive-design-in-20-minutes>Um exemplo de uma destas apresentações</a>:</p>
<div style="width:425px;text-align:left" id="__ss_1124250"><a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/pcalcado/expressive-design-in-20-minutes" title="Expressive Design (in 20 minutes)">Expressive Design (in 20 minutes)</a><object style="margin:0px" width="425" height="355"><param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=lonelyplanet-thoughtworks-pcalcado-expressivedesign-090309220448-phpapp01&#038;stripped_title=expressive-design-in-20-minutes" /><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=lonelyplanet-thoughtworks-pcalcado-expressivedesign-090309220448-phpapp01&#038;stripped_title=expressive-design-in-20-minutes" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"></embed></object>
<div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;">View more <a style="text-decoration:underline;" href="http://www.slideshare.net/">documents</a> from <a style="text-decoration:underline;" href="http://www.slideshare.net/pcalcado">Phillip Calçado</a>.</div>
</div>
<p>E logo depois começamos a parear. O ideal é termos pelo menos 1 <em>coach</em> para cada dois pares, mas nem sempre este número é viável. Quando a quantidade de pessoas exceed muito a quantidade de coachs a melhor solução parece ser <a href=http://agilefaq.net/2007/11/03/what-is-promiscuous-pairing/>pareamento promíscuo</a>, mudando os pares em intervalos bem curtos de tempo.</p>
<p>Nestes últimos anos eu tive diversas oportunidades de reencontrar clientes e parceiros depois da conclusão do projeto ou treinamento. Na minha experiência os times que tiveram apenas treinamento retêm apenas uma ou outra coisa do todo, eles entendem o todo mas não conseguem aplicar na prática –e aí mora o perigo do Domain-Driven BOLOVO. Os times onde utilizei coaching como meio de transmissão de conhecimento tendem a ser o contrario: eles usam as técnicas no dia-a-dia mas não entendem o todo. Ao não entender o todo eles não conseguem evoluir alem do que o que lhes foi passado durante aquele período.</p>
<p>É de se esperar que o primeiro grupo seja mais valioso para um empregador. Na prática, entretanto, não parece ser o caso. Um treinamento, um livro, etc. podem curar a deficiência do segundo grupo e tendem a ser bem mais baratos e eficientes que gastar dinheiro com um consultor que cobra por hora. O grande benefício que o consultor vai te trazer é que ele sabe –ou deveria- como utilizar aqueles conceitos na prática. O melhor uso do consultor neste caso é trabalhar com o time no dia-a-dia e realizar pequenas sessões de treinamento –no meu caso geralmente isso significa 20 minutos por semana- conforme necessário.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.fragmental.com.br/2010/01/18/domain-driven-bolovo-passando-conhecimento-e-etc/feed/</wfw:commentRss>
		</item>
		<item>
		<title>ThoughtWorks Brasil: Pronto para Mudar?</title>
		<link>http://blog.fragmental.com.br/2010/01/14/thoughtworks-brasil-pronto-para-mudar/</link>
		<comments>http://blog.fragmental.com.br/2010/01/14/thoughtworks-brasil-pronto-para-mudar/#comments</comments>
		<pubDate>Thu, 14 Jan 2010 05:12:26 +0000</pubDate>
		<dc:creator>Phillip Calçado</dc:creator>
		
		<category><![CDATA[australia]]></category>

		<category><![CDATA[brasil]]></category>

		<category><![CDATA[comunidade]]></category>

		<category><![CDATA[thoughtworks]]></category>

		<guid isPermaLink="false">http://blog.fragmental.com.br/?p=549</guid>
		<description><![CDATA[Estava eu nas minhas férias na bucólica Hamilton island quando recebi um pedido vindo direto da ThoughtWorks Brasil: um cliente precisava de mim por quinze dias. Assim que retornei da ilha passei em casa, desarrumei as malas, as arrumei novamente com menos roupas de banho e embarquei para minha terceira cidade favorita no Brasil, Salvador [...]]]></description>
			<content:encoded><![CDATA[<p>Estava eu nas minhas férias na bucólica <a href="http://en.wikipedia.org/wiki/Hamilton_Island_(Queensland)">Hamilton island</a> quando recebi um pedido vindo direto da ThoughtWorks Brasil: um cliente precisava de mim por quinze dias. Assim que retornei da ilha passei em casa, desarrumei as malas, as arrumei novamente com menos roupas de banho e embarquei para minha terceira cidade favorita no Brasil, Salvador -primeira e segunda são Niterói e Rio, claro. É de cá que vos escrevo.</p>
<p>Quando começamos a pensar em montar um escritório da ThoughtWorks no Brasil nós sabíamos que este tipo de coisa ia acontecer. Não só é muito difícil achar bons candidatos para entrar no nosso time local – e se você tem que recrutar pessoas sabe que isto é um problema bem comum – mas também, mesmo se preenchermos todas as nossas vagas em um só dia estes novos ThoughtWorkers ainda precisam de algum tempo de casa para trabalhar em posições mais delicadas, como fazendo <em>coaching</em>, que é o caso.</p>
<p>Mas&#8230; e você com isso? Pois é aí que você entra!</p>
<p>Ainda estamos recrutando. A Suzi Edwards – que foi quem fez meu processo de seleção e contratação quando morava na Austrália – <a href="http://www.facebook.com/group.php?gid=165388447099">vem organizando diversos eventos de recrutamento por todo o pais</a>. Por que tantos eventos? Porque não é fácil achar bons candidatos, vocês se escondem muito bem. Além disso, a última coisa que nós queremos é perder a chance de contratar um bom candidato só porque ela ou ele não pode ir à Porto Alegre fazer suas entrevistas.</p>
<p>O próximo grande evento será <a href="http://www.facebook.com/event.php?eid=281626871417">em São Paulo dia 23 de Janeiro</a>. Você precisa se informar que vai (RSVP) <a href="http://www.facebook.com/event.php?eid=281626871417">na página do evento no Facebook</a> para participar – a Suzi precisa ter uma idéia de quanta gente esperar.</p>
<p>A parte mais importante, entretanto, é que <strong>o recrutamento é focado em pessoas de São Paulo (assim como outros lugares do pais terão sua vez) mas a vaga é para Porto Alegre</strong>. Colando do Facebook:</p>
<blockquote><p>
ThoughtWorks is hiring in Porto Alegre. We recognise that not everyone&#8217;s lucky enough to live there yet, so we&#8217;re giving people in Sao Paulo the opportunity to find out more about us and to take our assessments :-)</p>
<h3>Please note that we do not currently have plans to open an office in Sao Paulo. Please only come to this event if you are serious about relocating to Porto Alegre in the next couple of months. I will beat you with twigs if you come along and don&#8217;t want to relocate.</h3>
<p>ThoughtWorks&#8217; hiring process includes some assessment tests. Many ThoughtWorkers consider them fun, although they are challenging. We&#8217;re running some sessions for you to take them and to give you a chance to find out more about ThoughtWorks.</p>
<p>We are currently hiring Java developers and testers with automation experience. To be considered for a developer role, you&#8217;ll need to convince us that you&#8217;re already a pretty good Java/Ruby/C# developer who&#8217;s passionate about software development, team work and Agile development. Testers can come from a variety of backgrounds, but you&#8217;re going to be open-minded about a whole new way of testing.</p>
<p>While we usually start our hiring process with a telephone interview, we&#8217;re mixing it up a bit and giving people the opportunity to take our assessments first. The next stage, for developers, is to write some code and testers will do a telephone interview.</p>
<p>If you haven&#8217;t already, please send your CV to work<funny symbol for email adresses>thoughtworks.com and questions to suzi<funny symbol for email adresses>thoughtworks.com, or post on here. You only need to attend one event,and numbers are limited to 25 people per session. Iit would be great if we know in advance that you are coming. <strong>So, if you plan to attend, either accept on here or email me.</strong></p>
<p>To pre-empt some questions:<br />
I am not available at those times. Can I still meet you?<br />
We&#8217;re running three sessions and these will keep us busy, so we&#8217;re unable to accommodate requests for meetings outside of these times.<br />
I&#8217;m away this weekend. When will you be back?<br />
Not sure, but don&#8217;t stress. We&#8217;ll be back soon.<br />
If I do not live in Sao Paulo, should I fly to this event?<br />
Nope. We&#8217;re getting organised on coming to other cities. We don&#8217;t suggest people spend money on flying to cities for assessments.<br />
When are you coming to Rio?<br />
Very soon :-)<br />
I am looking to be a Project Manager. Can I come along?<br />
Not recommended. We are not hiring Project Managers at the moment.<br />
Can I tell my friends and pass this along?<br />
Of course!</p>
<p>Our assessments take about three hours and we will be running three sessions this weekend.
</p></blockquote>
<p>Mudar de cidade pode ser algo muito brusco, mesmo que seja para uma cidade próxima. O que é preciso entender, no entanto, é que o único modo de não cair no mesmo lugar é mudar o caminho tomado. E muitas vezes na vida precisamos fazer esta mudança bruscamente.</p>
<p>Te vejo no <a href="http://www.google.com/search?q=thoughtworks%20away%20day">Away Day</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.fragmental.com.br/2010/01/14/thoughtworks-brasil-pronto-para-mudar/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Sem Surpresas no Showcase!</title>
		<link>http://blog.fragmental.com.br/2009/12/03/sem-surpresas-no-showcase/</link>
		<comments>http://blog.fragmental.com.br/2009/12/03/sem-surpresas-no-showcase/#comments</comments>
		<pubDate>Thu, 03 Dec 2009 07:08:23 +0000</pubDate>
		<dc:creator>Phillip Calçado</dc:creator>
		
		<category><![CDATA[brasil]]></category>

		<category><![CDATA[gerencia]]></category>

		<category><![CDATA[metodologias]]></category>

		<category><![CDATA[palestras]]></category>

		<category><![CDATA[rio]]></category>

		<category><![CDATA[thoughtworks]]></category>

		<guid isPermaLink="false">http://blog.fragmental.com.br/?p=545</guid>
		<description><![CDATA[Existem muitas coisas que só se aprender na prática, depois de apanhar muito. Uma das coisas que eu –creio que- aprendi desta forma é como lidar com um showcase (ou Sprint Review, se você insiste).
Um showcase acontece geralmente no último dia de uma iteração. Ele serve para que o time apresente aos interessados –usuários, patrocinadores, [...]]]></description>
			<content:encoded><![CDATA[<p>Existem muitas coisas que só se aprender na prática, depois de apanhar muito. Uma das coisas que eu –creio que- aprendi desta forma é como lidar com um <em>showcase</em> (ou <em>Sprint Review</em>, se você insiste).</p>
<p>Um showcase acontece geralmente no último dia de uma iteração. Ele serve para que o time apresente aos interessados –usuários, patrocinadores, pessoas não diretamente envolvidas no projeto, etc.- o que foi feito nesta iteração.</p>
<p>Eu costuma lidar como showcases como o momento onde o time e o usuário interagiam, onde o usuário via o produto final como um todo, dava feedback para o time e aprovava ou rejeitava histórias. </p>
<p>Péssima idéia. Todos os pontos acima são extremamente importantes mas eles não devem acontecer durante o showcase e sim <strong>durante toda a iteração</strong>.</p>
<p>O maior problema ao utilizar o showcase como único/principal ponto de interação é que você acaba tendo um <em>big-bang feedback</em>. Ao invés de colher feedback iterativamente no decorrer do período, de uma maneira que o time possa agir para consertar possíveis problemas, você recebe feedback em lote sobre tudo que foi feito naquela iteração de uma só vez. Não só isso pode significar excesso de informação bem como certamente vai frustrar o time e, principalmente, o usuário já que<strong> quando o feedback chega já é o fim da iteração e tarde demais para agir</strong>. Fica para a próxima.</p>
<p>E um problema parecido é o <em>planejamento em big-bang</em>, coisa que muita gente faz no seu Iteration Planning Meeting (IPM, ou Sprint Planning I &#038; II se você realmente vai continuar insistindo). Em muitas equipes que conheço este é basicamente o único momento onde se planeja e prioriza uma iteração. </p>
<p>Combinando os dois problemas você tem um cenário extremamente frustrante: o usuário faz um grande planejamento, sai por duas semanas e volta para ver se seu plano foi cumprido. Se o time não conseguiu fazer tudo que ali estava definido o usuário fica frustrado e começa a desconfiar de tudo e de todos. Este tipo de situação é péssimo para qualquer tipo de empresa mas para nós, consultores, ele é simplesmente inaceitável.</p>
<p>O que eu aprendi com os mais experientes gerentes de projetos que já trabalhei é que em um showcase <strong>não podem haver surpresas</strong>. O cliente deve dar feedback sobre cada história e acontecimento individualmente, e durante a iteração. Na minha palestra no Rio mês passado eu falei brevemente sobre o “modelo do sanduíche”, <a href=http://fragmental.tw/2009/08/17/what-should-techies-care-about/>melhor explicado aqui</a>. Esta é a melhor maneira que eu conheço para ter certeza de que não haverão surpresas durante o desenvolvimento: para cada história -<strong>individualmente!</strong>- o usuário planeja junto com o time o que vai ser feito e depois verifica e aprova ou rejeita o resultado.</p>
<p>É claro que isto funciona melhor quando o cliente está presente o tempo todo, mas isto não é estritamente necessário. Se você possui um cliente fisicamente distante pode procurar outras maneiras de receber feedback frequente, coisas simples como fazer deploy constante para um servidor e mandar um email para o usuário pedindo para ele testar uma nova história neste ambiente. Só tenha certeza que seu usuário viu, aprovou e está ciente dos possíveis problemas e eventuais <em>workarounds</em> <strong>antes</strong> do showcase. É melhor isso do que criar um banho de sangue quinzenal.</p>
<p>Um showcase deve ter foco em mostrar para todas as partes interessadas o progresso feito, nunca em aprovar ou rejeitar histórias. Re-lembre a todos de onde viemos, onde estamos e para onde vamos. É claro que num projeto sadio sempre vai haver feedback vindo de múltiplas partes durante esta sessão, e isto é bom, mas um showcase não deve ter foco em receber feedback mas sim mostrar a evolução do projeto. </p>
<p>Existe todo um movimento de pessoas que prega que iterações são ruins. Um dos argumentos utilizados por esta escola de pensamento é exatamente de que o feedback em uma iteração tende a ficar apenas nos intervalos, não sendo frequente o suficiente. As pessoas vão para um modelo sem iterações e dizem que estão “livres da cerimônia” e que agora feedback e valor fluem o tempo todo. Bom, talvez o problema não seja com iterações em si mas sim na maneira como você as modela&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.fragmental.com.br/2009/12/03/sem-surpresas-no-showcase/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Derrubaram as Paredes Erradas</title>
		<link>http://blog.fragmental.com.br/2009/11/14/derrubaram-as-paredes-erradas/</link>
		<comments>http://blog.fragmental.com.br/2009/11/14/derrubaram-as-paredes-erradas/#comments</comments>
		<pubDate>Fri, 13 Nov 2009 15:10:49 +0000</pubDate>
		<dc:creator>Phillip Calçado</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.fragmental.com.br/?p=540</guid>
		<description><![CDATA[Neste curto período no Brasil eu tive a oportunidade de conversar com muita gente, tanto do Rio quanto de outros locais que vieram para workshops ou eventos. Como não é novidade para ninguém o Brasil está cada vez adotando mais metodologias menos burras -ou “ágeis” se você preferir.
E algumas coisas se repetem constantemente. Uma delas [...]]]></description>
			<content:encoded><![CDATA[<p>Neste curto período no Brasil eu tive a oportunidade de conversar com muita gente, tanto do Rio quanto de outros locais que vieram para workshops ou eventos. Como não é novidade para ninguém o Brasil está cada vez adotando mais metodologias menos burras -ou “ágeis” se você preferir.</p>
<p>E algumas coisas se repetem constantemente. Uma delas é um problema comum em projetos e clientes onde eu já estive mas mostra-se de maneira curiosamente popular no Brasil. É o problema da quebra de paredes.</p>
<p>Mas quebrar paredes não era bom? Sim, é! Quebre as barreiras impostas por processos e ferramentas inúteis. Quebre as paredes que não deixam desenvolvedor conversar com cliente, quebre as barreiras que não deixam um time ser multifuncional!</p>
<p>Só cuidado para não quebrar as barreiras que protegem o time.</p>
<p>Scrum é o sabor favorito do Brasil e creio que a forma como ele é ensinado ajuda a causar problemas. O sujeito que assume o papel do Scrum Máster Jedi lê na sua apostilinha que seu papel é <em>remover impedimentos</em>. O cara não sabe direito o que é o tal do impedimento mas por algum motivo ele acha que é basicamente ser uma polícia do processo. A grande maioria das pessoas que eu conheço que têm “Scrum Master” como cargo têm como única tarefa ter certeza que todos estão nas reuniões certinhas e que o Scrum está sendo seguido conforme o jefe mandou.</p>
<p>E aí vem a ilusão de que o processo por si só vai resolver os problemas. Vamos colocar todos os desenvolvedores numa mesa tão pequena que não caiba um mousepad, vamos deixar o cliente ligar para o desenvolvedor cada uma das 232 vezes que ele muda de idéia durante o dia e a mágica dos times auto-gerenciáveis, auto-motivados e auto-limpantes vai fazer tudo funcionar.</p>
<p>Não vai.</p>
<p>Times auto-gerenciáveis evitam desperdício. São ótimos. Cliente poder falar com desenvolvedor evita desperdício. É ótimo. Tudo é maravilhoso, exceto pelo fato que as pessoas ainda são as mesmas.</p>
<p>Uma pessoa que fazia de tudo para destruir o seu projeto não vai melhorar só porque agora faz parte do time. Um cliente que é extremamente indeciso vai perturbar tanto o desenvolvedor que ele não vai conseguir escrever uma linha de código. Um sujeitinho metido a comandante de tropa nazista não vai melhorar porque agora não chamam ele de gerente mas de <em>Product Owner</em>.</p>
<p>Minha palestra no Caelum Day semana passada –que ainda não está disponível mas estará em breve- foi sobre reduzir o tamanho dos ciclos de feedback durante o desenvolvimento. Este é o ciclo do desenvolvedor que desperdiça 5 minutos esperando um servidor de aplicações subir para ver se algo funciona ou não. Estes ciclos técnicos são relativamente simples de resolver, existem técnicas e tecnologias para isso.</p>
<p>Mas trabalhar escrevendo código é apenas uns 50% do que eu faço hoje em dia. Eu também tenho que gerenciar escopo, tempo, recursos e pessoas durante um projeto. A parte do desenvolvimento de software é bem mais fácil –é o que eu gosto de fazer- mas esta outra parte sempre me dá mais trabalho porque eu não me interesso em aprender mais do que o necessário sobre isto.</p>
<p>E uma das coisas que eu aprendi aos trancos e barrancos e hoje em dia considero parte do necessário para um Iteration Manager, Scrum Master ou qualquer coisa que você prefira é que os tais dos ciclos de feedback existem também for a do aspecto técnico. Como gerente de iteração você precisa zelar para que seu time consiga produzir sem problemas. Você não os manda fazer as coisas –eles se gerenciam- mas seja lá o que eles resolvam fazer você precisa ter certeza de que não existe nada roubando tempo deles.</p>
<p>E, infelizmente, ao contrário dos ciclos técnicos eu não consigo listar técnicas e padrões para reduzir os ciclos de gerência de projeto. Minha sugestão inicial é que <strong>é melhor um time sem gerente de iteração do que um time com um gerente ruim</strong>. Se você tem um pequeno ditadorzinho como desenvolvedor movê-lo para Scrum Master só vai fazer tudo piorar.</p>
<p>A segunda é cuidado se implantar o comunismo na sua empresa. Tornar as pessoas “iguais” vai resolver alguns deles mas vai criar novos. Esta coisa de “todos juntos vamos de mãos dadas, cantando a canção e entregando valor pra missão” é balela. Você sempre vai ter o cliente indeciso, o Scrum Master ditador, o desenvolvedor que não produz nada&#8230; métodos ágeis vão deixar os problemas aparentes mas alguém tem que agir, eles não se resolvem por mágica.</p>
<p>Um exemplo relativamente recente de como você precisa prestar atenção aos ciclos foi, para mim, o meu último release do Globo Vídeos dentro da Globo.com. <a href= http://blog.fragmental.com.br/2007/08/15/introduzindo-agilidade-num-ambiente/>O Vídeos foi o primeiro time de projeto ágil na empresa</a> –não foi o primeiro usando Scrum porque nós nunca usamos exatamente Scrum- e tínhamos um prazo ridículo e uma equipe pequena para entregar um dos sites mais importantes da empresa.</p>
<p>Olhando para o nosso modo de desenvolver eu percebi que não havia condições. Mesmo com todo o aparato ágil que estávamos criando a quantidade ridícula de reuniões e passos burocráticos que um desenvolvedor realizava no seu dia-a-dia iria consumir uns bons 30% do tempo de cada um. Minha proposta para o time foi simples: “nós tínhamos 6 desenvolvedores. A partir de agora nós temos 5. Eu vou parar de escrever código e cuidar apenas da burocracia.”</p>
<p>Para alguém que ama escrever software isso foi uma decisão bem complicada –ok, eu saia tarde todos os dias só para ter alguma chance de escrever umas linhas de código- mas foi a melhor coisa que eu fiz. Eu passei a ir a todas as reuniões –onde nada de útil era discutido-, escrever documentação e preencher formulários, resolver bug da versão antiga, acompanhar os testes requeridos para alguma coisa entrar no ar e todas estas atividades de valor zero para o projeto. </p>
<p>Este era um projeto onde o cliente mudava de idéia o tempo todo e eu tive que isolar o cliente da equipe e atuar como proxy. O cliente só via o trabalho semanalmente, basicamente. E foi entregue no prazo e continua no ar até o momento.</p>
<p>E esta foi só a primeira vez que tive que fazer isso. Depois desta eu não acho que houve um projeto sequer onde eu não tenha que ter feito algo semelhante, seja preenchendo formulários para deixar o time livre para escrever código ou gastando 30% do meu tempo apenas para ter certeza que o GERENTE DE PROJETO (em maiúsculas porque era assim que ele se apresentava) estava feliz e recebendo todos os dados que ele achava interessantíssimos.</p>
<p>É a parte mais chata do meu trabalho, mas negligenciar esta parte é uma das grandes causas de problemas em adoções de métodos ágeis. Existe toda uma engenharia de processo que precisa ser feita. Ao usar métodos ágeis não vai aparecer nenhum duende mágico para fazê-la para você. Achar que você pode ter um Scrum Master que não faz esta engenharia só porque “times se auto-gerenciam” é muita ingenuidade. Ou burrice.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.fragmental.com.br/2009/11/14/derrubaram-as-paredes-erradas/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Preparações e Desculpas Esfarrapadas</title>
		<link>http://blog.fragmental.com.br/2009/10/26/preparacoes-e-desculpas-esfarrapadas/</link>
		<comments>http://blog.fragmental.com.br/2009/10/26/preparacoes-e-desculpas-esfarrapadas/#comments</comments>
		<pubDate>Mon, 26 Oct 2009 03:13:17 +0000</pubDate>
		<dc:creator>Phillip Calçado</dc:creator>
		
		<category><![CDATA[brasil]]></category>

		<category><![CDATA[comunidade]]></category>

		<category><![CDATA[cursos]]></category>

		<category><![CDATA[domain.driven.design]]></category>

		<category><![CDATA[engenharia]]></category>

		<category><![CDATA[eventos]]></category>

		<category><![CDATA[fragmental]]></category>

		<category><![CDATA[fragmental.tw]]></category>

		<category><![CDATA[gerencia]]></category>

		<category><![CDATA[metodologias]]></category>

		<category><![CDATA[negocios]]></category>

		<category><![CDATA[palestras]]></category>

		<category><![CDATA[programando]]></category>

		<category><![CDATA[rio]]></category>

		<category><![CDATA[testes]]></category>

		<guid isPermaLink="false">http://blog.fragmental.com.br/?p=537</guid>
		<description><![CDATA[Para variar, a desculpa para não ter escrito mais frequentemente é a preparação requerida para a viagem ao Brasil. Eu sei que é uma desculpa esfarrapada mas infelizmente esta etapa envolve mais do que fechar malas e comprar canguru de pelúcia para as sobrinhas, meus últimos dois projetos requereram muita atenção e neste exato momento [...]]]></description>
			<content:encoded><![CDATA[<p>Para variar, a desculpa para não ter escrito mais frequentemente é a preparação requerida para <a href= http://blog.fragmental.com.br/2009/07/22/projeto-brazil-2009-preenchendo-lacunas/>a viagem ao Brasil</a>. Eu sei que é uma desculpa esfarrapada mas infelizmente esta etapa envolve mais do que fechar malas e comprar canguru de pelúcia para as sobrinhas, meus últimos dois projetos requereram muita atenção e neste exato momento eu estou finalizando os últimos detalhes de um deles.</p>
<p>Isso fez com que meus planos se alterassem um pouco. Infelizmente não vou ter tanto tempo quanto gostaria para encontrar pessoas, especialmente fora do Rio. Ainda vou em alguns lugares mas nada perto do que tinha em mente antes.</p>
<p>Sobre o evento, acho difícil haver alguém que ainda não tenha esbarrado com um dos banners ou coisa parecida sobre o <a href= http://www.caelum.com.br/caelumday/>Caelum Day</a>. A programação está bem interessante e promete ser um dia útil e divertido.</p>
<p>Minha apresentação vai focar no que eu mais tenho feito nestes últimos dois anos: fazer com que times de desenvolvimento saiam do marasmo e comecem a entregar. Não me venha com essa história de “minha metodologia não deixa”, “meu chefe é mau”, etc., todo lugar tem problemas e <strong>as coisas dependem de você</strong>. A apresentação possui dicas e fundamentos técnicos mas sem vontade nada vai pra frente.</p>
<p>E para, refletir de maneira bem realista o clima da indústria de desenvolvimento de software, este ano eu escolhi mais uma vez filmes de terror para servir de pano de fundo (e comic relief). Ao contrário do ano passado, entretanto, eu escolhi um filme em específico. O primeiro comentário quem acertar o filme baseado na capa da apresentação abaixo ganha&#8230; algo&#8230; que eu ainda vou decidir:</p>
<p><a href="http://www.flickr.com/photos/pcalcado/4039450800/" title="caelum rio day by pcalcado, on Flickr"><img src="http://farm3.static.flickr.com/2506/4039450800_a816d7cd46.jpg" width="500" height="375" alt="caelum rio day" /></a></p>
<p><strong><a href=http://www.caelum.com.br/caelumday/inscricao.html>As inscrições ainda estão abertas aqui</a>.</strong></p>
<p>Para o <a href= http://www.caelum.com.br/curso/ws-46-domain-driven-design/>workshop de Domain-Driven Design</a> não há mais vagas –mas existe uma lista de espera. </p>
<p>Algumas pessoas ficaram curiosas porque <a href= http://fragmental.tw/2009/10/24/speaking-in-brazil-and-last-years-slide-deck/>escrevi no meu blog em inglês</a> que acho o assunto (DDD) tedioso. Existe uma enorme demanda de cursos sobre o tema e o Paulo Silveira e eu decimnos que valia a pena realizar mais uma rodada dos cursos. Eu continuo usando Domain-Driven Design em meus projetos e textos, mas o assunto já está meio batido e mastigado. </p>
<p>Na minha opinião, DDD deveria ser parte de um curso maior sobre design em geral, um workshop específico tem relevância quando o assunto é novidade mas perde o apelo quando a técnica começa a ser utilizada por mais gente. Tenho lido mais sobre outras coisas e, se tudo der certo, vamos ver se em 2010 eu consigo aposentar o workshop de DDD e partir para estas novas coisas.</p>
<p>Bom, por enquanto é isso. Nos vemos semana que vem.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.fragmental.com.br/2009/10/26/preparacoes-e-desculpas-esfarrapadas/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Projeto Brazil 2009 - Preenchendo Lacunas</title>
		<link>http://blog.fragmental.com.br/2009/07/22/projeto-brazil-2009-preenchendo-lacunas/</link>
		<comments>http://blog.fragmental.com.br/2009/07/22/projeto-brazil-2009-preenchendo-lacunas/#comments</comments>
		<pubDate>Tue, 21 Jul 2009 15:51:17 +0000</pubDate>
		<dc:creator>Phillip Calçado</dc:creator>
		
		<category><![CDATA[australia]]></category>

		<category><![CDATA[brasil]]></category>

		<category><![CDATA[comunidade]]></category>

		<category><![CDATA[eventos]]></category>

		<category><![CDATA[fragmental]]></category>

		<category><![CDATA[guj]]></category>

		<category><![CDATA[palestras]]></category>

		<category><![CDATA[pessoal]]></category>

		<category><![CDATA[programando]]></category>

		<category><![CDATA[rio]]></category>

		<category><![CDATA[riojug]]></category>

		<category><![CDATA[thoughtworks]]></category>

		<guid isPermaLink="false">http://blog.fragmental.com.br/?p=533</guid>
		<description><![CDATA[Bom, com a passagem na mão e devidamente autorizado pelas autoridades competentes eu posso publicar aqui que este ano, mais uma vez, eu vou passar alguns dias no Brasil em uma clássica e manjada parceria com a Caelum. 
O plano original é emendar tudo com o lançamento do livro -que eu, relapso que só, ainda [...]]]></description>
			<content:encoded><![CDATA[<p>Bom, com a passagem na mão e devidamente autorizado pelas autoridades competentes eu posso publicar aqui que este ano, <a href="http://blog.fragmental.com.br/2008/10/08/domain-driven-design-agile-fechando-malas/">mais uma vez</a>, eu vou passar alguns dias no Brasil em uma clássica e manjada parceria com a Caelum. </p>
<p>O plano original é emendar tudo com o <a href="http://www.arquiteturajava.com.br/">lançamento do livro</a> -que eu, relapso que só, ainda não mencionei neste blog- mas este plano pode mudar. De qualquer maneira o esquema básico é o mesmo do ano passado: uma conferência e alguns workshops. Ainda não posso falar sobre nenhum deles porque nada foi decidido mas assim que eu tiver definições eu posto aqui.</p>
<p>Mas meu objetivo com este post é me colocar à disposição. A viagem deste ano é totalmente a trabalho -tirando alguns dias para a família e os amigos, claro- e eu pretendo visitar o maior número de grupos de usuários, empresas e comunidades de desenvolvimento de software que eu conseguir. Faz dois anos que estou na Austrália e apesar de meu contato diário com a comunidade brasileira uma coisa é falar de longe e outra é ver de perto.</p>
<p>Eu tenho algumas visitas já marcadas e, infelizmente, não muito tempo disponível então vou ter que priorizar as coisas. A minha idéia original é chegar no grupo de usuários/empresa/etc., fazer uma apresentação de uns 30 minutos e depois passar algum tempo pareando com as pessoas e atualizando minhas percepções sobre o mercado brasileiro em geral. Eu chego dia 31/10 e volto dia 15/11, estarei, a princípio, no Rio durante toda a viagem mas topo viagems próximas.</p>
<p>Topa? Me manda um email. Não sabe meu email? Se vira.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.fragmental.com.br/2009/07/22/projeto-brazil-2009-preenchendo-lacunas/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Refletindo sobre Tendências</title>
		<link>http://blog.fragmental.com.br/2009/07/10/refletindo-sobre-tendencias/</link>
		<comments>http://blog.fragmental.com.br/2009/07/10/refletindo-sobre-tendencias/#comments</comments>
		<pubDate>Thu, 09 Jul 2009 14:43:39 +0000</pubDate>
		<dc:creator>Phillip Calçado</dc:creator>
		
		<category><![CDATA[.net]]></category>

		<category><![CDATA[arquitetura]]></category>

		<category><![CDATA[australia]]></category>

		<category><![CDATA[bancos.de.dados]]></category>

		<category><![CDATA[beyondjava]]></category>

		<category><![CDATA[brasil]]></category>

		<category><![CDATA[cbd]]></category>

		<category><![CDATA[comunidade]]></category>

		<category><![CDATA[domain.driven.design]]></category>

		<category><![CDATA[domain.specific.languages]]></category>

		<category><![CDATA[engenharia]]></category>

		<category><![CDATA[foss]]></category>

		<category><![CDATA[gerencia]]></category>

		<category><![CDATA[guj]]></category>

		<category><![CDATA[java]]></category>

		<category><![CDATA[javascript]]></category>

		<category><![CDATA[linux]]></category>

		<category><![CDATA[lisp]]></category>

		<category><![CDATA[livros]]></category>

		<category><![CDATA[metodologias]]></category>

		<category><![CDATA[microsoft]]></category>

		<category><![CDATA[negocios]]></category>

		<category><![CDATA[orientacao.a.objetos]]></category>

		<category><![CDATA[php]]></category>

		<category><![CDATA[plataformas]]></category>

		<category><![CDATA[programacao.funcional]]></category>

		<category><![CDATA[programando]]></category>

		<category><![CDATA[rails]]></category>

		<category><![CDATA[rest]]></category>

		<category><![CDATA[ruby]]></category>

		<category><![CDATA[sistemas.operacionais]]></category>

		<category><![CDATA[soa]]></category>

		<category><![CDATA[testes]]></category>

		<category><![CDATA[thoughtworks]]></category>

		<category><![CDATA[unix]]></category>

		<category><![CDATA[você.pergunta]]></category>

		<category><![CDATA[web]]></category>

		<category><![CDATA[ws-*/soap]]></category>

		<guid isPermaLink="false">http://blog.fragmental.com.br/?p=529</guid>
		<description><![CDATA[Recentemente muita gente tem me procurado nos instant messengers da vida para perguntar sobre tendências. Existe uma idéia no Brasil de que quem está de for a “traz as novidades”. Isso podia ser verdade antes da Internet mas agora as coisas se espalham com tanta velocidade que em muitos aspectos o Brasil está muito na [...]]]></description>
			<content:encoded><![CDATA[<p>Recentemente muita gente tem me procurado nos instant messengers da vida para perguntar sobre tendências. Existe uma idéia no Brasil de que quem está de for a “traz as novidades”. Isso podia ser verdade antes da Internet mas agora as coisas se espalham com tanta velocidade que em muitos aspectos o Brasil está muito na frente da Austrália.</p>
<p>Mas existe o outro lado que é o trabalho na ThoughtWorks. Os projetos que nós enfrentamos geralmente começam da mesma maneira que os que qualquer consultoria, de três letrinhas ou três pessoas, enfrenta. O diferencial que faz ser um lugar interessante para se trabalhar é o que acontece durante o projeto.</p>
<p>O que segue neste post é uma amarrado de impressões pessoais sobre os últimos doze meses, tanto sobre a Austrália quanto o que sei de outros escritórios. Se ele não for coeso ou fácil de ler eu peço desculpas mas encare como um <em>braindump</em>.</p>
<p>Os projetos para bancos e empresas do mercado financeiro em geral continuam bem parecidos. Em 2007 houve uma euforia em torno da bolha econômica e muitos projetos megalomaníacos –e, por conseqüência, extremamente interessantes do ponto de vista técnico- apareceram mas a crise os tirou do baralho nos tempos recentes. Os bancos estão gastando menos e buscando fazer mais dinheiro reutilizando a estrutura existente. A maioria dos projetos que eu tenho conhecimento dentro de bancos é para estender uma determinada oferta para novos clientes ou é para migrar de uma plataforma legada para algo menos dispendioso.</p>
<p>O interessante sobre o “legado dispendioso”, dentro e fora de bancos, é que muitas vezes ele se trata de coisinhas como WebSphere, Aqualogic, Biztalk, Tibco e produtos parecidos. Apos gastar rios de dinheiro implantando estes e não ver nenhum centavo de retorno real muitos dos grandes estão migrando para plataformas mais eficientes, quase sempre baseadas em software livre. Hoje em dia são comuns projetos de migração de Websphere para Jetty ou de BizTalk para serviços RESTful usando IIS, JSON e ASP.Net MVC, por exemplo.</p>
<p>Na parte de aplicações para Internet, onde geralmente eu me envolvo mais, as coisas também têm mudado bastante. Basicamente os projetos têm se dividido em startups e legado. As startups aparecem com um problema e algum montante de dinheiro. A plataforma mais utilizada para atender estes cenários é Ruby on Rails, geralmente fazendo deployment em algum serviço de Cloud Computing.</p>
<p>Cloud Computing é um tópico extremamente relevante tanto para ThoughtWorks quanto nos nossos clientes. Uma das coisas interessantes que fizemos no início do ano foi <a href="http://www.youtube.com/watch?v=-4fA_UciDaA">trabalhar junto com o Google no lançamento da AppEngine em Java</a> (e <a href="http://fragmental.tw/2009/04/08/clojure-on-google-app-engine/">outras linguagens</a>).</p>
<p>As empresas com legado de Internet são sempre interessantes. Geralmente elas são algum grande prestador de serviço na área de mídia e possuem um ou mais websites antigos que têm aquela arquitetura manjada de rodar em um Weblogic ou Tomcat com um Apache de front-end. O problema é que hoje em dia o numero de usuários	 é muito superior e a velocidade com que funcionalidades têm que ser adicionadas e alteradas é muito maior. Após entender que os Googles e Facebooks da vida não usam Java EE e não pagam licença para a IBM as empresas estão desesperadas para atingir o mesmo nível de eficiência. </p>
<p>O que temos feito nesta área é utilizar a já citada Cloud Computing para realizar tarefas que não precisam ser executadas dentro do firewall (de crawling até rodar teste de carga), refatorar aplicações grandes para atingir escalabilidade horizontal e simplificar processos de deployment e gerenciamento de recursos.</p>
<p>Na área mais de programação em si as coisas não têm sido lá muito excitantes. As plataformas em específico não têm nenhuma novidade marcante mas a programação poliglota é uma realidade. Até hoje todos os projetos que tive alguma participação dentro da ThoughtWorks utilizavam mais de uma linguagem de programação (já descontando Bash e JavaScript). </p>
<p>Uma surpresa agradável foi a que tive no meu projeto atual, em que voltei a programar em .Net após 3 anos afastado. A maioria das coisas que eu realmente não gostava sobre C# e seu ecossistema foram removidos (exceto Windows e Visual Studio, duas peças que eu considero de qualidade inferior). A Microsoft continua enfiando frameworks e ferramentas terríveis pela guela dos seus clientes (MSBuild? TFS? WCF? WTF?!?) mas no geral as coisas estão bem melhores.</p>
<p>Em termos de livros sobre programação eu tenho me focado quase que exclusivamente nos conceitos presentes em linguagens e paradigmas de programação. Esta é a lista de livros relacionados que eu li desde que cheguei aqui:</p>
<p><a href="http://www.flickr.com/photos/pcalcado/3704263002"/><br />
<img src="http://farm4.static.flickr.com/3522/3704263002_9621c99241.jpg"><br />
</a></p>
<p>Esta é a fila dos que faltam:</p>
<p><a href="http://www.flickr.com/photos/pcalcado/3700749489/"><img src="http://farm3.static.flickr.com/2638/3700749489_73dbe7457c.jpg"><br />
</a></p>
<p> (fora os que ainda estão no meu carrinho de compras na Amazon. Livro na Austrália é ridiculamente caro)</p>
<p>Na parte de gerenciamento de projetos e metodologias as coisas estão engraçadas. Tem horas que a euforia anima, tem hora que dá náusea. Eu acho que <a href="http://twitter.com/bellware/status/2539136913">o Bellware resumiu muito bem</a>:</p>
<blockquote><p>early agile adopters were looking for a way to do things better. later adopters are just trying to do agile, thus the failures</p></blockquote>
<p>Eu vim para a ThoughtWorks para ver como é que quem introduz métodos ágeis há anos trabalha. Nos últimos meses eu trabalhei com pessoas que fazem isto há mais de dez anos e em empresas que adotaram agile antes de eu saber que ele existia. O que eu aprendi neste período inicial é exatamente o descrito acima: quando seu objetivo é ser ágil você falha, quando seu objetivo é sempre melhorar você <strong>tem chances</strong> de sucesso. </p>
<p>Todos os projetos que participei foram bem sucedidos? Depende de para quem você pergunta. Mesmo os clientes mais difíceis que tive acabaram ficando satisfeitos no final mas muitos projetos que participei (e o número de projetos é bem maior que o número de clientes) foram executados de uma maneira que o time não ficou satisfeito. Eu acho que neste caso é perspectiva. Como a maioria dos projetos são um fracasso colossal basta ter algum nível de sucesso que o projeto vira referência. O time, em compensação, tem um critério de sucesso muito mais alto e não considera o projeto como bem-sucedido.</p>
<p>É claro que no fim das contas o que vale mais é a opinião do cliente –tanto porque o problema dele foi solucionado bem como porque é ele quem paga a conta no final- mas eu já vi diversos problemas decorrentes deste tipo de coisa. De builds que começaram em 10 minutos e terminaram em duas horas de duração até um time que perde 50% do seu tempo corrigindo defeitos por falta de uma suíte de testes decente. Os problemas podem não ser grandes para aquele projeto em específico mas não prestar atenção há eles é mortal em médio prazo.</p>
<p>Minha conclusão é que a indústria está num estado melhor do que há alguns anos atrás. Tecnicamente estamos entrando em uma espécie de renascimento e isso promete render muito material para posts aqui. Em termos de gerencia de projetos e processos as pessoas estão finalmente se convencendo que tudo tem limite, até ineficiência.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.fragmental.com.br/2009/07/10/refletindo-sobre-tendencias/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Mingle Day - Rio e São Paulo</title>
		<link>http://blog.fragmental.com.br/2009/06/23/migle-day-rio-e-sao-paulo/</link>
		<comments>http://blog.fragmental.com.br/2009/06/23/migle-day-rio-e-sao-paulo/#comments</comments>
		<pubDate>Tue, 23 Jun 2009 10:51:49 +0000</pubDate>
		<dc:creator>Phillip Calçado</dc:creator>
		
		<category><![CDATA[beyondjava]]></category>

		<category><![CDATA[brasil]]></category>

		<category><![CDATA[comunidade]]></category>

		<category><![CDATA[engenharia]]></category>

		<category><![CDATA[eventos]]></category>

		<category><![CDATA[gerencia]]></category>

		<category><![CDATA[java]]></category>

		<category><![CDATA[metodologias]]></category>

		<category><![CDATA[negocios]]></category>

		<category><![CDATA[palestras]]></category>

		<category><![CDATA[plataformas]]></category>

		<category><![CDATA[rails]]></category>

		<category><![CDATA[rio]]></category>

		<category><![CDATA[ruby]]></category>

		<category><![CDATA[thoughtworks]]></category>

		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://blog.fragmental.com.br/?p=523</guid>
		<description><![CDATA[Como este blog já anunciou este ano será cheio de eventos da ThoughtWorks no Brasil.
Uma coisa a se notar sobre a ThoughtWorks é que somos uma empresa de consultoria mas com uma divisão de produtos. Como a eventual vinda da ThoughtWorks para o Brasil significa a vinda das duas partes é bom que também apresentemos [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.fragmental.com.br/2009/06/08/thoughtworks-brasil-–-perguntas-frequentes/">Como este blog já anunciou</a> este ano será cheio de eventos da ThoughtWorks no Brasil.</p>
<p>Uma coisa a se notar sobre a ThoughtWorks é que somos uma empresa de consultoria mas com <a href="http://studios.thoughtworks.com/">uma divisão de produtos</a>. Como a eventual vinda da ThoughtWorks para o Brasil significa a vinda das duas partes é bom que também apresentemos ao mercado brasileiro os softwares que produzimos.</p>
<p>O software mais popular da suite é o <a href="http://studios.thoughtworks.com/mingle-agile-project-management">Mingle</a>, um sistema de gerenciamento de projetos com muitas características interessantes. Ele foi construído baseado na experiência da empresa prestando consultoria, entende bem que cada processo é diferente e que modelos engessados não funcionam bem. Também possui uma interface rica que<a href="http://www.youtube.com/watch?v=dTjuWdy0pgA"> aliada com alguns recursos de hardware</a> se torna uma ferramenta extremamente útil quando um Kanban eletrônico é necessário. Por fim é provavelmente o mais famoso caso de uso do <a href="http://www.thoughtworks.com/press-releases/Mingle-JRuby-Release.html">JRuby on Rails</a> -o Mingle usa componentes escritos em Java aliados aos recursos do Rails.</p>
<p>Se você quer conhecer mais sobre o produto tem duas oportunidades. Abaixo os convites.</p>
<h3>Rio de Janeiro</h3>
<blockquote><p>Hi, </p>
<p>ThoughtWorks is sponsoring Agile Brazil 2009, the first major conference on Agile methodologies to be held in Rio de Janeiro, Brazil. In this extensive, one-day event, various practitioners and speakers will conduct sessions on a range of well-known Agile methodologies and practices such as Lean, Scrum, XP, User Stories, Continuous Integration, Release management and Test Driven Development. </p>
<p>Date and Venue:<br />
June 27, 2009, 8:30am - 6:00pm.<br />
Salao A (Padre Anchieta hall)<br />
PUC-Rio, Gavea, Rio de Janeiro, Brazil.<br />
Registration Information<br />
Registration: R$ 200,00.<br />
Register for Agile Brazil 2009 </p>
<p>Mingle User Group Meeting in Rio de Janeiro </p>
<p>We have organized a free follow-on event for agile enthusiasts. We invite you to the Rio Mingle User Group (MUG) Meeting, an exclusive meet for Mingle users in Brazil, to discuss and share their experience with Mingle. Adam Monago, our product expert along with other Agile experts will take you through Mingle and its features and provide you tips and tricks on how to better use Mingle for project management and collaboration. After the talk you can interact with the attendees over food and drinks. </p>
<p>Date: 1- July-2009<br />
Time: 17:30 - 19:00<br />
Venue: PUC-Rio, Rua Marques de Sao Vicente 225 - Predio Padre Leonel Franca - 13 andar - Gavea, Rio de Janeiro, Brazil </p>
<p>To confirm your participation for the Mingle User Group, simply reply to this email: Studios-Brazil@thoughtworks.com? </p>
<p>Regards,<br />
ThoughtWorks Studios<br />
Studios-Brazil@thoughtworks.com</p></blockquote>
<h3>São Paulo</h3>
<blockquote><p>A Aspercom e a ThoughtWorks convidam você para o Encontro Agile / Mingle User Group Meeting. Este será um evento gratuito em São Paulo com mini-palestras, discussões e muito bate-papo.</p>
<p>Data: 30 de junho de 2009 às 19:00hs / Local: Av. Paulista</p>
<p>Facilitadores:<br />
Paulo Caroli, Adam Monago (ThoughtWorks)<br />
Rodrigo Yoshima, José Paulo Papo</p>
<p>Mingle User Group Meeting</p>
<p>O encontro do Mingle User Group (MUG) do Brasil é uma oportunidade para conhecer, discutir e compartilhar experiências com o Mingle. Adam Monago, um especialista no produto juntamente com outros Agilistas experientes, demonstrarão o Mingle provendo dicas e truques em como usar o produto para gerenciamento de projetos e colaboração.</p>
<p>Local, agenda, inscrições e outras informações acesse: <a href=http://blog.aspercom.com.br/2009/06/22/evento-agile-mingle/">http://blog.aspercom.com.br/2009/06/22/evento-agile-mingle/</a></p>
<p>Rodrigo Yoshima<br />
ASPERCOM</p>
<p>Paulo Caroli<br />
ThoughtWorks</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://blog.fragmental.com.br/2009/06/23/migle-day-rio-e-sao-paulo/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>

<!-- Dynamic Page Served (once) in 1.807 seconds -->
<!-- Cached page served by WP-Cache -->
