Android: App Eleições 2012 – A ideia, o desenvolvimento e os números…

Publicado: 15/11/2012 em android, api, aplicativos, mobile, utilidade
Tags:, , , , , , , , , , , , ,

Eleições 2012

Aplicativo Eleições 2012

Resolvi escrever este post para contar um pouco de como surgiu o aplicativo Eleições 2012 para Android. Ele foi desenvolvido para ajudar os eleitores a escolher os candidatos a prefeito e vereador na eleições 2012 e exibir os resultados das eleições.

Vou separar o post nos tópicos:

  • A ideia
  • O desenvolvimento backend
  • O desenvolvindo do App
  • Os Números

Vamos lá então…

A ideia

A ideia surgiu em uma conversa com colegas de trabalho. Nós estávamos conversando sobre o desenvolvimento de aplicativos e quais ideias poderíamos dar a nossos clientes. Em um certo momento eu dei a ideia de um aplicativo para as Eleições. O problema era que nós estávamos a cerca de 18 dias do primeiro turno para conversar com o cliente, fechar a parte burocrática e desenvolver o app. Portanto, o risco seria grande.

Após este papo, fiquei com a ideia na cabeça e resolvi pesquisar se existia algum aplicativo para as Eleições 2012. Achei alguns aplicativos mas que não me agradaram muito. Alguns com a interface muito ruim e outros com poucas funcionalidades. Com isso, vi que poderia ser uma boa desenvolver um app próprio sem a pressão de clientes e sem nenhum compromisso. Mas ainda faltava o mais importante, onde recuperar os dados dos candidatos de todas as cidades brasileiras? Em um primeiro momento, pensei em recuperar estes dados dos sites da globo.com ou terra.com.br. Mas logo vi que os dados estavam disponíveis no site do TSE de uma forma fácil. Eles estavam disponíveis divididos por cidade e em arquivos csv .

A partir daí foi por a mão na massa e começar a desenvolver o app. Inicialmente pensei em lançar a primeira versão com as funcionalidades: Pesquisa de Candidatos, Favoritar Candidatos, Calendário das eleições e Candidatos Bizarros. Mas no decorrer do desenvolvimento vi que com o tempo curto ia demorar muito para lançar o app. E como faltava 15 dias para as eleições, eu teria que lançar o mais rápido possível.

O desenvolvimento backend

A primeira parte que desenvolvi foi o backend. Como eram mais de 400.000 candidatos espalhados por mais de 5.000 cidades era necessário desenvolver uma rotina para ler as informações do TSE para disponibilizar no aplicativo.

Primeiramente pensei em jogar os dados básicos dos candidatos no próprio aplicativo. Mas ficou inviável devido ao tamanho da base. Pensei em deixar os dados em um servidor e quando o usuário seleciona-se uma cidade, todos os dados dos candidatos daquela cidade seriam salvos no aparelho. Creio que seria a melhor opção, mas o tempo foi o empecilio para que fosse implementado desta forma. Então, resolvi capturar os dados do TSE e salvar em uma base própria. Para o aplicativo exibir os dados, seria necessário realizar uma requisição para serviços que iria desenvolver. Foi esta a maneira desenvolvida.

Para o desenvolvimento utilizei Ruby on Rails com a base de dados MongoDB. Como não queria gastos com o app, hospedei a aplicação no Heroku e a base no MongoHQ.

Para este desenvolvimento gastei cerca de 3 dias sem contar com o horário comercial. Após o desenvolvimento e alguns testes, deixei capturando os dados e iniciei o desenvolvimento do aplicativo.

O desenvolvindo do App

Com o serviço de busca de candidatos pronto e com alguns dados, comecei o desenvolvimento do app.

Para facilitar o desenvolvimento, utilizei as apis HoloEverywhere e ActionBarSherlock. Como nunca tinha utilizado as duas apis, tive aquele tempo de aprendizado para que conseguisse progredir no desenvolvimento.

Criei uma base (sqlite) no próprio app com as UFs e Cidades  para o filtro de busca de candidatos e comecei o desenvolvimento da tela de busca e visualização dos dados do candidato.

Após o desenvolvimento da tela de busca e visualização dos candidatos, foi desenvolvida a tela com o calendário das eleições. Os dados exibidos no calendário foram todos gravados no próprio aplicativo.

Com estas duas funcionalidades, disponibilizei a versão 1.0 no dia 20/09/2012. Faltavam 8 dias para o primeiro turno.

A partir daí, comecei o desenvolvimento das funcionalidades: Favoritar candidato, Candidatos Bizarros, Local de Votação e Resultado das eleições.

Como o primeiro turno estava chegando, praticamente a cada dia lançava uma versão com uma funcionalidade nova e/ou correção de bug.

De certa forma isto foi um problema. Muitos usuários que fizeram a instalação da versão 1.0 não realizaram o upgrade para uma nova versão.

No dia das eleições, já estava com uma nova versão desenvolvida para disponibilizar os resultados. Mas faltava a parte backend. Como não tinha acesso e nem tive tempo para pesquisar como seria disponibilizado o resultado pelo TSE, o desenvolvimento do backend foi feito no dia do primeiro turno após às 17h quando os resultados começaram a ser disponibilizados. Por volta de 20h do dia 28/09/2012 foi lançada a versão com os resultados.

Ou seja, em cerca de 8 dias foi lançada a primeira versão e em 17 dias foi desenvolvido todo o backend e o aplicativo em sua versão final. Todo o desenvolvimento foi realizado fora do horário comercial e nos finais de semana.

Para a disponibilização do resultado do segundo turno, foi utilizado a mesma rotina desenvolvida para o primeiro turno com alguns ajustes.

Abaixo alguns prints:

Os Números

Os números deste app me surpreenderam. Em pouco mais de 1 mês, do lançamento (20/09/2012) até o segundo turno (28/10/2012), o app chegou a 17.000 downloads.

Abaixo segue alguns números:

Publicação da versão 1.0: 20/09/2012
Nr. total de downloads
: 17.339
Nr. de avaliações: 55
Média de nota das avaliações: 4.4 (máximo 5)
Dia com mais downloads: 07/10/2012 com 3.967 instalações
Cidade com mais buscas realizadas: São Paulo/SP
Segunda cidade com mais buscas realizadas: Fortaleza/CE
Ganho com publicidade (admob): cerca de $100,00

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s