Blog do Urubatan
msgbartop
Desenvolvedor, Arquiteto, Palestrante, Coordenador do RSJUG, Patinador e Blogger
msgbarbottom

16 May 08 mod_rails revolucionando as hospedagens Rails compartilhadas, inclusive no Brasil

Já existem alguns provedores internacionais disponibilizando o mod_rails como opção para hosting compartilhado de aplicações Ruby On Rails, como por examplo o HostingRails.com (se tiverem mais para adicionar a lista avisem nos comentários que atualizo o post com a lista de provedores disponíveis) , e hoje, vi a noticia que a Locaweb esta começando a disponibilizar hosting compartilhado de aplicações Ruby On Rails utilizando o mod_rails também.
E melhor que isto, como podem ver no quote abaixo, os primeiros a testar o brinquedo, ganham 3 meses de gratis :D

Trial de Ruby on Rails Powered by mod_rails

Você já deve ter ouvido, até mesmo nesse blog, sobre o poder do Ruby
on Rails e suas vantagens para programadores iniciantes e experientes.
Mas provavelmente você também deve conhecer os problemas de
performance de uma aplicação Ruby rodando com Apache e CGI.

A Locaweb inova mais uma vez disponibilizando uma plataforma mais
robusta para Ruby on Rails usando Passenger, também conhecido como
mod_rails. Com mod_rails você pode publicar sua aplicação RoR de
maneira simples em um ambiente estável e de melhor desempenho.

Verifique você mesmo. Estamos oferecendo um período de Trial de 3
meses aos primeiros interessados em experimentar esse novo ambiente.
Para ter um Plano de Hospedagem Profissional I em plataforma Linux
rodando Ruby on Rails com Passenger basta preencher o formulário
abaixo e aguardar nosso contato.

Fonte: http://blog.locaweb.com.br/archives/263

PS.: se se cadastrarem na Locaweb, informem que o cadastro de cliente foi indicação de “usiinformatica”, assim eu ganho bônus :D

Se você gostou deste post, lembre-se de assinar o RSS feed do blog, para ser notificado de novos posts!

Tags: ,

14 May 08 Test Infected to the bones - tornando os testes mais divertidos

Infinitest

Uma das coisas mais difíceis em introduzir a idéia do TDD é fazer com que os outros programadores da equipe realmente utilizem os testes, e para tornar esta árdua tarefa um pouco mais fácil, é necessário muitos discursos, e se possível, tornar isto um pouco mais divertido.
O Ruby, tem o autotest para isto, que sempre que uma classe ou um teste é alterado, roda apenas os testes que sofrem alguma influência desta alteração (outro dia eu escrevo sobre o autotest, mas o foco deste post é Java).
Para Java eu não conhecia nenhuma ferramenta parecida, mas acabei de encontrar o Infinitest, uma ferramenta para Java que faz praticamente a mesma coisa que o AutoTest do Ruby, mas é um pouco menos flexível, pois os indicativos Verde/Vermelho aparecem na tela dele, e não de uma forma customizável como o Autotest, mas nem por isto deixa de ser útil, é só deixar o programa aberto enquanto desenvolve, quando uma classe é alterada, ele executa o teste correspondente, e fica avisando quantos testes estão quebrados e quantos ja passaram, com os clássicos sinais verde e vermelho avisando se o trabalho ja terminou :D

Ele funciona muito bem integrado com qualquer IDE, no eclipse por exemplo, basta adicionar o infinitest.jar no classpath do projeto a mandar executar a classe: org.infinitest.Infinitest
Uma tela parecida com esta vai ficar aberta enquanto você desenvolve:


É só alterar qualquer classe Java, que os testes afetados por ela vão rodar novamente, ou então alterar um teste, que apenas ele é executado novamente.

Quando algum teste falha, aparece na area branca da tela o nome da classe de testes, o método e a linha da falha, e a barra da parte inferior da janela fica vermelha :D

O Infinitest funciona com Java + JUnit, ou seja, nada de easyb pelo menos por enquanto :(

Acho que vou fazer um plugin pro infinitest pra usar o Snarl também, como este do Autotest do ruby :D

Bom, acho que era isto, testem o Infinitest, vocês vão achar bem divertido :D

Se você gostou deste post, lembre-se de assinar o RSS feed do blog, para ser notificado de novos posts!

Tags: ,

14 May 08 1o JUGDAY do RSJUG

O RSJUG estara realizando no final deste mês mais um evento aqui em porto alegre, segue abaixo o anuncio do evento, vale a pena participar se vocês estiverem por perto :D

===============================================

Caros,

O RSJUG promove neste mês de maio um dia inteiro dedicado a tecnologia Java.
Serão 2 salas com atividades em paralelo sendo elas 6 palestras 1 tutorial e um painel.

Quando:
31 de maio das 8h as 20h

Onde:
Faculdade de Tecnologia SENAC
Rua Coronel Genuíno 130 - 9° andar - Porto Alegre/RS

Grade do evento:
Grade preliminar pode ser acessada no site: www.rsjug.org

Investimento:
Até o dia 20/05:

  • R$25,00 para público em geral
  • R$15,00 para associados SUCESU-RS.
  • R$20,00 para pacotes de 5 inscrições.
  • R$15,00 para pacotes de 10 inscrições.

Após o dia 20/05:

  • R$30,00 para público em geral
  • R$20,00 para associados SUCESU-RS.
  • R$25,00 para pacotes de 5 inscrições.
  • R$20,00 para pacotes de 10 inscrições.

Certificados serão fornecidos aos participantes ao final do evento.
Estrutura contará com rede Wireless liberada aos participantes.
Um Cyber espaço será montado para facilitar ainda mais a conectividade dos participantes.
Increva-se já!

Muito obrigado…. e espero vocês lá!
Igor Montezano
RSJUG Leader

Se você gostou deste post, lembre-se de assinar o RSS feed do blog, para ser notificado de novos posts!

Tags:

11 May 08 *nix history Meme

Tudo bem, pode ser a completa e total falta do que fazer, mas vamos ver se o pessoal resolve entrar na brincadeira :D
A idéia é listar os comandos mais usados na maquina, no meu caso (Ubuntu 8.04) usei o comando:

history | awk '{a[$2]++}END{for(i in a){print a[i] " " i}}' | sort -rn | head

que resultou neste output:

[19:02][urubatan@urubatan-laptop:~]$ history | awk '{a[$2]++}END{for(i in a){print a[i] " " i}}' | sort -rn | head
83 cd
68 sudo
36 git
31 ls
23 vi
20 dpkg
19 tail
16 rake
13 rm
13 gem

O que quer dizer que eu uso bastante o GIT, e o VI, muito muito de diretório, instalo muitas gems, e listo pacotes instalados no meu linux bastante :D

Então, vocês topam a brincadeira?
A idéia é colocar um link de volta para este post no post que vocês escreverem com a listagem dos comandos, vale qualquer coisa derivada e unix, Linux, Mac, *BSD, OpenSolaris, …
E no mesmo post, indicar mais X pessoas para o meme.
os meus indicados são: Paulo Silveira, ArthurGeek, Carlos Villela, Fabio Akita e Carlos Brando. (Se algum de vocês ainda estiver usando Windows, favor formatar a maquina e instalar um SO decente :D )

PS.: se não estiverem afim de participar não tem stress, eu nunca participei de um meme antes, acho que deve ser a completa falta do que fazer em um domingo a noite enquanto espero o chimarrão ficar pronto:D

Se você gostou deste post, lembre-se de assinar o RSS feed do blog, para ser notificado de novos posts!

Tags: ,

02 May 08 Autocomplete para rails com jquery muito fácil!

No último projeto que estou trabalhando, resolvi utilizar jQuery em vez do prototype padrão …

E eu precisava de um campo de texto com auto completar, e mesmo que estivesse utilizando o prototype, não seria muito fácil utilizar o plugin de autocomplete do rails por que eu precisava deste auto complete em um campo de texto que existe diversas vezes dentro do mesmo form, e novos são adicionados via RJS, isto complicava muito a minha vida por que o ID destes campos adicionados automagicamente é o mesmo …

Como estava utilizando o jQuery, atravéz do plugin jRails isto se tornou muito fácil, bastou utilizar o plugin suggest do proprio jQuery

O processo para habilitar este autocomplete é bem simples como vocês podem ver abaixo.
Primeiro, instalando o plugin jRails:

script/plugin install http://ennerchi.googlecode.com/svn/trunk/plugins/jrails
rake jrails:install:javascripts

Com isto podemos começar a brincar com os plugins do jQuery, para utilizar o plugin suggest, basta fazer o download dele, colocar o css na pasta public/stylesheets e o js na pasta public/javascripts da aplicação …
Ai vamos editar o layout padrão da aplicação, e ter certeza de que ele inclui as seguintes linhas:

1
2
3
  <%= stylesheet_link_tag 'jquery.suggest.css' %>
  <%= javascript_include_tag :defaults %>
  <%= javascript_include_tag "jquery.suggest.js" %>

Depois disto, em qualquer formulário, para ativar o suggest, basta colocar um text_field padrão do rails com o seguinte código (este bloco veio de dentro de um form_for):

1
 <%= inf.text_field :name, :onfocus => "$(this).suggest('#{formatted_examples_url(:js)}')", :index => nil %>

assim, o suggest vai ser ativado para este campo quando o usuário entrar no campo, independente de se ja existe outro campo com o mesmo ID (sim, eu sei que não deveriam existir objetos com o mesmo ID, mas neste caso não tenho muito como evitar isto … )
Agora no controller …
Tenho o controller examples mapeado como um resource padrão no rails, e editei o método index dele para ficar parecido com isto:

1
2
3
4
5
6
7
8
9
  def index
    @examples = Example.paginate :page => params[:page], :conditions => ["name like ?","%#{params[:q]}%"]
 
    respond_to do |format|
      format.html # index.html.erb
      format.xml  { render :xml => @examples }
      format.js
    end
  end

basicamente a única alteração do controller padrão foi adicionar a linha format.js e adicionei a condition para filtrar a consulta …
depois disto criei o arquivo “index.js.erb” com o seguinte conteúdo (sim, eu podia fazer um render :inline mas não gosto muito da idéia :D )

1
<%= @examples.collect(&:name).join("\n") %>

fazendo com que o resultado desta action quando chamada com a extensão “js” fosse apenas uma listagem com um nome por linha …


Tudo pronto, autocomplete funcionando :D
Achei mais simples do que o plugin padrão do rails para autocomplete :D

PS.: cada vez eu acho o jQuery mais legal de trabalhar, to curtindo mais ele do que o prototype.

Se você gostou deste post, lembre-se de assinar o RSS feed do blog, para ser notificado de novos posts!

Tags: , , ,

01 May 08 Layout novo!

Bom, o layout antigo, aquele parecido com um Mac ja estava todo empoeirado, cheirando a mofo :D
então resolvi mudar o layout do blog.
Deem uma olhada e me digam o que acharam deste.

Suas opiniões são importantes!
Valeus!

Se você gostou deste post, lembre-se de assinar o RSS feed do blog, para ser notificado de novos posts!