Na última apresentação que fizemos aos professores, conseguimos colher feedbacks interessantes sobre a interface e sobre o modelo de negócios. A respeito da programação em si, não foi dito muita coisa, então partimos para o Sublime e para a linha de comando e começamos a desenvolver.
Iniciando os trabalhos

No começo foi difícil. Optamos por usar o React Native (RN), e ele demanda muito tempo para ser configurado. É preciso instalar o Android Studio, o NodeJS, o Expo (para pré-visualizar o aplicativo no celular) e o próprio RN na linha de comando, isso apenas para começar. Fora isso, o framework possui uma série de outras dependências que precisam ser baixadas para funcionar.
Passada essa configuração inicial, nós estudamos um pouco sobre versionamento com Git. Decidimos usar o BitBucket, em vez do famoso Github, pois aquele nos permite criar projetos privados gratuitamente.
Usando o Expo
Admitimos: foi difícil fazer o Expo funcionar. Ele utiliza a rede wifi para mostrar o aplicativo diretamente no celular, mas por mais que seguíssemos as instruções, isso não funcionava, e o celular não conseguia encontrar o app. Após algumas horas de perrengue, descobrimos que o computador não estava inicializando o Expo na rede wifi, mas numa rede virtual criada pelo VirtualBox.
Depois de passar por esse problema, ele funcionou muito bem. O interessante do Expo é que ele atualiza o celular rapidamente e mostra avisos e até mensagens de erro, facilitando a depuração do app.

Programando no React Native
Usar o RN não é difícil, mas exige um esforço. Ele não utiliza HTML, mas uma marcação chamada JSX, que é uma mistura de HTML com JavaScript. É quase como aprender uma linguagem nova.

O maior problema mesmo foi entender a estrutura básica de um arquivo do RN, que utiliza importações, exportações e classes para renderizar os elementos na tela. Quando vencemos essa etapa e entendemos as particularidades da sintaxe, foi mais simples prosseguir com o projeto.
Até o momento, fizemos alguns testes com os componentes do RN, montando algumas telas e testando as possibilidades da ferramenta, sem seguir à risca os mockups da equipe de Design. Próxima semana, teremos a entrega da versão alfa com algumas funcionalidades base.