Meu ambiente de trabalho em 7 itens

Fui indicado pelo Jeveaux e pelo M3nd3s ,para dar continuidade ao meme “Meu ambiente de trabalho em 7 itens”.

1) (g|mac)?Vim

Todo mundo copiando o regex que o m3nd3s fez pro seu post. A falta de criatividade é absurda. Mas vá lá…
Assim que comecei na Giran comecei a utilizar o TextMate que é um editor simpático e atende bem as necessidades de desenvolvimento tendo em paralelo como um gedit anabolizado. Porém depois de algum tempo de trabalho o Francisco e o Almir me apresentaram ao macVim. Já tinha ouvido muitas histórias assustadoras sobre o vim e as dificuldades de uso e no fim só se mostraram balela realmente. Um editor extremamente leve e prático com uma customização bacana que pode ajudar muito em sua produtividade.

Só tenho um problema que depois de um certo tempo usando Vim acaba acontecendo :q ou :cd em quase toda janela.

2) Firefox+Firebug

Desde seu lançamento passei a utilizar o Firefox e por fim se tornou o navegador padrão nos computadores que utilizo.

Para trabalhar com sites, um complemento importante ( que me foi apresentado nos dias em que trabalhava na iMasters ) é o Firebug. Para verificação de css, html e javascript é difícil encontrar ferramenta melhor provendo em tempo real as informações necessárias para modificações e permitindo uma série de experimentações.

3) Mac Os/Ubuntu

O Mac Os veio com a Giran e por escolha desde 2006 o Ubuntu. Na época (2006) tive problemas com o windows e no desespero para checar os emails acabei utilizando um cd que estava jogado lá do ubuntu que eu tinha acabado de receber pelo correio. Desde então meu computador pessoal não conhece outra coisa.

4) Bash (Terminal)

O uso do terminal veio com os dias de Ubuntu e no trabalho ele se mostrou fundamental para agilizar o desenvolvimento de aplicações e com a mudança pro Rails e o us do Git se tornou praticamente impossível fugir.

5) Rails

Nos últimos meses o php foi quase que totalmente substituído no meu dia-a-dia pelo Ruby on Rails. Uma framework extremamente eficiente ( que o Francisco Souza pode não concordar em suas comparações com Python ) que possui uma série de recursos fantásticos com uma curva de aprendizado que não chega a desagradar.

6) Git + github

Mais uma ferramenta que aprendi a utilizar com o pessoal da Giran.O git é ideal para não se perder, não perder código e conseguir coordenar o trabalho em equipe. E para extrair mais do potencial do git o Github vem ai pra assumir o trabalho.

O Github ainda não utilizo amplamente em meus projetos pessoais mas vou caminhando aos poucos enquanto que na Giran é fundamental para o desenvolvimento das atividades.

7) Google

Não só como ferramenta de pesquisa mas muitas das ferramentas associadas como os serviços de email gmail, calendário e feeds.

São componentes necessários ( exceto pelo agregador de sites que pode ser, relativamente dispensável ) que são oferecidos de forma Free com acesso simples bastando ter uma única conta junto ao google ( nooosssa! ).

Bonus Round: Xbox 360

Mesmo não sabendo jogar nada e a falta de coordenação motora se fazer evidente o entreterimento é fundamental para se ter um ambiente sempre descontraido. Sim.. eu sou péssimo em geral nas partidas de fifa eu perco pra todo mundo mas ainda assim acho divertido.

Concluindo:

A maioria dos itens são semelhantes aos do pessoal com quem trabalho. Acredito que era de se esperar algo do tipo.

Para dar continuidade ao meme convoco:
@dianapadua

@cobalto

@hitomichan


Anúncios

E em 2010 foi assim…

O ano de 2010 foi um ano muito interessante. Uma série de mudanças que causaram impacto tanto na vida pessoal quando profissional e praticamente prepararam o terreno para um ano de 2011 extremamente produtivo.

Em 2010 concluí minha primeira faculdade, Tecnologia em Gestão da Tecnologia da Informação ( aja tecnologia em um nome só), experiência extremamente válida que me mostrou como o mercado pode ser amplo e como as pessoas podem melhorar com o incentivo adequado e o conhecimento de suas proprias limitações.

Passei a fazer parte da equipe Giran, começando com php em um projeto com Makoto, aprendendo um pouco de Python sob a tutela de Francisco Souza e partindo pro Rails junto com Leo Hackin e Almir m3nd3s. Participei do Rails Rumble ( mas mesmo sob o efeito de várias latas de energético consegui a proeza de dormir) e comecei a ter uma ideia da produtividade gerada pelo Rails.

Foi o ano que fiz minha primeira palestra ( em dupla com Francisco Souza) sobre CodeIgniter. Onde aprendi a otimizar meu código com o uso de ORM ( vide Doctrine ) e passei a usar amplamente o Overzealous DMZ.

Foi um ano que li menos que minha média natural de livros por ano mas ainda assim tive a oportunidade de ler os livros de Ricardo Semler e aprender um pouco mais sobre a história e preceitos de Steve Jobs.

Ano em que pela primeira vez utilizei um macbook. O ano em que aprendi um pouco sobre Scrum na prática.O primeiro ano que sobrou algo do salário e pude tomar decisões que demandavam maior investimento. O ano em que tomei decisões que vão afetar todo o resto de minha vida.

Foi um bom ano. E acredito que preparação para um ano bem melhor. Um ano em que pude construir boas amizades e trabalhar com ótimos profissionais.

A todos que puderam colaborar com um este ótimo ano deixo meu agradecimento e que eu possa fazer o mesmo nos anos que se seguirem em minha vida.

Enviando emails pelo gmail usando Rails

Durante o desenvolvimento de minha primeira aplicação com Ruby on Rails o primeiro grande problema com o qual esbarrei foi o envio de emails usando gmail. Depois de muita pesquisa ( e muita ajuda do Francisco Souza) consegui uma implementação  de forma muito mais simples do que o esperado e efetiva.

AVISO: Esta implementação só é válida para Rails >= 2.2.1 [RC2] e Ruby 1.8.7

Segue o passo a passo para implementar em sua aplicação:

Crie o arquivo config/initializers/smtp_gmail.rb. Este arquivo carregará suas configurações para fazer a conexão de sua aplicação com o gmail.
Inicialmente Vamos declarar que nosso envio será feito por smtp ( caso você queira usar somente para testes utilize :test no lugar de :smtp )

config.action_mailer.delivery_method = :smtp

Logo abaixo declaramos as configurações de acesso:

ActionMailer::Base.smtp_settings = {
  :address => "smtp.gmail.com",
  :port => 587,
  :authentication => :plain,
  :enable_starttls_auto => true,
  :user_name => "seu usuario @gmail.com",
  :password => "sua senha"
}

Em geral este código funciona para envios smtp em geral porém para o gmail é necessário que o tls esteja ativo, ação realizada pela linha:

  :enable_starttls_auto => true

Feito isso nossa aplicação se encontra configurada para enviar os emails usando a conta do gmail especificada.
Agora poderems trabalhar com o envio propriamente dito.

Vamos assumir que nossa classe de envio será UsuarioEmail para tanto executamos:

script/generate mailer UsuarioEmail

Com isso o rails cria um modelo Chamado UsuarioEmail onde colocaremos nossas configurações para envio. Então vamos editar nosso arquivo uque se encontra em app/models/usuario_email.rb

class Indique < ActionMailer::Base
  def enviar_email()
    @subject = "[RoR] Aprendendo a enviar emails "
    @body["site"] = "http://www.tagliati.com.br"
    @recipients = "quemvaireceber@dominio.com.br"
    @from = 'euquemandei@meudominio.com.br'
    @headers = {}
  end
end

Estas são apenas configurações básicas. Existem outras opções que podem ser preenchidas ( por exemplo @charset )
Agora precisamos definir o corpo de nosso email e onde ele será enviado.
Em app/view/usuario_email/ vamos criar nosso template de email. Para este exemplo o template se chamará enviar_email.text.html.erb . com um simples conteúdo:

Você acaba de receber um email enviado de uma aplicação Rails.
Li sobre em <%= @site%>

Note que o nome do arquivo possui o mesmo nome do método criado em nosso modelo para configurar o email.

Agora basta adicionar no controller em que queremos que envie o email o método que enviará o email:

def dispara_email()
UsuarioEmail.deliver_enviar_email();
end

E pronto. Assim que chamarmos nosso método dispara_email() será enviado o email usando a conta do gmail ( ou conta com acesso smtp ) configurada