Primeiro Coding Dojo de Ruby do Ano.

Esse post é para fazer uma retrospectiva do primeiro coding dojo de Ruby em Porto Alegre.

O dojo foi organizado pelo Cabral (@felipebcabral) aqui da Softa com o apoio do Carlos Villela (@cv) da ThoughtWorks Brasil e do Miguel Grazziotin (@Miguelgraz) do Dojo-POA (http://groups.google.com/group/dojo-poa). O problema foi escolhido e conduzido por este que vos escreve (@dbiazus).

Confesso que o problema escolhido não foi o mais adequado para um dojo, mas eu tive a melhor das intenções. A idéia era mostar para o pessoal uma estrutura clássica de implementação de linguagens de programação, a AST. A árvore abstrata de sintaxe (abstract syntax tree) é uma representação da estrutura sintática de código escrito em alguma linguagem formal.

O problema parece muito abstrato, mas foi inspirado por algo bem prático. A origem da idéia foi o post sobre a implementação do ARel, o motor relacional por trás da camada de banco de dados do Rails 3. O autor (@tenderlove) comenta que usando estruturas simples usadas em implementação de linguagens ele teve grandes ganhos no código utilizado. Então a idéia foi trazer parte desses conceitos para o dojo.

Imaginemos que queremos interpretar uma linguagem para manipular dados baseada em algebra relacional. Abaixo alguns exemplos de código:

1 2 3 4 
π foo bar (baz ⋈ qux)
π foo bar σ corge = grault (baz ⋈ qux)
π foo bar σ corge = grault AND garply = waldo (baz ⋈ qux)

Para interpretar o código faríamos um parser do zero, usando um pouco de expressões regulares. O resultado (para a primeira expressão do exemplo) deveria ser uma árvore em memória como a que está abaixo.

O pessoal que estava presente se saiu muito bem e chegamos a finalizar um analisador léxico e iniciar a parte de sintaxe, nada mal para um sábado de manhã. O código produzido está no meu perfil do github. Além disso fiquei muito contente pelo ambiente de desenvolvimento (com o meu editor favorito) ter ficado nos pontos positivos.

Abaixo os pontos positivos e nagativos levantados no final da manhã:

Pontos positivos:

  • Café liberado pela TW
  • Pãozinho de queijo show de bola
  • Ambiente bacana
  • Condução
  • Autospec
  • Ambiente de desenvolvimento (VIM)
  • Horário
  • Local de fácil acesso
  • Bastante gente
  • Almoço pós-dojo

Pontos negativos:

  • Filtro de café pequeno
  • Luminosidade da projeção
  • O problema foi abstrato demais
  • Ambiente de desenvolvimento (VIM)
  • A quantidade de emails não lidos do Diogo
  • Lembretes
  • Notebooks (dispersão)

 

Site novo

Olá! Hoje estamos lançando nosso site novo, agora mais informativo. Queremos mostrar um pouco mais o que pensamos e que tipo de empresa somos. O site será single page, com todas as informações na mesma página e cada parte com um visual diferente. O layout é do designer da casa, o Léo ‘no perdona errores’ Tartari.

O site celebra os 5 anos da Softa (na verdade contabilizados no início do ano, mas, sabe como é, o site fica sempre na parte de baixo da lista de prioridades =D). Quando começamos, éramos dois sócios: Diogo Biazus e eu, Juan Maiz. No início não tínhamos uma idéia específica do que fazer, mas sabíamos que era necessário empreender e criar uma empresa onde as pessoas fossem trabalhar motivadas. No nosso país o empreendedorismo ainda engatinha e a maioria dos profissionais busca trabalho no governo ou em grandes empresas, onde a grande quantidade de funcionários dilui as responsabilidades e a possibilidade de fazer a diferença individualmente. Nossas referências eram os textos de Paul Graham, E.F. Schumacher, Ricardo Semler e do pessoal da 37Signals, que recém havia lançado o Ruby on Rails.

Hoje somos 6 sócios, tendo entrado, nesta ordem, o Daniel Weinmann, o Pedro Axelrud, o Léo Tartari e o Felipe Cabral. Todos eles vieram agregar seus vastos conhecimentos em diversas áreas e estão ajudando a tornar a Softa uma empresa reconhecida pela qualidade, pelo atendimento primoroso e pela transparência e honestidade.

Nestes anos, desenvolvemos algumas dezenas de projetos, evoluímos bastante e lançamos nosso próprio produto, o Mailee.me, uma ferramenta de email marketing 2.0. Também contribuímos com a comunidade de tecnologia: organizamos o RS on Rails, apoiamos a PGCon e o FISL, fundamos o GURU-RS (Grupo de usuários Ruby do Rio Grande do Sul), palestramos em dezenas de eventos, realizamos um projeto no Google Summer of Code (através do Diogo, nosso expert em PostgreSQL), e agora estamos ajudando a organizar um grupo de Startups no estado.


O site irá ao ar ainda hoje. Fique atento ao hash tag #softa no Twitter.


(making of das fotos do site novo)