2 puntos por GN⁺ 2025-11-05 | 1 comentarios | Compartir por WhatsApp
  • Cada vez que se busca un vuelo barato, existe un proceso complejo que obliga a revisar al mismo tiempo visa, pasaporte y requisitos de residencia fiscal, entre otras reglas
  • Los sistemas de inmigración e impuestos de cada país calculan los ‘días de estancia’ con criterios distintos, lo que genera confusión
  • Para resolverlo, se desarrolló Residency, una app que valida historiales de viaje y regulaciones como si fuera un compilador
  • La app hace los cálculos localmente y revisa automáticamente vencimiento del pasaporte, visas, IDP y requisitos de residencia fiscal
  • Funciona como una herramienta para detectar riesgos antes de cruzar una frontera, gestionando de forma coherente el historial de movimientos personales y las reglas administrativas

20 minutos antes de comprar un boleto de avión

  • Cuando el autor encontró un boleto ultrabarato a Islandia, tuvo que verificar de inmediato visa, pasaporte, licencia de conducir y requisitos de residencia fiscal
    • Este proceso toma unos 20 minutos y no consiste solo en comparar precios, sino en revisar simultáneamente varias condiciones administrativas
  • Durante los últimos 10 años, había gestionado distintas solicitudes de visa y ciudadanía basándose en una hoja de cálculo con su historial de viajes
  • Pero consideró que ese método era ineficiente y empezó a imaginar un sistema que determinara automáticamente: “¿Este viaje me va a causar un problema?

El ‘estado (State)’ que los sistemas no te muestran

  • Schengen, Reino Unido, residencia fiscal y vigencia del pasaporte evalúan el estado de una persona con criterios distintos
    • Schengen usa la regla 90/180 días; el Reino Unido, la cantidad de medianoches dentro del año fiscal; y el pasaporte, la vigencia y el número de páginas en blanco
  • Esta información no se expone directamente al usuario y solo los agentes migratorios pueden acceder a ella
  • El autor lo define como un “problema de parsear el State”: hay que interpretar al mismo tiempo la perspectiva del gobierno y el estado del sistema

Casos excepcionales de la burocracia

  • Al solicitar la ciudadanía británica, hay que demostrar que uno estuvo en el Reino Unido exactamente el mismo día, cinco años antes de la fecha de solicitud
    • Si se falla aunque sea por un día, tras meses de espera la solicitud puede ser rechazada y hay que volver a pagar para reintentarlo
  • En una escala aeroportuaria en el Reino Unido, solo se considera ‘estancia’ si se realiza una actividad no relacionada con el viaje (por ejemplo, comprar un snack o asistir a un espectáculo)
  • El cambio de huso horario en Marruecos durante Ramadán (UTC↔UTC+1) puede alterar el cálculo de los días de estancia
  • Estas reglas están dispersas entre varios sitios gubernamentales y archivos PDF, así que el usuario tiene que interpretarlas por su cuenta

Simulación de viajes como ‘advertencias del compilador’

  • El autor introduce la idea de un linter que valida los planes de viaje desde la perspectiva de “¿esto compila?
  • Con una ruta de ejemplo (DUB→EWR→MEX→LHR→TFS), compara las diferencias en el cálculo de días de estancia entre países
    • Irlanda: 0 días; Estados Unidos: 0 días; México: 2 días; Reino Unido: 0~1 día; Schengen: 1 día
  • Como cada resultado puede variar según la versión de la base de datos de husos horarios, esa versión se fija y se recalcula cuando cambia
  • El objetivo es construir un sistema de validación automática con el mismo criterio de decisión que un agente migratorio

Estructura y funciones de la app Residency

  • La app simula de varias maneras “qué pasa si realizo esta acción
    • Por ejemplo, al reservar un viaje a los Alpes, puede comprobar si se exceden los días permitidos en Schengen o cómo afecta salir del país antes de que termine el año fiscal
  • Las reglas de cada país se guardan como blobs de interpretación versionados, de modo que cuando cambian las normas se conserva el historial anterior
  • La vigencia de pasaporte, visa e IDP también se maneja como una máquina de estados (state machine)
    • Por ejemplo, si en una conexión por Dubái algo pasa de “válido al llegar” a “inválido al salir”, la app lo detecta automáticamente
  • El usuario puede definir directamente sus objetivos (por ejemplo, límite de días en cierto país) y la app genera advertencias en función de ello

Diseño local-first y privacidad

  • Todos los cálculos se realizan dentro del dispositivo y funcionan incluso sin conexión de red
    • Al eliminar la comunicación con servidores, se evitan problemas de velocidad, privacidad y responsabilidad legal
  • No ofrece sincronización en la nube; en su lugar, permite exportar archivos manualmente
  • Al inicio solo calculaba días Schengen, pero luego se añadieron reglas fiscales del Reino Unido, vencimiento de documentos y funciones de simulación
  • El autor publicó la app porque quería que otras personas también redujeran esos mismos 20 minutos de incertidumbre

Resultados reales de uso y conclusión

  • Antes de comprar el boleto a Islandia, la app calculó correctamente que no se necesitaba IDP, quedaban 34 días disponibles en Schengen y cuándo terminaba la residencia fiscal
  • Al entrar realmente al país, el criterio del agente en el aeropuerto de Keflavík coincidió con el resultado de la app
  • La app se llama Residency, está disponible para iOS y se vende como compra única, sin suscripción
  • La conclusión es que “no puedes invocar una frontera con cURL, pero sí puedes rastrear tu propio estado para obtener la misma respuesta que el gobierno

1 comentarios

 
GN⁺ 2025-11-05
Comentarios en Hacker News
  • No sabía que para las personas que no son ciudadanas de la UE se necesitara un proceso tan complicado para viajar
    Me da risa que, al solicitar la ciudadanía británica, exista una regla que exige demostrar que uno estuvo físicamente en el Reino Unido exactamente el mismo día de hace 5 años contado desde la fecha de la solicitud
    Si te equivocas aunque sea por un día, después de esperar meses te rechazan y tienes que volver a pagar una tarifa cara
    Me pregunto cómo surgió una regla así

    • En realidad, el autor está equivocado. La fecha de referencia no es la fecha de envío de la solicitud, sino el día en que el Home Office recibió los documentos
      Puede haber una diferencia de algunos días según la velocidad de entrega de Royal Mail
      Antes de solicitarla, yo le pedí al Home Office mi historial de entradas y salidas, y casi no tenían idea de dónde estaba yo hace 5 años
      Solo tenían registrada como la mitad de mis viajes y muchas veces aparecía solo un trayecto. La gestión era un desastre
    • Tengo como 50 años, y antes en Europa también era así
      Siento que las generaciones de hoy dan demasiado por sentado los beneficios de la ciudadanía de la UE
    • La mayoría de la gente no tiene cómo quedarse 90 días sin visa o más
      Quienes se quedan más tiempo son “nómadas digitales”, y en su mayoría están trabajando de forma ilegal
    • Este texto parece marketing de contenidos para promocionar una app
      Puede que haya exagerado un poco la incomodidad
    • En realidad tampoco es tan difícil. Yo mismo lo hice el año pasado: pedí una cita en el ayuntamiento, verificaron la base de datos de direcciones, firmé una hoja y pagué la tarifa
      Fue algo de 15 minutos. Claro, esto no fue en el Reino Unido sino en Europa continental
  • Si lo primero que se te ocurre durante una escala en el aeropuerto es “comprar un sausage roll en Greggs”, esa persona ya tiene méritos suficientes para recibir la ciudadanía

    • El test Life in the UK necesita una actualización
    • Claude es una IA bastante sensible a las diferencias culturales
  • El texto estuvo muy bien, pero el título es raro
    Habla de requisitos por país sobre residencia fiscal, visas, ciudadanía y cosas así, pero la expresión “Downloading a border” es ambigua
    Supongo que es una metáfora de “la información oficial está dispersa entre varios PDF y sitios web, y tienes que recopilarla tú mismo”

    • Probablemente sea una parodia del meme de la campaña antipiratería de “You wouldn’t download a car”
    • Si se entiende como “no puedes llamar a una frontera por API, pero sí puedes rastrear tu propio estado”, entonces es un título bastante bueno
  • Algunos de mis familiares entraron a Europa con visa de turista y tiraron su boleto de regreso para quedarse ilegalmente
    Años después los regularizaron y hasta consiguieron la ciudadanía, mientras que yo, por cumplir la ley, sigo estancado
    Es frustrante no cumplir con los requisitos para una visa que permita trabajar legalmente

    • Esto pasa tan seguido que hasta confunde si realmente es algo moralmente incorrecto
      He visto a mucha gente entrar con visa de turista, ponerse a trabajar y después regularizarse
      En cambio, personas altamente calificadas que entraron con visas de trabajo formales perdieron el patrocinio cuando sus empresas hicieron recortes y tuvieron que encontrar otro empleo en 30 días
      Este tipo de política se siente como un desequilibrio intencional
    • Me pregunto qué significa exactamente “no tener una base legal válida”. En la mayoría de los países, si tienes un empleo local por encima de cierto salario normalmente puedes obtener una visa de trabajo
    • Me pregunto si existe alguna ley que otorgue la ciudadanía automáticamente después de haber vivido ciertos años
    • Me gustaría saber en qué país y mediante qué procedimiento ocurre la regularización (legalisation)
  • Me impresionó el nivel de detalle del autor
    Yo también intenté hacer una calculadora Schengen 90/180 y un rastreador de residencia fiscal usando Claude, pero la parte matemática fue demasiado difícil
    Al final tuve que crear un proyecto nuevo por mi cuenta
    Me pregunto si validó manualmente que los resultados de la app fueran correctos. En este tipo de apps la verificación con pruebas es clave

    • Creo que para una lógica tan centrada en matemáticas es mejor escribirla directamente con un DSL o con funciones legibles por humanos, en lugar de depender de IA
      Así se pueden modificar las reglas con facilidad y las pruebas unitarias son especialmente útiles
    • En problemas complejos de programación de horarios hay que usar muchas pruebas unitarias
      Porque en la estructura entrada→algoritmo→salida hay muchísimos casos límite
    • “La IA te vuelve tonto y tú te quejas de que la IA es tonta” suena como una situación lose-lose
    • Si soy sincero, dejarle a la IA la mayor parte del trabajo y luego hablar como si hubieras hecho una gran investigación por tu cuenta suena un poco arrogante
  • No se menciona claramente en el texto, pero la app que hizo el autor la puede descargar cualquiera
    https://drobinin.com/apps/residency/
    Si no fuera para Android, me gustaría probarla yo mismo

  • Me di cuenta de que este autor es el mismo que antes hizo un sistema de acceso al gimnasio con Apple Watch
    Aquel texto también me gustó y este también
    Enlace al texto anterior

    • A mí me pasó al revés: el estilo de ese autor no me gustó mucho
      Me molestó esa prosa medio presumida de querer proyectar una imagen de “mírenme, qué internacional y sofisticado soy”
    • Yo soy miembro de PureGym y me aprendo el número de 8 dígitos para ingresarlo manualmente
      La app oficial no me gusta, así que no hace falta sacar el teléfono
  • Este texto me hizo apreciar de nuevo el valor de los viajes sin visa que permite mi pasaporte
    Sí se puede, pero es un proceso demasiado ineficiente y que consume mucho tiempo

  • Me pregunto por qué algunos países exigen que al entrar al país queden n meses o más de vigencia en el pasaporte
    No entiendo qué problema hay si al pasaporte le queda menos tiempo que la duración de la estancia
    Dudo que una regla así realmente prevenga alguna actividad ilegal o problema económico

    • Supongo que debe ser por situaciones de emergencia
      Si por una lesión u otra razón se retrasa tu regreso, el pasaporte tiene que seguir siendo válido, y además los periodos de visa a veces solo se emiten en ciertos bloques dentro del sistema
      Como la fecha de vencimiento del pasaporte se conoce de antemano, quizá solo significa que esperan que lo administres con responsabilidad
  • Este texto fue impactante
    Muestra muy bien por qué la mayoría de las reglas razonables incluyen discrecionalidad administrativa (administrative discretion)