Programación
-
¿Por qué GPL y no otra licencia?
Desde hace bastante tiempo, todo software que escribo no sea trivial y que quiera compartir online incluyendo el código porque no lo vaya a explotar comercialmente (o incluso algunos que sí pretendo explotar comercialmente pero no de forma tan obvia), lo publico con licencias como GPL, LGPL y AGPL. La principal razón por la que…
-
GTK, nociones de programación básicas
📁 GTKGTK es una biblioteca de componentes usada para hacer aplicaciones gráficas, es decir, aplicaciones de ordenador con ventanas, botones, etiquetas y esas cosas. La gente joven tal vez no sepa esto, pero antes las aplicaciones de ordenador (como los reproductores de música, las aplicaciones de chat o los organizadores de imágenes) no se programaban en…
-
Mi primer prototipo con gtk-rs (ahora sí)
En el stream de ayer hice la primera compilación del cURL gráfico que he empezado a desarrollar. Por ahora no quiero que sea muy sofisticado y vamos a empezar suavemente. La aplicación por ahora debería mostrar un campo de texto para poner la URL, un dropdown para elegir el verbo HTTP de la petición (por…
-
Primeros pasos creando blueprints con GNOME Workbench (resumen del stream de ayer)
Este post forma parte de la saga dedicada a la creación de una alternativa verdaderamente libre (o sea, GNU GPL) a Postman, Insomnia y Bruno. A su vez, esto es un resumen de texto de lo que hice en un stream de livecoding anterior. Así si te lo perdiste, es fácil de leer. Principalmente, lo…
-
Nice to haves y funciones aptas para un MVP
📁 CarteroPor último, voy a describir algunas funciones que estaría bien ponerle a mi cliente HTTP, y cuáles vale la pena implementar al principio y cuáles para más adelante. O incluso cuales puede que nunca implemente. Por el momento me interesa que mi cliente haga lo mínimo esencial para por lo menos empujar el proyecto para…
-
Análisis técnico de mi cliente HTTP
📁 CarteroComo dije en el post anterior (que he partido únicamente para poder enlazarlo aparte), quiero crear un cliente HTTP gráfico. «Como Postman, pero libre. Como ThunderClient, pero sin exigirme abrir un editor de textos para usar el plugin». En primer lugar, voy a evaluar y determinar el stack tecnológico con el que voy a trabajar,…
-
Server-Sent Events con ExpressJS
Recientemente tuve una excusa para jugar con la API de Server-Sent Events en el navegador web, y utilizar un microservicio ExpressJS como proveedor de eventos en tiempo real. Server-Sent Events es una API que permite a una página web incorporar eventos push enviados desde un servidor. A diferencia de un websocket, Server-Sent Events sólo permite…
-
Generar AppImages con AppImageKit
Para un proyecto estoy generando ejecutables para GNU/Linux, y el compilador me produce una carpeta con una distribución de archivos. Carpeta bin/ con el ejecutable, carpeta lib/ con las .so… Podría empaquetar eso en un .zip, podría aprender a generar un .deb o un .rpm… o podría aprovechar la ocasión para aprender a crear archivos…
-
let, apply y similares en Kotlin
📁 KotlinDe mis características favoritas de Kotlin, una de las más top es que todos los tipos tengan como funciones de extensión una serie de métodos auxiliares: let, apply, also… Son una forma limpia de encadenar código y hasta de transformarlo. El problema es que nunca recuerdo qué diferencia hay entre ellos, así que voy a…
-
Cómo importar un paquete de Go usando un dominio propio
📁 GolangLa idea final es explicar cómo se puede hacer para importar un paquete de Go usando una construcción como import «example.com/package/foobar/lib» y que funcione bien, en el sentido de que la ruta que se le pone en el import es una ruta que resuelve y desde la que se puede descargar el paquete correspondiente, pero…