2 pontos por GN⁺ 2023-11-28 | 1 comentários | Compartilhar no WhatsApp

Resumo: como foi desenvolvido um app de radar para uma criança

  • O amor da criança por aviões: a filha de 2 anos do autor ficou fascinada por aviões e passou a se interessar pela brincadeira de procurar aviões no céu.

  • Percepção do problema: o app FlightRadar24 tinha usabilidade ruim e, com um mapa em 2D, era difícil entender a posição real do avião.

  • Ideia do app: conceber um app que mostrasse os aviões próximos como um radar. Ele deveria girar de acordo com a direção do usuário, mudar de tamanho conforme a altitude do avião e ter um design fácil para uma criança usar.

  • Prova de conceito:

    • Manter a direção: uso da API iOS Core Location para detectar mudanças na direção do usuário.
    • API de dados de voo: uso da REST API da OpenSky Network para obter dados de voo em tempo real.
    • Dados de localização: obtenção dos dados de localização do usuário com Core Location.
    • Triangulação: comparação entre os dados de posição do avião e a localização do usuário para exibir o avião no ponto correto da tela.
  • Desenvolvimento do MVP:

    • Nome do radar: o nome do app foi definido como 'Aviator'.
    • Anotações no mapa: no iOS 17, ficou fácil adicionar anotações em forma de avião sobre o mapa.
    • Ajuste do tamanho do avião: o tamanho do avião na tela foi ajustado de acordo com sua altitude.
  • Teste com usuários: os testes foram feitos comparando, junto com a filha, os aviões reais com os aviões encontrados no app.

  • Criação do radar:

    • Estabilidade da API: considerando a instabilidade da API da OpenSky, foi implementada no cliente uma lógica de retry.
    • Ocultar o mapa: o mapa foi escondido e apenas as anotações dos aviões foram exibidas para criar o efeito de radar.
  • Lançamento na App Store: o app foi desenvolvido e preparado para lançamento na App Store. O produto foi finalizado com uma UI de radar que mostra anotações em forma de avião e a direção do usuário.

  • Opinião do GN⁺: o ponto mais importante deste texto é o processo criativo de desenvolvimento de um app baseado no interesse da criança, e é interessante como a diversão do desenvolvimento de software se combina com o carinho de ser pai ou mãe.

1 comentários

 
GN⁺ 2023-11-28
Comentários do Hacker News
  • Acho interessante que o design do projeto tenha sido fortemente influenciado pelos displays de radar originais. A criança provavelmente nunca verá um CRT real ou um display PPI ASR-9, mas ainda assim foi investido muito esforço para simular isso.
  • Como uma atividade saudável para fazer com a filha, sugiro ir até a cabeceira da pista de um aeroporto internacional próximo para observar os aviões pousando. A criança pode usar o "radar" para identificar as aeronaves que estão chegando, e isso diverte muito as crianças.
  • Não concordo com a ideia de não viajar para o exterior com crianças pequenas. Viajei para o Brasil com meu filho e tivemos várias experiências diferentes, como táxis, navio pirata, alpine slide e o Jardim Botânico do Rio de Janeiro. Mesmo que a criança não se lembre, essas experiências são importantes.
  • Em alguns anos, será preciso explicar à criança a diferença entre dados da web baseados em ADS-B e tecnologia real de detecção por radar. Ela vai se lembrar de que o app é diferente da realidade.
  • Quando você está com uma criança fofa que adora aviões, a tripulação pode até convidá-la para conhecer a cabine. Um macacão laranja da NASA é como um "passaporte" para entrar na cabine, e os tripulantes ficam mais animados do que as próprias crianças.
  • O fato de a função de mudar a cor da tela ter sido essencial na versão inicial mostra que houve um bom entendimento das necessidades do usuário-alvo. Crianças de 3 anos adoram brinquedos com seletor de cores.
  • Como piloto, acho este projeto incrível.
  • Fazer um logbook de voos para a criança está na minha lista de "coisas para fazer algum dia". As tripulações adoram isso, e a criança sempre fica feliz quando recebe o logbook de volta.
  • Gosto do design, mas, indo um passo além, ele se tornaria um radar de verdade se coletasse os dados diretamente, sem usar API, com um SDR sintonizado em 1090 MHz na frequência ADS-B.
  • Cita um texto relacionado, "apps podem ser como comida feita em casa", e apresenta o caso de alguém que recriou o aplicativo de rede social extinto Tapstack apenas para a própria família.