📒 El registro de la finca — farmOS y la libreta¶
Un dictado de voz hecho de pie, con una mano, delante de una colmena, acaba siendo un dato con fecha que se puede consultar dentro de dos años. Esto es cómo funciona por dentro.
Es el sistema que sostiene todo lo que se apunta en El Salto: las colmenas, las gallinas, los árboles y las faenas. Las faenas tienen su propia página —Las faenas del Salto— porque son un flujo completo encima de este registro; aquí está lo de debajo, que es lo que hace que ese flujo se pueda creer.
La idea, en tres frases¶
- El registro es la verdad. Lo que ocurrió se escribe una vez, con su fecha, y no se reescribe.
- La ficha es una proyección. «Cómo está hoy» no se guarda: se deduce de los registros. Si la proyección se rompe, se rehace.
- El historial es el producto. «Cómo está hoy» es una vista; «cómo estaba el 12 de marzo» es la misma consulta con otra fecha. Sin historial solo hay fotos sueltas.
Tres piezas, un solo dato¶
| pieza | dónde | para qué |
|---|---|---|
| farmOS | servidor propio (PostgreSQL + PostGIS) | el registro: activos y visitas, con fecha, tipo y autor |
| el cuaderno | navegador, /cuaderno/ |
leer el estado y corregir, con el historial a la vista |
| la libreta | móvil | dictar en el campo, con lo justo para no estorbar |
Nada de esto es una app de terceros: los datos viven en la máquina de casa, y las dos caras leen la misma fuente. Lo que se dicta en el monte se ve en el navegador sin pasar por ninguna nube.
No hay dashboards sueltos. Hubo páginas que se sacaban su propio datos.json y pintaban sus
gráficos; se retiraron porque cada una era una segunda verdad, capaz de dar un número distinto del
mismo dato. Hoy el estado se lee en el cuaderno o en la libreta, y las rutas viejas responden 404 —
que es la única forma de que «retirado» signifique retirado.
Un dictado, paso a paso¶
1 · AUDIO «colmena 96, cuadro uno, miel al cincuenta por ciento…»
2 · TRANSCRIPCIÓN un motor de voz local, con tope de tiempo según la duración del audio
tres fallos → el audio va a «dudosas» y avisa. Nunca gira para siempre
3 · EXTRACCIÓN primero reglas y diccionario; el modelo solo donde las reglas no llegan
4 · EL APUNTE queda escrito qué se dijo, cuándo y quién lo dijo
5 · EL REGISTRO se convierte en el registro del día en farmOS, TAL COMO se dictó
6 · LA FICHA se proyecta al estado del activo, traduciendo al vocabulario del sistema
7 · LAS DOS CARAS cuaderno y libreta enseñan lo mismo porque leen lo mismo
Dos decisiones que parecen detalles y no lo son:
- Se guarda lo dictado, no lo traducido. Si alguien dice «azul clarito», eso es lo que queda escrito; la traducción al vocabulario ocurre al proyectar la ficha. Al revés se pierde la prueba de qué se dijo exactamente.
- Un dato sin fecha no es un dato. Cada valor lleva la suya, y eso se usa (siguiente apartado).
Los cuadros: cuántos hay y cuántos se miraron¶
En una inspección cuadro por cuadro no basta con describir diez: hay que saber si eran diez de diez o diez de doce. Por eso el sistema guarda tres números y los compara:
hive.frames cuántos cuadros HAY
hive.frames_measured cuántos se describieron uno a uno
hive.frames_sin_describir los que se quedaron sin mirar (la resta)
Con eso, «10» deja de ser un número suelto: pasa a ser «10 de 12» o «10 de 10». Y donde nadie midió no se escribe un cero —se escribe «sin descripción de cuadros»—, porque un 0 se lee «no falta ninguno», que es exactamente lo contrario.
Un dato no caduca: se queda desactualizado¶
Los cuadros de hace dos meses no son los de hoy. Cada campo tiene una vigencia, por familia:
| familia | vigencia | por qué |
|---|---|---|
| cuadros, cría | 45 días | una colmena se reordena en semanas |
| alzas, miel, polen | 60 días | entran, salen, se cosechan |
| varroa, enfermedades | 90 días | se miden y se vuelven a medir |
| reina (raza, marca, año) | 1 año | es su escala |
| alimentador, tratamiento | 30 días | es un episodio |
| tipo de caja, situación del colmenar | años | es la identidad de la colmena |
Y con la edad salen tres estados:
Lo importante: un dato desactualizado no se borra. Sigue siendo cierto del día en que se tomó; lo que no puede es presentarse como si fuera de hoy.
Las gallinas van por raza, no por color¶
Los huevos entran por raza (castellana, leghorn, flor de almendro, sedosa japonesa, mixto El Salto…) y no por el color de la cáscara: el color es un accidente, la raza es el dato. Y cada ave va a su gallinero: las estructuras son gallineros y jaulas, no un «aviario» genérico donde todo cabe.
Por qué esto se puede creer¶
Un sistema así se rompe por los lados aburridos: un audio que se queda en la cola, una ficha que dice una cosa y el informe otra, un dato de hace dos meses presentado como de hoy. Por eso hay 374 comprobaciones que se ejecutan de una pasada y se ponen rojas si algo se deshace. Algunas:
- lo dictado y lo guardado en el registro valen lo mismo;
- ningún audio lleva más de una hora parado sin que nadie lo sepa;
- un audio que falla tres veces deja de reintentarse y avisa;
- cada dato de estado declara cuántos días sigue al día;
- las rutas del sistema viejo responden 404 (no vuelven por la puerta de atrás);
- todo lo que está en git está también en el servidor de repositorios.
Y los vigilantes que avisan callan cuando todo va bien: un aviso que se repite cada día deja de leerse, y entonces el día que importa tampoco se lee.
Las faenas, encima de lo mismo¶
Lo que se apunta en el grupo de Telegram —por hacer, hecho, plan de acción— se escribe en farmOS como actividad con su dueño y su fecha, y el móvil lee esa lista, no una copia. Tocar el ✓ en el móvil marca la faena en farmOS y devuelve el mensaje al hilo de hechas: un solo sitio manda, y los otros dos lo reflejan. El detalle está en Las faenas del Salto.
Es el mismo principio que con los dictados: una cosa se escribe una vez y todo lo demás la lee.
Estado hoy¶
colmenas registradas 146
aves 60
árboles y plantas 48
gallineros y jaulas 36
registros de campo 4.305
campos en el diccionario 356 (con 1.222 formas de decirlos)
Nada de esto es un prototipo: lleva meses en uso diario, con dictados reales en el monte y las dos caras en producción.