ruby, rails, linux, php, seo and ui
In: ruby
27 out 2009O Ruby Learning começou uma série de desafios para Rubistas iniciantes, na qual um profissional Ruby elabora um problema e os interessados em participar enviam as soluções desenvolvidas em Ruby para serem avaliadas. O autor do desafio escolhe a melhor implementação e sorteia uma entre as outras soluções funcionais. Os premios são screencasts da PeepCode e BDDCasts.
Por que não participar?
O problema proposto pelo Chris Strom foi o seguinte:
Você deve um grande favor e concordou em pegar um amigo no aeroporto toda Sexta-feira a noite. A linha área que seu amigo voa é barata, mas terrÃvel quando se trata em reportar atrasos e horários de saÃda e chegada. Você rapidamente descobriu que o voos agendados para as 10pm nunca chegam no horário e usualmente atrasam mais de uma hora. Se o avião chegar as 11:15pm, 12:03am, 11:30pm, 11:23pm e 11:48pm, qual é o horário médio da chegada?
A solução funciona se seu amigo mudar o horário de chegada para 6 horas depois? E se for 12 horas depois?
A saÃda esperada do programa é a seguinte:
E qual foi a minha solução?
Eu identifiquei os seguintes passos a serem seguidos:
O código para essa implementação foi o seguinte:
Executando os testes propostos, tenho o resultado esperado. Woooo!
As soluções vencedoras foram:
UPDATE: o Chris Storm publicou um feedback sobre as soluções do teste. Leitura obrigatória.
Ricardo Duarte, 26 anos, trabalha na Nuntec, atua como desenvolvedor web a mais de 12 anos, já tendo passado por diversas tecnologias. Este blog irá comentar um pouco destas experiências.