mw: Los cerca de 200 servicios de AWS están construidos sobre unos 10 servicios centrales como EC2, Lambda, S3, DynamoDB, KMS e IAM, pero por debajo hay otros servicios base que no se ofrecen externamente.
Estoy implementando directamente, con dependencias mínimas, cosas como gestión de claves raíz y certificados, un repositorio de configuración para mapear infraestructura de despliegue y gestión de identidades, de modo que no dependan de nada y no haya dependencias circulares. También es divertido el enfoque de hacer que un solo nodo maneje toda la carga prevista, en lugar de escalar masivamente.
samcat116: Me da curiosidad saber qué son concretamente esos servicios base.
nick4: Todavía soy principiante en repostería francesa, pero disfruté el proceso de hacer gâteau basque. Usé la receta de un libro, aunque https://www.seriouseats.com/gateau-basque-recipe-6823020 también se ve bastante bien.
theisaaczone: Hice en Go una API web de ping para listas de servidores que consulta la cantidad de usuarios conectados a un servidor de Minecraft y la devuelve como JSON. No es técnicamente compleja ni grande, pero me enorgullece verla manejar sin problemas entre 1 y 2 millones de solicitudes al mes.
Hace poco la reescribí para eliminar todas las dependencias fuera de la biblioteca estándar, y me gustan los proyectos de alcance pequeño como este.
dijit: También existe un plugin que expone el estado de Minecraft como objetivo de recolección de Prometheus. Es el único plugin que uso en mi servidor y resulta bastante útil.
miguno: Entre los roguelikes tradicionales, mi favorito es Sil-Q. Se caracteriza por una recreación fiel del universo de Tolkien, combates y sigilo refinados, y partidas cortas e intensas de 30 a 60 minutos; podría describirse como un juego de asaltar mazmorras en la Primera Edad de Middle-earth, o como “Angband: Black Ops”.
Este año colaboré con el desarrollador original Quirk y con MicroChasm, autor del tileset, para revivir el proyecto dormido. Modernizamos el código, corregimos bugs conocidos de los últimos 3 años, generamos distribuciones para Win/Mac/Linux, mejoramos la jugabilidad y la usabilidad, y trabajamos en la documentación y el sitio web.
Fue mi primer proyecto en C, y el proceso de ordenar código de hasta 40 años de antigüedad para Amiga, NeXT, SGI, DEC Alpha y RISC OS, junto con cuatro capas gráficas propias distintas, se sintió como vagar por las minas abandonadas de Moria. También agregamos algunas pruebas a una base de código que no tenía ninguna; hay más detalles en https://github.com/sil-quirk/sil-q/releases/tag/v1.5.1-beta1.
Es un juego pequeño de un género de nicho, pero la nueva beta tuvo 900 descargas, y en una época llena de resultados de vibe coding que parecen destinados a abandonarse enseguida, cuidar un juego open source con un largo linaje resulta reconfortante.
DustyFuzzy: Desde 2021 estoy creando un sitio personal para almacenar contenido para adultos. Implementé importación de URL, etiquetas y ranking Glicko-2 usando los resultados de enfrentamientos entre dos elementos, y migré de Python a .NET Core.
A medida que los archivos se acercan a 70.000, también se volvió divertido optimizar código O(n²) escrito de forma ingenua.
icefox: Me da curiosidad saber cómo te fue usando .NET Core durante un período largo. Tengo buenos recuerdos de C#/F#, y parece que podría facilitar crear un entorno CLI consistente incluso fuera de Windows, pero Microsoft parece haber cambiado varias veces de dirección y de herramientas en los últimos 5 años, así que no estoy seguro de su perspectiva a largo plazo.
alterae: Hice una herramienta de línea de comandos para elegir un elemento aleatorio de una lista, y la uso sorprendentemente seguido. La página de manual es más larga que el código fuente, y el proceso de escribirla fue realmente divertido.
bitshift: Me da curiosidad saber cómo la usas. Suelo usar shuf -n para muestrear archivos o listas grandes, y resulta útil cuando quiero hacerme una idea aproximada de la composición de los solicitantes sin leer todo el log de solicitudes.
fazalmajid: Desde 2004 uso un lector RSS hecho por mí, y este año, como aprendizaje, reescribí a mano la versión en Python en Rust. Desapareció la contención por bloqueos de escritura en SQLite causada por el lento procesamiento de texto de Python, así que hubo una gran mejora de rendimiento.
La nueva versión, https://github.com/fazalmajid/rTemboz, todavía no tiene paridad total de funciones, pero también incorporó funciones que antes no existían. Es la app que más uso, por ejemplo para leer lobste.rs y filtrar el ruido de la cultura pop, y controlar personalmente la prioridad de mis feeds en lugar de dejársela a Facebook, Google o Apple es una forma de preservar la soberanía y la independencia.
lcamtuf: Lo más divertido no es el software, sino alejarse de la computadora y crear objetos tangibles con las manos. Proyectos como el reloj con voltímetro y la calculadora con medidor de panel son ejemplos.
Después de escribir sobre seguridad informática durante más de 15 años, empecé como experimento un blog que no trata para nada sobre mi trabajo, donde escribo sobre fundamentos de las matemáticas, curiosidades de algoritmos y electrónica. Lo que empezó como una prueba para ver si podía atraer lectores de fuera de la industria terminó convirtiéndose en una especie de arte abstracto en la era de los LLM.
colindean: Empecé a hornear pan con harina, sal, levadura y agua, aprendiendo las técnicas básicas. Experimenté con proporciones de ingredientes, tipos de harina y el momento de agregar hierbas y especias; hasta ahora, la mejor combinación es romero y sal de ajo.
En vez de leer Modernist Bread, estoy descubriendo los secretos por mi cuenta. Dejé proyectos de software en pausa durante 2 años y reparé personalmente alrededor del 75% de dos casas; con eso también gané habilidades prácticas poco comunes entre gente técnica y un nuevo respeto por los contratistas que responden los mensajes y llegan a tiempo.
op: Todo el pixel art de https://oppi.li/art fue creado en un editor de pixel art de 1 bit que hice yo mismo en Rust. Tiene Lisp integrado para configuración y scripts, lo hice solo para mí con el fin de aprender algoritmos ráster 2D, y no lo publiqué.
Trabajar sin fechas límite ni objetivos fijos lo hace mucho más divertido.
ombredog: Se está enfocando en entender la arquitectura de Servo y el fuzzing en Rust. También creó una demostración en macOS de sustitución de punteros a funciones usando dyld, y planea publicar código de prueba de concepto que muestra cómo se empaqueta una función maliciosa y cómo encontrarla en tiempo de ejecución
Todavía está en una etapa inicial y a menudo le roban la atención fuzzers ya preparados, como la build de Fuzzilli de Ladybird, pero le dio motivación para escribir lenguajes de sistemas. También planea crear una CLI en Zig para descargar herramientas y subirla a noblenote en Codeberg
luhker: Implementó con demasiado detalle un sample pad, secuenciador y cadena de efectos basados en Web Components, para reproducir en el sitio de su banda samples que nadie querría escuchar. El CSS está algo roto, pero se puede ver el marcado declarativo de la cadena de efectos: https://strahlenkeller.de/endlager/
luhker: También fue divertido un intérprete de un dialecto de Brainfuck basado en letras de canciones. Puede llamar a JavaScript con comandos personalizados: https://strahlenkeller.de/endlager/pfas.html
zknd: Está creando un framework basado en generación de código que intenta ofrecer productividad de nivel framework manteniendo los modismos de Go. Le resulta satisfactorio ver cómo varias ideas encajan en un software coherente
También está desarrollando en Rust firmware para un lector de ebooks
krig: Migró Gram desde los crates cocoa/objc abandonados a objc2. Le tomó meses leer mucha documentación y fallar varias veces para entender los patrones de uso de las nuevas abstracciones, pero como efecto secundario unificó las capas de renderizado y texto de Mac y Linux con wgpu y cosmic-text
Los enlaces relacionados son https://gram-editor.com, https://docs.rs/objc2/latest/objc2/, https://wgpu.rs/ y https://github.com/pop-os/cosmic-text
z3bra: El proyecto más divertido fue cyber hunt. Es un desafío tipo búsqueda del tesoro en el que se crean diversas herramientas, configuraciones y código para resolver, bajo restricciones extrañas, problemas que no aparecen en la vida real
Incluye calcular hashes Argon2id de 5 GiB, crear un juego para Game Boy, manejar cookies seguras estáticamente solo con relayd(8) y un proxy VPN usando un nuevo método de autenticación de ssh(1). Fue su proyecto más grande, con un año de preparación; el primer capítulo se puede probar solo con la web en unos 20 minutos, y luego se vuelve cada vez más difícil
jbert: Empezó escribiendo una máquina de registros para tener un objetivo de compilación simple, terminó siendo un emulador de Z80 y luego evolucionó a un emulador de ZX Spectrum. Ejecutó código de validación y varios juegos de los años 80, y el diseño le pareció sorprendentemente simple y divertido: GitHub
marx314: Opera en un servidor doméstico Raspberry Pi 4 Pi-hole, Domoticz, Immich self hosted photo gallery, SmokePing, http2sonos, Mealie, WireGuard, Tor y más
También tiene contenedores PHP/nginx para dispositivos web antiguos, un Kindle que muestra el clima e información de Airthings Wave, un iPad viejo para recetas, SMS para alertas importantes y scripts de Signal para otras notificaciones. Cuando el trabajo de la empresa se vuelve político, es una tarea como una meditación para reconectarse con problemas técnicos
tclancy: Opera algo parecido y le da curiosidad por qué eligió Domoticz. Home Assistant le resultó frustrante porque, sin escribir código real, hay que configurar variables YAML mal documentadas y esperar que el formato no se rompa al guardar
aspizu: Su proyecto más grande y popular es un lenguaje de programación que compila a bloques de Scratch, escrito en Rust: https://github.com/aspizu/goboscript
Lo desarrolló y mantuvo durante años, migrándolo de Python a Rust. Gracias a eso se pueden crear en Scratch proyectos técnicamente sorprendentes, como motores de física y trazado de rayos
jjude: Casi todos los proyectos paralelos son divertidos, pero la clave es cuánto tiempo se mantiene la pasión. Por lo general terminaron en unos 6 meses, y el que más duró fue su blog sin ingresos, https://jjude.com, donde aprendió mucho escribiendo
Este año desarrolló SophAI https://www.sophai.app/radars mientras aprendía a crear con IA. Conecta materiales de varios campos y los sintetiza en textos, y al seguir puliendo funciones pequeñas y fuentes fue aprendiendo herramientas de IA y formas de desarrollo, además de satisfacer su curiosidad
hwj: Escribió en lenguaje ensamblador el firmware del reloj de pulsera eZ430 Chronos, y está desarrollando un compilador de Forth en OCaml. El diseño de su propio lenguaje de programación está pausado por ahora
einacio: Está escribiendo un servidor SMTP en PHP para reemplazar Postfix en su servidor, y disfruta trabajar en ello porque el protocolo es accesible. También está aprendiendo Twitch transmitiendo el proceso de desarrollo y más adelante planea crear bots
spc476: Con Lua y LPeg parsea expresiones, maneja la precedencia de operadores usando el Shunting Yard algorithm y luego genera código para CPU 6809 de 8 bits
También aplicó una optimización simple que calcula durante la compilación cuando ambos lados de una expresión son literales, y usa my own 6809 assembler, que desarrolló por diversión durante años
heavyrain266: Está aprendiendo a contribuir a proyectos de los que depende mucha gente, como el compilador Odin. Empezó con cambios pequeños para ampliar funciones de DirectX y soporte de Win32 io_uring, y pasó a tareas menos vistosas como eliminar dos plataformas de destino sin mantenimiento y mejorar la detección de instalaciones de LLVM en OpenBSD
Quiere facilitar el mantenimiento durante los próximos 10 años. En cambio, durante los últimos 8 años, cada vez que intentó contribuir de forma significativa a la toolchain de Rust, chocó con barreras corporativas como RFC, bots de clasificación, revisiones, plataformas de destino por niveles y conflictos de merge frecuentes
pcaisse: Por lejos, el proyecto más satisfactorio fue Mapa de idiomas de Estados Unidoshttps://languagemap.us/. Dediqué demasiado tiempo a limpiar datos, scripts en Bash, ajustar la apariencia del mapa y automatizar la operación, pero quedé muy conforme con el resultado
No requiere mantenimiento alguno y el costo de AWS es de menos de 1 dólar al mes
LesleyLai: Mi favorito siempre es el proyecto en el que estoy trabajando actualmente, y ahora es un renderer Vulkan. Apunta a una estructura modular para poder iniciar fácilmente nuevos experimentos gráficos sobre la misma base de código
Jan200101: Mientras creaba un programa para reemplazar h5ai, cuyo mantenimiento fue discontinuado, también aprendí cómo implementar FastCGI. Fue un trabajo divertido y duro a la vez, que me ayudó a entender en profundidad cómo funciona la web
mariusor: Creé en C un daemon de usuario para audio scrobbling para reproductores MPRIS. Es un pequeño proyecto que uso desde hace mucho tiempo y guarda el historial de reproducción en ListenBrainz·Last.fm·Libre.fm
zanlib: Me gusta reimplementar Lisp, así que hice evalexpr en JavaScript, lispex en Elixir y isolisp, basado en formularios full-stack en JS. Es una tarea simple que se puede hacer en una tarde, pero da mucha satisfacción
shrike: Creé un enriquecedor de feeds RSS que agrega datos de Open Graph, conteos de recomendaciones y comentarios, y el contenido completo de artículos recortados a feeds RSS deficientes, y luego importo el resultado a FreshRSS como OPML
El otro es un cliente IRC personalizado con arquitectura cliente-servidor. La mayor parte del procesamiento la realiza un único servidor autoritativo, al que se conectan clientes web, TUI y SwiftUI
pepesza: Fue muy divertido implementar desde cero en Erlang una biblioteca de criptografía de curvas elípticas. Luego seguí con compromisos KZG y la complejidad creció de golpe
banna: Creé una arquitectura de conjunto de instrucciones de juguete y también escribí un artículo relacionado; el trabajo más reciente está en branch. Estoy reescribiendo partes de C en Zig y pensando cómo visualizar el movimiento de datos dentro de la computadora virtual
Con TISC exploro el minimalismo mecánico. Considero cómo se implementaría cada cambio en una máquina real y lo descarto si implica demasiadas piezas móviles o si solo empuja la complejidad a otra capa de abstracción. Lo más divertido por ahora es que se siente más como un experimento mental que como una implementación
ramones: Empecé a hacer un pequeño motor de ajedrez en Rust y me gustó que en cualquier dirección había algo que aprender. Hay opciones infinitas: especificaciones como PGN y FEN, algoritmos de la wiki de motores de ajedrez, distintas estructuras de datos, incluidos bit flags, y mucho más
icefox: Disfruté muchísimo el proceso de crear un simulador de física de n cuerpos con raylib y luego migrarlo a la biblioteca SDL3 GPU. Pronto el foco pasó de la física a experimentos con motores gráficos y shaders, pero siguió siendo divertido
También terminé escribiendo por casualidad un fanfic de Katalepsis durante un mes. Sin preocuparme por elementos tediosos como el trasfondo o el desarrollo de personajes, simplemente puse a tres personajes y una mala idea en una habitación, y escribir ficción volvió a ser divertido
kghose: El trabajo en https://github.com/kghose/moulick es el que más recuerdo. Disfruté las restricciones de la programación embebida y la alegría de que un pequeño dispositivo que se puede sostener en la mano realmente funcione
Mi próximo proyecto soñado es un dispositivo LLM embebido; al fin y al cabo, ¿cuánta gente no soñó de niña con tener un robot compañero?
brn: Lo más satisfactorio son https://bewcloud.com y https://uruky.com, que mi familia y yo seguimos usando todos los días. Uruky es un proyecto relativamente reciente, y Expenses de bewCloud es una evolución de una familia de apps de gestión de gastos que vengo creando y publicando desde 2008
3digitdev: Creé una pequeña herramienta CLI de conversión que toma el contenido del portapapeles y ordena JSON, convierte entre JSON·TOML·YAML, elimina marcas de tiempo y emojis de mensajes copiados desde Slack·Discord, convierte Base64, etc.
La escribí hace unos años y todavía funciona sin problemas casi todos los días, así que me pone de buen humor cada vez que la uso. Una app web de compatibilidad de tipos y armado de equipos que hice cuando estaba enganchado con Pokémon Sword/Shield también es un proyecto divertido al que sigo volviendo
fbegyn: Es difícil elegir uno, pero me gusta trabajar en cosas que resuelven problemas reales. Hay impresión 3D para un soporte de panel solar para una lámpara, cocina, carpintería frustrante por falta de espacio, tc_exporter, que es el único software con usuarios reales, y la lista sigue creciendo
motet-a: Creé una app web para que músicos suban y compartan grabaciones de ensayos. Es un servicio de nicho, algo así como un YouTube solo de audio y solo privado; tiene unas decenas de usuarios, pero sigue creciendo de forma constante
1 comentarios
Comentarios de Lobste.rs
mw: Los cerca de 200 servicios de AWS están construidos sobre unos 10 servicios centrales como EC2, Lambda, S3, DynamoDB, KMS e IAM, pero por debajo hay otros servicios base que no se ofrecen externamente.
Estoy implementando directamente, con dependencias mínimas, cosas como gestión de claves raíz y certificados, un repositorio de configuración para mapear infraestructura de despliegue y gestión de identidades, de modo que no dependan de nada y no haya dependencias circulares. También es divertido el enfoque de hacer que un solo nodo maneje toda la carga prevista, en lugar de escalar masivamente.
theisaaczone: Hice en Go una API web de ping para listas de servidores que consulta la cantidad de usuarios conectados a un servidor de Minecraft y la devuelve como JSON. No es técnicamente compleja ni grande, pero me enorgullece verla manejar sin problemas entre 1 y 2 millones de solicitudes al mes.
Hace poco la reescribí para eliminar todas las dependencias fuera de la biblioteca estándar, y me gustan los proyectos de alcance pequeño como este.
miguno: Entre los roguelikes tradicionales, mi favorito es Sil-Q. Se caracteriza por una recreación fiel del universo de Tolkien, combates y sigilo refinados, y partidas cortas e intensas de 30 a 60 minutos; podría describirse como un juego de asaltar mazmorras en la Primera Edad de Middle-earth, o como “Angband: Black Ops”.
Este año colaboré con el desarrollador original Quirk y con MicroChasm, autor del tileset, para revivir el proyecto dormido. Modernizamos el código, corregimos bugs conocidos de los últimos 3 años, generamos distribuciones para Win/Mac/Linux, mejoramos la jugabilidad y la usabilidad, y trabajamos en la documentación y el sitio web.
Fue mi primer proyecto en C, y el proceso de ordenar código de hasta 40 años de antigüedad para Amiga, NeXT, SGI, DEC Alpha y RISC OS, junto con cuatro capas gráficas propias distintas, se sintió como vagar por las minas abandonadas de Moria. También agregamos algunas pruebas a una base de código que no tenía ninguna; hay más detalles en https://github.com/sil-quirk/sil-q/releases/tag/v1.5.1-beta1.
Es un juego pequeño de un género de nicho, pero la nueva beta tuvo 900 descargas, y en una época llena de resultados de vibe coding que parecen destinados a abandonarse enseguida, cuidar un juego open source con un largo linaje resulta reconfortante.
DustyFuzzy: Desde 2021 estoy creando un sitio personal para almacenar contenido para adultos. Implementé importación de URL, etiquetas y ranking Glicko-2 usando los resultados de enfrentamientos entre dos elementos, y migré de Python a .NET Core.
A medida que los archivos se acercan a 70.000, también se volvió divertido optimizar código O(n²) escrito de forma ingenua.
alterae: Hice una herramienta de línea de comandos para elegir un elemento aleatorio de una lista, y la uso sorprendentemente seguido. La página de manual es más larga que el código fuente, y el proceso de escribirla fue realmente divertido.
shuf -npara muestrear archivos o listas grandes, y resulta útil cuando quiero hacerme una idea aproximada de la composición de los solicitantes sin leer todo el log de solicitudes.fazalmajid: Desde 2004 uso un lector RSS hecho por mí, y este año, como aprendizaje, reescribí a mano la versión en Python en Rust. Desapareció la contención por bloqueos de escritura en SQLite causada por el lento procesamiento de texto de Python, así que hubo una gran mejora de rendimiento.
La nueva versión, https://github.com/fazalmajid/rTemboz, todavía no tiene paridad total de funciones, pero también incorporó funciones que antes no existían. Es la app que más uso, por ejemplo para leer lobste.rs y filtrar el ruido de la cultura pop, y controlar personalmente la prioridad de mis feeds en lugar de dejársela a Facebook, Google o Apple es una forma de preservar la soberanía y la independencia.
lcamtuf: Lo más divertido no es el software, sino alejarse de la computadora y crear objetos tangibles con las manos. Proyectos como el reloj con voltímetro y la calculadora con medidor de panel son ejemplos.
Después de escribir sobre seguridad informática durante más de 15 años, empecé como experimento un blog que no trata para nada sobre mi trabajo, donde escribo sobre fundamentos de las matemáticas, curiosidades de algoritmos y electrónica. Lo que empezó como una prueba para ver si podía atraer lectores de fuera de la industria terminó convirtiéndose en una especie de arte abstracto en la era de los LLM.
En vez de leer Modernist Bread, estoy descubriendo los secretos por mi cuenta. Dejé proyectos de software en pausa durante 2 años y reparé personalmente alrededor del 75% de dos casas; con eso también gané habilidades prácticas poco comunes entre gente técnica y un nuevo respeto por los contratistas que responden los mensajes y llegan a tiempo.
op: Todo el pixel art de https://oppi.li/art fue creado en un editor de pixel art de 1 bit que hice yo mismo en Rust. Tiene Lisp integrado para configuración y scripts, lo hice solo para mí con el fin de aprender algoritmos ráster 2D, y no lo publiqué.
Trabajar sin fechas límite ni objetivos fijos lo hace mucho más divertido.
ombredog: Se está enfocando en entender la arquitectura de Servo y el fuzzing en Rust. También creó una demostración en macOS de sustitución de punteros a funciones usando dyld, y planea publicar código de prueba de concepto que muestra cómo se empaqueta una función maliciosa y cómo encontrarla en tiempo de ejecución
Todavía está en una etapa inicial y a menudo le roban la atención fuzzers ya preparados, como la build de Fuzzilli de Ladybird, pero le dio motivación para escribir lenguajes de sistemas. También planea crear una CLI en Zig para descargar herramientas y subirla a noblenote en Codeberg
luhker: Implementó con demasiado detalle un sample pad, secuenciador y cadena de efectos basados en Web Components, para reproducir en el sitio de su banda samples que nadie querría escuchar. El CSS está algo roto, pero se puede ver el marcado declarativo de la cadena de efectos: https://strahlenkeller.de/endlager/
zknd: Está creando un framework basado en generación de código que intenta ofrecer productividad de nivel framework manteniendo los modismos de Go. Le resulta satisfactorio ver cómo varias ideas encajan en un software coherente
También está desarrollando en Rust firmware para un lector de ebooks
krig: Migró Gram desde los crates cocoa/objc abandonados a objc2. Le tomó meses leer mucha documentación y fallar varias veces para entender los patrones de uso de las nuevas abstracciones, pero como efecto secundario unificó las capas de renderizado y texto de Mac y Linux con wgpu y cosmic-text
Los enlaces relacionados son https://gram-editor.com, https://docs.rs/objc2/latest/objc2/, https://wgpu.rs/ y https://github.com/pop-os/cosmic-text
z3bra: El proyecto más divertido fue cyber hunt. Es un desafío tipo búsqueda del tesoro en el que se crean diversas herramientas, configuraciones y código para resolver, bajo restricciones extrañas, problemas que no aparecen en la vida real
Incluye calcular hashes Argon2id de 5 GiB, crear un juego para Game Boy, manejar cookies seguras estáticamente solo con
relayd(8)y un proxy VPN usando un nuevo método de autenticación dessh(1). Fue su proyecto más grande, con un año de preparación; el primer capítulo se puede probar solo con la web en unos 20 minutos, y luego se vuelve cada vez más difíciljbert: Empezó escribiendo una máquina de registros para tener un objetivo de compilación simple, terminó siendo un emulador de Z80 y luego evolucionó a un emulador de ZX Spectrum. Ejecutó código de validación y varios juegos de los años 80, y el diseño le pareció sorprendentemente simple y divertido: GitHub
marx314: Opera en un servidor doméstico Raspberry Pi 4 Pi-hole, Domoticz, Immich self hosted photo gallery, SmokePing, http2sonos, Mealie, WireGuard, Tor y más
También tiene contenedores PHP/nginx para dispositivos web antiguos, un Kindle que muestra el clima e información de Airthings Wave, un iPad viejo para recetas, SMS para alertas importantes y scripts de Signal para otras notificaciones. Cuando el trabajo de la empresa se vuelve político, es una tarea como una meditación para reconectarse con problemas técnicos
aspizu: Su proyecto más grande y popular es un lenguaje de programación que compila a bloques de Scratch, escrito en Rust: https://github.com/aspizu/goboscript
Lo desarrolló y mantuvo durante años, migrándolo de Python a Rust. Gracias a eso se pueden crear en Scratch proyectos técnicamente sorprendentes, como motores de física y trazado de rayos
jjude: Casi todos los proyectos paralelos son divertidos, pero la clave es cuánto tiempo se mantiene la pasión. Por lo general terminaron en unos 6 meses, y el que más duró fue su blog sin ingresos, https://jjude.com, donde aprendió mucho escribiendo
Este año desarrolló SophAI https://www.sophai.app/radars mientras aprendía a crear con IA. Conecta materiales de varios campos y los sintetiza en textos, y al seguir puliendo funciones pequeñas y fuentes fue aprendiendo herramientas de IA y formas de desarrollo, además de satisfacer su curiosidad
hwj: Escribió en lenguaje ensamblador el firmware del reloj de pulsera eZ430 Chronos, y está desarrollando un compilador de Forth en OCaml. El diseño de su propio lenguaje de programación está pausado por ahora
einacio: Está escribiendo un servidor SMTP en PHP para reemplazar Postfix en su servidor, y disfruta trabajar en ello porque el protocolo es accesible. También está aprendiendo Twitch transmitiendo el proceso de desarrollo y más adelante planea crear bots
spc476: Con Lua y LPeg parsea expresiones, maneja la precedencia de operadores usando el Shunting Yard algorithm y luego genera código para CPU 6809 de 8 bits
También aplicó una optimización simple que calcula durante la compilación cuando ambos lados de una expresión son literales, y usa my own 6809 assembler, que desarrolló por diversión durante años
heavyrain266: Está aprendiendo a contribuir a proyectos de los que depende mucha gente, como el compilador Odin. Empezó con cambios pequeños para ampliar funciones de DirectX y soporte de Win32
io_uring, y pasó a tareas menos vistosas como eliminar dos plataformas de destino sin mantenimiento y mejorar la detección de instalaciones de LLVM en OpenBSDQuiere facilitar el mantenimiento durante los próximos 10 años. En cambio, durante los últimos 8 años, cada vez que intentó contribuir de forma significativa a la toolchain de Rust, chocó con barreras corporativas como RFC, bots de clasificación, revisiones, plataformas de destino por niveles y conflictos de merge frecuentes
pcaisse: Por lejos, el proyecto más satisfactorio fue Mapa de idiomas de Estados Unidos https://languagemap.us/. Dediqué demasiado tiempo a limpiar datos, scripts en Bash, ajustar la apariencia del mapa y automatizar la operación, pero quedé muy conforme con el resultado
No requiere mantenimiento alguno y el costo de AWS es de menos de 1 dólar al mes
LesleyLai: Mi favorito siempre es el proyecto en el que estoy trabajando actualmente, y ahora es un renderer Vulkan. Apunta a una estructura modular para poder iniciar fácilmente nuevos experimentos gráficos sobre la misma base de código
Jan200101: Mientras creaba un programa para reemplazar h5ai, cuyo mantenimiento fue discontinuado, también aprendí cómo implementar FastCGI. Fue un trabajo divertido y duro a la vez, que me ayudó a entender en profundidad cómo funciona la web
mariusor: Creé en C un daemon de usuario para audio scrobbling para reproductores MPRIS. Es un pequeño proyecto que uso desde hace mucho tiempo y guarda el historial de reproducción en ListenBrainz·Last.fm·Libre.fm
zanlib: Me gusta reimplementar Lisp, así que hice evalexpr en JavaScript, lispex en Elixir y isolisp, basado en formularios full-stack en JS. Es una tarea simple que se puede hacer en una tarde, pero da mucha satisfacción
shrike: Creé un enriquecedor de feeds RSS que agrega datos de Open Graph, conteos de recomendaciones y comentarios, y el contenido completo de artículos recortados a feeds RSS deficientes, y luego importo el resultado a FreshRSS como OPML
El otro es un cliente IRC personalizado con arquitectura cliente-servidor. La mayor parte del procesamiento la realiza un único servidor autoritativo, al que se conectan clientes web, TUI y SwiftUI
pepesza: Fue muy divertido implementar desde cero en Erlang una biblioteca de criptografía de curvas elípticas. Luego seguí con compromisos KZG y la complejidad creció de golpe
banna: Creé una arquitectura de conjunto de instrucciones de juguete y también escribí un artículo relacionado; el trabajo más reciente está en branch. Estoy reescribiendo partes de C en Zig y pensando cómo visualizar el movimiento de datos dentro de la computadora virtual
Con TISC exploro el minimalismo mecánico. Considero cómo se implementaría cada cambio en una máquina real y lo descarto si implica demasiadas piezas móviles o si solo empuja la complejidad a otra capa de abstracción. Lo más divertido por ahora es que se siente más como un experimento mental que como una implementación
ramones: Empecé a hacer un pequeño motor de ajedrez en Rust y me gustó que en cualquier dirección había algo que aprender. Hay opciones infinitas: especificaciones como PGN y FEN, algoritmos de la wiki de motores de ajedrez, distintas estructuras de datos, incluidos bit flags, y mucho más
icefox: Disfruté muchísimo el proceso de crear un simulador de física de n cuerpos con raylib y luego migrarlo a la biblioteca SDL3 GPU. Pronto el foco pasó de la física a experimentos con motores gráficos y shaders, pero siguió siendo divertido
También terminé escribiendo por casualidad un fanfic de Katalepsis durante un mes. Sin preocuparme por elementos tediosos como el trasfondo o el desarrollo de personajes, simplemente puse a tres personajes y una mala idea en una habitación, y escribir ficción volvió a ser divertido
kghose: El trabajo en https://github.com/kghose/moulick es el que más recuerdo. Disfruté las restricciones de la programación embebida y la alegría de que un pequeño dispositivo que se puede sostener en la mano realmente funcione
Mi próximo proyecto soñado es un dispositivo LLM embebido; al fin y al cabo, ¿cuánta gente no soñó de niña con tener un robot compañero?
brn: Lo más satisfactorio son https://bewcloud.com y https://uruky.com, que mi familia y yo seguimos usando todos los días. Uruky es un proyecto relativamente reciente, y Expenses de bewCloud es una evolución de una familia de apps de gestión de gastos que vengo creando y publicando desde 2008
3digitdev: Creé una pequeña herramienta CLI de conversión que toma el contenido del portapapeles y ordena JSON, convierte entre JSON·TOML·YAML, elimina marcas de tiempo y emojis de mensajes copiados desde Slack·Discord, convierte Base64, etc.
La escribí hace unos años y todavía funciona sin problemas casi todos los días, así que me pone de buen humor cada vez que la uso. Una app web de compatibilidad de tipos y armado de equipos que hice cuando estaba enganchado con Pokémon Sword/Shield también es un proyecto divertido al que sigo volviendo
fbegyn: Es difícil elegir uno, pero me gusta trabajar en cosas que resuelven problemas reales. Hay impresión 3D para un soporte de panel solar para una lámpara, cocina, carpintería frustrante por falta de espacio,
tc_exporter, que es el único software con usuarios reales, y la lista sigue creciendomotet-a: Creé una app web para que músicos suban y compartan grabaciones de ensayos. Es un servicio de nicho, algo así como un YouTube solo de audio y solo privado; tiene unas decenas de usuarios, pero sigue creciendo de forma constante