Empreender, essa é a hora! - Parte 1

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.
5 comentários : 04.02.2010 12:57 AM
Se seu desenvolvedor está falando, pense que pode ser sério
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!
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
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.
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.
9 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
3o. Linux Install Fest
Pessoal estou bastante sem tempo de postar aqui, mas enfim é a vida. O FISL10 foi sensacional, minha palestra sobre scaling estava lotada(slides no link artigos) e o feedback foi muito bom. Se não foram esse ano, não deixem de ir no próximo ano, pois a galera do Horaextra vai comparecer em massa!
Nesse fim de semana vai ter o 3o. Linux Install Fest na Simonsen, segue planfleto de divulgação abaixo:
0 comentários : 03.07.2009 11:36 AM
Recuperando tabela de partições que Windows Vista apagou

Pensei no título desse post em algo como “Micro$oft, a saga continua agora em outra galáxia” ou algo assim, mas resolvi fazer uma coisa mais informativa. Sei que muita gente passa por isso e nem sempre é fácil achar informação válida sobre o assunto.
Meu mais recente notebook veio com Windows Vista. Quando instalei Linux nele resolvi deixar o Vista lá para caso eu precisasse ver alguma coisa no IE. Ficou por alguns meses numa boa com o dual boot rolando sem problemas. Até que um dia eu precisei entrar no Windows ele não deu boot: tela azul e restarta sozinho sem que eu consiga ver a mensagem de erro. Deixei ele de lado lá…
Hoje precisei usar IE para debugar um javascript que está dando problema somente nele. Resolvi colocar o CD de recovery do Windows para ver se ele dava sinal de vida. Conclusão sem me perguntar nada ele disse: formatando… copiando arquivos… Nisso eu pensei: puts ferrou! Dei reboot antes que ele passasse por cima das minhas partições Linux. Ubuntu Live CD to the rescue! Dei boot num Ubuntu Live CD e a “recuperação” de fato tinha apagado todas as partições e criado uma única novamente somente para o Windows. Ok, sem pânico.
Última vez que passei por problema semelhante foi há uns 10 anos atrás, quando meu Windows foi infectado pelo vírus Chernobyl(CHI). Esse vírus ficava quietinho na sua máquina e somente agia se você ligasse ela num dia 26 de abril, aniversário do acidente nuclear na Ucrânia. Ele apagava o primeiro megabyte do seu disco rígido. Com isso ia pro espaço seu boot loader e sua tabela de partições. Depois desse dia eu exterminei o Windows da minha vida e passei a usar somente Linux.
Google é nosso amigo. Na época eu consegui um software que varria o disco e procurava por partições perdidas e depois recriava a tabela de partições. Se eu consegui resolver esse mesmo problema há tanto tempo atrás, não devia ser tão dificil resolver nos dias de hoje. E realmente não foi. Achei dos programas de código aberto para fazer o trabalho: gpart e TestDisk.
Eu optei por usar o TestDisk, me pareceu ser mais completo. Ele demorou cerca de 30 minutos para fazer o scan no disco de 160gb. Detectou todas as minhas 3 partições Linux (swap, uma de sistema que fica no “/” e outra que uso como “/home”). Foi só marcar elas como primárias novamente e salvar a nova tabela de partições. É preciso dar um boot no Live CD para o sistema reler a tabela de partições (na verdade tem uma forma de fazer isso sem boot, mas eu esqueci como é). Por último é só restaurar o GRUB a partir do Live CD do Ubuntu.
Depois disso o Ubuntu apagado pelo Windows rolou numa boa e eu deixei o Windows de mão de novo. Ô sisteminha…
Links legais:
- TestDisk
- Site do TestDisk. Eles também tem uma ferramenta específica para recuperação de fotografias em mídias diversas.
- System Rescue with Knoppix
- Foi aqui que eu descobri o gpart. As outras apresentações também são muito boas.
- Insert Linux
9 comentários : 31.03.2009 03:50 PM



