Cursos presenciais de Ruby on Rails

Aproveitando o imenso sucesso que está sendo o curso Imersão Sys Deploy em parceria com e-Genial resolvi pesquisar sobre o interesse das pessoas em relação a cursos presenciais.

Estou em negociação com um centro de treinamento aqui no Rio de Janeiro e é possivel que fechemos uma parceria para cursos presenciais ligados a Ruby on Rails.

Além do Rio de Janeiro também tenho interesse em atingir outros estados. Por isso elaborei um pequeno questionário que será útil para verificar a viabilidade dos cursos presenciais no Rio e em outras cidades do Brasil. Vocês me ajudam a divulgar? Muito obrigado.

Link direto: https://spreadsheets.google.com/viewform?formkey=dGtKY0hyMjhqUEgxNnpHempISzlsbEE6MQ

0 comentários : 29.04.2010 10:35 PM

Curso de administração Linux e deploy de Apps Rails

logo e-genial

Hoje eu e o Carlos Eduardo da e-Genial fechamos os últimos detalhes de um novo curso: Imersão Sys Deploy! Os alunos vão aprender tudo sobre como configurar adequadamente um VPS para rodar aplicações Rails usando Apache com Passenger, Mysql e deploy com Capistrano.

E de quebra ainda vão ter capítulos específicos para tratar de serviço smtp com postfix, backup, monitoramento e segurança. É um curso completo sobre administração de servidores por um preço imperdível!

E ainda tem mais! Cada aluno do curso terá acesso a um VPS exclusivo onde ele executará as tarefas junto comigo. As aulas serão aos sábados pela manhã pelo TreinaTom.

Para saber mais detalhes acesse já o site do curso e faça a sua inscrição, as vagas são limitadíssimas.

1 comentário : 23.02.2010 10:34 PM

Empreender, essa é a hora! - Parte 1

is this good for the company?

Há pouco mais de um ano atrás eu fiz uma palestra no Encontro de TI sobre Empreendedorismo on Rails. A apresentação bombou, fez o maior sucesso, mas até hoje eu não tinha dado nenhum feedback sobre o que eu mesmo estava fazendo em relação ao que preguei na palestra. O fato é que 2009 foi um ano de muito trabalho, onde eu comecei a preparar os alicerces do que vou apresentar hoje. É sempre bom lembrar que tudo foi e continuará sendo feito durante os tempos vagos.

Em 2009 me juntei com mais 3 empreendedores para criar a idéia do nosso produto. Ele tem um nome: Clientella. Trata-se de um CRM para pequenas empresas e profissionais liberais. Alguns pensarão: “Ah fala sério, vocês vão copiar o Highrise da 37signals”. Bom a idéia não é essa. Para nós de TI que estamos adaptados aos sistemas web e com o idioma inglês é simples usar um sistema gringo. Com o Clientella estamos pensando nas empresas que tem especificidades brasileiras, que buscam um serviço nacional, com suporte na própria língua e não necessariamente entendem algo de web.

“Da onde saiu essa idéia maluca de fazer um CRM? Esse nome é batido pra caramba e existem diversos players no mercado!”, vocês pensariam. Bom, eu trabalhei customizando o SugarCRM - um bloated CRM opensource - para uma empresa há uns 3 anos atrás. O que eu aprendi lá é o quanto as empresas precisam de um CRM e o quanto as soluções existentes não resolvem os problemas. Lembrando que estamos falando de pequenas empresas, logo qualquer coisa como Oracle, SAP, SalesForce e Microsoft está fora de cogitação apenas pelo custo de aquisição das licenças ou de necessidade de infraestrutura própria. Daí pode-se ver a quanto tempo estou maturando essa idéia de um CRM na cabeça ;-)

E o que você pode fazer para ajudar? Se você tem uma empresa ou é um profissional liberal e precisa de um CRM, acesse o nosso site, leia a carta convite e preencha o formulário. Assim você nos ajudará com o Clientella e ainda poderá se tornar parte do programa de beta testers.

Foto de magnetbox(cc)

5 comentários : 04.02.2010 12:57 AM

Se seu desenvolvedor está falando, pense que pode ser sério

clock Quantas vezes você já não foi forçado a fazer uma coisa do jeito que seria mais rápido, pois seu chefe achou que o jeito que demora mais não seria uma boa? As vezes me esqueço em como é comum superiores, gerentes, analistas ou “coloque-aqui-qualquer-nome-que-manda-mais-que-você-na-empresa” darem pitaco no seu trabalho sem saber exatamente do que estão falando.

Hoje em dia não é tão comum isso acontecer comigo, mas sei que ainda é comum acontecer com muita gente. Engraçado é que normalmente você pensa: “ok, vai ser mais rápido, mas daqui a pouco algo vai dar errado”. Em geral é batata!

Se você é desenvolvedor e está passando por uma situação como essas, tente uma forma melhor de mostrar porque você acha que, apesar de mais demorada, sua solução tem mais chances de dar menos problemas no futuro. E se você é o manda-chuva, busque saber porque o seu desenvolvedor está sugerindo uma solução que leva mais tempo, ele tem mais chances de estar certo que você.

Foto de monkeyc.net(cc)

2 comentários : 08.12.2009 03:42 PM

"Bundão" sai em curtíssima temporada no Rio de Janeiro!

superhomem O bundão foi convidado para mais dois eventos esse fim de ano.

A primeira apresentação é amanhã na Simonsen. É o 1o. Encontro de Tecnologia Simonsen que começa hoje e termina amanhã. A grade completa está disponível no site do evento. Entre os palestrantes estão pessoas já conhecidas da comunidade de desenvolvimento do Rio como Bruno Dulcetti(Videolog), Victor Batista(Clavis) e Gustavo Guanabara(Guanabara.info). O Bundão se apresenta amanhã, dia 27 de novembro as 20:30!

A segunda apresentação seria no Gamacomp, dia 5 de dezembro. Eu acessei o site do Gamacomp agora e parece que o evento foi adiado. Atualizo aqui assim que tiver outros detalhes.

Não deixem de comparecer amanhã na Simonsen!

Foto de MightyMac <3(cc)

0 comentários : 26.11.2009 11:57 AM

Curso de Rails na Ultra Maratona How To!

No próximo fim de semana, dias 7 e 8 de novembro, teremos a II Ultra Maratona How To. São dois dias inteiros com cursos de 4 horas sobre diversos temas: administração de sistemas, segurança, programação etc.

Eu iria apresentar o how to Rails: Otimizando Client-side e Server-side, mas devido a problemas pessoais não poderei. No meu lugar quem irá apresentar é o igualmente competente Vitor Pellegrino.

A maratona ocorre na Rua Martins Ferreira, 71, no bairro de Botafogo, na zona sul do Rio de Janeiro. As inscrições devem ser feitas no site do evento. Corra pois as vagas são limitas e já estão se esgotando!

O evento é uma grande iniciativa do pessoal da Clavis Segurança da Informação, Tecnohall Soluções em Tecnologia e Green Hat Segurança da Informação.

0 comentários : 03.11.2009 11:28 PM

[OFF-TOPIC] Nunca faça uma ligação usando Cartão de Crédito

Eu estava de férias no começo do mês e passei uma temporada nos EUA. Em NYC eu havia comprado um cartão telefônico pré-pago de $10 e fui usando para fazer ligações para o Brasil, até que ele acabou. Fui para Orlando e não tive tempo de comprar outro cartão.

Então um dia liguei para o Brasil usando as instruções que havia em um orelhão, pagando com cartão de crédito. Você fala para a operadora qual o número quer discar e qual o número do cartão de crédito. Até aí tudo bem. Agora chegou a conta:

06/10  IOS TEL*TO 01155212235       0000000  00/00     65,01

Foram $65 por uma ligação que não durou nem 10 minutos! É um absurdo! Fui buscar e percebi que não fui o único otário.

Antes eu tivesse entrado no site da Embratel pra ver como usar o tal do BrasilDireto.

1 comentário : 30.10.2009 12:03 PM

Por que eu sou fanático por testes e você é um bundão

superhomem Esse foi o título de uma palestra que eu submeti junto com o Henrique Andrade para o FISL desse ano. Ela não foi aprovada lá, principalmente pois alguns dos avaliadores acharam o título ofensivo. Foi amor e ódio aquela avaliação. Alguns acharam sensacional e outros odiaram do fundo do coração! Felizmente conseguimos aprovar ela para o Latinoware!

Na verdade ela não se trata de uma palestra, mas sim de uma pequena peça teatral, encenada por mim, Sylvestre Mergulhão, e pelo Henrique Andrade. A idéia surgiu pois estava ficando chato fazer palestras “comuns” sobre TDD e boas práticas. Não estava convencendo tanto a galera, pois basicamente só vai assistir a uma palestra de TDD quem já no mínimo ouviu falar sobre o assunto e concorda com seu uso. Mas esse tipo de pessoa já está “conquistada”, já saiu do lado negro da força.

Como levar pessoas para uma palestra independentemente de qual o assunto? Insulte-as com um título polêmico! Simples assim! Foi então que tivemos a idéia do “Por que eu sou fanático por testes e você é um bundão”. As pessoas comentavam pelos corredores do Latinoware: “Caramba, mas e essa palestra do bundão, você vai né?”. E com isso enchemos a sala! Mais de 100 pessoas assistiram, nada mau… atores em início de carreira provavelmente demoram um certo tempo até conseguir um público assim, hehehe.

batman Durante a apresentação contamos a história de dois desenvolvedores: um segue as boas práticas e o outro é o bundão. O bundão passa por vários sufocos, apertos de prazos e bugs que pipocam em produção! E é claro que não poderia faltar também o chefe ligando e pedindo agilidade na solução dos problemas. Foi um espetáculo, ainda mais considerando que nunca fizemos coisa parecida antes e ensaiamos muito poucas vezes. Para as próximas apresentações estamos nos preparando melhor. Já vai ter alguma sonoplastia e possivelmente estaremos usando microfones de lapela sem fio.

Aguardem um próximo evento para assistir Por que eu sou fanático por testes e você é um bundão.

11 comentários : 29.10.2009 08:08 PM

Criando um servidor smtp com postfix the simple way

Problema

O Redeparede dispara ~150k e-mails por mês. Não é mailing list, são as ações dos usuários mesmo: cadastro, recuperação de senha, notificação de comentários etc. Nós usávamos um servidor smtp da Engine Yard, mas recentemente movemos para o EC2 da Amazon e lá não temos no plano um servidor smtp. Tentamos usar alguns comerciais comuns, mas todos tinham limite de envio de e-mail por conta. Passamos então a usar o authsmtp, que é um serviço de smtp especializado, mas a conta começou a ficar cara a medida que estávamos disparando muitos e-mails.

A solução então foi fazer o que eu não queria inicialmente: configurar um smtp próprio. E-mail é sempre um problema. Configurar um servidor se mostrou um problema ainda maior do que eu imaginava. A nossa necessidade é muito simples: precisamos autenticar remotamente num servidor smtp para disparar e-mails. Apenas uma conta autenticada para enviar e-mails. Só isso. Só.

Buscar na internet sobre o assunto retorna configurações megalomaníacas usando mysql, postgresl, mil tipos diferentes de autenticação, mas não tem o simples!

Vamos ao trabalho.

DNS reverso

Você precisa ter o dns reverso configurado, sem isso todos os seus e-mails vão para caixa de spam. Você tem que verificar no lugar onde seu servidor está hospedado como configurar o reverso. No caso do Slicehost, onde hospedamos o nosso smtp, isso é configurado a partir de uma interface web bem simples. Para saber se está funcionando é só digitar no console:

dig -x 67.23.23.229 (substitua pelo ip do seu servidor, claro ;)

A resposta tem que ser algo parecido com:

; <<>> DiG 9.5.0-P2 <<>> -x 67.23.23.229
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 57850
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2

;; QUESTION SECTION:
;229.23.23.67.in-addr.arpa. IN  PTR

;; ANSWER SECTION:
229.23.23.67.in-addr.arpa. 86400 IN PTR smtp.redeparede.com. # <=== essa linha que importa, ela está dizendo que o nosso ip está apontando para o endereço correto

;; AUTHORITY SECTION:
23.23.67.in-addr.arpa.  3600    IN  NS  ns2.slicehost.net.
23.23.67.in-addr.arpa.  3600    IN  NS  ns1.slicehost.net.

;; ADDITIONAL SECTION:
ns1.slicehost.net.  95375   IN  A   67.23.4.57
ns2.slicehost.net.  88271   IN  A   173.45.224.132

;; Query time: 158 msec
;; SERVER: 201.17.0.114#53(201.17.0.114)
;; WHEN: Tue Sep 15 13:42:16 2009
;; MSG SIZE  rcvd: 157

Caso você não possua o dig instalado:

sudo aptitude install dnsutils

Configurando o SPF

O SPF é uma entrada TXT no DNS que diz quais servidores estão autorizados a enviar e-mails do seu domínio. Esse registro é consultado pelo servidor que recebe seu e-mail e isso ajuda a você não cair na caixa de spam. No nosso caso os servidores são do Google e o nosso próprio smtp. A linha fica assim:

"v=spf1 a mx include:smtp.redeparede.com include:aspmx.googlemail.com include:_spf.google.com ~all"

Instalando e configurando o Postfix

Nós queríamos a configuração mais simples de todas. O que conseguimos foi fazer o postfix autenticar usando a própria base de usuários/senhas do sistema. Para simplificar as coisas eu fiz um script que executa os passos em sequencia. Baixe e execute como root num servidor limpo. Foi testado apenas no Ubuntu 9.04 (Jaunty Jackalope).

install_and_configure_postfix_ubuntu.sh

Primeiro vai pedir o seu domínio. Assumi que o servidor será smtp.seudominio.com, se não for esse o seu desejo, edite o script e mude na mão. Na instalação do postfix ele vai perguntar algumas coisas, basta selecionar as opções padrão. Depois vai perguntar sobre chaves, isso faz parte da criptografia TLS. Eu não sei se essas senhas que digitamos na chave servem pra alguma coisa. Na dúvida anote-as em algum lugar, mas acho que não vai precisar delas pra mais nada. Quando o script terminar de rodar tudo já vai estar configurado e funcionando! Abra um cliente de e-mail como o Evolution e teste enviar um e-mail autenticando no seu novo servidor usando login e senha de algum usuário do sistema.

Abra o script e veja o que foi feito. O tutorial que me ajudou a escrever o script foi esse aqui: http://www.howtoforge.com/perfect_setup_debian_sarge_p4

Se você conhece algum outro servidor smtp que faça isso de forma mais simples, por favor, não deixe de compartilhar.

0 comentários : 15.09.2009 05:59 PM

Colecionar débitos técnicos não é maneiro não

Depois de um tempo sem postar, lá vamos nós de novo ;). Quem assina o feed provavelmente recebeu uma atualização sobre esse post antes do que devia! Eu esqueci de marcar ele como rascunho e aí ficou a manhã toda o post publicado apenas com um smile. Depois do furo não tive outra opção a não ser escrever o post até o final o mais rápido possível.

Após participar de inúmeros projetos e de formas de gerencia sobre os projetos tenho chegado a algumas conclusões sobre a questão dos débitos técnicos, refatoração e testes.

No começo do V2V, projeto do Portal do Voluntário, muito código novo foi escrito em cima de um código que usamos como base. Toda alteração de código era devidamente testada usando Rspec. Por considerar que alguns testes não eram muito importantes, as vezes eu deixava a spec como pending para fazer uma posterior implementação. Assim podia entregar as coisas um pouco mais rápido. De fato isso aconteceu em apenas uma meia dúzia de specs, ainda bem!

O fato é que hoje, 9 meses depois do sistema estar em produção, e já com 3 grandes clientes utilizando – rumando para o quarto – a mesma meia dúzia de specs continuam como pending.

Esse quadro é comum acontecer também em relação aos débitos técnicos dos projetos. O que é um débito técnico? É um empréstimo que você faz, inserindo alguma coisa mal feita no sistema – leia-se POG – com objetivo de ganhar um pouco de tempo naquele momento. É um empréstimo pois ele pode ser comparado ao empréstimo bancário. Você pega um dinheirinho e aquilo tem um juros. Quanto mais tempo você leva pra devolver aquele dinheiro pro banco mais você paga de juros. No nosso caso quanto mais tempo levamos para remover os débitos técnicos mais tempo perdemos por causa dele.

Assim como as minhas 6 specs pendentes, é comum que débitos técnicos se prolonguem por toda a vida do projeto causando muito mais transtornos do que seria corrigi-los na época em que isso faria atrasar a entrega em apenas um dia.

Em alguns dos projetos que trabalhei às vezes separávamos uma semana para “arrumar a casa”. Ou seja: quitar os débitos técnicos que foram se criando com objetivo de fazer entregas mais rápidas. Uma semana de projeto no lixo sem nenhuma funcionalidade nova! Essa não é a forma correta de fazer.

Se você estimou o desenvolvimento de uma funcionalidade em uma hora e tem um débito técnico te atrapalhando que vai fazer você demorar duas horas a mais para quitá-lo, essa é a hora de quitá-lo. Não faça mais uma POG! Pegar mais um empréstimo nessa hora vai fazer você pagar juros sobre juros e isso irá te atrapalhar mais na semana seguinte.

A refatoração é um processo contínuo e on the fly.

2 comentários : 17.08.2009 04:09 PM