Code n' Bier - Segunda edição

Mais de cem inscritos, três palestrantes, um jogo usando websockets e ainda competir a atenção com o jogo do Grêmio. Foi dada a largada para a segunda edição do Code n’ Bier!

Foto início do evento

Após a primeira edição, abrimos um espaço para sugestões. Mas claro, como a gente sabe que programador é tímido por natureza, tivemos poucas sugestões.

Gostaria de ver algo sobre websockets e nodeJS - Guilherme Severo

Telepong, seus pais jogavam
Telepong, seus pais jogavam

Hmm, e por que não? Que tal um jogo usando canvas, websockets e node? Assim começaram nossos planos de fazer um live coding - um programador usando o telão e interagindo com a platéia para escrever um jogo em tempo real.

Outra novidade foram os smalltaks (uma brincadeira com o nome da linguagem), palestras de dez minutos apresentadas pelos participantes sobre assuntos variados na área da programação.

Smalltalk - Design Patterns

A noite começou com uma smalltalk sobre design patterns do amigo Cristiano Becker. Becker falou do padrão proxy e explorou cada linha de código do seu exemplo, uma excelente aula.

Live Coding parte 1/2 - Forever alone Pong

Nosso live coding foi escrever um jogo de Pong. Na primeira parte preparamos o HTML, organizamos uma task usando Flour para unir nossos arquivos JavaScript, implementamos o game loop usando requestAnimationFrame e escrevemos código até o ponto em que deixamos o puck (bola) quicando na tela.

Smalltalk - CoffeScript

A segunda talk da noite foi liderada pelo Ricardo Tomasi, evangelista gaúcho de JavaScript, Node e afins. Descontraído, Ricardo fez piada com o gosto por café e falou sobre o que é Cofeescript, linguagem de programação que compila para JavaScript, abastraindo apenas as partes boas da mesma.

Para provar seu conceito, Tomasi portou uma parte do código do Pong para CoffeeScript, mostrando a sintaxe clara e objetiva da linguagem.

Live Coding parte 2/2 - Node Dual Screen Pong

Na segunda parte do live coding, uma breve introdução sobre express, socket.io e a implementação em JavaScript no servidor responsável por receber e passar o puck. Na sequência o jogo foi adaptado para receber e enviar eventos da bola via websockets. Só faltava o paddle (bastão) e o jogo estaria completo.

O resultado foi um pong com a área de jogo dividida em duas telas, nas quais dois jogadores rebatem o puck com o paddle. Quando o puck cruza o limite superior da tela, ele é teletransportado para o outro jogador. E este é o motivo pelo qual esta adaptação do clássico Tele-jogo recebeu o nome de TelePong.

Código final do TelePong no GitHub

Smalltalk - PEG.js

Guilherme Prá Vieira fechou o evento com uma talk sobre PEG.js, um gerador de parser escrito em JavaScript. Ele falou sobre expressões regulares e justificou o mau uso delas para processar HTML.

Vieira também mostrou alguns exemplos de linguagens que podem ser *parseadas usando a biblioteca e o live demo que pode ser encontrado no website.

Retrospectiva

Tradicionalmente, no final do evento rolou um bate-papo para ouvir dos participantes quais os pontos positivos e a melhorar da edição, entre eles…

Positivos

A melhorar


Agradecemos a participação de todos e até a próxima!