Managing GitHub installations with gah

Posted on Wed 11 February 2026 in Linux • Tagged with linux, tools, cli

Install binaries directly from GitHub releases easily with gah.


Continue reading

Multiline YAML: Understanding and testing complex strings

Posted on Thu 25 December 2025 in Tools • Tagged with yaml, configuration, development, tools, multiline, strings

Explore YAML options for effectively handling multiline strings, with an interactive demo that allows you to test them in real-time.


Continue reading

Pandas Styler: Improve the Presentation of your DataFrames

Posted on Thu 25 December 2025 in Programming • Tagged with pandas, python, data-science, visualization, style

Discover how the Pandas Styler object allows you to apply conditional formatting and CSS styles to your DataFrames for better data visualization and presentation.


Continue reading

`fresh`: My preferred terminal editor for daily use

Posted on Thu 25 December 2025 in Tools • Tagged with fresh, terminal, editor, productivity, linux, tools, cli

Discover fresh, a fast, modern, modeless terminal text editor, ideal for casual file editing, surpassing nano and vim in simplicity for regular use.


Continue reading

How to View Files in an RPM Package on Linux

Posted on Thu 25 December 2025 in Systems • Tagged with linux, rpm, packages, commands, systems, administration, dnf, yum

Quick guide to inspecting the contents of RPM packages and determining which packages own specific files on your Linux system.


Continue reading

Kooha: Simple and Elegant Screen Recording on Linux

Posted on Thu 25 December 2025 in Tools • Tagged with linux, kooha, screen-recorder, productivity, tools, open-source

Discover Kooha, a minimalist screen recording application for Linux that combines ease of use with essential features.


Continue reading

OpenEvidence: The Leading Medical Information Platform for Professionals

Posted on Thu 25 December 2025 in Miscellaneous • Tagged with open-evidence, medicine, health, medical-information, health-professionals, research, clinical

Exploring OpenEvidence, a leading platform that consolidates medical information, clinical findings, and practice guidelines for healthcare professionals in the US.


Continue reading

`direnv`: Manage your development environments intelligently

Posted on Thu 25 December 2025 in Tools • Tagged with direnv, shell, environment, productivity, development, linux, tools

Discover direnv, a shell extension that automatically loads and unloads environment variables when changing directories, keeping your configuration clean and organized.


Continue reading

`docker-http-https-echo`: An Essential Tool for Network Debugging

Posted on Thu 25 December 2025 in Tools • Tagged with docker, http, https, debugging, networking, tools, containers

mendhak/docker-http-https-echo is a simple Docker container that facilitates debugging network configurations, proxies, and load balancers.


Continue reading

Kubegres: Simplified PostgreSQL Management on Kubernetes

Posted on Thu 25 December 2025 in DevOps • Tagged with kubernetes, postgresql, kubegres, operator, database, devops

Discover Kubegres, a Kubernetes operator that simplifies the deployment and management of highly available and scalable PostgreSQL clusters.


Continue reading

TCP Connection States in GNU/Linux: netstat and ss

Posted on Thu 25 December 2025 in Systems • Tagged with linux, networking, tcp, netstat, ss, systems

Understand the different TCP connection states reported by netstat and ss, from establishment to termination, for better network diagnosis.


Continue reading

Reduce Noise in Your Python Logs: A Smart Approach

Posted on Thu 25 December 2025 in Programming • Tagged with python, logging, logs, debugging, development

Learn how to configure Python's logging module to avoid message overload from third-party libraries, keeping your logs clean and useful.


Continue reading

Kitty as a Quick Access Terminal: The Convenience of a Dropdown

Posted on Thu 25 December 2025 in Systems • Tagged with kitty, terminal, quick-access, productivity, linux, shortcuts

Configure Kitty for instant and efficient access, combining the power of a modern terminal with the convenience of a dropdown.


Continue reading

Essential Keyboard Shortcuts in Kitty: Mastering Your Terminal

Posted on Thu 25 December 2025 in Systems • Tagged with kitty, terminal, shortcuts, keyboard, productivity

A quick guide to the most useful Kitty keyboard shortcuts to optimize your command-line workflow.


Continue reading

From Yakuake to Kitty: My Transition to a Modern Terminal

Posted on Thu 25 December 2025 in Systems • Tagged with kitty, yakuake, terminal, linux, productivity, tools

Exploring the reasons and benefits of switching from Yakuake to Kitty for a more powerful and customizable terminal experience.


Continue reading

Poe the Poet: Automating Tasks in Python Projects with uv

Posted on Thu 25 December 2025 in Programming • Tagged with python, uv, poethepoet, automation, pyproject.toml

Discover how Poe the Poet allows you to define and execute custom commands directly from your pyproject.toml, optimizing your workflow in uv environments.


Continue reading

How I Use Git Worktrees for Concurrent Work

Posted on Wed 23 July 2025 in Programming • Tagged with git, worktrees, workflow, productivity

A practical approach to using git worktrees and maximizing productivity with multiple simultaneous work contexts


Continue reading

Hybrid Search with SQLite: Vector + Full-Text

Posted on Sun 06 October 2024 in Programming • Tagged with sqlite, search, vectors, fts, sql

Combining vector search and full-text search in SQLite using Reciprocal Rank Fusion for better results


Continue reading

Geospatial Data Conflation with DuckDB and Embeddings

Posted on Tue 01 October 2024 in Programming • Tagged with duckdb, geospatial, embeddings, ollama, h3

Advanced techniques to integrate geospatial data sources using DuckDB, H3, Ollama, and embedding models


Continue reading

HTTPX: Modern HTTP Client for Python

Posted on Mon 23 September 2024 in Programming • Tagged with python, http, httpx, async, requests

HTTPX emerges as the natural successor to requests, offering async support, HTTP/2, and a modern API for contemporary Python applications.


Continue reading

Server-Sent Events: Simplified Real-Time Communication

Posted on Mon 23 September 2024 in Programming • Tagged with javascript, sse, real-time, web-apis

Server-Sent Events offer a simple and efficient alternative to WebSockets for unidirectional server-to-client communication in web applications


Continue reading

About Versions

Posted on Mon 01 May 2017 in Programming • Tagged with python


Continue reading

MobaXterm. Much more than an ssh client

Posted on Tue 11 April 2017 in Tricks • Tagged with linux


Continue reading

PosteRazor: Create Giant Posters from Any Image

Posted on Fri 24 February 2017 in Tools • Tagged with posterazor, printing, posters, diy, tools

PosteRazor converts any image into a giant poster by splitting the image into printable pages that you can assemble


Continue reading

Unread Mail in Gmail's Primary Tab

Posted on Thu 28 July 2016 in Tricks • Tagged with linux

As always, another reminder note.

If you filter mail in gmail by unread (is:unread), you get all unread mail, which in my case always includes hundreds of notifications, social, promotions, or forums which is usually not what I'm looking for.

To search for unread emails from the Primary tab …


Continue reading

Technical Documentation with Sphinx, Paver, and Cog

Posted on Thu 14 July 2016 in Documentation • Tagged with sphinx, paver, cog, documentation, rst, automation

Automated workflow to create technical documentation using Sphinx, Paver, and Cog, eliminating repetitive tasks and manual errors in code examples


Continue reading

Determining RAM slots in use on Linux

Posted on Wed 13 July 2016 in Linux • Tagged with linux, ram, dmidecode, lshw, hardware, memory

Linux commands to determine how many RAM slots are occupied and their capacity using dmidecode, lshw, and hardware inspection techniques


Continue reading

Introduction to High-Frequency Trading Systems

Posted on Mon 27 June 2016 in Finance • Tagged with trading, hft, high-frequency, algorithms, finance

Fundamental concepts about High-Frequency Trading (HFT) systems, programs that execute thousands of trades per day in fractions of a second


Continue reading

How to Find Live Hosts on Your Local Network

Posted on Mon 27 June 2016 in Security • Tagged with nmap, network-discovery, arp-scan, netdiscover, security

Methods and tools to discover active devices on local networks using nmap, arp-scan, netdiscover, and other reconnaissance techniques


Continue reading

Powerful Command Line Tools for Developers

Posted on Tue 07 June 2016 in Tools • Tagged with cli, tools, development, networking, testing

Collection of essential command line tools for developers: curl, ngrep, netcat, sshuttle, siege, and mitmproxy


Continue reading

Sysdig: Cloud-Native Security Platform with AI

Posted on Wed 10 February 2016 in Tools • Tagged with sysdig, security, cloud, kubernetes, falco

Sysdig offers a comprehensive security platform for cloud-native environments that combines AI, real-time visibility, and open source innovation


Continue reading

Python: Create Repeating Generators

Posted on Tue 09 February 2016 in Python • Tagged with python, generators, itertools, decorators, yield

Techniques in Python to create generators that can be iterated multiple times, overcoming the "one-shot" limitation of standard generators


Continue reading

Middle click in firefox

Posted on Fri 01 January 2016 in Systems • Tagged with linux

Stop firefox from opening the pasted url with the middle mouse button


Continue reading

Bootstrap: Two Links in the Same Row in Dropdown

Posted on Tue 15 December 2015 in Frontend • Tagged with bootstrap, css, dropdown, flexbox, html

CSS technique to place two links on the same horizontal row within a Bootstrap dropdown menu using flexbox


Continue reading

Galen Framework: Automated Testing for Responsive Design

Posted on Fri 13 November 2015 in Testing • Tagged with galen, testing, responsive, layout, selenium

Galen Framework simplifies automated testing of responsive layouts by verifying the position and appearance of elements across different devices


Continue reading

The Story Behind X-Forwarded-For and X-Real-IP

Posted on Wed 21 October 2015 in Networking • Tagged with headers, x-forwarded-for, x-real-ip, proxy, nginx

Analysis of X-Forwarded-For and X-Real-IP headers, their origins, differences, and how to determine the client's real IP in architectures with multiple proxies


Continue reading

Nginx: Configuring X-Forwarded-For in Reverse Proxy

Posted on Wed 21 October 2015 in DevOps • Tagged with nginx, reverse-proxy, x-forwarded-for, real-ip, configuration

How to configure Nginx to pass the client's real IP to backend servers using the X-Forwarded-For header in reverse proxy configurations


Continue reading

SQL: Select Rows with Max Value per Group

Posted on Wed 21 October 2015 in SQL • Tagged with sql, mysql, queries, window-functions, joins

SQL techniques to select complete rows with the maximum value of a column within groups, comparing performance of subqueries, joins, and window functions


Continue reading

Repeating a function with threads

Posted on Sun 03 May 2015 in Programming • Tagged with python

Let's use threads in python to periodically execute a function


Continue reading

Install InSync on Opensuse

Posted on Mon 20 April 2015 in Systems • Tagged with django, python


Continue reading

NetHogs see consumed bandwidth

Posted on Thu 16 April 2015 in Systems • Tagged with linux

To measure the bandwidth I am using right now, I use NetHogs

By default, it looks for a network interface called "eth0". If it doesn't find it, it complains like this:

ioctl failed while establishing local IP for selected device eth0. You may specify the device on the command line …

Continue reading

Google Code is Closing

Posted on Fri 13 March 2015 in Programming • Tagged with python

As I said, Google announced the closure of Google Code.

Today I received the email notifying me (I had a test project hosted there) that I could move my projects simply to github, the de facto repository for free software today (sorry for bitbucket and especially for mercurial).

Its interface …


Continue reading

pgcli the discovery of the day

Posted on Mon 02 March 2015 in Programming • Tagged with postgresql

postresql command line


Continue reading

Blogging again

Posted on Fri 20 February 2015 in Personal • Tagged with python

I am writing again.


Continue reading

Ajax view decorator

Posted on Fri 21 November 2014 in Programming • Tagged with python, django

To force a django view to be called only via AJAX calls.

def ajax_required(f):
    """
    AJAX request required decorator
    use it in your views:

    @ajax_required
    def my_view(request):
        ....

    """
    def wrap(request, *args, **kwargs):
        if not request.is_ajax():
            return HttpResponseBadRequest()
        return f(request, *args, **kwargs)
    wrap.__doc__ = f.__doc__
    wrap.__name__ …

Continue reading

Generic function to use as upload_to

Posted on Sat 11 October 2014 in Programming • Tagged with django, python

FileFields in Django need an upload_to function that determines where the file will be uploaded. I usually have a generic function in utils.py that leaves them in a subfolder with the model name.

import os

def generic_upload_to(instance, filename):
    """
    Generic `upload_to` function for models.FileField and models.ImageField
    which …

Continue reading

Django: links in object list

Posted on Wed 21 May 2014 in Programming • Tagged with django, python

In my projects I usually use links to related items in the admin change_list.

utils.py

I have this in utils.py

from django.contrib import admin
from django.contrib.contenttypes.models import ContentType
from django.core import urlresolvers
from django.utils.datastructures import SortedDict …

Continue reading

Settings vars processor

Posted on Wed 08 January 2014 in Programming • Tagged with python, django

I usually use this at the beginning of projects.

from django.conf import settings as django_settings
from django.core.exceptions import ImproperlyConfigured


def settings(request):
    """
    Adds the settings specified in settings.TEMPLATE_VISIBLE_SETTINGS to
    the request context.
    """
    new_settings = {}
    for attr in django_settings.TEMPLATE_VISIBLE_SETTINGS:
        try:
            new_settings[attr] = getattr(django_settings, attr)
        except AttributeError …

Continue reading