<?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; Ruby</title>
	<atom:link href="http://jeveaux.com/category/ruby/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>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>Lançamento: Giran Soluções e Ensino</title>
		<link>http://jeveaux.com/2009/lancamento-giran-solucoes-e-ensino/</link>
		<comments>http://jeveaux.com/2009/lancamento-giran-solucoes-e-ensino/#comments</comments>
		<pubDate>Tue, 17 Mar 2009 00:23:54 +0000</pubDate>
		<dc:creator>jeveaux</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[Gerência]]></category>
		<category><![CDATA[Giran]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Pessoal]]></category>
		<category><![CDATA[Projetos]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Agile-ES]]></category>
		<category><![CDATA[Comunicação]]></category>
		<category><![CDATA[Consultoria]]></category>
		<category><![CDATA[Coragem]]></category>
		<category><![CDATA[EESL]]></category>
		<category><![CDATA[Empreendedorismo]]></category>
		<category><![CDATA[Empresa]]></category>
		<category><![CDATA[Ensino]]></category>
		<category><![CDATA[ESJUG]]></category>
		<category><![CDATA[Investimento]]></category>
		<category><![CDATA[Linux ES]]></category>
		<category><![CDATA[Perl]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[PHP-ES]]></category>
		<category><![CDATA[Qualidade]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Respeito]]></category>
		<category><![CDATA[SCRUM]]></category>
		<category><![CDATA[Simplicidade]]></category>
		<category><![CDATA[Soluções]]></category>
		<category><![CDATA[Treinamento]]></category>
		<category><![CDATA[XP]]></category>

		<guid isPermaLink="false">http://www.jeveaux.com/blog/?p=406</guid>
		<description><![CDATA[Pessoal, é com uma enorme satisfação que escrevo este post e comunico a vocês o lançamento oficial da minha empresa junto com meu grande amigo-irmão-parceiro e agora sócio, Léo Hackin, e claro, com a participação incondicional e incansável da minha &#8230; <a href="http://jeveaux.com/2009/lancamento-giran-solucoes-e-ensino/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Pessoal, é com uma <strong>enorme satisfação</strong> que escrevo este post e comunico a vocês o lançamento oficial da minha empresa junto com meu grande amigo-irmão-parceiro e agora sócio, <a href="http://www.leohackin.com.br" target="_blank">Léo Hackin</a>, e claro, com a participação incondicional e incansável da minha adorada esposa que, literalmente, tirou a coisa da informalidade e <em>&#8216;nos deu asas&#8217;</em>.</p>
<p>A empresa já está registrada há algum tempinho e, também, em atividade. Porém, hoje está sendo o seu lançamento oficial, basicamente com a marca e o site temporário pois a sede ainda está em fase final da reforma da sala e o site em ajustes finais para ir ao ar, muito em breve escreverei sobre a sede e como ela ficou.</p>
<p>Há algum tempo, muita gente não entendeu <a href="http://www.jeveaux.com/blog/2008/de-volta-a-terras-capixabas/" target="_blank">o meu pedido de saída da globo.com</a>, mesmo tendo eu, acabado de entrar. O principal motivo que me trouxe de volta a Vitória foi exclusivamente pessoal e particular, não cabem comentários aqui no blog. Com o retorno, aproveitei o tempo ocioso e dei início ao trabalho que era também um sonho antigo, assim como entrar na globo.com, e agora o sonho saiu do papel e, literalmente, caiu no mundo real.</p>
<h1><strong><strong>Giran Soluções e Ensino</strong></strong></h1>
<p><strong><a href="http://www.giran.com.br"><img class="alignleft size-full wp-image-547" title="giran_mini1" src="http://www.jeveaux.com/blog/wp-content/uploads/2009/03/giran_mini1.png" alt="giran_mini1" width="154" height="51" /></a><a href="http://www.giran.com.br">Giran</a></strong> é o nome da nossa empresa. Durante quase 2 meses nós procuramos um nome, inventamos códigos e nomes estranhos, nomes ao contrário, nomes em japonês, em chinês, enfim, tentamos de um todo, mas nenhum deles tinha o domínio livre. Apesar de se tratar do nosso lado profissional e de ser agora a nossa cara, nossa marca e identidade &#8216;na rua&#8217;, o nome é algo muito especial, e não poderia deixar de ser algo <em>nerd</em>, afinal somos <em>nerds</em>. Darei uma pista e quem descobrir a origem do nome ganhará o direito de disputar uma partida de xbox na nossa nova sede; <em>a dica: é um nome retirado de um rpg, mais especificamente de um mmorpg!</em></p>
<p>Conheça: <a href="http://www.giran.com.br" target="_blank">Giran Soluções e Ensino</a></p>
<p>Na <a href="http://www.giran.com.br">Giran</a> o nosso foco de trabalho serão contratos de <strong>consultoria e coaching</strong> em projetos java e rails, <strong>gerenciamento de projetos com Scrum</strong> e, também, <strong>ensino e treinamento</strong> especializados em java, php e rails. Quando o site estiver no ar muitas outras informações e detalhes sobre nossa área de atuação serão disponibilizadas.</p>
<p>A criação e lançamento da <a href="http://www.giran.com.br">Giran</a> ocorreu, antes de tudo, após uma longa conversa sobre valores, princípios, visão e expectativas para a empresa e sobre como faríamos para criar e manter uma empresa jovem e descontraída e ao mesmo tempo profissional e comprometida. Nós não poderíamos simplesmente abrir uma outra <em>&#8216;old big company&#8217;</em> baseada em velhas e obsoletas idéias e trabalhar de forma caótica e improdutiva, na nossa empresa usaremos o que há de ponta para o desenvolvimento e gestão dos nossos projetos e treinamentos, estudaremos cada caso com o máximo de detalhes, cada cliente, cada projeto afim de aplicar o que for melhor para cada situação, exatamente igual fazemos em nosso dia-a-dia e em nossa evolução pessoal+profissional.</p>
<p>Na <a href="http://www.giran.com.br">Giran</a> todo o nosso trabalho será pautado e muito fortemente baseado nos valores e princípios de <a href="http://extremeprogramming.org/">Extreme Programming</a>, especialmente em alguns que temos uma certa predileção:</p>
<ul>
<li><strong>Respeito</strong> &#8211; Pois este é a base para todos os outros valores e princípios, é o motivo pelo qual nascemos e pelo qual prosperaremos.</li>
<li><strong>Coragem</strong> &#8211; Não seremos reativos à mudanças, não cortaremos a nossa criatividade e de nossos funcionários. Lidaremos com o risco de forma aberta, transparente e responsável; e erraremos o quanto for preciso para chegar o mais próximo possível da perfeição e continuar sempre no caminho da evolução e da melhoria contínua.</li>
<li><strong>Simplicidade</strong> &#8211; Seremos pragmáticos, sempre! Não queremos fazer mais do que a concorrência, não queremos fazer o desnecessário, não queremos ser &#8216;<em>grande e flácido&#8217;</em>, nós queremos resolver o seu problema.</li>
<li><strong>Comunicação</strong> &#8211; Somos emocionais, queremos olhar nos seus olhos, conversar e sentir as suas emoções, tom de voz, expressões faciais, gestos e postura, não vamos trocar uma visita por um e-mail ou telefonema.</li>
<li><strong>Qualidade</strong> &#8211; Não pode haver desperdício. Não pode haver software ruim ou de má qualidade. Prezamos fortemente pelo código que escrevemos e sabemos que ele é o nosso produto, não se trata de nível de qualidade, o objetivo é a altíssima qualidade, e é isso que importa.</li>
</ul>
<p>Outro ponto de grande realização para nós com a abertura da <a href="http://www.giran.com.br">Giran</a> é poder participar e atuar de uma forma ainda mais forte e ativa no desenvolvimento de projetos open source e nos grupos e comunidades da nossa região. Poder agora, como empresa, dedicar tempo remunerado a estes projetos, incentivar e bancar a participação dos nossos funcionários, poder viabilizar eventos e outras atividades e muito mais. Hoje nós já participamos fortemente como membros e coordenadores no <a href="https://esjug.dev.java.net">ESJUG</a>, <a href="http://groups.google.com/group/agile-es">Agile-ES</a>, <a href="http://www.php-espiritosanto.com.br/wp/">PHP-ES</a>, <a href="http://linux-es.org.br/site/">Linux-ES</a> e <a href="http://eesl.org">EESL</a> e estamos iniciando a participação no <a href="http://vitoria.pm.org/">Vitória Perl Mongers</a>.</p>
<p>E é isso, agora é correr atrás e tentar aplicar tudo que eu disse para meus antigos chefes/gerentes e ver, na prática, se será bom ou ruim, fácil ou difícil, lucrativo ou não e por aí vai. Agora o sonho acabou, virou realidade!</p>
]]></content:encoded>
			<wfw:commentRss>http://jeveaux.com/2009/lancamento-giran-solucoes-e-ensino/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
		<item>
		<title>Starling: Trabalhando com Filas em Ruby</title>
		<link>http://jeveaux.com/2008/starling-trabalhando-com-filas-em-ruby/</link>
		<comments>http://jeveaux.com/2008/starling-trabalhando-com-filas-em-ruby/#comments</comments>
		<pubDate>Fri, 10 Oct 2008 21:52:33 +0000</pubDate>
		<dc:creator>jeveaux</dc:creator>
				<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[MemCache]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Starling]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://www.jeveaux.com/blog/2008/starling-trabalhando-com-filas-em-ruby/</guid>
		<description><![CDATA[Quem nunca ouviu a grande falácia de que Rails não escala? Isso foi moda durante algumas semanas enquanto o Twitter passava por problemas de escalabilidade, não necessariamente por culpa do Rails ou de Ruby, mas quem quer por lenha na &#8230; <a href="http://jeveaux.com/2008/starling-trabalhando-com-filas-em-ruby/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Quem nunca ouviu a grande falácia de que Rails não escala? Isso foi moda durante algumas semanas enquanto o Twitter passava por problemas de escalabilidade, não necessariamente por culpa do Rails ou de Ruby, mas quem quer por lenha na fogueira não está muito preocupado com isso e quer mesmo é semear a discórdia. Muita água já passou por baixo da ponte, o Twitter agora está estável e as coisasfluem bem.</p>
<p>No começo deste ano <a href="http://dev.twitter.com/2008/01/announcing-starling.html" target="_blank">o pessoal do Twitter anunciou e tornou open source</a> o projeto <a href="http://rubyforge.org/projects/starling/" target="_blank">Starling</a>, criado por <a href="http://twitter.com/blaine" target="_blank">Blaine Cook</a>. O <a href="http://rubyforge.org/projects/starling/" target="_blank">Starling</a> é o <em>core</em> do Twitter, ele é o servidor de filas responsável por <em>manter em pé</em> o Twitter. E agora como um projeto open source está disponível como <em>gem</em> e pode ser usado por qualquer outro projeto.</p>
<p>Indo direto ao ponto, o <a href="http://rubyforge.org/projects/starling/" target="_blank">Starling</a> é, basicamente, um servidor de filas implementado sob o protocolo do <a href="http://www.danga.com/memcached/" target="_blank">MemCache</a>. O <a href="http://www.danga.com/memcached/" target="_blank">MemCache</a> é um servidor de cache distribuído de altíssima performance e é largamente usado, principalmente em <em>clusters </em>de aplicações web.</p>
<p>Para usar o Starling é muito simples. Os primeiros passos são</p>
<h4>Instalação</h4>
<p><strong>1)</strong> Instalar o servidor <a href="http://www.danga.com/memcached/" target="_blank">MemCache</a></p>
<p>[code]jeveaux@kamael ~ $ sudo apt-get -y install memcached[/code]</p>
<p><strong>2)</strong> Instalar a <a href="http://www.deveiate.org/projects/RMemCache/" target="_blank"><em>gem</em> do MemCache</a> e</p>
<p>[code]jeveaux@kamael ~ $ sudo gem install memcache-client[/code]</p>
<p><strong>3)</strong> Instalar a <em>gem</em> do <a href="http://rubyforge.org/projects/starling/" target="_blank">Starling</a>.</p>
<p>[code]jeveaux@kamael ~ $ sudo gem install starling[/code]</p>
<p>E pronto, isso é tudo para começarmos a usar o <a href="http://rubyforge.org/projects/starling/" target="_blank">Starling</a>. Se você achou a instalação simples se prepare, pois a utilização é ainda mais simples.</p>
<h4>Usando o Starling</h4>
<p>Se você já usou o <a href="http://www.danga.com/memcached/" target="_blank">MemCache</a> vai sentir-se familiarizado com o <a href="http://rubyforge.org/projects/starling/" target="_blank">Starling</a>. A diferença é apenas na implementação do protocolo, ou seja, a utilização <em>em código</em> será igual a do MemCache, só que ao fazer <em>set</em> e <em>get</em> as coisas acontecerão de uma forma um pouco diferente. Por enquanto a diferença maior que percebi foi em relação do método <em>get</em>, que quando usado no MemCache apenas retorna um valor do cache e o mantém lá, já no caso do <a href="http://rubyforge.org/projects/starling/" target="_blank">Starling</a> o <em>get</em> retorna o valor e o remove da memória. Analisando com calma isso faz sentido, afinal não estamos mais falando de cache e sim de filas, mesmo que a implementação da fila seja feita usando cache.</p>
<p>Mas antes de irmos para os exemplos de código, precisamos fazer com o que o servidor de filas &#8211; duh, <a href="http://rubyforge.org/projects/starling/" target="_blank">Starling</a> &#8211; esteja disponível e rodando. Vamos iniciar o <a href="http://rubyforge.org/projects/starling/" target="_blank">Starling</a> na porta 22122 (-p) e como um <em>daemon</em> (-d):</p>
<p>[code]jeveaux@kamael ~ $ sudo starling -p 22122 -d[/code]</p>
<p>Isso já basta para iniciar o servidor do <a href="http://rubyforge.org/projects/starling/" target="_blank">Starling</a> e deixá-lo disponível para uso. Agora então vamos alimentar a fila, crie o arquivo: <em>alimentar_fila.rb</em>.</p>
<p>[code]#alimentar_fila.rb<br />
require 'rubygems'<br />
require 'memcache'<br />
starling = MemCache.new 'localhost:22122'<br />
starling.set 'fila', 'qualquer objeto'[/code]</p>
<p>Ao executar este arquivo (ruby alimenta_fila.rb) não teremos nenhum resultado visual, mas acredite, a fila chamada de<em>&#8216;fila&#8217;</em> no exemplo está recebendo objetos. Agora o trabalho será para &#8211; como dizem &#8211; <em>consumir</em> a fila. Vamos ao <em>consumir_fila.rb</em>.</p>
<pre>[code]#consumir_fila.rb
require 'rubygems'
require 'memcache'
starling = MemCache.new 'localhost:22122'
loop {
  objeto_fila = starling.get 'fila'
  if !objeto_fila.nil?
    puts 'recuperado da fila:' + objeto_fila
  end
}[/code]</pre>
<p>E agora sim estamos prontos para colocar e remover objetos em uma fila. O exemplo para consumir os objetos ficará em <em>loop</em>, então você pode executá-lo numa janela do <em>bash</em> e em outra janela ir executando o exemplo para alimentar a fila com objetos e acompanhar o comportamento dos procedimentos de alimentar e consumir a fila. A recuperação da fila será imediata, instantânea, afinal, assim como o MemCache, o <a href="http://rubyforge.org/projects/starling/" target="_blank">Starling</a> está preparado para receber milhares de operações por segundo.</p>
<p>E é isso, o seu servidor de filas já está rodando e sendo alimentado/consumido. Agora é aplicar para o que você está precisando :D</p>
<h4>Problemas</h4>
<p>Há um probleminha chato com a gravação de log em disco que o Starling faz das filas. Todo o <em>set</em> feito gera o objeto na memória e também em disco &#8211; geralmente em <em>/var/spool/starling/</em>. O problema é que o <em>get</em> somente remove o objeto da memória e não do disco. Aparentemente isso foi feito pra ser assim mesmo e <a href="http://www.williambharding.com/blog/rails/starling-update-from-the-horses-mouth/" target="_blank">segundo o próprio Blaine Cook este arquivo de <em>log</em> não ficará sendo incrementado para sempre</a>, pois, depois de um <em>certo</em> tamanho (o engraçado é que ele não fala esse <em>certo</em> tamanho) ele será rotacionado, mas por enquanto ainda não descobri este <em>certo</em> tamanho e o arquivo tem crescido infinitamente.</p>
<p>E apenas uma observação quanto ao <em>consumir_fila.rb</em>: Não deixe-o executando por muito tempo e nem muito menos esqueça de finalizá-lo pois como ele fica em <em>loop</em> infinito poderá ocupar o seu processador a toa.</p>
]]></content:encoded>
			<wfw:commentRss>http://jeveaux.com/2008/starling-trabalhando-com-filas-em-ruby/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Customizando o gedit para Rails</title>
		<link>http://jeveaux.com/2008/customizando-o-gedit-para-rails-2/</link>
		<comments>http://jeveaux.com/2008/customizando-o-gedit-para-rails-2/#comments</comments>
		<pubDate>Tue, 07 Oct 2008 13:04:47 +0000</pubDate>
		<dc:creator>jeveaux</dc:creator>
				<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[gedit]]></category>
		<category><![CDATA[Rails]]></category>

		<guid isPermaLink="false">http://www.jeveaux.com/blog/2008/customizando-o-gedit-para-rails-2/</guid>
		<description><![CDATA[Não há dúvidas que o TextMate é um excelente editor para se trabalhar com Rails, mas como nem todos possuem um Mac para ter o prazer de utilizar este editor, o jeito é se contentar com alternativas menos hype sexy. &#8230; <a href="http://jeveaux.com/2008/customizando-o-gedit-para-rails-2/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Não há dúvidas que o <a href="http://macromates.com/" target="_blank">TextMate</a> é um excelente editor para se trabalhar com Rails, mas como nem todos possuem um Mac para ter o prazer de utilizar este editor, o jeito é se contentar com alternativas menos <span style="text-decoration: line-through;">hype</span> <em>sexy</em>.</p>
<p>Para quem usa Gnome, porém, é muito mais fácil encontrar uma ótima alternativa. O gedit é um editor de texto que vem, geralmente, por default em qualquer distribuição Linux com Gnome. Não vou falar muito do gedit como editor pois este não é o foco do post, a idéia é mostrar apenas o projeto <a href="http://github.com/mig/gedit-rails/tree/master" target="_blank">gedit-rails</a>, que é o projeto que contém uma série de utilitários para deixar o gedit ‘turbinado’ para se trabalhar com Rails.</p>
<p>Para instalar o <a href="http://github.com/mig/gedit-rails/tree/master" target="_blank">gedit-rails</a> é super simples, basta fazer o download do projeto (<a href="http://github.com/mig/gedit-rails/zipball/master" target="_blank">zip</a>, <a href="http://github.com/mig/gedit-rails/tarball/master" target="_blank">tar.gz</a> ou via clone do <a href="javascript:void(0);" target="_blank">repositório do github</a>) e fazer a instalação executando o script <em>install.sh</em>. A instalação é simples e não há nenhum estágio além da execução da execução propriamente dita do script e depois disso o trabalho será apenas de configuração.</p>
<p>A instalação adicionará no gedit o tema de fontes e cores: <em>Darkmate</em>, os plugins: <em>Class Browser</em>, <em>HTML Tidy</em>, <em>Rails Hot Keys</em>, <em>Rails Hot Commands</em> e <em>Snap Open</em> e o mais importante, os snippets. A configuração pode ser feita basicamente em duas etapas:</p>
<p align="left"><strong>- </strong><strong>Tema de fontes e cores</strong>: Edit &gt; Preferences &gt; Fonts &amp; Colors&gt; <em>Darkmate</em>. E o resultado será:</p>
<p style="text-align: center"><a href="http://www.jeveaux.com/blog/wp-content/uploads/2008/10/gedit-rails-01.png" target="_blank"><img src="http://www.jeveaux.com/blog/wp-content/uploads/2008/10/gedit-rails-01.png" alt="" width="287" height="169" /></a></p>
<p align="left"><strong>- Plugins</strong>: Edit &gt; Preferences &gt; Plugins. Lembre-se, os plugins que foram instalados e que podem ser ativados são: <em>Class Browser</em>, <em>HTML Tidy</em>, <em>Rails Hot Keys</em>, <em>Rails Hot Commands</em> e <em>Snap Open</em>. Os snippets já estarão funcionando sem nenhuma modificação. Basicamente alguns dos recursos adicionados serão:</p>
<p align="left"><a href="http://www.jeveaux.com/blog/wp-content/uploads/2008/10/gedit-rails-02.png" target="_blank"><img src="http://www.jeveaux.com/blog/wp-content/uploads/2008/10/gedit-rails-02.png" alt="" width="174" height="106" /></a> <a href="http://www.jeveaux.com/blog/wp-content/uploads/2008/10/gedit-rails-03.png" target="_blank"><img src="http://www.jeveaux.com/blog/wp-content/uploads/2008/10/gedit-rails-03.png" alt="" width="117" height="40" /></a> <a href="http://www.jeveaux.com/blog/wp-content/uploads/2008/10/gedit-rails-04.png" target="_blank"><img src="http://www.jeveaux.com/blog/wp-content/uploads/2008/10/gedit-rails-04.png" alt="" width="155" height="106" /></a></p>
<p align="left">Recomendo também a leitura dos <a href="http://www.urubatan.info/tag/gedit/" target="_blank">posts sobre gedit-rails do Urubatan</a>, um dos autores do projeto.</p>
<p align="left">Para quem curte o VI também existe uma ótima opção, o <a href="http://www.vimrails.org/" target="_blank">vim-rails</a>. Qualquer dia escrevo sobre este addon.</p>
]]></content:encoded>
			<wfw:commentRss>http://jeveaux.com/2008/customizando-o-gedit-para-rails-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Palestras e Atividades confirmadas</title>
		<link>http://jeveaux.com/2008/palestras-e-atividades-confirmadas/</link>
		<comments>http://jeveaux.com/2008/palestras-e-atividades-confirmadas/#comments</comments>
		<pubDate>Mon, 12 May 2008 18:45:47 +0000</pubDate>
		<dc:creator>jeveaux</dc:creator>
				<category><![CDATA[Palestras]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Testes]]></category>
		<category><![CDATA[Eventos]]></category>
		<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://www.jeveaux.com/blog/2008/palestras-e-atividades-confirmadas/</guid>
		<description><![CDATA[A &#8216;temporada&#8217; de eventos de 2008 já começou e está a todo vapor. Este ano eu novamente eu não pude participar do FISL, mas não vou perder (pelo menos não quero perder) os outros eventos do ano. Algumas palestras já &#8230; <a href="http://jeveaux.com/2008/palestras-e-atividades-confirmadas/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>A &#8216;temporada&#8217; de eventos de 2008 já começou e está a todo vapor. Este ano eu novamente eu não pude participar do FISL, mas não vou perder (pelo menos não quero perder) os outros eventos do ano. Algumas palestras já estão confirmadas:</p>
<ul>
<li><strong>Testes de Software e Ferramentas de Testes</strong><br />
Semana passada apresentei uma <em>nova versão</em> (ainda não disponibilizei no slideshare) <a href="http://www.jeveaux.com/blog/2007/palestra-testes-de-software/" target="_blank">desta palestra sobre Testes</a> na faculdade <a href="http://www.saocamilo-es.br/" target="_blank">São Camilo</a>, aqui no Espírito Santo mesmo, bem pertinho de Vitória. Fiz uma série de adaptações, a maioria delas em reordenação de slides e organização de conteúdo que ajudaram bastante para o bom andamento da apresentação, ficou mais legal :D</li>
</ul>
<ul>
<li><strong>Introdução ao Desenvolvimento Web com Java</strong><br />
Em 27 de maio farei uma apresentação de introdução do desenvolvimento web com Java onde serão abordados temas e ferramentas desde JSP/Servlets passando por JSF até uma pontinha de JBoss Seam. A apresentação será no InfoWork 2008 realizado pela <a href="http://www.uvv.br" target="_blank">UVV</a>.</li>
</ul>
<ul>
<li><strong>Ruby on Rails para iniciantes</strong><br />
E pra fechar o mês, uma nova visita à <a href="http://www.saocamilo-es.br/" target="_blank">São Camilo</a>, desta vez para participar e colaborar com a expansão da comunidade Linux e de Software Livre do estado, vou participar do <a href="http://eesl.wordpress.com/" target="_blank">EESL <em>(Encontro de Estudantes sobre Software Livre)</em></a> e fazer uma apresentação (na verdade uma seção de exemplos e how-to) bem introdutória sobre Ruby on Rails, estou bastante ansioso pois esta será a minha apresentação sobre Rails.</li>
</ul>
<p>Além destas apresentações já confirmadas, <a href="http://www.jeveaux.com/blog/2008/falando-em-java-2/" target="_blank">estarei entre os dias 16 e 19 de maio em São Paulo para participar do <strong>Falando em Java</strong></a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://jeveaux.com/2008/palestras-e-atividades-confirmadas/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Atualizando a casa</title>
		<link>http://jeveaux.com/2007/atualizando-a-casa/</link>
		<comments>http://jeveaux.com/2007/atualizando-a-casa/#comments</comments>
		<pubDate>Fri, 14 Sep 2007 15:57:46 +0000</pubDate>
		<dc:creator>jeveaux</dc:creator>
				<category><![CDATA[ESJUG]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Off-Topic]]></category>
		<category><![CDATA[Pessoal]]></category>
		<category><![CDATA[Portal Java]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[WTF]]></category>

		<guid isPermaLink="false">http://www.jeveaux.com/blog/2007/atualizando-a-casa/</guid>
		<description><![CDATA[Semanas sem postar nada, estamos aí de novo. Vou tentar me lembrar dos últimos ou pelo menos de alguns dos últimos acontecimentos desse tempo longe do blog e fazer um resumo, ou pelo menos algo semelhante a um. EJES: Bom, &#8230; <a href="http://jeveaux.com/2007/atualizando-a-casa/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Semanas sem postar nada, estamos aí de novo. Vou tentar me lembrar dos últimos ou pelo menos de alguns dos últimos acontecimentos desse tempo longe do blog e fazer um resumo, ou pelo menos algo semelhante a um.</p>
<ul>
<li><strong>EJES</strong>: Bom, a última coisa que postei no blog foi sobre o início do II EJES, que foi realizado nos dias 30 e 31 de agosto. O evento correu bem e teve tudo que todos eventos &#8220;normais&#8221; sempre tem, desde alguns imprevistos com palestras/palestrantes até brindes legais, sorteios e tudo mais, e graças ao forte apoio e empenho do Victor Pinto (coordenador do ESJUG) tudo foi contornado e conseguimos realizar o evento sem maiores problemas. E por fim, mas não menos importante, tivemos a presença do <a href="http://http://www.fragmental.com.br/">Shoes</a> no último dia, encerrando as apresentações com uma palestra muito, muito boa: &#8220;<em>Introduzindo <strike>Agilidade</strike> Eficiência</em>&#8220;. Agora só no ano que vem :D</li>
<li><strong>Palestra</strong>: Entre as <strike>chatas</strike> ótimas viagens, consegui arrumar tempo para atender um convite para fazer uma palestra de apresentação e introdução ao Java na <a href="http://www.doctum.com.br/">Doctum</a>, faculdade de Guarapari (cidade das praias boas) que fica bem pertinho de Vitória. Achei que foi bem legal lá e espero que o pessoal tenha gostado também.</li>
<li><strong>WTF</strong>: Dar manutenção em qualquer sistema é sempre uma aventura, e às vezes encontramos algumas coisas, humm, hamm, digamos, horripilantes. Algo como isso por exemplo:</li>
</ul>
<p>[code]System.gc();<br />
System.gc();<br />
System.gc();[/code]</p>
<p>Será que com um &#8220;toc toc toc&#8221; desses o GC se anima a rodar? hehehe</p>
<ul>
<li><strong>WTF2</strong>: Desde muito tempo que sempre recebo alguns pedidos um tanto quanto &#8220;folgados&#8221; por e-mail, mas esses dias recebi um que acho que superou muitos dos outros que já recebi algum dia&#8230; O pior é que tive que responder.</li>
</ul>
<blockquote><p>Encontrei os teus dois trabalhos, do jantar dos filosofos e do barbeiro dorminhoco com a implementação em java, como ainda estamos aprendendo C++ ficaria muito grato se pudesse disponibilizar o codigo em C++ para linux, para meu email.</p>
<p>email: [email]</p>
<p>Desde ja agradeco pela atenção.</p></blockquote>
<ul>
<li><strong>Sem muito a fazer:</strong> Pois é, apesar de sempre ter coisas na lista de pendência, de sempre ter um draft a se terminar, um e-mail a enviar, sempre temos um momento <em>vago </em>(não sei como isso é possível, mas acontece), Achei em algum lugar (algum blog ou fórum que infelizmente esqueci) o link de um site e fiz um teste para saber que linguagem de programação eu sou, não foi muita novidade, mas deu no deu:<br />
<a ref="http://www.bbspot.com/News/2006/08/language_quiz.php"></a></p>
<p style="text-align: center"><a ref="http://www.bbspot.com/News/2006/08/language_quiz.php"><img src="http://www.bbspot.com/Images/News_Features/2006/08/language/java.jpg" border="0" height="90" width="300" /></a></p>
</li>
<li><strong>Curso de RoR</strong>: Aproveitando o espaço, vou divulgar (se é que posso chamar isso de divulgação) o <a href="http://www.techoffice.com.br/ruby/flyer_ruby.htm">curso de Ruby On Rails</a> que será realizado em Porto Alegre, pela <a href="http://www.techoffice.com.br/">Tech Office IT</a>, empresa do <a href="http://www.urubatan.com.br/">Urubatan</a>.</li>
<li><strong>JustJava</strong>: E por fim estou preparando o material para a minha apresentação no JustJava deste ano, vou tentar fazer alguns resuminhos e postar aqui no blog.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://jeveaux.com/2007/atualizando-a-casa/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

