Estou muito empolgado com a ideia de participar do Rails Rumble. Desde que vi o tweet de que iria ter esta competição pensei: este ano não posso perder! E hoje estou aqui a organizar minhas ideias para o projeto.

A inspiração

O Code School sem sombra de dúvidas é minha maior inspiração. A gamificação dos povos e a modalidade de desafios oferecidas pelo codeschool realmente são minha [maior motivação].

Este site oferece um sistema de cursos de programação muito mais objetivo e intuitivo. Através de vídeos e exemplos na prática você precisa codificar cada etapa do seu aprendizado para testar seus conhecimentos.

O sistema funciona como um jogo, cada etapa cumprida você ganha uma “bagagem” de experiência e acumula pontos. A qualidade audio visual, assim como os desafios de programação são demais. Realmente tenho me divertido noite a dentro e nos horários de folga codificando os pequenos desafios.

A ideia

Após fazer várias aulas no codeschool, descobri que minha meta é criar uma métrica para mensurar a habilidade do programador em frente ao problema real.

Percebi que a cada lição você ganha uma quantidade de pontos e cada vez que usa os hints seu crédito é debitado, então isso quer dizer que quando o jogo termina e você já está bastante habilidoso, não perde nenhum crédito.

O objetivo inicial vai ser criar o sistema de forma que mensuremos:

  • tempo de leitura da questão
  • tempo de resposta para iniciar edição
  • tempo de resposta para acertar a questão
  • número de tentativas com erro antes de passar os testes

Em um segundo momento, utilizando aí um mapeamento javascript mais profundo a ideia também é mensurar os fatores:

  • Experiência com atalhos do teclado
  • Número de movimentos com teclado
  • Número de atalhos com teclado
  • Número de atalhos inexistentes

Em um terceiro momento a ideia dá pra expandir para os aspectos de:

  • Manutenibilidade / Refatoração
  • Escalabilidade
  • Experiência com o usuário

A necessidade

A necessidade está ligada a contratação de desenvolvedores. De alguma forma quero criar um produto inovador na área de testar os conhecimentos e habilidades do desenvolvedor e permitir encaixá-lo em uma modalidade. O super-ego das pessoas desafia a melhoria e isto é bom. Competir faz bem. Ter um desafio faz bem.

A competição

A competição faz com que as pessoas melhorem suas práticas e ao mesmo tempo sintam-se desafiadas a investirem nas suas habilidades plenas e em time para poderem competir melhor.

Este evento é um exemplo de como existem pessoas que estão dispostas a passar as 48 horas do fim de semana em um desafio de programação por pura paixão.

A comunidade Rails é a mais apaixonada por código lindo e open source que eu conheço.

As 48 horas estão próximas

Não se esqueçam dia 13 e 14 deste mês estão aí! Há vagas na equipe! Junte-se a mim para desenvolver esta ideia!

Jônatas Davi Paganini

Jônatas Davi Paganini

Developer and writer passionate about PostgreSQL, TimescaleDB, and building better systems. Currently sharing knowledge about time series databases and system architecture.