qua
ago 26th

Reorganizando – Ubuntu, Rails, Scrum, Kanb ...

Atualizado em 28/09/2009

Recentemente comecei a trabalhar em um projeto que será desenvolvido em Ruby em Rails aplicando técnicas de desenvolvimento ágil com Scrum.  O maior esforço para trabalhar com metodologias ágeis tem mais haver com a questão cultural do que o uso de ferramentas, então um dos primeiros passos é remover a duplicação de informações em diversas ferramentas e colocar tudo referente as histórias, tarefas,  gráficos, no quadro com cartões (Kanban),  com isso a visualização fica mais fácil e sem burocracia,  imediatamente elimina-se a necessidade de uma ferramenta e de uma documentação que provavelmente não seria útil e nem mesmo utilizada durante um longo tempo, contudo é interessante guardar os cartões para manter um histórico.

Começando o projeto da “estaca zero” o passo seguinte é preparar o ambiente para desenvolvimento, eu particularmente utilizava uma máquina virtual com Ubuntu 8.10 configurado com Ruby on Rails, mas até então apenas para pequenos testes. Uma solução caso não seja possível abrir do ambiente Windows é usar o dual boot.  Apesar de parecer um problema para quem não trabalha com Linux, pela dificuldade de instalação, backup de arquivos e tudo mais,  existem formas tranquilas de se fazer isto e em um dia de trabalho ou um pouco mais teremos um ambiente configurado com Ubuntu 9.04,  Ruby 1.8.6, Rubygems 1.3.5 e Rails 2.3.2, tudo isso coexistindo sem ter nenhum problema com Windows.

Vamos “colocar a mão na massa” para configurar este ambiente. Primeiro vou mostrar a forma como o Ubuntu foi instalado, esta solução acompanha as versões do Ubuntu à algum tempo, e o que ela faz é instalar o Ubuntu dentro de uma pasta no Windows sem interferir no sistema operacional.

Não tive problemas quanto a perda de arquivos, travamento ou coisas do tipo,  mas é recomendável fazer um backup de todos os arquivos.

Precisamos de uma imagem do Ubuntu 9.04 Desktop que pode ser baixada aqui ou então pode ser comprado junto com alguma revista sobre Linux.

Para montar a imagem do arquivo ISO no Windows, eu utilizei o MagicDisc que emula um CD/DVD-Rom, com isto é possível navegar nos arquivos da imagem e executá-los.

No diretório raiz da imagem montada encontraremos o arquivo wubi.exe, basta rodá-lo e selecionar o botão “Install inside Windows”, conforme figura abaixo.

Na segunda tela informe um usuário e uma senha,  para o restante geralmente o padrão já atende.

Alguns arquivos serão instalados e após isso o computador será reiniciado com a possibilidade de escolher o sistema operacional desejado. Escolha o Ubuntu neste momento para que ele instale todo sistema operacional.

Se houver algum problema com a placa de vídeo e não for possível visualizar a tela com nitidez,  reinicie a máquina, escolha novamente Ubuntu como boot  e entre no menu  utilizando a tecla ESC, então escolha a opção SAFE MODE GRAPHICS e aguarde a instalação que será iniciada via texto até que o ambiente se torne estável para rodar em modo gráfico.

A partir deste ponto se a instalação ocorreu com sucesso  ao reiniciar será possível escolher o sistema operacional desejado.

O próximo passo é instalar o Ruby e o Rails, lembrando que por padrão os repositórios no Ubuntu 9.04  Jaunty Jackalope estão configurados para instalar a versão 1.8.7 do Ruby, mas por questão de compatibilidade com outras bibliotecas utilizaremos a versão 1.8.6, contudo essa etapa fica para o próximo post.

Observações: Existe uma convenção no mundo Linux que nem todos usuários de plataforma Windows conhecem, toda versão terminada com um número ímpar é uma versão instável que ainda está em desenvolvimento e nunca deve ser usada em produção, devemos utilizar sempre uma versão estável que no caso do Ruby deveria ser a versão 1.8.6, contudo parece que isto não é seguido quando se refere ao Ruby pois o próprio Ubuntu 9.04 foi lançado com a versão 1.8.7.

seg
jul 13th

Criando atalhos no Git ...

Atualizado em 29/09/2009


Depois de algum tempo usando o Git sentimos a necessidade de automatizar algumas tarefas repetitivas, então a partir do momento temos consciência do que estamos fazendo, podemos criar alguns atalhos de comandos para agilizar o trabalho. Os exemplos abaixo funcionam tanto para quem usa Linux como para Windows.

Dentro do seu branch de trabalho utilize o comando:

git config alias.st status

Caso o comando tenha mais que uma palavra coloque entre aspas.

git config alias.lg "log --name-only"

A estrutura acima é a seguinte:

git config – Comando modificador, onde podemos informar também – -system (para todo sistema) ou – -global (para o usuário atual);
alias – Chave do bloco que será alterado;
.st e .lg- Nome do seu atalho;
status e log –name-only- O comando git para onde seu atalho irá apontar.

Então ao digitar “git st” obteremos o resultado abaixo:

$ git st
# On branch working
# Untracked files:
#   (use "git add ..." to include in what will be committed)
#
#       README
nothing added to commit but untracked files present (use "git add" to track)

Para ficar mais rápido, podemos alterar os arquivos de configuração acrescentando os atalhos diretamente ao bloco [alias].

No Windows os arquivos podem ser encontrados nestes caminhos:

1 - C:\Pasta_do_seu_projeto\.git\config
2 – C:\Documents and Settings\Seu_usuario\.gitconfig
3 – C:\Arquivos de programas\Git\etc\gitconfig

No Mac:

1 - /Pasta_do_seu_projeto/.git/config
2 – /Users/Seu_usuario/.gitconfig
3 – /usr/local/git/etc/gitconfig
Obs: Os arquivos de configuração do Git não tem extensão.

No Linux:
Crie um arquivo como sudo na pasta etc/ com nome de gitconfig e coloque os atalhos como informado abaixo.

Onde a configuração será aplicada na seguinte hierarquia:
1 – Apenas ao projeto.
2 – Para todos os projetos do usuário.
3 – Para todo sistema independente de usuário.

Eu particularmente adotei atalhos que achei mais intuitivos, cada um pode escolher o que melhor lhe convier.

[alias]
  st = status
  cm = commit
  bh = branch
  ck = checkout
  lg = log -p
  lg1 = log --name-only

Também podemos utilizar atalhos mais sofisticados como:

[alias]
  cmm = commit -a -m
  rbmt = rebase master
  mgwk = merge working
  pullom = pull origin master
  pushom = push origin master
  mt = !git checkout master && git status
  wk = !git checkout working && git status
  inicia = !git checkout -b working

Desde que entendamos o que está se fazendo, não há limites para criar estes atalhos.

seg
abr 27th

Como instalar Ruby on Rails no Ubuntu sob VMware ...

Atualizado em: 17/05/2009

Logo Ruby on Rails

Uma das grandes dificuldades de quem usa a plataforma Windows é montar um ambiente satisfatório para desenvolver aplicações Web com Ruby on Rails, pois nem sempre podemos usar o que está disponível para Mac e Linux. Minha alternativa para resolver de vez estes problemas de incompatibilidade e perca de tempo descobrindo maneiras para ajustar tudo no Windows, foi partir para a utilização de uma máquina virtual com Ubuntu. Em menos de um dia de trabalho entre configurações, downloads e desenvolvimento tive a felicidade de colocar uma aplicação Web com Ruby on Rails no ar. Então nada melhor que compartilhar minha experiência! Read full story »