busta.win: a self-hosted blog built with React Remix using the EdgeI break down the code of this blog to explain how I achieved a self-hosted blog with complex user interactivity taking advantage of Cloudflare's free Edge services.Jul2024
JavaScript Iterables and IteratedIntroducing Javascript iterables and why the library Iterated is a great way to unleash their potential.Jul2024
From the vision to the task: an introduction to goal-settingI present the concepts and theory for managers (e.g. mission, vision, objectives, goals, OKRs) to define goals for their teams and projects effectively.Sep2022
Riding the wave: Predicting the use of the bike-sharing system in Barcelona before and during COVID-19We published a study what influenced the use of Bicing before and after COVID, including social factors, infrastructure, and tactical urbanism.May2022
The global interorganizational network before and during a global pandemicWe published a study exploring the Global Interorganizational Network by using media-reported events from GDELT.Feb2022
Global Interorganizational Network Dataset from GDELTDownload the dataset of the Global Interorganizational Network.Jan2022
Optimize Pandas & Dask for big datasetsI explain three optimization steps to process millions of rows efficiently in Pandas.Jul2021
Execute anything when booting using systemdHow to execute a script at boot by using systemd and a regular user account, instead of root.Jul2020
Big Sheets – Domain Driven Design with a hexagonal architectureI explain the architecture of a pet project that uses DDD, a hexagonal architecture, and it's event driven.Jun2020
The retry-requests packageNetworks and servers are unreliable: they can fail, saturate... our requests should handle these scenarios. I created a micro package in python to handle this.Dec2019
Distribute your apps with aptLearn how to package Debian apps: generating .deb files and distributing them through Debian's (including Ubuntu) apt command by creating a simple repositoryJul2019
Create a sphinx extension to customize your docsThis is a tutorial of how to create a quick & dirty Sphinx extension to personalize the docs of your project.Jun2019
DAGs with materialized paths using postgres ltreeBuild hierarchies with multiple parents efficiently with Postgres.Aug2018
Configurations to empower your macOSPersonalize the mac beyond what System Preferences offers. I talk about quick-look plugins, spotlight extensions, terminal configuration, and brew tricks.Aug2018
pip, python packages and venvPython package and virtual environment management can be a bit tricky. This post has some best and bad practices.Aug2018
Router as a WiFi extender & switchAdd WiFi signal to all your home using an old router, at 0 cost.Jan2018
Useful SSH and SCP commands and configMid-advanced SSH commands and configurations to squeeze its power.Jan2018
Create a custom live Debian the pro wayA tutorial to create a custom Debian live installation image by using debian-live.Dec2017