<?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>jeveaux.com &#187; Desenvolvimento</title>
	<atom:link href="http://jeveaux.com/category/desenvolvimento/feed/" rel="self" type="application/rss+xml" />
	<link>http://jeveaux.com</link>
	<description>blog de um apaixonado por programação, videogame, leitura, ideias empreendedoras e agora tatuagem</description>
	<lastBuildDate>Tue, 05 Jul 2011 19:40:04 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Meu ambiente de trabalho em 7 itens</title>
		<link>http://jeveaux.com/2011/meu-ambiente-de-trabalho-em-7-itens/</link>
		<comments>http://jeveaux.com/2011/meu-ambiente-de-trabalho-em-7-itens/#comments</comments>
		<pubDate>Wed, 19 Jan 2011 11:14:57 +0000</pubDate>
		<dc:creator>jeveaux</dc:creator>
				<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[Giran]]></category>
		<category><![CDATA[Pessoal]]></category>
		<category><![CDATA[Produtividade]]></category>
		<category><![CDATA[7 itens]]></category>
		<category><![CDATA[bash]]></category>
		<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[Git]]></category>
		<category><![CDATA[GitHub]]></category>
		<category><![CDATA[gmail]]></category>
		<category><![CDATA[meme]]></category>
		<category><![CDATA[textmate]]></category>

		<guid isPermaLink="false">http://jeveaux.com/?p=1424</guid>
		<description><![CDATA[Meu ambiente de trabalho em 7 itens, alguém começou com este meme legalzinho e a minha amiga Loiane falou sobre seu ambiente de trabalho e me indicou para que eu falasse um poquinho sobre meu ambiente de trabalho e desse &#8230; <a href="http://jeveaux.com/2011/meu-ambiente-de-trabalho-em-7-itens/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Meu ambiente de trabalho em 7 itens, alguém começou com este meme legalzinho e a minha amiga <a href="http://www.loiane.com/2011/01/meu-ambiente-de-trabalho-em-7-itens/">Loiane falou sobre seu ambiente de trabalho</a> e me indicou para que eu falasse um poquinho sobre meu ambiente de trabalho e desse continuidade ao meme.</p>
<h3>1) Mac OS</h3>
<div id="attachment_1436" class="wp-caption alignleft" style="width: 210px"><img class="size-full wp-image-1436" title="thm_Motorola_68020_Apple_Macintosh_LC" src="http://jeveaux.com/wp-content/uploads/2011/01/thm_Motorola_68020_Apple_Macintosh_LC.jpg" alt="" width="200" /><p class="wp-caption-text">Macintosh Quadra 605</p></div>
<p>Minha primeira experiência com o Mac OS foi em 1997 quando ainda era Macintosh e não era nada hype. Conheci um <a href="http://en.wikipedia.org/wiki/Macintosh_Quadra">Macintosh Quadra 605</a>, que já era bem velho na época, mas acabei gostando <strong>*muito*</strong>. Logo depois, em 1998 quando <a href="http://en.wikipedia.org/wiki/IMac_G3">o primeiro iMac</a> foi lançado com o PowerPC G3 eu comprei um pra mim e me tornei o único <em>besta</em> da cidade a ter um Macintosh &#8211; não bastasse, antes, ser o único <em>besta</em> a usar Linux. Desde então tenho Macs. Cheguei a ficar alguns períodos sem Mac, mas não mais que 1 ano e pouco.</p>
<p>Obviamente também gosto e uso muito Linux, gosto de qualquer distribuição baseada no Debian, em especial o Ubuntu e detesto qualquer coisa RPM based. Tenho vários servidores que administro com Ubuntu Server e Debian (da Giran e de clientes) e algumas máquinas virtuais no meu macbook pro também com Ubuntu e Ubuntu Server.</p>
<p>Dizer que eu uso o Mac OS porque é bom, estável ou eficiente é chover no molhado. Eu simplesmente uso pois gosto e acho que gosto pois sempre tive Macs. Não é assim com Windows? Pergunte a alguém porque ele(a) usa Windows.</p>
<div id="attachment_1443" class="wp-caption aligncenter" style="width: 389px"><img class="size-full wp-image-1443  " title="i-ve-had-my-imac-since-2001-is-that-considered-to-be-old-2" src="http://jeveaux.com/wp-content/uploads/2011/01/i-ve-had-my-imac-since-2001-is-that-considered-to-be-old-2.jpg" alt="" width="379" height="300" /><p class="wp-caption-text">iMac G3 - Meu primeiro Mac</p></div>
<h3>2) Gmail</h3>
<p>O gmail é hoje uma das minhas principais ferramentas de trabalho, se não for a principal. Depois que abri a <a href="http://www.giran.com.br">Giran</a> com o Léo Hackin o <strong>gmail e o keynote tonaram-se ferramentas indispensáveis</strong> e de uso diário &#8211; o gmail eu nunca fecho.</p>
<p>Acho que até já sei mais atalhos do gmail do que do Eclipse.</p>
<h3>3) Eclipse e TextMate</h3>
<p>Ainda trabalho bastante com Java e não pretendo deixar de fazer isso tão cedo, logo, o Eclipse é minha IDE favorita e campeã em todos os aspectos.</p>
<p>Mas não vivo só de Java. Sempre usei o VIM para qualquer outro tipo de trabalho, mas depois que comecei a aprender Ruby e Rails fui aprendendo a usar o TextMate com alguns <em>railers</em> e curti muito. Hoje o VIM acabo usando somente em servidores remotos e pra quase qualquer outro tipo de trabalho uso o TextMate.</p>
<h3>4) Git + Github</h3>
<p>Eu conheci o <a href="http://git-scm.com/">git</a> e <a href="http://gitorious.org/">gitorious</a> em 2008 quando trabalhei na globo.com. Não foi muito fácil entender o funcionamento de um repositório distribuído no começo, mas as confusões e brincadeiras foram legais o suficiente para não desistir: <em>&#8220;- Mas você fez commit? &#8211; Sim! &#8211; Mas não basta, tem que fazer também o pu&#8230; ué pull ou push mesmo?&#8221;</em></p>
<p>O git é incrivelmente simples e eficiente e o github fez um trabalho igualmente fantástico ao criar uma ferramenta que simplificou o uso do git em projetos open source e a colaboração entre os desenvolvedores destes projetos.</p>
<blockquote><p>Dica: quer ter o seu repositório privado e na nuvem (putz, não espacei das buzzwords): <a href="http://stackoverflow.com/questions/1960799/using-gitdropbox-together-effectively">Using git + dropbox</a>. Uma combinação matadora.</p></blockquote>
<h3>5) Bash</h3>
<div id="attachment_1458" class="wp-caption alignright" style="width: 210px"><img class="size-full wp-image-1458" title="jeveaux_terminal_bash" src="http://jeveaux.com/wp-content/uploads/2011/01/jeveaux_terminal_bash.png" alt="" width="200" /><p class="wp-caption-text">terminal</p></div>
<p>Não da pra trabalhar sem um shell. Eu uso o bash e a aplicação do Terminal fica nos meus itens de lançamento automático ao reiniciar o Mac OS (não que isso aconteça muito). Uso o terminal pra tudo, inclusive para o git. Não tenho nada de outro mundo nos <a href="https://github.com/jeveaux/bash-files">meus bash files</a>, apenas alguns <em>alias</em>, cores e auxiliares que me ajudam muito no dia a dia, como, por exemplo, saber em qualquer <em>branch</em> em estou num projeto git.</p>
<h3>6) Giran</h3>
<p>A <a href="http://www.giran.com.br">Giran</a> não é só a empresa onde trabalho, é o meu item principal de trabalho. Primeiramente eu trabalho na Giran, mas trabalho para levar a Giran adiante e trabalho também com as limitações e qualidades da Giran, além de trabalhar sempre para a Giran, mas, principalmente eu trabalho com às pessoas que hoje, juntas, são a Giran.</p>
<p>Não quero falar muito pra não parecer jabá disfarçado/forçado ou algo do tipo, mas se estou feliz e realizado no trabalho hoje em dia, sem dúvida é culpa <a href="http://www.giran.com.br/time">desses excepcionais da Giran</a> e da cultura de trabalho que estamos criando juntos por aqui, sem isso não adiantaria 7 ou 70 itens do meu ambiente de trabalho.</p>
<h3>7) Monitor externo e o mito da produtividade</h3>
<p>Aqui está um ponto delicado da minha rotina de trabalho. Por muito tempo sempre pensei: quanto mais monitor, melhor. Errado! Grande engano e grande mito. Com o passar do tempo os monitores externos só serviam para acumular coisas abertas e simultaneamente visíveis para me tirar a atenção, me atrapalhando a manter o foco em uma coisa de cada vez.</p>
<p><strong>Pra mim, no meu caso</strong>, o monitor externo não aumenta em nada a minha produtividade, pelo contrário, se eu der mole até me atrapalha e reduz a minha produtividade. Eu eventualmente uso o monitor externo para ajudar com a visualização ou acompanhamento de logs e consoles ou então durante sessões de programação em par. Fora isso prefiro deixar desligado.</p>
<div id="attachment_1450" class="wp-caption aligncenter" style="width: 390px"><img class="size-full wp-image-1450" title="jeveaux_workstation" src="http://jeveaux.com/wp-content/uploads/2011/01/jeveaux_workstation.png" alt="" width="380" /><p class="wp-caption-text">Minha estação de trabalho hoje: monitor externo 21.5 full hd &#39;de lado&#39;  + macbook pro 13&#39;</p></div>
<p>Sem o monitor externo eu organizo todas as minhas coisas em várias <em>spaces</em> separadas e não permito que o <em>CMD+TAB</em> mude direto para a aplicação selecionada + <em>space</em> em que ela estiver. Pra eu mudar de aplicação tenho que mudar de <em>space</em> mesmo, evitando que eu perca o foco no que eu estou fazendo.</p>
<p>E é isso. Difícil falar tanto sobre itens de desenvolvimento hoje em dia quando às vezes chego a passar um dia inteiro sem desenvolver nada. Mas o gmail tem se mostrado uma boa IDE, por enquanto =P</p>
<h3>E pra continuar&#8230;</h3>
<p>Claro, indicarei alguns amigos para escrever sobre seus respectivos ambientes de trabalho também, pra ficar tudo igual indicarei 7 amigos:</p>
<ul>
<li><a href="http://twitter.com/leohackin">@leohackin</a></li>
<li><a href="http://twitter.com/makotovh">@makotovh</a></li>
<li><a href="http://twitter.com/wbotelhos">@wbotelhos</a></li>
<li><a href="http://twitter.com/franciscosouza">@franciscosouza</a></li>
<li><a href="http://twitter.com/m3nd3s">@m3nd3s</a></li>
<li><a href="http://twitter.com/tagliati">@tagliati</a></li>
<li><a href="http://twitter.com/bt1">@bt1</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://jeveaux.com/2011/meu-ambiente-de-trabalho-em-7-itens/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>RailsRumble 2010 Review</title>
		<link>http://jeveaux.com/2010/railsrumble-2010-review/</link>
		<comments>http://jeveaux.com/2010/railsrumble-2010-review/#comments</comments>
		<pubDate>Fri, 22 Oct 2010 00:24:38 +0000</pubDate>
		<dc:creator>jeveaux</dc:creator>
				<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[railsrumble]]></category>
		<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[rumble]]></category>

		<guid isPermaLink="false">http://www.jeveaux.com/blog/?p=1370</guid>
		<description><![CDATA[No último final de semana participei do RailsRumble 2010, uma competição onde um time com no máximo 4 pessoas tem 48 horas para desenvolver uma aplicação usando Ruby on Rails. Meu time desenvolveu o Mittun, um gerenciador de eventos. Fazendo &#8230; <a href="http://jeveaux.com/2010/railsrumble-2010-review/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.giran.com.br/2010/09/devs-da-giran-no-rails-rumble-2010/">No último final de semana participei do RailsRumble 2010</a>, uma competição onde um time com no máximo 4 pessoas tem 48 horas para desenvolver uma aplicação usando Ruby on Rails.</p>
<p><a href="http://railsrumble.com/teams/blastoise">Meu time</a> desenvolveu o <a style="font-weight: bold;" href="http://mittun.com">Mittun</a>, um gerenciador de eventos. Fazendo uma rápida retrospectiva (só do meu ponto vista, não fizemos uma retrospectiva do time ainda):</p>
<p><strong><span style="color: #0000ff;">+</span></strong> Conseguimos definir em pouco tempo as principais tarefas e funcionalidades do produto. Isso ajudou muito a andarmos com um objetivo claro até o final do projeto<br />
<strong><span style="color: #0000ff;">+</span></strong> Conseguimos preparar nosso ambiente de produção/deployment (Ubuntu, MySQL, Ruby, Rails, Apache e Passenger) em menos de uma hora com deployment automatizado com capistrano. Isso nos tirou uma grande preocupação e nos permitiu focar no desenvolvimento do produto.<br />
<strong><span style="color: #0000ff;">+</span></strong> Voltar a ter um contato forte com Rails foi energizante.<br />
<strong><span style="color: #0000ff;">+</span></strong> Fizemos a busca de eventos com paginação, tudo bonitinho &#8230;<br />
<strong><span style="color: #ff0000;">-</span></strong> &#8230; mas esquecemos de coloca-la no produto<br />
<strong><span style="color: #ff0000;">-</span></strong> Como muitos outros projetos, não conseguimos deixar claro qual o objetivo do produto na sua página principal, quando um novo usuário entra no site ele não consegue saber de cara qual o propósito da ferramenta.<br />
<strong><span style="color: #ff0000;">-</span></strong> Infelizmente dormimos uma noite, pois é. Trabalhamos 24 horas direto, da sexta-feira a noite até o sábado a noite, direto, sem parar para dormir nenhum minuto. Então dormimos a noite de sábado e voltamos às 12 últimas horas do domingo.<br />
<strong><span style="color: #ff0000;">-</span></strong> Foi meio chato não ter ficado entre os 20, acho que todos os times devem ter um pouquinho desta sensação, afinal todos se esforçaram muito. Mas esse não era nosso objetivo principal, então vamos em frente.<span style="color: #ff0000;"><strong><br />
</strong></span></p>
<p>O Rumble foi extremamente importante pra mim, por muitos motivos e muitas razões. Há todo o desafio de ter que desenvolver uma aplicação em 48 horas, o que, em qualquer linguagem já é um grande desafio. Some ainda o fato de ter que lidar com todas as dificuldades de um projeto real, definir e alinhar objetivos, deixa-los claros e evidentes o tempo todo, priorizar funcionalidades mais importantes, abrir mão de algumas outras e manter o andamento do trabalho visível. E mais um pouco: definir a visão da produto, layout (só dou pitacos nessa parte), comportamentos, funcionalidades e, principalmente, desenvolver o produto. Tudo em 48 horas!</p>
<p>Mas pra mim, pessoalmente, o mais importante foi o que consegui vivendo este projeto, que foi ter de volta um pouco de alegria e motivação para desenvolver novas aplicações e resolver problemas, trabalhar com coisas simples e eficientes, ver os resultados acontecerem, o produto andando e crescendo, isso não tem preço :) Eu estava há algum tempo sem ter um contato forte com Ruby on Rails e o Rumble foi muito legal nesse ponto e me ajudou bastante.</p>
<p>Mas claro, tudo isso só foi possível graças ao meu time (<a href="http://railsrumble.com/teams/blastoise">blastoooooooise</a>), que foi formado por pessoas &#8211; literalmente &#8211; excepcionais: <a href="http://twitter.com/makoto_vix">Makoto</a>, <a href="http://twitter.com/lcquadros">Cabral</a> e <a href="http://twitter.com/bt1">Roberto Soares</a>, os quais devo muitos agradecimentos. E também ao apoio da <a href="http://www.giran.com.br">Giran</a>, que nos proporcionou um ambiente muito bacana. Enfim, foram as 48 horas mais divertidas e com maior aprendizado dos últimos meses, talvez até deste ano.</p>
<p>E foi isso, muita diversão e aprendizado. Não conseguimos ficar entre os 20 este ano, mas tentaremos de novo no ano que vem! Blastooooooise!</p>
]]></content:encoded>
			<wfw:commentRss>http://jeveaux.com/2010/railsrumble-2010-review/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Safari 5 plugin: SaveTo Social Bookmarks</title>
		<link>http://jeveaux.com/2010/safari-5-plugin-saveto-social-bookmarks/</link>
		<comments>http://jeveaux.com/2010/safari-5-plugin-saveto-social-bookmarks/#comments</comments>
		<pubDate>Thu, 08 Jul 2010 17:10:20 +0000</pubDate>
		<dc:creator>jeveaux</dc:creator>
				<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[Extension]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Safari]]></category>

		<guid isPermaLink="false">http://www.jeveaux.com/blog/?p=1338</guid>
		<description><![CDATA[Logo quando o suporte a desenvolvimento de extensões no Safari foi lançado eu corri e fiz um pequeno plugin, muito mais com a finalidade de testar do que qualquer outra coisa. Mas como sempre preciso de alguma coisa eu fiz &#8230; <a href="http://jeveaux.com/2010/safari-5-plugin-saveto-social-bookmarks/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Logo quando o suporte a desenvolvimento de extensões no Safari foi lançado <a href="http://www.jeveaux.com/blog/2010/plugin-do-delicious-para-safari/">eu corri e fiz um pequeno plugin</a>, muito mais com a finalidade de testar do que qualquer outra coisa. Mas como sempre preciso de alguma coisa eu fiz logo algo que eu estava querendo ter, que era um botão para salvar no <a href="http://delicious.com/">Delicious</a>. Foi uma experiência legal e super simples, muito simples.</p>
<p>Entretanto, após usar o plugin eu notei que não estava legal: o comportamento de abrir uma nova aba, salvar o favorito e manter a aba aberta não ficou legal, não estava bom. Mas a sandbox do Safari não me permitia fazer muita coisa, e nem pouca coisa também: <code class="codecolorer text default"><span class="text">window.open</span></code> e <code class="codecolorer text default"><span class="text">window.close</span></code>, por exemplo, são duas que não funcionam dentro da sandbox de extensões do Safari.</p>
<p>A solução foi usar a <a href="http://developer.apple.com/safari/library/documentation/Tools/Conceptual/SafariExtensionGuide/InjectingScripts/InjectingScripts.html#//apple_ref/doc/uid/TP40009977-CH6-SW1">injeção de scripts</a> <a href="http://developer.apple.com/safari/library/documentation/Tools/Conceptual/SafariExtensionGuide/AddingStyles/AddingStyles.html#//apple_ref/doc/uid/TP40009977-CH7-SW1">e estilos</a> do próprio Safari para fazer algumas <em>coisinhas</em> com JavaScript, como abrir ou fechar uma janela. Aproveitei a oportunidade para fazer um novo plugin, diferente e mais <span style="text-decoration: line-through;">afrescalhado</span> completo, esse cara foi o <a href="http://github.com/jeveaux/delicious-saveto-extension"><strong>SaveTo</strong></a>.</p>
<p>O <strong><a href="http://github.com/jeveaux/delicious-saveto-extension">SaveTo</a><span style="font-weight: normal;"> permite enviar a página atual para o <a href="http://delicious.com/">Delicious</a>, igual ao <a href="http://www.jeveaux.com/blog/2010/plugin-do-delicious-para-safari/">plugin anterior</a>, mas ele faz isso abrindo uma nova janela que é fechada automaticamente logo após o favorito ser gravado, as diferenças: 1) agora são necessários dois cliques para salvar o favorito, antes só precisava de um; 2) além do <a href="http://delicious.com/">Delicious</a> coloquei os atalhos para outros serviços (que escolhi entre os que eu uso com mais frequência).</span></strong></p>
<p style="text-align: center;"><a href="http://www.jeveaux.com/blog/wp-content/uploads/2010/07/saveto_safari_plugin_screenshot.png"><img class="aligncenter size-full wp-image-1339" title="saveto_safari_plugin_screenshot" src="http://www.jeveaux.com/blog/wp-content/uploads/2010/07/saveto_safari_plugin_screenshot.png" alt="" width="568" height="261" /></a></p>
<p>Para quem tiver interesse em baixar, <a href="http://github.com/jeveaux/delicious-saveto-extension/downloads">a distribuição está disponível <strong>aqui</strong></a>. E o <a href="http://github.com/jeveaux/delicious-saveto-extension">código fonte aqui no meu github</a>.</p>
<blockquote><p>Lembrando que antes de instalar o plugin é preciso ativar as extensões no Safari, siga esses passos:</p>
<p>- Menu: Safari &gt; Preferences</p>
<p>- Guia: Avançado &gt; Mostrar menu de desenvolvedor</p>
<p>- Menu: Desenvolvedor &gt; Ativar Extensões</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://jeveaux.com/2010/safari-5-plugin-saveto-social-bookmarks/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>Plugin do Delicious para Safari</title>
		<link>http://jeveaux.com/2010/plugin-do-delicious-para-safari/</link>
		<comments>http://jeveaux.com/2010/plugin-do-delicious-para-safari/#comments</comments>
		<pubDate>Tue, 08 Jun 2010 19:36:33 +0000</pubDate>
		<dc:creator>jeveaux</dc:creator>
				<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[Delicious]]></category>
		<category><![CDATA[Extension]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Safari]]></category>

		<guid isPermaLink="false">http://www.jeveaux.com/blog/?p=1301</guid>
		<description><![CDATA[O Safari 5 foi lançado este mês pela Apple (ontem, dia 07/06/2010) e dentre as novidades a que eu mais gostei foi poder desenvolver meus próprios plugins e extensões para o Safari, através do: Safari Developer Program. Na verdade sempre &#8230; <a href="http://jeveaux.com/2010/plugin-do-delicious-para-safari/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>O <a href="http://www.apple.com/safari/">Safari 5</a> foi lançado este mês pela <a href="http://www.apple.com">Apple</a> (ontem, dia 07/06/2010) e dentre as novidades a que eu mais gostei foi poder desenvolver meus próprios plugins e extensões para o Safari, através do: <a href="http://developer.apple.com/programs/safari/">Safari Developer Program</a>.</p>
<p>Na verdade sempre foi possível fazer plugins para o Safari, é fato, mas não havia um suporte nativo decente, os plugins menos piores precisavam do <a href="http://www.culater.net/software/SIMBL/SIMBL.php">SIMBL</a> (que eu não gosto de usar) e por aí vai.</p>
<p><a href="http://www.jeveaux.com/blog/wp-content/uploads/2010/06/delicious.jpg"><img class="alignleft size-full wp-image-1307" title="delicious" src="http://www.jeveaux.com/blog/wp-content/uploads/2010/06/delicious.jpg" alt="" width="96" height="96" /></a>O que eu mais sentia falta no Safari era de um mísero <em>botãozinho</em> para salvar páginas no <a href="http://delicious.com">Delicious</a>, não precisava nem mostrar os favoritos ou fazer qualquer outra coisa, eu só queria salvar. Da pra fazer isso facilmente com um atalho na barra de favoritos, <a href="http://delicious.com/help/bookmarklets">o próprio delicious ensina</a>, mas eu sou um cara chato de personalidade difícil (de verdade) e não gosto de deixar a barra de favoritos ativa, de modo a otimizar a área útil de visualização no navegador.</p>
<p>Outra alternativa era o <a href="http://delicioussafari.com/">DeliciousSafari</a>, um plugin que faz tudo o que você precisa e o que você também não precisa ou nem imagina que fosse responsabilidade do plugin, algo como o pacote Office da M$. Eu já tentei usar o DeliciousSafari várias vezes, mas, por coincidência ou não, toda vez que eu começava a utiliza-lo o Safari ultrapassava a marca de 1.5Gb de consumo de memória RAM.</p>
<p>Hoje resolvi testar a possibilidade de criar plugins para o Safari5 e me surpreendi, foi muito fácil e indolor. Com menos de 30 minutos consegui deixar o plugin funcional. O mais difícil foi o <a href="http://tagliati.com.br/">Tagliati</a> fazer o ícone pra mim <em>(brincadeiras com o &#8216;designer&#8217;)</em></p>
<p>O plugin é super simples, é somente um botão na toolbar do Safari que salva a página ativa no Delicious, exatamente o que eu tanto queria :) Espero que possa ser útil pra mais alguém. Algumas poucas funcionalidades extras para este plugin já estão em desenvolvimento e outros plugins também, espero poder anuncia-las em breve.</p>
<p>Para quem tiver interesse em baixar, <a href="http://github.com/jeveaux/delicious-safari-extension/downloads">a distribuição está disponível <strong>aqui</strong></a>. E o <a href="http://github.com/jeveaux/delicious-safari-extension">código fonte aqui no meu github</a>.</p>
<blockquote><p>Antes de instalar o plugin é preciso ativar as extensões no Safari, siga esses passos:</p>
<p>- Menu: Safari &gt; Preferences</p>
<p>- Guia: Avançado &gt; Mostrar menu de desenvolvedor</p>
<p>- Menu: Desenvolvedor &gt; Ativar Extensões</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://jeveaux.com/2010/plugin-do-delicious-para-safari/feed/</wfw:commentRss>
		<slash:comments>24</slash:comments>
		</item>
		<item>
		<title>Desenvolvimento ágil de software com SCRUM</title>
		<link>http://jeveaux.com/2010/desenvolvimento-agil-de-software-com-scrum/</link>
		<comments>http://jeveaux.com/2010/desenvolvimento-agil-de-software-com-scrum/#comments</comments>
		<pubDate>Tue, 18 May 2010 12:13:33 +0000</pubDate>
		<dc:creator>jeveaux</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[Metodologias]]></category>
		<category><![CDATA[apresentação]]></category>
		<category><![CDATA[Palestras]]></category>
		<category><![CDATA[SCRUM]]></category>

		<guid isPermaLink="false">http://www.jeveaux.com/blog/?p=1269</guid>
		<description><![CDATA[Esta semana fui convidado pelo professor Egídio, da Faesa, para falar um pouco para os seus alunos sobre desenvolvimento ágil de software utilizando SCRUM. Eu adoro falar sobre SCRUM e já fiz esta apresentação algumas vezes, mas cada vez é &#8230; <a href="http://jeveaux.com/2010/desenvolvimento-agil-de-software-com-scrum/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Esta semana fui convidado pelo professor Egídio, da <a href="http://faesa.br">Faesa</a>, para falar um pouco para os seus alunos sobre desenvolvimento ágil de software utilizando SCRUM. <a href="http://www.jeveaux.com/blog/palestras/">Eu adoro falar sobre SCRUM</a> e já fiz <a href="http://www.slideshare.net/jeveaux">esta apresentação algumas vezes</a>, mas cada vez é diferente, não tem jeito, então aproveitei a oportunidade para fazer um refactory considerável na apresentação de SCRUM que tinha.</p>
<p>A apresentação em si é básica, fala sobre SCRUM, seus papéis, responsabilidades, atividades e ciclo de vida. Nesta apresentação tento focar na desmistificação de alguns conceitos e idéias simples que, às vezes, as pessoas que ainda não conhecem o SCRUM possam ter formado naquelas conversas de corredor, e claro, mostrar alguns benefícios e problemas reais que a adoção do SCRUM trará para a organização e para as pessoas envolvidas.</p>
<p>A apresentação está disponível a<a href="http://www.slideshare.net/jeveaux/desenvolvimento-gil-de-software-com-scrum-4137118">qui no meu slideshare</a> e também no blog. A conversão/compressão do slideshare deixou a apresentação um pouco mais feia, quem quiser faça o download do arquivo que este estará bem melhor.</p>
<p style="text-align: center;"><iframe src="http://www.slideshare.net/slideshow/embed_code/4137118" width="425" height="356" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe><br/><br/></p>
<p>Dúvidas, críticas e sugestões farão meu dia um pouco melhor, fique a vontade para <a href="http://www.jeveaux.com/blog/contato/">me procurar</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://jeveaux.com/2010/desenvolvimento-agil-de-software-com-scrum/feed/</wfw:commentRss>
		<slash:comments>19</slash:comments>
		</item>
		<item>
		<title>Não peça feedback, obtenha-o</title>
		<link>http://jeveaux.com/2009/nao-peca-feedback-obtenha-o/</link>
		<comments>http://jeveaux.com/2009/nao-peca-feedback-obtenha-o/#comments</comments>
		<pubDate>Tue, 22 Dec 2009 00:02:53 +0000</pubDate>
		<dc:creator>jeveaux</dc:creator>
				<category><![CDATA[Carreira]]></category>
		<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[Gerência]]></category>
		<category><![CDATA[Liderança]]></category>
		<category><![CDATA[Feedback]]></category>
		<category><![CDATA[Gestão]]></category>
		<category><![CDATA[Líder]]></category>
		<category><![CDATA[Pessoas]]></category>

		<guid isPermaLink="false">http://www.jeveaux.com/blog/?p=1050</guid>
		<description><![CDATA[Todo grande líder sabe que o feedback sincero daqueles que estão à sua volta é uma das principais ferramentas para melhoria e evolução de seu trabalho e de seu papel como líder. Receber e saber processar as críticas é fundamental &#8230; <a href="http://jeveaux.com/2009/nao-peca-feedback-obtenha-o/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Todo grande líder sabe que o <strong>feedback sincero</strong> daqueles que estão à sua volta é uma das principais ferramentas para melhoria e evolução de seu trabalho e de seu papel como líder. Receber e saber processar as críticas é fundamental para aprender e melhorar como líder, quando o feedback é um elogio é ainda melhor, nada mais gostoso do que ter a certeza que você está no caminho certo.</p>
<p>Mas há um grande dilema: <strong>Como consigo o feedback sincero dos membros do meu time?</strong></p>
<p>A resposta parece simples, afinal, não bastaria apenas perguntar? Bom, é quase por aí, mas deve-se tomar muito cuidado com o tipo de pergunta a se fazer.</p>
<p>A primeira <em>regra</em> que deve-se ter consciência é que nunca será possível conseguir feedback sincero com perguntas idiotas. Uma pergunta idiota geralmente é uma pergunta da qual você não quer ouvir a resposta, ou uma pergunta que você espera ouvir aquilo que você quer ou, até mesmo, uma pergunta cuja resposta é óbvia.</p>
<blockquote><p><strong>Pergunta idiota:</strong> No meio de um jogo de futebol, pergunta-se para a árbitro: <em>Você está ocupado?</em></p></blockquote>
<p>Qualquer ser vivo pensante saberá a resposta do árbitro. Se a pergunta é idiota a resposta é tola.</p>
<p>Isso não significa que a pessoa não queira te dar feedback, mas que há outras maneiras mais eficazes de se conseguir feedback. Não faça uma solicitação em forma de ordem pergunta direta.</p>
<p>Lembre-se sempre destas palavras pois elas serão a chave para o seu sucesso como líder de qualquer time em qualquer área ou empresa, especialmente para se <strong>obter feedback</strong> sincero e <strong>colaboração</strong> das pessoas. Estas são as palavras mais poderosas que existem para obter cooperação: <strong>&#8220;Eu preciso de&#8221;</strong>. Essas simples palavras são capazes de mágicas e feitos surpreendentes.</p>
<p>Pedir feedback não significa que você irá consegui-lo, especialmente se o pedido começar com <em>&#8220;eu quero&#8221;</em>. Quando você diz a alguém de seu time que você <em>&#8220;quer&#8221;</em> algo, a primeira coisa que essa pessoa pensa é: <em>&#8220;ah, claro, todos queremos algo que não podemos ter&#8221;</em>. Mas se você começa com <strong>&#8220;Eu preciso de&#8221;</strong>, significa que você pensou sobre o que é necessário para alcançar o que você está pedindo e, para tal, precisa da ajuda desta pessoa. É incrível como as pessoas adoram sentir-se necessárias, saber que podem ajudar com algo, isso faz toda a diferença entre escutar uma resposta tola e conseguir um feedback sincero.</p>
<blockquote><p><strong>Aprendendo a <span style="text-decoration: underline;">obter</span> feedback</strong>: <em>Preciso de feedback específico sobre meu plano para que a próxima iteração dê certo.</em></p></blockquote>
<p>Simples e indolor, certamente você terá muito a ouvir e aprender.</p>
<p>Um líder é qualquer pessoa que possa lhe dar apoio e orientação necessárias para alcançar seu objetivo. Às vezes o seu maior desafio como líder é saber onde e quando cada pessoa do seu time executará este papel, e cabe a você conseguir obter o feedback necessário destas pessoas.</p>
]]></content:encoded>
			<wfw:commentRss>http://jeveaux.com/2009/nao-peca-feedback-obtenha-o/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>Evitando o cache no cliente</title>
		<link>http://jeveaux.com/2009/evitando-o-cache-no-cliente/</link>
		<comments>http://jeveaux.com/2009/evitando-o-cache-no-cliente/#comments</comments>
		<pubDate>Fri, 11 Dec 2009 20:30:13 +0000</pubDate>
		<dc:creator>jeveaux</dc:creator>
				<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[Cache]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[JS]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://www.jeveaux.com/blog/?p=1031</guid>
		<description><![CDATA[HTML e CSS nunca foram meu forte, eu sei o que preciso saber para sobreviver, já que trabalho com desenvolvimento web. Não da pra esperar que eu consiga montar uma apresentação fantástica usando HTML5 e CSS3 e ainda por cima &#8230; <a href="http://jeveaux.com/2009/evitando-o-cache-no-cliente/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>HTML e CSS nunca foram meu forte, eu sei o que preciso saber para sobreviver, já que trabalho com desenvolvimento web. Não da pra esperar que eu consiga montar uma apresentação fantástica usando HTML5 e CSS3 e ainda por cima pensando fortemente em semântica, organização e melhores práticas, fato!</p>
<p>Não estou aqui criticando HTML e CSS, eu entendo perfeitamente a importância de tudo isso, mas não posso negar que nunca me dediquei muito para aprende-las, até porque nunca tive a necessidade de ser o responsável por esse trabalho. Exatamente por isso eu aprendi algo <span style="text-decoration: line-through;">babacamente</span> simples esses dias, porém extremamente eficiente.</p>
<p>Imagine mudar o CSS, subir pra produção e o cliente simplesmente ver o seu site totalmente quebrado? Pior, mudar uma imagem (um banner ou qualquer outra imagem) e o cliente continuar recebendo a imagem antiga. Quem trabalha com sistemas web e nunca passou por isso?</p>
<p>É muito comum alterarmos qualquer coisa estática como CSS, imagens e até JavaScript e essas alterações não serem interpretadas pelo navegador. O jeito é limpar (ou desligar) o cache do navegador, dar uns 3 ou mais refreshs ou apelar pro CTRL+F5, isso é o que fazemos desenvolvendo. Mas e quando isso acontece em produção, vamos dizer pro usuário/cliente <em>&#8216;limpar o cache&#8217;</em>? Claro que não, temos que dar um jeito então do navegador do cliente reconhecer as alterações logo na primeira visita.</p>
<p>Isso ocorre pois o navegador faz cache local destes recursos e os utiliza quando julga ser a melhor opção. A mesma coisa ocorre com proxy de redes, que também podem fazer cache. O jeito para descartar esse cache é fazer algum malabarismo no servidor web, mas nem sempre isso é possível, então precisamos recorrer à aplicação, onde &#8211; geralmente &#8211; temos maior domínio.</p>
<p>O cache no navegador tem uma regra básica super simples: o nome do recurso estático. Se mudarmos o nome de um arquivo CSS ou imagem, por exemplo, não teremos problema algum com cache. Se você puder fazer isso na sua aplicação, ótimo, problema resolvido.</p>
<p>Mas se não puder, temos outra opção simples e eficiente, podemos anexar algum parâmetro falso no nome do recurso, por exemplo:</p>
<div class="codecolorer-container html4strict vibrant" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="html4strict codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">link</span> <span style="color: #000066;">rel</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;stylesheet&quot;</span> <span style="color: #000066;">type</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;text/css&quot;</span> <span style="color: #000066;">href</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;/css/estilo.css&quot;</span> <span style="color: #66cc66;">/</span>&gt;</span></div></td></tr></tbody></table></div>
<p>Ao atualizar propriedades desta folha de estilo as alterações não serão perceptíveis no navegador enquanto o cache (do navegador) não for atualizado. E isso ou o cliente faz explicitamente ou nós faremos por ele. Então, vamos fazer a nossa parte, vejam:</p>
<div class="codecolorer-container html4strict vibrant" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:500px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="html4strict codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">link</span> <span style="color: #000066;">rel</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;stylesheet&quot;</span> <span style="color: #000066;">type</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;text/css&quot;</span> <span style="color: #000066;">href</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;/css/estilo.css?1&quot;</span> <span style="color: #66cc66;">/</span>&gt;</span></div></td></tr></tbody></table></div>
<p>O simples parâmetro <code class="codecolorer text default"><span class="text">?1</span></code> cuida disso pra nós. O navegador vai encarar que se trata de uma nova folha de estilos e fará o download do servidor, utilizando esta nova versão no lugar da que ele tem em cache, na próxima visita o <code class="codecolorer text default"><span class="text">?1</span></code> não vai fazer mais nada, já que o navegador já tem a folha de estilo com o <code class="codecolorer text default"><span class="text">?1</span></code> em cache. O parâmetro <code class="codecolorer text default"><span class="text">?1</span></code> pode ser atualizado toda vez que for preciso fazer alguma alteração na folha de estilo, desta forma o cliente terá sempre a versão correta toda vez que ela for atualizada.</p>
<p>Outra saída é usar um parâmetro que nunca será o mesmo, por exemplo: usar a data completa (dia, mês, ano, hora, minuto e segundo). Só que isso fará com que o cliente faça o download do recurso no servidor toda vez que acessar o site, o que pode causar um grande tráfego no servidor, impactando diretamente na performance da sua aplicação. Num captcha faz sentido, mas em outros casos é bom pensar bastante antes.</p>
<p>É isso, dica simples e fácil (e talvez boba), mas que me salvou um dia desses.</p>
]]></content:encoded>
			<wfw:commentRss>http://jeveaux.com/2009/evitando-o-cache-no-cliente/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
		<item>
		<title>Aniversário do CEJUG, Lucene, Caranguejo e muita castanha</title>
		<link>http://jeveaux.com/2009/aniversario-do-cejug-lucene-caranguejo-e-muita-castanha/</link>
		<comments>http://jeveaux.com/2009/aniversario-do-cejug-lucene-caranguejo-e-muita-castanha/#comments</comments>
		<pubDate>Mon, 21 Sep 2009 19:57:05 +0000</pubDate>
		<dc:creator>jeveaux</dc:creator>
				<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[Eventos]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Palestras]]></category>
		<category><![CDATA[Viagens]]></category>
		<category><![CDATA[CEJug]]></category>
		<category><![CDATA[Hibernate]]></category>
		<category><![CDATA[Hibernate Search]]></category>
		<category><![CDATA[Indexação]]></category>
		<category><![CDATA[Lucene]]></category>
		<category><![CDATA[Pesquisa]]></category>
		<category><![CDATA[Solr]]></category>

		<guid isPermaLink="false">http://www.jeveaux.com/blog/?p=934</guid>
		<description><![CDATA[Este final de semana eu estive em Fortaleza, Ceará, participando do Café com Tapioca especial do 7º aniversário do CEJUG. Resumir um evento nunca foi tão simples: Excelência, organização e hospitalidade. Foi assim que o CEJUG fez mais um grande &#8230; <a href="http://jeveaux.com/2009/aniversario-do-cejug-lucene-caranguejo-e-muita-castanha/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Este final de semana <a href="http://www.jeveaux.com/blog/2009/cejug-7-anos-eu-vou-palestrar/">eu estive em Fortaleza, Ceará, participando do Café com Tapioca</a> especial do <strong>7º aniversário do </strong><a href="http://cejug.org"><strong>CEJUG</strong></a>. Resumir um evento nunca foi tão simples: <strong>Excelência, organização e hospitalidade</strong>. Foi assim que o <a href="http://cejug.org">CEJUG</a> fez mais um grande evento. E eu mais uma vez tive a felicidade de participar e contribuir com um pouco de conhecimento e experiência para os amigos cearenses.</p>
<p style="text-align: center;"><a href="http://www.jeveaux.com/blog/wp-content/uploads/2009/09/DSC08069.JPG"><img class="aligncenter size-full wp-image-939" title="DSC08069" src="http://www.jeveaux.com/blog/wp-content/uploads/2009/09/DSC08069.JPG" alt="DSC08069" width="448" height="336" /></a></p>
<p>O evento estava bem cheio, muita gente acordou sábado cedinho para não perder às apresentações do <a href="http://brunopereira.org">Bruno Pereira</a>, sobre como se tornar um desenvolvedor web melhor e mais produtivo, do Régis Melo para aprender como desenvolver e entregar aplicativos para o mundo inteiro, e do <a href="http://csvo.wordpress.com/">Victor Oliveira</a> para desmistificar algumas lendas sobre times ágeis de desenvolvimento.</p>
<p style="text-align: center;"><a href="http://www.jeveaux.com/blog/wp-content/uploads/2009/09/DSC08164.JPG"><img class="aligncenter size-full wp-image-940" title="DSC08164" src="http://www.jeveaux.com/blog/wp-content/uploads/2009/09/DSC08164.JPG" alt="DSC08164" width="448" height="336" /></a></p>
<p>De tarde tivemos a <span style="text-decoration: line-through;">retaliação</span> apresentação do <a href="http://www.rponte.com.br/">Rafael Ponte</a> e <a href="http://www.tarsobessa.com">Tarso Bessa</a> sobre os 10 maus hábitos dos desenvolvedores JSF, uma excelente explanação do <a href="http://aspercom.com.br">Rodrigo Yoshima</a> sobre a falta de conhecimento das pessoas que gostam de se dizer ágeis e uma verdadeira aula de TDD com o <a href="http://www.caelum.com.br">Paulo Silveira</a>.</p>
<p>E a minha apresentação também foi na parte da tarde. Nesta apresentação falei sobre o Lucene e sobre o Solr e Hibernate Search, duas ferramentas baseadas no Lucene, porém com propósitos bastante distintos.</p>
<p style="text-align: center;"><iframe src="http://www.slideshare.net/slideshow/embed_code/2029935" width="425" height="356" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe><br/><br/></p>
<p style="text-align: left;">Além dos slides acima também foram apresentados três exemplos: com Lucene, com Solr e com Hibernate Search. Os exemplos são bem simples e a intenção é apenas mostrar o funcionamento básico das ferramentas. Todos os códigos estão disponíveis no meu github: <a href="http://github.com/jeveaux/aprendendo-lucene">aprendendo-lucene</a>, <a href="http://github.com/jeveaux/aprendendo-solr">aprendendo-solr</a> e <a href="http://github.com/jeveaux/aprendendo-hibernatesearch">aprendendo-hibernatesearch</a>.</p>
<p><span id="more-934"></span>E claro, como eu já estava em Fortaleza não poderia perder a oportunidade para passear e conhecer um pouco mais da cultura e pontos turísticos desta maravilhosa cidade.</p>
<p style="text-align: center;"><a style="text-decoration: none;" href="http://www.jeveaux.com/blog/wp-content/uploads/2009/09/castanha-de-caju.jpg"><img class="size-full wp-image-950 alignnone" title="castanha-de-caju" src="http://www.jeveaux.com/blog/wp-content/uploads/2009/09/castanha-de-caju.jpg" alt="castanha-de-caju" width="200" height="150" /></a> <a href="http://www.jeveaux.com/blog/wp-content/uploads/2009/09/IMG_0744.JPG"><img class="size-full wp-image-944 alignnone" title="IMG_0744" src="http://www.jeveaux.com/blog/wp-content/uploads/2009/09/IMG_0744.JPG" alt="IMG_0744" width="200" height="150" /></a></p>
<p>Aproveitei bastante a <a href="http://images.google.com/images?q=fortaleza%20praia%20do%20futuro&amp;oe=UTF-8&amp;um=1&amp;ie=UTF-8&amp;sa=N&amp;hl=en&amp;tab=wi">praia do Futuro</a>, <a href="http://pt.wikipedia.org/wiki/Caranguejo">caranguejos</a>, peixe frito, muita cerveja gelada e até uma festa chamada <a href="http://haremdomuido.com.br">Forró no Sítio</a>, onde o pé de valsa Paulo Silveira mandou muito bem. Esta viagem foi 10, espero voltar em breve e por muitas e muitas vezes.</p>
]]></content:encoded>
			<wfw:commentRss>http://jeveaux.com/2009/aniversario-do-cejug-lucene-caranguejo-e-muita-castanha/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Estamos contratando na Giran</title>
		<link>http://jeveaux.com/2009/estamos-contratando-na-giran/</link>
		<comments>http://jeveaux.com/2009/estamos-contratando-na-giran/#comments</comments>
		<pubDate>Thu, 13 Aug 2009 13:29:04 +0000</pubDate>
		<dc:creator>jeveaux</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[Giran]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Contratação]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Oportunidade]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[XHTML]]></category>

		<guid isPermaLink="false">http://www.jeveaux.com/blog/?p=456</guid>
		<description><![CDATA[Há pouco tempo pude compartilhar minha enorme felicidade com o lançamento da Giran Soluções e Ensino com todos vocês dois leitores, e desde lá estamos trabalhando duro, literalmente ralando por aqui. Cada dia, cada entrega, cada projeto e contrato conquistado &#8230; <a href="http://jeveaux.com/2009/estamos-contratando-na-giran/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.jeveaux.com/blog/2009/lancamento-giran-solucoes-e-ensino/">Há pouco tempo</a> pude compartilhar minha enorme felicidade com o lançamento da <strong><a href="http://www.giran.com.br">Giran Soluções e Ensino</a><span style="font-weight: normal;"> com todos vocês <span style="text-decoration: line-through;">dois</span> leitores</span></strong>, e desde lá estamos trabalhando duro, literalmente ralando por aqui. Cada dia, cada entrega, cada projeto e contrato conquistado são alegrias enormes e, sempre comemoradas com muito entusiasmo. Agora estamos abrindo nosso primeiro processo de seleção, estamos crescendo!</p>
<p>A <a href="http://www.giran.com.br"><strong>Giran</strong></a> é uma empresa nova, jovem, descontraída e muito, <strong><a href="http://www.giran.com.br/empresa">muito comprometida</a></strong> com seus objetivos. Trabalhamos de forma ágil, usamos Scrum internamente e nos projetos dos clientes, além de várias práticas de <em>Extreme Programming</em>, inclusive TDD e programação em pares. Aversão à estas práticas não é um bom diferencial :)</p>
<p>Neste processo de seleção nós não estamos procurando especialistas e nem donos da verdade, aqui na <strong><a href="http://www.giran.com.br">Giran</a> </strong>nós usamos de tudo um pouco. Cada profissional tem uma especialidade ou <em>&#8216;sabor preferido&#8217;</em>, nós também temos as nossas e sabemos valoriza-las, mas estamos interessados especialmente em profissionais multi-disciplinares, que sejam capazes de desenvolver, analisar, testar e arquitetar com diferentes linguagens e tecnologias, ou que ao menos estejam dispostos a trabalhar desta forma. Como trabalhamos com Internet, conhecimentos em Javascript, CSS, XHTML, mashups com APIs de terceiros, etc, serão um bom diferencial.</p>
<p>É importante que o candidato saiba que prezamos muito pela qualidade do que fazemos, nós estudamos os códigos um dos outros e nos respeitamos por isso, aprendemos muito assim. Nosso principal objetivo é a <strong>qualidade máxima</strong>,<strong> </strong>nós não viramos noite trabalhando e mesmo assim entregamos software no prazo, testado e funcionando muito bem, obrigado! Por isso estamos procurando pessoas com esse perfil: comprometidas, organizadas, que saibam trabalhar muito bem em equipe e que prezem pela qualidade do que fazem.</p>
<p>Por último, e talvez mais importante: todos nós somos <a href="http://www.flickr.com/photos/jeveaux/3601795456/">nerds</a>, <a href="http://www.flickr.com/photos/jeveaux/3816962607/">geeks</a>, apaixonados por tecnologia e super atualizados com as últimas novidades da Internet e do mercado. Nossa <a href="http://blog.giran.com.br/2009/08/easter-eggs/">equipe é jovem, irreverente, descontraída</a> e em constante evolução. São pessoas com esse perfil que estamos procurando.</p>
<p>A empresa oferece contratação com salário de mercado <em>(não o do mercado capixaba)</em>, plano de benefícios e outros incentivos como cursos e treinamentos (especialmente aulas de inglês), um iMac ou Macbook (sim, gostamos da maçã por aqui) exclusivo para você, e claro vaga garantida nas partidas de xbox360. <a href="http://www.giran.com.br/empresa/endereco">Estamos localizados em Jardim da Penha, Vitória-ES</a>.</p>
<p>Se você acha que se enquadra, mande um email para mim (contato <em>at</em> giran.com.br) com seu currículo e os nomes dos <strong>3 últimos livros técnicos que você leu</strong>. Diga se você sabe quem é o <em>Taurin</em> e qual sua ocupação, afinal de contas você está indo para Giran <span style="text-decoration: line-through;">Castle Town</span>.</p>
<p>Não pense que estamos procurando apenas profissionais experientes e de altíssimo nível: se você é estudante e tem pouca ou nenhuma experiência mas gosta de ler e aprender sobre coisas novas você não está fora! Escreva pra gente.</p>
]]></content:encoded>
			<wfw:commentRss>http://jeveaux.com/2009/estamos-contratando-na-giran/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Trabalhando com mais de um JDK no Ubuntu</title>
		<link>http://jeveaux.com/2009/trabalhando-com-mais-de-um-jdk-no-ubuntu/</link>
		<comments>http://jeveaux.com/2009/trabalhando-com-mais-de-um-jdk-no-ubuntu/#comments</comments>
		<pubDate>Mon, 20 Jul 2009 20:29:49 +0000</pubDate>
		<dc:creator>jeveaux</dc:creator>
				<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[apt-get]]></category>
		<category><![CDATA[Java5]]></category>
		<category><![CDATA[Java6]]></category>
		<category><![CDATA[JDK]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://www.jeveaux.com/blog/?p=855</guid>
		<description><![CDATA[Hoje em dia ter o Java5 e Java6 instalados na máquina de um desenvolvedor é praticamente uma obrigação. Java2 1.4 e Java7 também figuram bastante, ao menos aqui por estas bandas. No meu macbook, que uso para trabalhar, eu controle &#8230; <a href="http://jeveaux.com/2009/trabalhando-com-mais-de-um-jdk-no-ubuntu/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Hoje em dia ter o Java5 e Java6 instalados na máquina de um desenvolvedor é praticamente uma obrigação. Java2 1.4 e Java7 também figuram bastante, ao menos aqui por estas bandas.</p>
<p>No meu macbook, que uso para trabalhar, eu controle tudo via a variável de ambiente <em>$JAVA_HOME</em>, é bem tranquilo. Quando quero compilar ou rodar alguma coisa com outro JDK/JVM é só mudar o <em>$JAVA_HOME</em> e pimba!</p>
<p>Quando eu usava Ubuntu sempre tive problemas para instalar mais de um JDK através do apt-get. A instalação era uma maravilha, como sempre no apt-get, mas por algum motivo o JDK e JVM padrões sempre ficavam com a versão mais alta. Eu tentava <em>&#8216;corrigir&#8217;</em> usando a solução do <em>$JAVA_HOME</em> e incluindo o <em>$JAVA_HOME/bin</em> no <em>$PATH</em>, mas isso só funcionava enquanto eu estivesse no bash ou em aplicações que não fizessem referência direta ao <em>/usr/bin/java</em>.</p>
<p>Recentemente assumimos alguns servidores aqui na <a href="http://www.giran.com.br">Giran</a> e estamos migrando todos para Ubuntu Server. Não vou entrar no mérito dos porquês desta escolha para não criar uma guerra santa. Mas o que importa é que nestes servidores nós queríamos usar o apt-get para gerenciar todos os pacotes, afinal não temos <span style="text-decoration: line-through;">paciência</span> tempo para cuidar de tantos detalhes pequenos em tantos servidores.</p>
<p>Ao instalar um JDK, qualquer versão, através do apt-get, vários comandos estarão disponíveis no <em>$PATH</em>, dentre eles o <em>java, javac, javap, jar</em>, etc. Estes comandos estão sempre <em>/usr/bin</em>, mas são um link simbólico para os comandos em <em>/etc/alternatives</em>, que por sua vez são um link simbólico para o arquivo executável de verdade. Após instalar mais um JDK aí a coisa complica, qual deles será o padrão!? A cadeia de links simbólicos continua a mesma e mudar todos (mais de 15) manualmente não é muito indolor.</p>
<p>As instalações ficam sempre em <em><strong>/usr/lib/jvm/java-$versão<span style="font-style: normal;"><span style="font-weight: normal;">, que é exatamente onde vão bater os links simbólicos de <em>/etc/alternatives</em></span></span></strong></em>. No meu caso, por exemplo, tenho estas duas instalações: <em>/usr/lib/jvm/java-6-sun</em> e <em>/usr/lib/jvm/java-1.5.0-sun</em>. Se eu quiser alternar entre elas como padrão para todo o sistema, posso simplesmente usar o comando <strong><em>&#8220;update-alternatives&#8221;</em></strong> ao invés de sofrer reconfigurando um monte de link simbólico.</p>
<p>Então vamos lá:</p>
<pre lang="bash">spock@vulcan:~$ sudo update-alternatives --config java
There are 2 alternatives which provide `java'.
Selection    Alternative
-----------------------------------------------
+        1    /usr/lib/jvm/java-6-sun/jre/bin/java
*        2    /usr/lib/jvm/java-1.5.0-sun/jre/bin/java

Press enter to keep the default[*], or type selection number: 2
Using '/usr/lib/jvm/java-1.5.0-sun/jre/bin/java' to provide 'java'.</pre>
<p>E pronto, simples assim. O item com o sinal de + (mais) é a opção default e o item com o sinal de * (asterisco) é a opção atual.</p>
]]></content:encoded>
			<wfw:commentRss>http://jeveaux.com/2009/trabalhando-com-mais-de-um-jdk-no-ubuntu/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

