2 puntos por GN⁺ 2023-11-28 | 1 comentarios | Compartir por WhatsApp

Resumen: desarrollo de una app de radar para una niña

  • El amor de una niña por los aviones: la hija de 2 años del autor quedó fascinada por los aviones y se interesó en el juego de buscar aviones en el cielo.

  • Identificación del problema: la app existente FlightRadar24 tenía una usabilidad deficiente, y con un mapa en 2D era difícil ubicar la posición real de los aviones.

  • Idea de la app: imaginar una app que mostrara los aviones cercanos como un radar. Debía girar según la dirección del usuario, cambiar de tamaño según la altitud del avión y tener un diseño fácil de usar para una niña.

  • Prueba de concepto:

    • Mantener la orientación: uso de la API Core Location de iOS para detectar cambios en la dirección del usuario.
    • API de datos de vuelo: uso de la API REST de OpenSky Network para obtener datos de vuelo en tiempo real.
    • Datos de ubicación: obtención de la ubicación del usuario con Core Location.
    • Triangulación: comparar los datos de posición del avión con la ubicación del usuario para mostrar el avión en la posición correcta en pantalla.
  • Desarrollo del MVP:

    • Nombre del radar: se decidió el nombre de la app, 'Aviator'.
    • Anotaciones en el mapa: en iOS 17, era fácil agregar anotaciones con forma de avión sobre el mapa.
    • Ajuste del tamaño del avión: mostrar los aviones en pantalla ajustando su tamaño según la altitud.
  • Prueba con usuarios: se hicieron pruebas junto con su hija, comparando los aviones reales con los que aparecían en la app.

  • Creación del radar:

    • Estabilidad de la API: considerando la inestabilidad de la API de OpenSky, se implementó lógica de reintento del lado del cliente.
    • Ocultar el mapa: se ocultó el mapa y se mostraron solo las anotaciones de aviones para crear el efecto de radar.
  • Lanzamiento en la App Store: se desarrolló la app y se preparó su lanzamiento en la App Store. La app quedó terminada con una UI de radar que muestra anotaciones con forma de avión y la dirección del usuario.

  • Opinión de GN⁺: lo más importante de este texto es el proceso creativo de desarrollar una app a partir del interés de una niña, y resulta interesante cómo se combinan la diversión del desarrollo de software y el cariño de ser madre o padre.

1 comentarios

 
GN⁺ 2023-11-28
Comentarios de Hacker News
  • Me parece interesante que el diseño del proyecto esté fuertemente influenciado por las pantallas de radar originales. El niño probablemente nunca verá una pantalla CRT real ni una ASR-9 PPI, pero se hizo mucho esfuerzo para simularlo.
  • Como una actividad sana para hacer con la hija, se propone ir al final de la pista de un aeropuerto internacional cercano para observar los aviones aterrizando. El niño puede usar el “radar” para identificar los aviones que vienen, y eso les da mucha alegría a los niños.
  • No estoy de acuerdo con eso de no viajar al extranjero con niños pequeños. Viajé a Brasil con mi hijo e hicimos muchas cosas: taxis, barco pirata, alpine slide, el jardín botánico de Río de Janeiro y más. Aunque quizá no lo recuerde, esas experiencias sí importan.
  • En unos años habrá que explicarle al niño la diferencia entre los datos web basados en ADS-B y la tecnología real de detección por radar. El niño recordará que la app es distinta de la realidad.
  • Si estás con un niño adorable al que le encantan los aviones, puede que la tripulación incluso lo invite a ver la cabina. Un jumpsuit naranja de la NASA es como un “pasaporte” para entrar a la cabina, y la tripulación se emociona más que los propios niños.
  • Que en el lanzamiento inicial fuera indispensable incluir la función para cambiar el color de la pantalla demuestra que entienden muy bien las necesidades del usuario objetivo. A los niños de 3 años les encantan los juguetes con selector de colores.
  • Como piloto, este proyecto me parece asombroso.
  • Hacer un libro de registro de vuelos para el niño está en mi lista de “algún día tengo que hacerlo”. A la tripulación le encanta ese tipo de cosas, y el niño siempre se pone feliz cuando le devuelven el libro.
  • Me gusta el diseño, pero si se quisiera llevar un paso más allá, en vez de usar una API se podría recolectar los datos directamente con un SDR sintonizado en 1090 Mhz a la frecuencia ADB, y entonces sí sería un radar de verdad.
  • Citando un texto relacionado que dice que “una app puede ser una comida casera”, se presenta el caso de alguien que replicó Tapstack, una app de red social ya desaparecida, solo para su familia.