<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
    <title>Heitor&#x27;s log</title>
    <subtitle>My corner of the web.</subtitle>
    <link rel="self" type="application/atom+xml" href="https://heitorpb.github.io/atom.xml"/>
    <link rel="alternate" type="text/html" href="https://heitorpb.github.io"/>
    <generator uri="https://www.getzola.org/">Zola</generator>
    <updated>2026-03-25T00:00:00+00:00</updated>
    <id>https://heitorpb.github.io/atom.xml</id>
    <entry xml:lang="en">
        <title># is not always a comment symbol in Bash</title>
        <published>2026-03-23T00:00:00+00:00</published>
        <updated>2026-03-23T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/hashtag-bash/"/>
        <id>https://heitorpb.github.io/bla/hashtag-bash/</id>
        
        <summary type="html">`#` starts a comment in Bash, but not always. A small quirk with a clear rule.</summary>
        
        <category term="Bash"/>
        
        <category term="TIL"/>
        
        <category term="terminal"/>
        </entry>
    <entry xml:lang="en">
        <title>TIL: how to check why a Nix package is in the Nix Store</title>
        <published>2026-03-10T00:00:00+00:00</published>
        <updated>2026-03-10T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/nix-why-depends/"/>
        <id>https://heitorpb.github.io/bla/nix-why-depends/</id>
        
        <summary type="html">Ever wondered why a package ended up in your Nix store? Here&#x27;s how nix why-depends can help you find out.</summary>
        
        <category term="Linux"/>
        
        <category term="NixOS"/>
        
        <category term="Nix"/>
        
        <category term="TIL"/>
        </entry>
    <entry xml:lang="en">
        <title>Betting on the Lottery with Bash and &#x2F;dev&#x2F;urandom</title>
        <published>2025-12-05T00:00:00+00:00</published>
        <updated>2025-12-05T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/lottery-bash/"/>
        <id>https://heitorpb.github.io/bla/lottery-bash/</id>
        
        <summary type="html">Trying to win the lottery with pure Linux RNG magic.</summary>
        
        <category term="Linux"/>
        
        <category term="random"/>
        
        <category term="Bash"/>
        
        <category term="&#x2F;dev&#x2F;urandom"/>
        
        <category term="lottery"/>
        
        <category term="CLI"/>
        
        <category term="terminal"/>
        </entry>
    <entry xml:lang="en">
        <title>Benchmarking checksum tools</title>
        <published>2025-11-27T00:00:00+00:00</published>
        <updated>2025-11-27T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/checksum-benchmark/"/>
        <id>https://heitorpb.github.io/bla/checksum-benchmark/</id>
        
        <summary type="html">There are plenty of CLI tools to calculate the checksum of files. But, which one is the fastest?</summary>
        
        <category term="CLI"/>
        
        <category term="terminal"/>
        
        <category term="checksum"/>
        
        <category term="hash"/>
        
        <category term="BLAKE2b"/>
        
        <category term="CRC"/>
        
        <category term="MD5"/>
        
        <category term="SHA"/>
        
        <category term="xxHash"/>
        
        <category term="benchmark"/>
        
        <category term="hyperfine"/>
        </entry>
    <entry xml:lang="en">
        <title>Firmware updates on Linux via fwupd</title>
        <published>2025-10-14T00:00:00+00:00</published>
        <updated>2026-03-12T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/update-devices-firmware/"/>
        <id>https://heitorpb.github.io/bla/update-devices-firmware/</id>
        
        <summary type="html">How to use fwupd to update device&#x27;s firmware on Linux.</summary>
        
        <category term="Linux"/>
        
        <category term="fwupd"/>
        
        <category term="firmware"/>
        
        <category term="LVFS"/>
        </entry>
    <entry xml:lang="en">
        <title>TIL: timeout in Bash scripts</title>
        <published>2025-05-20T00:00:00+00:00</published>
        <updated>2025-05-20T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/timeout/"/>
        <id>https://heitorpb.github.io/bla/timeout/</id>
        
        <summary type="html">How to use the `timeout` command to terminate processes after a specified time and how to combine it with `until` for smarter shell scripting.</summary>
        
        <category term="terminal"/>
        
        <category term="timeout"/>
        
        <category term="Bash"/>
        
        <category term="until"/>
        </entry>
    <entry xml:lang="en">
        <title>Git aliases</title>
        <published>2025-04-24T00:00:00+00:00</published>
        <updated>2025-04-24T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/git-aliases/"/>
        <id>https://heitorpb.github.io/bla/git-aliases/</id>
        
        <summary type="html">Boosting productivity with Git aliases: what they are, their benefits over shell aliases, setup, and examples.</summary>
        
        <category term="git"/>
        
        <category term="CLI"/>
        
        <category term="terminal"/>
        
        <category term="tricks"/>
        </entry>
    <entry xml:lang="en">
        <title>Pushing Docker images to a remote host</title>
        <published>2025-03-28T00:00:00+00:00</published>
        <updated>2025-03-28T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/push-docker-img/"/>
        <id>https://heitorpb.github.io/bla/push-docker-img/</id>
        
        <summary type="html">How to push and pull Docker&#x2F;Podman images to a remote server, without using an Image Registry.</summary>
        
        <category term="Linux"/>
        
        <category term="Docker"/>
        
        <category term="Podman"/>
        
        <category term="sysadmin"/>
        
        <category term="TIL"/>
        </entry>
    <entry xml:lang="en">
        <title>Temporary files and directories in Python</title>
        <published>2025-02-19T00:00:00+00:00</published>
        <updated>2025-02-19T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/pytmp/"/>
        <id>https://heitorpb.github.io/bla/pytmp/</id>
        
        <summary type="html">Creating temporary files and directories in Python, using the standard library module `tempfile`.</summary>
        
        <category term="Python"/>
        
        <category term="random"/>
        
        <category term="TIL"/>
        
        <category term="pytest"/>
        </entry>
    <entry xml:lang="en">
        <title>Handling tarballs in Python</title>
        <published>2024-11-19T00:00:00+00:00</published>
        <updated>2024-11-19T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/tarballing-in-python/"/>
        <id>https://heitorpb.github.io/bla/tarballing-in-python/</id>
        
        <summary type="html">Need to work with tar files in Python? Here&#x27;s how to create and extract compressed tarballs effortlessly.</summary>
        
        <category term="Python"/>
        
        <category term="TIL"/>
        
        <category term="tar"/>
        
        <category term="tarfile"/>
        </entry>
    <entry xml:lang="en">
        <title>Generating random strings in Bash</title>
        <published>2024-09-24T00:00:00+00:00</published>
        <updated>2024-09-24T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/random-strings-bash/"/>
        <id>https://heitorpb.github.io/bla/random-strings-bash/</id>
        
        <summary type="html">How to generate random strings in Bash.</summary>
        
        <category term="Bash"/>
        
        <category term="TIL"/>
        
        <category term="random"/>
        
        <category term="shell"/>
        
        <category term="string"/>
        
        <category term="&#x2F;dev&#x2F;urandom"/>
        </entry>
    <entry xml:lang="en">
        <title>Setting up Mainsail on Ender 3 V3 KE</title>
        <published>2024-09-03T00:00:00+00:00</published>
        <updated>2024-09-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/ender3v3ke-mainsail/"/>
        <id>https://heitorpb.github.io/bla/ender3v3ke-mainsail/</id>
        
        <summary type="html">How to setup Mainsail and webcam support on Creality Ender 3 V3 KE printer.</summary>
        
        <category term="3D printing"/>
        
        <category term="Mainsail"/>
        
        <category term="Creality"/>
        
        <category term="Ender 3 V3 KE"/>
        </entry>
    <entry xml:lang="en">
        <title>TIL: looping over hex numbers in Bash</title>
        <published>2024-06-13T00:00:00+00:00</published>
        <updated>2024-06-13T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/looping-over-hex-numbers-in-bash/"/>
        <id>https://heitorpb.github.io/bla/looping-over-hex-numbers-in-bash/</id>
        
        <summary type="html">TIL: looping over hexadecimal numbers in Bash just takes one line.</summary>
        
        <category term="TIL"/>
        
        <category term="Bash"/>
        
        <category term="Python"/>
        
        <category term="hexadecimal"/>
        
        <category term="terminal"/>
        </entry>
    <entry xml:lang="en">
        <title>TIL: Listing PCI devices by their vendor or class</title>
        <published>2024-06-05T00:00:00+00:00</published>
        <updated>2024-06-05T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/lspci-device-classes/"/>
        <id>https://heitorpb.github.io/bla/lspci-device-classes/</id>
        
        <summary type="html">Listing PCI devices by manufacturer and&#x2F;or device type&#x2F;class.</summary>
        
        <category term="Linux"/>
        
        <category term="lspci"/>
        
        <category term="TIL"/>
        </entry>
    <entry xml:lang="en">
        <title>jq trickery</title>
        <published>2024-05-10T00:00:00+00:00</published>
        <updated>2026-03-25T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/jq-trickery/"/>
        <id>https://heitorpb.github.io/bla/jq-trickery/</id>
        
        <summary type="html">`jq` tricks that I learned over the years to parse JSONs.</summary>
        
        <category term="CLI"/>
        
        <category term="jq"/>
        
        <category term="JSON"/>
        
        <category term="Python"/>
        
        <category term="tricks"/>
        
        <category term="magic"/>
        
        <category term="terminal"/>
        </entry>
    <entry xml:lang="en">
        <title>Prettify and uglify JSONs in Vim</title>
        <published>2024-03-27T00:00:00+00:00</published>
        <updated>2024-03-27T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/prettify-uglify-jsons-in-vim/"/>
        <id>https://heitorpb.github.io/bla/prettify-uglify-jsons-in-vim/</id>
        
        <summary type="html">How to turn ugly JSONs into pretty JSONs inside Vim. And vice versa.</summary>
        
        <category term="vim"/>
        
        <category term="nvim"/>
        
        <category term="JSON"/>
        
        <category term="TIL"/>
        
        <category term="jq"/>
        </entry>
    <entry xml:lang="en">
        <title>The wonders of Nix remote builders</title>
        <published>2024-01-24T00:00:00+00:00</published>
        <updated>2024-01-24T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/wonders-of-nix-remote-builders/"/>
        <id>https://heitorpb.github.io/bla/wonders-of-nix-remote-builders/</id>
        
        <summary type="html">The more I use NixOS the more interesting it gets. I now found out about remote builders and those are just awesome.</summary>
        
        <category term="Linux"/>
        
        <category term="Nix"/>
        
        <category term="NixOS"/>
        
        <category term="Distributed Systems"/>
        
        <category term="Distributed Builds"/>
        </entry>
    <entry xml:lang="en">
        <title>Formatting tables in Vim&#x2F;NeoVim</title>
        <published>2023-10-31T00:00:00+00:00</published>
        <updated>2024-04-07T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/format-tables-in-vim/"/>
        <id>https://heitorpb.github.io/bla/format-tables-in-vim/</id>
        
        <summary type="html">How to pretty format a Markdown table using vanilla Vim or NeoVim. No plugins needed, just two steps.</summary>
        
        <category term="vim"/>
        
        <category term="nvim"/>
        
        <category term="table"/>
        
        <category term="TIL"/>
        
        <category term="Markdown"/>
        </entry>
    <entry xml:lang="en">
        <title>Deploying Nomad on NixOS</title>
        <published>2023-10-19T00:00:00+00:00</published>
        <updated>2023-10-19T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/nomad-on-nixos/"/>
        <id>https://heitorpb.github.io/bla/nomad-on-nixos/</id>
        
        <summary type="html">How to get Nomad running on NixOS for local development, with Podman and Docker task drivers.</summary>
        
        <category term="NixOS"/>
        
        <category term="Nomad"/>
        
        <category term="sysadmin"/>
        
        <category term="Linux"/>
        
        <category term="Docker"/>
        
        <category term="Podman"/>
        
        <category term="Nix"/>
        </entry>
    <entry xml:lang="en">
        <title>Multiplexing the output of a process to multiple processes</title>
        <published>2023-09-19T00:00:00+00:00</published>
        <updated>2023-09-19T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/multiplexing-stdout/"/>
        <id>https://heitorpb.github.io/bla/multiplexing-stdout/</id>
        
        <summary type="html">How to feed the output of one process to multiple other processes simultaneously, using tee and Bash&#x27;s process substitution.</summary>
        
        <category term="CLI"/>
        
        <category term="terminal"/>
        
        <category term="TIL"/>
        
        <category term="Bash"/>
        
        <category term="process substitution"/>
        
        <category term="tee"/>
        </entry>
    <entry xml:lang="en">
        <title>Finding out your public IP address via curl</title>
        <published>2023-09-01T00:00:00+00:00</published>
        <updated>2023-09-01T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/ip-rs/"/>
        <id>https://heitorpb.github.io/bla/ip-rs/</id>
        
        <summary type="html">How to find out your public IP address on the command line after reinventing the wheel using Rust, Axum, Nix, a docker image and Fly.io.</summary>
        
        <category term="curl"/>
        
        <category term="REST"/>
        
        <category term="Rust"/>
        
        <category term="ReinventingTheWheel"/>
        
        <category term="networking"/>
        
        <category term="Fly.io"/>
        
        <category term="CLI"/>
        
        <category term="terminal"/>
        </entry>
    <entry xml:lang="en">
        <title>Symbolic links in Python are easier</title>
        <published>2023-08-14T00:00:00+00:00</published>
        <updated>2023-08-14T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/symbolic-links-in-python-are-easier/"/>
        <id>https://heitorpb.github.io/bla/symbolic-links-in-python-are-easier/</id>
        
        <summary type="html">How to create symbolic links in Python. Easier than using ln.</summary>
        
        <category term="Linux"/>
        
        <category term="Python"/>
        
        <category term="sysadmin"/>
        
        <category term="symlink"/>
        
        <category term="TIL"/>
        
        <category term="CLI"/>
        
        <category term="terminal"/>
        </entry>
    <entry xml:lang="en">
        <title>Repairing an RGB LED controller</title>
        <published>2023-08-03T00:00:00+00:00</published>
        <updated>2023-08-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/repairing-led-rgb-controller/"/>
        <id>https://heitorpb.github.io/bla/repairing-led-rgb-controller/</id>
        
        <summary type="html">Fixing an RGB LED controller.</summary>
        
        <category term="Electronics"/>
        
        <category term="troubleshooting"/>
        
        <category term="DIY"/>
        </entry>
    <entry xml:lang="en">
        <title>Copying files to privileged locations with rsync</title>
        <published>2023-07-16T00:00:00+00:00</published>
        <updated>2023-07-16T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/copying-files-to-privileged-locations-with-rsync/"/>
        <id>https://heitorpb.github.io/bla/copying-files-to-privileged-locations-with-rsync/</id>
        
        <summary type="html">How to copy files to remote servers that require sudo.</summary>
        
        <category term="Linux"/>
        
        <category term="rsync"/>
        
        <category term="TIL"/>
        
        <category term="sysadmin"/>
        
        <category term="CLI"/>
        
        <category term="terminal"/>
        </entry>
    <entry xml:lang="en">
        <title>ip route add blackhole</title>
        <published>2023-05-25T00:00:00+00:00</published>
        <updated>2023-05-25T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/ip-route-add-blackhole/"/>
        <id>https://heitorpb.github.io/bla/ip-route-add-blackhole/</id>
        
        <summary type="html">What is a blackhole route and how to create one on Linux.</summary>
        
        <category term="Linux"/>
        
        <category term="sysadmin"/>
        
        <category term="networking"/>
        
        <category term="TIL"/>
        
        <category term="CLI"/>
        
        <category term="terminal"/>
        
        <category term="iproute2"/>
        
        <category term="blackhole"/>
        </entry>
    <entry xml:lang="en">
        <title>My website v5: rewrite in Rust</title>
        <published>2023-04-25T00:00:00+00:00</published>
        <updated>2023-04-25T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/rewriting-in-rust/"/>
        <id>https://heitorpb.github.io/bla/rewriting-in-rust/</id>
        
        <summary type="html">The history of my website - so far.</summary>
        
        <category term="website"/>
        
        <category term="zola"/>
        
        <category term="history"/>
        </entry>
    <entry xml:lang="en">
        <title>I Just Finished my Master&#x27;s in Physics</title>
        <published>2021-03-14T00:00:00+00:00</published>
        <updated>2021-03-14T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/i-finished-my-masters/"/>
        <id>https://heitorpb.github.io/bla/i-finished-my-masters/</id>
        
        <summary type="html">Hell yeah! I made it!</summary>
        
        <category term="analysis"/>
        
        <category term="Electronics"/>
        
        <category term="Physics"/>
        
        <category term="SAT"/>
        </entry>
    <entry xml:lang="en">
        <title>Juju is Fucking Amazing</title>
        <published>2021-02-16T00:00:00+00:00</published>
        <updated>2021-02-16T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/juju-is-fucking-amazing/"/>
        <id>https://heitorpb.github.io/bla/juju-is-fucking-amazing/</id>
        
        <summary type="html">How I found an Easter egg after being challenged by my boss.</summary>
        
        <category term="Juju"/>
        
        <category term="easter-egg"/>
        
        <category term="golang"/>
        
        <category term="random"/>
        
        <category term="CLI"/>
        
        <category term="terminal"/>
        </entry>
    <entry xml:lang="en">
        <title>std::adjacent_find</title>
        <published>2021-01-03T00:00:00+00:00</published>
        <updated>2021-01-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/std-adjacent-find/"/>
        <id>https://heitorpb.github.io/bla/std-adjacent-find/</id>
        
        <summary type="html">Exploiting C++ std::adjacent_find predicates.</summary>
        
        <category term="algorithm"/>
        
        <category term="C++"/>
        </entry>
    <entry xml:lang="en">
        <title>My thoughts on PiHole</title>
        <published>2020-11-10T00:00:00+00:00</published>
        <updated>2020-11-10T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/pihole-dnsmasq/"/>
        <id>https://heitorpb.github.io/bla/pihole-dnsmasq/</id>
        
        <summary type="html">My experience with PiHole after one month.</summary>
        
        <category term="Linux"/>
        
        <category term="networking"/>
        
        <category term="PiHole"/>
        
        <category term="Raspberry Pi"/>
        
        <category term="sysadmin"/>
        </entry>
    <entry xml:lang="en">
        <title>Linux Upskill Challenge</title>
        <published>2020-10-30T00:00:00+00:00</published>
        <updated>2020-10-30T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/linuxupskill/"/>
        <id>https://heitorpb.github.io/bla/linuxupskill/</id>
        
        <summary type="html">My notes about the Linux Upskill Challenge.</summary>
        
        <category term="Linux"/>
        
        <category term="sysadmin"/>
        </entry>
    <entry xml:lang="en">
        <title>Setting up Raspberry Pi 3 with PiHole</title>
        <published>2020-10-13T00:00:00+00:00</published>
        <updated>2020-10-13T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/rasp3-pihole/"/>
        <id>https://heitorpb.github.io/bla/rasp3-pihole/</id>
        
        <summary type="html">How to setup PiHole on a Raspberry Pi.</summary>
        
        <category term="Linux"/>
        
        <category term="networking"/>
        
        <category term="PiHole"/>
        
        <category term="Raspberry Pi"/>
        
        <category term="sysadmin"/>
        </entry>
    <entry xml:lang="en">
        <title>Be careful with your Docker logs</title>
        <published>2020-09-13T00:00:00+00:00</published>
        <updated>2020-09-13T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/careful-with-docker-logs/"/>
        <id>https://heitorpb.github.io/bla/careful-with-docker-logs/</id>
        
        <summary type="html">Logs are important. But they might fill your disk. Here I show how to configure Docker daemon to rotate logs.</summary>
        
        <category term="Docker"/>
        
        <category term="Linux"/>
        
        <category term="optimization"/>
        
        <category term="sysadmin"/>
        </entry>
    <entry xml:lang="en">
        <title>Multiple urls for a git remote</title>
        <published>2020-08-11T00:00:00+00:00</published>
        <updated>2020-08-11T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/git-multiple-remotes/"/>
        <id>https://heitorpb.github.io/bla/git-multiple-remotes/</id>
        
        <summary type="html">How to use multiple git remotes for easier repository management.</summary>
        
        <category term="git"/>
        
        <category term="TIL"/>
        </entry>
    <entry xml:lang="en">
        <title>Caching computation in Python</title>
        <published>2020-06-24T00:00:00+00:00</published>
        <updated>2020-06-24T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/caching-python/"/>
        <id>https://heitorpb.github.io/bla/caching-python/</id>
        
        <summary type="html">What is memoization and how to use it to cache the output of functions in Python.</summary>
        
        <category term="Python"/>
        
        <category term="optimization"/>
        
        <category term="cache"/>
        </entry>
    <entry xml:lang="en">
        <title>Convert files to UTF-8</title>
        <published>2020-05-12T00:00:00+00:00</published>
        <updated>2020-05-12T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/utf-8-files/"/>
        <id>https://heitorpb.github.io/bla/utf-8-files/</id>
        
        <summary type="html">How to convert file encodings in the terminal.</summary>
        
        <category term="encoding"/>
        
        <category term="Linux"/>
        
        <category term="TIL"/>
        
        <category term="CLI"/>
        
        <category term="terminal"/>
        </entry>
    <entry xml:lang="en">
        <title>Random numbers from &#x2F;dev&#x2F;urandom in Bash</title>
        <published>2020-04-07T00:00:00+00:00</published>
        <updated>2020-04-07T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/bash-random-numbers/"/>
        <id>https://heitorpb.github.io/bla/bash-random-numbers/</id>
        
        <summary type="html">How to get random integers from &#x2F;dev&#x2F;random in Bash.</summary>
        
        <category term="Linux"/>
        
        <category term="Bash"/>
        
        <category term="random"/>
        
        <category term="TIL"/>
        
        <category term="CLI"/>
        
        <category term="terminal"/>
        
        <category term="&#x2F;dev&#x2F;random"/>
        
        <category term="&#x2F;dev&#x2F;urandom"/>
        </entry>
    <entry xml:lang="en">
        <title>Always close your Matplotlib figures</title>
        <published>2020-03-18T00:00:00+00:00</published>
        <updated>2020-03-18T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/close-matplotlib-figures/"/>
        <id>https://heitorpb.github.io/bla/close-matplotlib-figures/</id>
        
        <summary type="html">Close your matplotlib figures for faster image generation.</summary>
        
        <category term="Python"/>
        
        <category term="matplotlib"/>
        
        <category term="analysis"/>
        </entry>
    <entry xml:lang="en">
        <title>Python.format</title>
        <published>2018-11-29T00:00:00+00:00</published>
        <updated>2018-11-29T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/python-format/"/>
        <id>https://heitorpb.github.io/bla/python-format/</id>
        
        <summary type="html">Fun with Python format().</summary>
        
        <category term="Python"/>
        
        <category term="random"/>
        
        <category term="TIL"/>
        </entry>
    <entry xml:lang="en">
        <title>Treasure Hunt</title>
        <published>2018-10-20T00:00:00+00:00</published>
        <updated>2018-10-20T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/geocaching/"/>
        <id>https://heitorpb.github.io/bla/geocaching/</id>
        
        <summary type="html">I hunted a treasure. Treasure hunting is actually a sport called geocaching.</summary>
        
        <category term="hiking"/>
        
        <category term="geocache"/>
        </entry>
    <entry xml:lang="en">
        <title>Hiking in Essertines - Switzerland</title>
        <published>2018-10-16T00:00:00+00:00</published>
        <updated>2018-10-16T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/essertineshiking/"/>
        <id>https://heitorpb.github.io/bla/essertineshiking/</id>
        
        <summary type="html">Switzerland is amazing for Hiking. Here&#x27;s how one went.</summary>
        
        <category term="photography"/>
        
        <category term="hiking"/>
        
        <category term="analysis"/>
        </entry>
    <entry xml:lang="en">
        <title>The Swiss Far West and GPX fun</title>
        <published>2018-09-25T00:00:00+00:00</published>
        <updated>2018-09-25T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/swissfarwest/"/>
        <id>https://heitorpb.github.io/bla/swissfarwest/</id>
        
        <summary type="html">GPX fun in Python.</summary>
        
        <category term="hiking"/>
        
        <category term="analysis"/>
        
        <category term="Python"/>
        </entry>
    <entry xml:lang="en">
        <title>Mussum Ipsum</title>
        <published>2018-09-06T00:00:00+00:00</published>
        <updated>2018-09-06T00:00:00+00:00</updated>
        
        <author>
          <name>
            Diego Esteves
          </name>
        </author>
        
        <author>
          <name>
            Cicero
          </name>
        </author>
        
        <author>
          <name>
            Mussum
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/lorem/"/>
        <id>https://heitorpb.github.io/bla/lorem/</id>
        
        <summary type="html">Mussum Impsum.</summary>
        
        <category term="test"/>
        
        <category term="random"/>
        </entry>
    <entry xml:lang="en">
        <title>test</title>
        <published>2018-09-05T00:00:00+00:00</published>
        <updated>2018-09-05T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Heitor de Bittencourt
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://heitorpb.github.io/bla/test/"/>
        <id>https://heitorpb.github.io/bla/test/</id>
        
        <summary type="html">Test description.</summary>
        
        <category term="test"/>
        
        <category term="random"/>
        </entry>
</feed>
