Categoría: Programacion
MiniAI - Cliente para correr una AI en una computadora vieja
El otro día reviví mi vieja Asus EEE PC 701 como hago una vez al año, esta vez le saqué Haiku y quise instalarle un Linux que pudiera conectarse al mundo actual, luego de varios intentos con Void y AntiX decidí por un clásico Debian que hasta la versión 12 soportaba procesadores viejos de 32 bits.
Si, así de vieja es, y así de limitada, con un Celeron a 600Mhz, 1GB de RAM y 4GB de "disco" en una NAND lentísima ¿Cómo cuernos la iba a usar para algo moderno? Pues bien, me puse manos a la obra y le creé un cliente para poder preguntarle cosas a un LLM desde esta mismísima máquina
Fingerprinting para detectar bots en el blog
A mediados de la semana pasada el tráfico del blog, de pronto, subió varios órdenes de magnitud. No era tráfico legítimo, eran puros bots, pero estaban sorteando todos mis bloqueos previos.
Como siempre, no es que me moleste que un spider de un buscador capture mis páginas, está todo bien, pero el consumo excesivo de recursos de los spiders de distintas empresas que coleccionan data para entrenar modelos de AI me tiene podrido.
¿Y qué hago? Ah, me encanta inventar nuevos métodos para bloquerlos y aprender de sus métodos, esta vez implementé un fingerprinting rudimentario y lo fui mejorando con el paso de los días.
MD5 el rey muerto y olvidado
Este puede sonar a posteo para nardos, pero les aseguro que, aunque no sepas nada de programación, tiene que ver con la seguridad de las contraseñas de todos.
Hace muchos, muchos años me había comprado un libro de programación en PHP 3 y aprendí qué eran los hashes MD5, una idea genial que permitía evitar guardar contraseñas en una base de datos (error muy común de principiantes) y guardar una "firma" que dejara esa contraseña.
Para comienzos de los 2000 parecía una idea excelente, pero para 2004 ya se habían registrado "colisiones" de forma regular y para 2013 el algoritmo estaba completamente roto, se había vuelto extremadamente fácil identificar contraseñas a partir del hash de apenas 128 bits.
En este mismo blog, en 2002, comencé guardando así las contraseñas, en aquellos tiempos los otros algoritmos eran muy pesados para el servidor, así que usé ese método sin estar enterado de las colisiones.
Años después cambié de método, pero muchas contraseñas de usuarios que nunca volvieron a entrar quedaron en MD5. ¿Cuan resistentes son? Respuesta rápida: nada.
Ya no hacen falta programadores
Leí a un boludo escribir, y se lo creyó.
Ante el auge de la programación asistida por AI es correcto notar que muchos programadores perderán su trabajo, serán reemplazados porque tampoco su trabajo era algo relevante, esos roles de "obreros del código" en plataformas aburridas y sin innovación alguna eran reemplazables hace tres décadas, sólo faltaba el robot que lo hiciera.
Pero hay muchos otros roles que no serán reemplazados, aun así no falta el tonto que dice "ya no hacen falta programadores", mucho más llamativo es, para mí, el hecho de que la mayoría no se da cuenta de cuándo será el punto de inflexión: cuando los tokens sean más caros que el humano que despidieron 😁
La horrible tarea de limpiar un sitio hackeado
Les juro que a mi me divierte, pero al mismo tiempo me indigna, limpiar sitios web hackeados es una tarea, a veces titánica y en especial cuando se busca conservar lo que el dueño tenía originalmente allí.
Durante el finde pasado estuve limpiándole un sitio Wordpress a una amiga desde donde vende su producto, es un simple WP + WooCommerce como podemos encontrar en muchísimos sitios de la red, pero la seguridad no era su fuerte y cuando llegué yo ya llevaba varios años hackeado...
VHS - Mi propio YouTube en el blog
Hace unos años había recibido un strike en mi canal de YouTube y había comenzado a programar un sistema propio donde ubicar mis videos "no tan aptos" para esa plataforma (YouTube es tan censurador que hoy por hoy ciertos temas no se pueden publicar). No era muy rentable la idea ya que los VPS que conseguía eran casi todos con almacenamiento caro.
Hace un año conseguí un VPS con discos rígidos de los viejos, pero enormes, así que, si bien no es muy rápido, tenía tanta RAM que para todo lo que es web va bárbaro... y decidí reflotar la idea!
Hoy les presento el último de mis micro-proyectos inútiles de esos que hago para marcar un check en cosas que quería hacer, pero no tenía tiempo... VHS.
Búsqueda precisa en ElasticSearch
El otro día implementé mi buscador de blogs e inicialmente no le había dedicado demasiado a la estrategia de búsqueda. Era una implementación a secas que tiraba el contenido en ElasticSearch y luego hacía la búsqueda más simple del mundo.
Eso en el mundo real, no funciona.
Así que me puse manos a la obra pensando y analizando junto a don Claude qué podía hacer para mejorar y que diera resultados decentes. Al haber indexado más de 30.000 artículos tenía suficiente material como para que el buscador anduviera como se debe, aquí los cambios que hice...
Creando un buscador de blogs
Está Google, está Bing y hasta DuckDuckGo así que crear un buscador nuevo es un total despropósito, aun así quiero hacerlo ¿Por qué? Porque no quiero buscar entre los miles de sitios basura SEO y publicidad, quiero buscar entre los sitios que leo y leería.
Esto significa, autores reales, contenido creado por humanos y no por una AI, contenidos que se preocupan por el lector en vez de los buscadores y el SEO, donde la publicidad no sea lo prioritario sino comunicar cosas, ideas, aunque sean pensamientos varios. Un buscador de blogs.
Seguro ya existe alguno dando vueltas por ahí, pero decidí aprender a hacerlo yo mismo y... tan mal no me fue!
Mi año con mis proyectos de desarrollo usando AI
Empecé el año con un par de ideas y durante el resto de este ciclo solar, hice de todo, mucho más que en la década pasada.
Si bien una de las críticas mayores al uso de AI es que "nos va a dejar sin trabajo", no sólo encontré en esa afirmación demasiada sobre simplificación sino que, en algunos casos, una absoluta mentira.
Pero no me voy a enfrascar en una discusión filosófica (bueno, sí al final, pero arranquemos por lo sano) sino en revisar mi Github y ver qué cuernos hice con AI durante este año, de eso iba la cosa 😁
Creando pequeñas apps para solucionar pequeños problemas
Una idea muy conocida en todo el ambiente del Software Libre era la de pequeños programas creados para resolver casos de uso muy específicos, algunos de nicho, otros generales.
Tomando esto decidí adaptar el uso de AI para desarrollar mini apps para pequeñas cosas repetitivas que hago y luego liberar el código. Y justo llegó esa etapa del año en que debo seleccionar unas mil fotos, ajustar tamaños, nombres y preparar para subir a un sitio.
Decidí que esta vez lo iba a hacer sin tanta ayuda de terceros...