Automata.Life 2016: mudanças entre as edições

De CCSL
Ir para navegação Ir para pesquisar
(Criou página com '== Time == * Caio Lopes Demario * Carybé Gonçalves Silva * Pedro Henrique Rocha Bruel (coach) * Ricardo Lira da Fonseca Kun (coach) == Informações gerais == * [https://...')
 
Sem resumo de edição
 
Linha 11: Linha 11:
* Lista de emails: automatalife-dev@googlegroups.com
* Lista de emails: automatalife-dev@googlegroups.com
* [https://docs.google.com/spreadsheets/d/1xRG3JErABYHdoDhvukUtroD3XzjjjQojbeethJ_AQUs/edit?usp=sharing Planilha de presença]
* [https://docs.google.com/spreadsheets/d/1xRG3JErABYHdoDhvukUtroD3XzjjjQojbeethJ_AQUs/edit?usp=sharing Planilha de presença]
== Histórinha ==
O objetivo do nosso semestre era fazer uma versão online e multiplayer do Jogo da Vida do Conway ( https://bitstorm.org/gameoflife/ ).
Nosso cliente deixou a cargo da nossa equipe de escolher um front-end e back-end, e uma boa parte de nosso trabalho foi para descobrir e testar essas ferramentas. No fim decidimos utilizar Django como back-end e javascript para front-end.
Nosso foco principal nas primeiras iterações foi de seguir métodos ágeis aplicado em jogos, ou seja, primeiro construir um protótipo do jogo para testar as mecânicas e jogabilidade, para depois re-escrever a lógica do jogo no back-end e a interface no front-end. Construímos o protótipo inteiramente no Processing, e apesar de ter sido trabalhoso, nos divertimos muito, e por fim acabamos com uma versão jogável para nosso cliente poder jogar e dar feedback.
Entretanto tivemos várias dificuldades na hora de refazer o jogo no back-end, especialmente devido a várias tecnologias novas que tivemos de gastar tempo para aprender a usar. Por fim decidimos fazer uma versão inicial do jogo direto no front-end, utilizando o Material-UI da google para a interface e escrever o código em javascript.
Utilizamos o método "mob programming" no desenvolvimento do projeto, o que foi uma experiência bem proveitosa e inovadora. Nossa opinião dessa técnica é de ser divertido e realmente poderoso quando temos vários integrantes do grupo focados. Temos a impressão de que o grupo unido é mais forte que a soma das partes, e conseguimos superar vários desafios trabalhando desse jeito. Nossa única crítica ao método é que ele perde bastante a eficácia quando estamos tentando aprender uma tecnologia que ninguém do grupo conhece, e parece que o progresso fica muito mais lento nesses casos. Nessas situações, uma solução do grupo é separar meia-hora de "aprendizado coletivo", onde cada integrante do grupo, em duplas ou individualmente, fica numa máquina estudando a tecnologia, e depois todos se reúnem para dividir as informações.
Você pode conferir nosso progresso na nossa pagina do github, aqui: https://github.com/Automata-Life
Nela é possível encontrar nosso protótipo original do jogo, nossos testes para escolher back-end (um app em rails e um app em django), ferramentas que criamos para auxiliar o mob-programming (um contador de tempo) e por fim o repositório de nosso site com a versão atual do jogo na web.

Edição atual tal como às 12h10min de 9 de dezembro de 2016

Time

  • Caio Lopes Demario
  • Carybé Gonçalves Silva
  • Pedro Henrique Rocha Bruel (coach)
  • Ricardo Lira da Fonseca Kun (coach)

Informações gerais

Histórinha

O objetivo do nosso semestre era fazer uma versão online e multiplayer do Jogo da Vida do Conway ( https://bitstorm.org/gameoflife/ ). Nosso cliente deixou a cargo da nossa equipe de escolher um front-end e back-end, e uma boa parte de nosso trabalho foi para descobrir e testar essas ferramentas. No fim decidimos utilizar Django como back-end e javascript para front-end.

Nosso foco principal nas primeiras iterações foi de seguir métodos ágeis aplicado em jogos, ou seja, primeiro construir um protótipo do jogo para testar as mecânicas e jogabilidade, para depois re-escrever a lógica do jogo no back-end e a interface no front-end. Construímos o protótipo inteiramente no Processing, e apesar de ter sido trabalhoso, nos divertimos muito, e por fim acabamos com uma versão jogável para nosso cliente poder jogar e dar feedback.

Entretanto tivemos várias dificuldades na hora de refazer o jogo no back-end, especialmente devido a várias tecnologias novas que tivemos de gastar tempo para aprender a usar. Por fim decidimos fazer uma versão inicial do jogo direto no front-end, utilizando o Material-UI da google para a interface e escrever o código em javascript.

Utilizamos o método "mob programming" no desenvolvimento do projeto, o que foi uma experiência bem proveitosa e inovadora. Nossa opinião dessa técnica é de ser divertido e realmente poderoso quando temos vários integrantes do grupo focados. Temos a impressão de que o grupo unido é mais forte que a soma das partes, e conseguimos superar vários desafios trabalhando desse jeito. Nossa única crítica ao método é que ele perde bastante a eficácia quando estamos tentando aprender uma tecnologia que ninguém do grupo conhece, e parece que o progresso fica muito mais lento nesses casos. Nessas situações, uma solução do grupo é separar meia-hora de "aprendizado coletivo", onde cada integrante do grupo, em duplas ou individualmente, fica numa máquina estudando a tecnologia, e depois todos se reúnem para dividir as informações.

Você pode conferir nosso progresso na nossa pagina do github, aqui: https://github.com/Automata-Life

Nela é possível encontrar nosso protótipo original do jogo, nossos testes para escolher back-end (um app em rails e um app em django), ferramentas que criamos para auxiliar o mob-programming (um contador de tempo) e por fim o repositório de nosso site com a versão atual do jogo na web.