En defensa de SQLite

Minientrada

Recientemente en Ruby on Rails incorporaron un cambio que genera un aviso al arrancar la aplicación en modo producción si el driver de base de datos que está configurado es el de SQLite. El aviso se puede desactivar cambiando un flag de configuración en el production.rb para confirmar que no es un accidente, sino una decisión.

You are running SQLite in production, this is generally not recommended.

Debo romper una lanza a favor de SQLite. Tiene sus issues, claro está, pero muchos de ellos pueden entenderse si se lee la documentación técnica.

Por ejemplo, si nunca te has leído su guía sobre tipos de datos y afinidad de columnas probablemente te sorprenda lo blando que es para validar los tipos de datos durante el INSERT (puedes guardar enteros en columnas creadas como VARCHAR, y viceversa).

No vale para todo, pero lo he visto muchas veces en producción en circunstancias en las que tiene sentido que esté en producción, y si está justificado, seguiré defendiéndolo con fuerza como alternativa ligera.

Probando a publicar desde la app de WordPress

Estado

Probando a publicar desde la app de WordPress. Yo es que tampoco pido tanto ya. Algo que me deje publicar sobre la marcha sin fricción. No quiero commits de Git, no quiero contraseñas en un navegador ni tokens 2FA a cada vez que abra el panel. Quiero un botón en la hoja para compartir y con suerte integración con atajos de iOS. 😫

Mis recuerdos de Endomondo

Minientrada

Vengo de solicitar en la web de Endomondo un ZIP con todos mis entrenamientos cargados en la plataforma.

Endomondo dejó de estar disponible el 31 de diciembre de 2020 y los usuarios que tuviesen entrenamientos cargados tienen 3 meses para solicitar un ZIP con sus datos antes de que se eliminen permantentemente el 31 de marzo de 2021.

En la época de las aplicaciones de seguimiento de carrera por el GPS del móvil, Endomondo fue la primera satisfactoria que probé y con la que empecé a despegar. La empecé a usar cuando le pillé los ritmos a correr después de estar usando un par de semanas Adidas MiCoach, cuando más que centrarme en distancias y tiempos me centraba en entender ritmos (más deprisa, más despacio…)

Eventualmente, Endomondo empezó a funcionar mal, a la vez que Runtastic se empezó a poner de moda debido a la integración con Facebook y el poder mostrar mapas, y poco más se pudo hacer. El cambio fue inevitable. Que UnderArmour comprase Endomondo para integrarla en su portafolio de apps y luego empezar a hacer experimentos raros no ayudó a mejorarla.

Pantallazo de Endomondo
Pantallazo de Endomondo en Google Play. Probablemente en algún backup tenga mis propias capturas de pantalla de Endomondo, pero tendría que buscarlo.

iOS 14 y el descubrimiento de widgets

Los widgets son una de las novedades de iOs 14 y iPadOS 14. Son como los widgets que Android lleva teniendo desde el principio de los tiempos, porque muestran cosas y permiten interactuar con el contenido de una app desde la pantalla de inicio sin llegar a abrir la app.

A diferencia de los widgets de Android, no son todo lo interactivos que podrían ser, y aparentemente es una decisión intencional por parte de Apple que no puedan tener botones concretos dentro del widget, sino que pulsar el widget debe limitarse a abrir la app. (Qué conveniente eran los widgets de Android para controlar el estado del wifi, GPS y silencio antes de que existiese el centro de control en la bandeja de notificaciones…)

Una de las cosas buenas que tienen los widgets de iOS es la uniformidad en su aspecto. Incluso a pesar de que en iOS 14 ahora los usuarios tienen vía libre para personalizar la posición y los iconos de su pantalla de inicio, el aspecto de los widgets no puede ser cualquiera, sino que un widget puede elegir entre tres tamaños fijos: 2×2, 4×2 y 4×4. Además, todos los widgets tienen la misma forma de rectángulo con las esquinas redondeadas, y no son forma libre como podrían haberlo sido en Android.

Una lista de widgets
Widgets disponibles en mi iPad ahora mismo.

Sin embargo, una de las cosas malas es el descubrimiento. Uno puede pensar que cuando se instala una aplicación que trae widgets, cómo pasaba en Android, esos widgets están automáticamente disponibles desde la lista de widgets que sale al personalizar la pantalla de inicio.

Pero es que esto no es así. Para que una aplicación pueda exponer sus widgets, debe ser abierta antes. Esto va en la misma línea de normas como que una aplicación no puede generar notificaciones (ni pedir permiso para generarlas) si nunca ha sido abierta.

El problema es que iOS 14 es relativamente reciente y todavía hay aplicaciones sacando actualizaciones para meter widgets. Cada semana hay una aplicación nueva, y a falta de un sistema fiable en iOS que te anuncie qué aplicaciones han sido recientemente actualizadas, la única forma conveniente es abrir la AppStore y ver la lista de aplicaciones instaladas, donde se ordenan por fecha de ultima actualización. A partir de ahí, puede que algunas aplicaciones anuncien en sus notas de versión que ahora tienen widgets (no todas lo harán), y para las que no lo hagan, abrir una a una cada app y luego ver si han volcado widgets nuevos en el sistema de personalización. ¡Claramente no es conveniente!