Sospechosos habituales

Sospechosos habituales

By Sospechosos HabitualesTechnology
Download on the App Store

Sospechosos habituales episodes

  • ATA 840 sqlite-utils, tu navaja suiza para SQLite

    Llevo varias semanas construyendo un grafo de conocimiento con GraphRAG sobre SQLite, y en ese día a día me he topado con sqlite-utils, una herramienta que se ha convertido en mi navaja suiza para trabajar con bases de datos SQLite sin complicarme la vida. Es de esas utilidades que no sabías que necesitabas hasta que la pruebas.

    Te preguntarás por qué SQLite y no PostgreSQL o cualquier solución más seria. La respuesta es sencilla, porque necesito algo que quepa en mi equipo, que sea portátil y que pueda llevarme en un USB sin montar un servidor. Todo tu conocimiento, en un solo archivo que abres donde quieras.

    El problema de siempre ha sido inspeccionar esas bases. Abrir DBeaver o tirar de Python solo para mirar qué hay dentro da una pereza enorme, y al final acabas dejándolo. sqlite-utils, creada por Simon Willison, resuelve justo eso, y te permite consultar, filtrar, transformar y exportar sin escribir una línea de SQL ni de Python.

    Para que te hagas una idea, aquí hay dos cosas en una sola herramienta, una utilidad de línea de comandos y una librería de Python que no pretende ser un ORM. Nació dentro del ecosistema de Datasette, y busca que crear una base desde cero y poblarla con datos sea rápido y sin fricción. En mi caso ha acabado sustituyendo a los comandos sueltos de sqlite3 que tenía repartidos por las notas.

    Otro terreno donde se nota la mano es la ingesta. Con insert metes un JSON que llega por la tubería, un CSV de los que exportas de cualquier sitio, o la respuesta de una API con un curl delante. Con upsert y bulk actualizas registros que ya existían o metes miles de filas de golpe, y todo eso se encadena con jq en una sola tubería.

    Luego está la parte de cambiar las cosas sin dolor, renombrar una columna, borrar la que sobra o cambiar un tipo de dato. En SQL puro eso es un baile de create table, copiar los datos y borrar la tabla vieja, con el riesgo de liarla a mitad de camino. Aquí es un transform, se ejecuta dentro de una transacción y el esquema queda reescrito como si lo hubieras diseñado así desde el principio.

    En este episodio te cuento cómo instalarla con uv, cómo explorar tablas y esquemas, cómo navegar los datos con rows, cómo filtrar de forma segura con parámetros con nombre y cómo montar consultas complejas con joins. Además verás el combo que más me ha enganchado, sqlite-utils encadenado con jq y con llm para pasar el contexto de tu base directamente a un modelo de lenguaje. Y de propina, los detalles de mantenimiento que marcan la diferencia, como WAL, Vacuum, Optimize y la búsqueda full-text.

    Si tienes una base SQLite por ahí y nunca te has atrevido a mirar dentro, este es tu episodio 👍

    Capítulos
    0:00 - Presentación: sqlite-utils, la navaja suiza de SQLite
    2:20 - Por qué SQLite: GraphRAG, portabilidad y contexto de la serie
    4:20 - El problema de DBeaver y qué resuelve sqlite-utils
    6:00 - Instalación con UV y primeros pasos
    8:30 - Explorar tablas, columnas y esquemas
    11:30 - Navegar los datos con rows
    14:00 - Filtrar con where, ordenar y evitar inyección SQL
    16:30 - Consultas complejas, joins y selects a medida
    18:30 - El combo killer: sqlite-utils + jq + LLM
    20:30 - Escribir y transformar: insertar, crear, exportar y renombrar
    23:00 - El módulo Python y los consejos: WAL, Vacuum, Optimize y FTS
    25:20 - Conclusiones y lo que viene en el 841

    Más información y enlaces en las notas del episodio: https://atareao.es/podcast/840

    🌐 Todo en https://atareao.es · ✈️ Telegram https://t.me/atareao_con_linux · 🦣 Mastodon https://mastodon.social/@atareao · 🐦 Twitter https://twitter.com/atareao · 🐙 GitHub https://github.com/atareao

    28 min
  • Un gran tenedor

    Lucas 6:41 "¿Por qué miras la paja que está en el ojo de tu hermano, y no echas de ver la viga que está en tu propio ojo?"

    Este podcast está asociado a la red de Sospechosos Habituales donde podréis encontrar otros muchos podcast de diferentes temáticas.

    12 min
  • 3009 - Microsoft te da 2 TB y otras zarandajas
    # Resumen de conversación técnica y personal
    **Palabras clave:** tecnología, traducción, Mac, Apple, nubes

    ## Temas tratados
    - Uso de múltiples cuentas y servicios para almacenamiento en la nube.
    - Experiencias con distintos modelos de inteligencia artificial.
    - Problemas habituales en el sistema operativo macOS.
    - Posibilidades de revertir versiones mediante herramientas técnicas.
    - Pensamiento libre y crítico respecto a Apple y la tecnología.
    17 min
  • La Hispanidad

    Ayer fue el Día de la Hispanidad y la Fiesta Nacional de España. La izquierda de ambos lados del Atlántico dicen "nada que celebrar". ¿Seguro? Os cuento que hay que celebrar.

    Este podcast está asociado a la red de Sospechosos Habituales donde podréis encontrar otros muchos podcast de diferentes temáticas.

    22 min
  • YV - YoVirtualizador 92 - Hardware de mayores 3 - RISC-V, el heredero solitario.
    Hoy traigo otro hardware de mayores, pero que no sera tan de mayores como los anteriores. RISC-V. Tocaremos algo de sus orígenes. De sus instrucciones. De sus registros. Y de cómo encaja todo eso en un servidor completo.
    Vamos a hacerlo contra una referencia conocida. AMD64, la arquitectura de instrucciones de 64 bits que encontramos en buena parte de nuestros equipos y servidores. Pero sin convertir el capítulo en una competición. Aquí interesa entender qué define cada arquitectura y qué decisiones quedan en manos del fabricante.
    La primera distinción es fundamental. RISC-V no es un procesador concreto. Tampoco una placa base ni un diseño único de ordenador. Es una arquitectura de conjunto de instrucciones. Una ISA.
    Podemos imaginarla como un contrato entre el software y el hardware. El software entrega instrucciones con un significado definido. El procesador debe ejecutarlas respetando ese significado. Cómo se organiza internamente para conseguirlo es otra cuestión.
    Ese contrato es lo que permite que distintos fabricantes construyan procesadores capaces de ejecutar un mismo repertorio de instrucciones. No necesitan fabricar la misma máquina por dentro. Necesitan respetar las mismas reglas visibles para el programa.
    Eso significa que no hay un único fabricante. Eso ya tocará. Lo que hay, igual que en ARM, una oferta extensa de fabricantes cada cual adaptado a su mercado, incluso sin existir aún el mercado.
    -----------------------------
    Nuevo podcast. RSS de Recursos y Humanos: https://anchor.fm/s/10a2c7a80/podcast/rss
    YoVirtualizador en formato podcast. Ahora también en Sospechosos Habituales: https://wt.territoriolinux.es/rss/short.xml
    Y sin más, os dejo los enlaces:
    Web: https://www.yovirtualizador.com
    Grupo de telegram: https://t.me/grupovirtualizador
    Podcast: https://www.ivoox.com/podcast-yovirtualizador_fg_f1563806_filtro_1.xml y YouTube https://www.youtube.com/playlist?list=PLrnymu_aoVL6nk1-FcZ220P65tyHV6djV
    Canal de YouTube: https://www.youtube.com/channel/UC0R70cABSsmC6TFyXth0qPg
    Enlaces afiliados:
    Amazon: https://amzn.to/3gX3HmK
    Asociación Podcast: https://www.asociacionpodcast.es/registrarse/socio/?coupon=SB6A70
    iVoox Plus: https://www.ivoox.com/plus?affiliate-code=323d07d8569f044513746a1be4724b40
    iVoox Premium: https://www.ivoox.com/premium?affiliate-code=03d0efe2be3b55e4cd6df6dc3f6a6dbc
    iVoox Premium anual: https://www.ivoox.com/premium?affiliate-code=9feb8e44ecb4c97148e227100af9223b
    49 min
  • RyH - ¿Es posible un salario mínimo de 1800 y 30h?

    Otra vez el salario mínimo.


    Otra vez una cifra redonda circulando por titulares, tertulias y redes sociales. Mil ochocientos euros.


    Así. Limpios. Sonoros. Fáciles de recordar.


    Y claro, a cualquiera que curre le dices mil ochocientos euros y piensa una cosa muy sencilla. Cojonudo. Mil ochocientos euros en el bolsillo todos los meses.


    Pues no.


    Porque una cosa es el bruto. Otra el neto. Otra el coste para la empresa. Y otra muy distinta es lanzar una cifra al aire como quien pide otra ronda y dejar que el resto haga las cuentas.


    Así que vamos a hacerlas.

    16 min
  • 3008 - Experiencias con Linux, Windows y tecnología

    # Resumen de audio técnico sobre hardware y software

    **Palabras clave:** Minis Forum, RAM, traducción, resúmenes, Windows

    ## Temas tratados
    - Rendimiento del hardware en entornos de trabajo remoto.
    - Uso de modelos de IA para resúmenes y traducciones.
    - Experiencias nostálgicas con sistemas operativos antiguos.
    - Automatización de tareas mediante interfaces web.
    - Interacción entre dispositivos móviles y ordenadores.

    18 min
  • Conceptos de las izquierdas

    Os explico unos conceptos para que entendaís a la izquierda, que el propio Karl Marx (primo de Groucho) desarrolló en su obra cumbre "El Capital".

    Este podcast está asociado a la red de Sospechosos Habituales donde podréis encontrar otros muchos podcast de diferentes temáticas.

    10 min
  • ATA839 Convierte 6000 notas en un cerebro conectado

    Llevo más de 6.000 notas en Markdown acumuladas desde 2008, y siempre he estado convencido de que ahí estaba todo lo que he aprendido. Hasta que busco y no encuentro. Busco particiones y no aparece nada sobre redimensionar un volumen. Busco monitorización de red y mis notas hablan de ntopng e iftop sin usar esas palabras. El conocimiento estaba ahí, pero yo no sabía que estaba.

    En el episodio 837 te conté la teoría del GraphRAG. En este 839 vamos a lo práctico, a convertir esas 6.000 notas en un grafo de conocimiento con IA 100 % local, sin nube, sin claves API y sin que ninguna nota salga de tu equipo.

    Lo primero es el chunking, trocear cada nota en ideas autónomas. Y no se trocea por número de caracteres, sino por estructura. Cada sección o subcapítulo es un fragmento, el frontmatter se separa como metadatos, los bloques de código viajan enteros y lo que baja de 50 caracteres se descarta. Trocear por caracteres solo rompe un bloque de código o una lista justo por la mitad.

    Después viene el NER (Named Entity Recognition), que convierte texto libre en entidades con etiqueta, tipo y confianza. Uso llama3.2:3b con Ollama y solo conservo lo que supera 0,5 de confianza. Prefiero perder una entidad dudosa antes que llenar el grafo de ruido, porque un grafo con ruido no te sirve.

    Con eso se construyen nodos y aristas. La nota es el documento entero, la entidad puede ser Nginx, Certbot o SSL, y las etiquetas salen de las carpetas y del frontmatter. Hay cuatro tipos de arista y cada una lleva su peso. La co-ocurrencia usa el mínimo de las dos confianzas, no la media.

    Para construir todo esto ejecutas graphrag build. No empieza de cero, cada nota guarda un hash SHA256 y solo reprocesa lo que ha cambiado. En mi caso encontró 6.333 archivos y le faltaban 81, unos seis minutos, con cuatro hilos y un único escritor sobre SQLite. Y luego están las comunidades, la visión global. El algoritmo Leiden agrupa los conceptos muy conectados entre sí, porque los amigos de mis amigos tienden a formar un grupo.

    Todo esto es graphrag-search, un único binario en Rust que instalas con cargo install graphrag-search. Ni Python, ni NPM, ni servidores. Con dos modelos pequeños de Ollama, bge-m3 para embeddings y llama3.2:3b para el NER, tienes tu propio cerebro conectado para encontrar episodios y conceptos relacionados.

    Capítulos del episodio:
    0:00 - Introducción: convertir 6.000 notas en un cerebro conectado
    2:45 - Qué veremos hoy y la trilogía GraphRAG
    4:20 - Chunking: trocear las notas en ideas autónomas
    7:50 - NER: extraer entidades con un modelo local
    7:50 - NER: extraer entidades con un modelo local
    11:20 - Etiqueta, tipo y confianza: qué guardamos de cada entidad
    13:50 - Nodos y aristas: conectar tus notas con semántica
    17:10 - Construir el grafo con graphrag build
    20:20 - SQLite e incrementalidad: el grafo que se actualiza solo
    24:10 - Comunidades con el algoritmo Leiden
    27:00 - Cierre y avance del siguiente episodio


    Más información y enlaces en las notas del episodio

    • 🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es
    • ✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux
    • ✈️ Telegram (el canal) 👉 https://t.me/canal_atareao
    • 🦣 Mastodon 👉 https://mastodon.social/@atareao
    • 🐦 Twitter 👉 https://twitter.com/atareao
    • 🐙 GitHub 👉 https://github.com/atareao

    29 min

About Sospechosos habituales

From the publisher's feed

Sospechosos Habituales

More shows like Sospechosos habituales

Emilcar Daily by Emilcar

Emilcar Daily

24 Listeners

Applelianos by Applelianos

Applelianos

56 Listeners

Radio Fitness Revolucionario by Marcos Vázquez

Radio Fitness Revolucionario

138 Listeners

iSenaCode Live by Sergio Navas

iSenaCode Live

85 Listeners

Podcast WINTABLET.INFO by Javier Fernandez

Podcast WINTABLET.INFO

0 Listeners

mixx.io by Álex Barredo

mixx.io

40 Listeners

LO QUE TÚ DIGAS con Alex Fidalgo by Alex Fidalgo

LO QUE TÚ DIGAS con Alex Fidalgo

63 Listeners

Las Charlas de Applesfera by Webedia

Las Charlas de Applesfera

36 Listeners

(Antiguo) Leña al mono que es de goma by rfog

(Antiguo) Leña al mono que es de goma

0 Listeners

Cupertino, podcast sobre Apple by Álex Barredo, Ángel Jiménez, Matías Zavia

Cupertino, podcast sobre Apple

15 Listeners

Loop Infinito (by Xataka) by Webedia

Loop Infinito (by Xataka)

57 Listeners

Cacharreogeek by Cacharreogeek

Cacharreogeek

0 Listeners

monos estocásticos by Antonio Ortiz, Matías S. Zavia

monos estocásticos

3 Listeners

El Podcast de Marc Vidal by Marc Vidal

El Podcast de Marc Vidal

8 Listeners

El Mancuentro by Mancuentro Patal

El Mancuentro

0 Listeners