<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Data Lab Tech TV</title><link>https://datalabtechtv.com/posts/</link><description>Recent content on Data Lab Tech TV</description><generator>Hugo -- gohugo.io</generator><language>en</language><copyright>© 2026 Data Lab Tech</copyright><lastBuildDate>Tue, 11 Aug 2026 12:00:00 +0100</lastBuildDate><atom:link href="https://datalabtechtv.com/posts/index.xml" rel="self" type="application/rss+xml"/><item><title>Seccomp BPF Profiles - Paranoid Level Sandboxing #4</title><link>https://datalabtechtv.com/posts/paranoid-level-sandboxing-part-4-seccomp-bpf-profiles/</link><pubDate>Tue, 11 Aug 2026 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/paranoid-level-sandboxing-part-4-seccomp-bpf-profiles/</guid><description>Learn how to sandbox untrusted software, with Seccomp BPF, applied to containers.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/paranoid-level-sandboxing-part-4-seccomp-bpf-profiles/feature.jpg"/></item><item><title>Landlock Rulesets with Nono Profiles - Paranoid Level Sandboxing #3</title><link>https://datalabtechtv.com/posts/paranoid-level-sandboxing-part-3-landlock-rulesets-with-nono/</link><pubDate>Tue, 04 Aug 2026 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/paranoid-level-sandboxing-part-3-landlock-rulesets-with-nono/</guid><description>Learn how to sandbox untrusted software, through Landlock rulesets with Nono profiles.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/paranoid-level-sandboxing-part-3-landlock-rulesets-with-nono/feature.jpg"/></item><item><title>Container Runtime Hardening with Podman - Paranoid Level Sandboxing #2</title><link>https://datalabtechtv.com/posts/paranoid-level-sandboxing-part-2-container-runtime-hardening/</link><pubDate>Tue, 28 Jul 2026 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/paranoid-level-sandboxing-part-2-container-runtime-hardening/</guid><description>Learn how to sandbox untrusted software through container runtime hardening.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/paranoid-level-sandboxing-part-2-container-runtime-hardening/feature.jpg"/></item><item><title>The Sandbox Stack - Paranoid Level Sandboxing #1</title><link>https://datalabtechtv.com/posts/paranoid-level-sandboxing-part-1-the-sandbox-stack/</link><pubDate>Tue, 21 Jul 2026 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/paranoid-level-sandboxing-part-1-the-sandbox-stack/</guid><description>Learn how to sandbox untrusted software, using containers, landlock, seccomp, nftables, unbound, and grype.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/paranoid-level-sandboxing-part-1-the-sandbox-stack/feature.jpg"/></item><item><title>Year of the Linux Desktop #9: Bootc Image Lifecycle Management for Immutable Linux</title><link>https://datalabtechtv.com/posts/yotld-part-9-bootc-image-lifecycle/</link><pubDate>Tue, 26 May 2026 13:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/yotld-part-9-bootc-image-lifecycle/</guid><description>Learn about the pains of managing a custom bootc image, and how to handle caching, configuration management, and testing changes before rebuilding.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/yotld-part-9-bootc-image-lifecycle/feature.jpg"/></item><item><title>A Lifetime in Tech: From First Computer to PhD to Industry | Tech Punk #1</title><link>https://datalabtechtv.com/posts/tech-punk-ep1-lifetime-in-tech/</link><pubDate>Tue, 05 May 2026 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/tech-punk-ep1-lifetime-in-tech/</guid><description>This is my story, of how I got into tech, learned to code, and went on the internet back in the late 90s. Yes, I'm that old! I'll talk about high school, college, PhD &amp; research, going into the industry, and having a mental breakdown &amp; burn out.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/tech-punk-ep1-lifetime-in-tech/feature.jpg"/></item><item><title>Year of the Linux Desktop #8: Niri &amp; Noctalia on Bazzite</title><link>https://datalabtechtv.com/posts/yotld-part-8-niri-noctalia-bazzite/</link><pubDate>Tue, 28 Apr 2026 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/yotld-part-8-niri-noctalia-bazzite/</guid><description>Learn how to install and configure Niri, Noctalia, and a few other utilities on Bazzite!</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/yotld-part-8-niri-noctalia-bazzite/feature.jpg"/></item><item><title>Year of the Linux Desktop #7: Building a Custom Bazzite Image</title><link>https://datalabtechtv.com/posts/yotld-part-7-custom-bazzite-image/</link><pubDate>Tue, 21 Apr 2026 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/yotld-part-7-custom-bazzite-image/</guid><description>Let's learn about bootc, and how to setup a custom Bazzite image!</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/yotld-part-7-custom-bazzite-image/feature.jpg"/></item><item><title>Year of the Linux Desktop #6: Managing Linux Configs Like a Pro</title><link>https://datalabtechtv.com/posts/yotld-part-6-managing-linux-configs/</link><pubDate>Tue, 14 Apr 2026 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/yotld-part-6-managing-linux-configs/</guid><description>Learn how to securely manage your Linux configs with chezmoi and a git repo, so you'll never need to reconfigure or copy files over manually ever again!</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/yotld-part-6-managing-linux-configs/feature.jpg"/></item><item><title>Year of the Linux Desktop #5: Development in Immutable Bazzite</title><link>https://datalabtechtv.com/posts/yotld-part-5-bazzite-development/</link><pubDate>Tue, 07 Apr 2026 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/yotld-part-5-bazzite-development/</guid><description>Learn how to install your IDE with a Flatpak, and use distrobox for your dev tooling and environment.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/yotld-part-5-bazzite-development/feature.jpg"/></item><item><title>Year of the Linux Desktop #4: Secure Samba Mounts with systemd-creds</title><link>https://datalabtechtv.com/posts/yotld-part-4-samba-systemd-creds/</link><pubDate>Tue, 31 Mar 2026 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/yotld-part-4-samba-systemd-creds/</guid><description>Learn how to use systemd-creds to encrypt your credentials using TPM2, and how to mount network resources with systemd-mount and systemd-automount.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/yotld-part-4-samba-systemd-creds/feature.jpg"/></item><item><title>Year of the Linux Desktop #3: Trusting Self-Signed Certs in Flatpak</title><link>https://datalabtechtv.com/posts/yotld-part-3-flatpak-trusted-certs/</link><pubDate>Tue, 24 Mar 2026 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/yotld-part-3-flatpak-trusted-certs/</guid><description>On this blog post I'll show you just how to trust certificates system-wide on Bazzite, making them available to all your applications, including Flatpaks.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/yotld-part-3-flatpak-trusted-certs/feature.jpg"/></item><item><title>Year of the Linux Desktop #2: Bazzite Desktop Essentials</title><link>https://datalabtechtv.com/posts/yotld-part-2-bazzite-desktop-essentials/</link><pubDate>Tue, 17 Mar 2026 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/yotld-part-2-bazzite-desktop-essentials/</guid><description>Wanna know how it really feels to switch to Linux? In this blog post, I talk about KDE Plasma, essential applications to manage Flatpak, and the basics of gaming in Linux.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/yotld-part-2-bazzite-desktop-essentials/feature.jpg"/></item><item><title>Year of the Linux Desktop #1: I Switched to Bazzite!</title><link>https://datalabtechtv.com/posts/yotld-part-1-switched-to-bazzite/</link><pubDate>Tue, 10 Mar 2026 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/yotld-part-1-switched-to-bazzite/</guid><description>Wanna know how it really feels to switch to Linux? In this blog post, I share my installation process, first impressions, some issues I encountered, and how to deal with them.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/yotld-part-1-switched-to-bazzite/feature.jpg"/></item><item><title>LabStore - Part 6 - Building an Object Store in Go: S3-Compatible TUI</title><link>https://datalabtechtv.com/posts/labstore-part-6-tui/</link><pubDate>Tue, 24 Feb 2026 13:30:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/labstore-part-6-tui/</guid><description>Learn the basics of TUI building with lipgloss and bubbletea, from the charm stack.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/labstore-part-6-tui/feature.jpeg"/></item><item><title>LabStore - Part 5 - Building an Object Store in Go: CLI - Command Line Interface</title><link>https://datalabtechtv.com/posts/labstore-part-5-cli-tooling/</link><pubDate>Tue, 27 Jan 2026 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/labstore-part-5-cli-tooling/</guid><description>Learn how to build a CLI for your monorepo, with cobra and the charm stack.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/labstore-part-5-cli-tooling/feature.jpeg"/></item><item><title>LabStore - Part 4 - Building an Object Store in Go: IAM - Identity and Access Management</title><link>https://datalabtechtv.com/posts/labstore-part-4-iam-service/</link><pubDate>Tue, 23 Dec 2025 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/labstore-part-4-iam-service/</guid><description>Building an IAM service on top of SQLite in Go, from config handling to proper secret encryption.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/labstore-part-4-iam-service/feature.jpeg"/></item><item><title>LabStore - Part 3 - Building an Object Store in Go: Benchmarking and Profiling</title><link>https://datalabtechtv.com/posts/labstore-part-3-benchmarking/</link><pubDate>Tue, 09 Dec 2025 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/labstore-part-3-benchmarking/</guid><description>Benchmarking S3-compatible object stores—LabStore, MinIO, Garage, SeaweedFS, RustFS—and setting up a Go profiling to detect bottlenecks.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/labstore-part-3-benchmarking/feature.jpeg"/></item><item><title>LabStore - Part 2 - Building an Object Store in Go: Authenticating with SigV4</title><link>https://datalabtechtv.com/posts/labstore-part-2-sigv4-auth/</link><pubDate>Tue, 25 Nov 2025 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/labstore-part-2-sigv4-auth/</guid><description>Let's learn all about the inner workings of SigV4, used in S3-compatible object stores, to authenticate requests.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/labstore-part-2-sigv4-auth/feature.jpeg"/></item><item><title>LabStore - Part 1 - Building an Object Store in Go: How Hard Can It Be?</title><link>https://datalabtechtv.com/posts/labstore-part-1-how-hard-can-it-be/</link><pubDate>Tue, 11 Nov 2025 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/labstore-part-1-how-hard-can-it-be/</guid><description>Let's learn all about the inner workings of S3 object stores, along with enough Go to start building your own solution.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/labstore-part-1-how-hard-can-it-be/feature.jpeg"/></item><item><title>Migrating DuckLake Catalog From SQLite to PostgreSQL</title><link>https://datalabtechtv.com/posts/migrating-ducklake-catalog/</link><pubDate>Tue, 28 Oct 2025 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/migrating-ducklake-catalog/</guid><description>Learn how to migrate your existing DuckLake catalog from SQLite to PostgreSQL, without losing any data, and see it in action in a production environment.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/migrating-ducklake-catalog/feature.jpeg"/></item><item><title>Data Lab Infra - Part 5: Retrospective &amp; MLOps - Model Deployment</title><link>https://datalabtechtv.com/posts/data-lab-infra-apps/</link><pubDate>Tue, 21 Oct 2025 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/data-lab-infra-apps/</guid><description>Learn how to use multi-project CI/CD with the GitLab Free tier, how to deploy an ML model with Docker, doing a retrospective and redesigning the architecture.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/data-lab-infra-apps/feature.jpeg"/></item><item><title>Data Lab Infra - Part 4: Core Services</title><link>https://datalabtechtv.com/posts/data-lab-infra-services/</link><pubDate>Tue, 14 Oct 2025 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/data-lab-infra-services/</guid><description>Learn how to automate data stack deployment using docker compose and GitLab, setting up CI/CD variables with Terraform, and using GPU passthrough to a Docker VM running on Proxmox.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/data-lab-infra-services/feature.jpeg"/></item><item><title>Data Lab Infra - Part 3: Platform Setup with Terraform</title><link>https://datalabtechtv.com/posts/data-lab-infra-platform/</link><pubDate>Tue, 30 Sep 2025 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/data-lab-infra-platform/</guid><description>Learn how to provision Proxmox VMs with Terraform, deploying GitLab and Docker using cloud-init. Configure GitLab as a container registry, and deploy a shared runner for CI/CD using variables for secret management.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/data-lab-infra-platform/feature.jpeg"/></item><item><title>Data Lab Infra - Part 2: Bootstrapping with Terraform</title><link>https://datalabtechtv.com/posts/data-lab-infra-foundation/</link><pubDate>Tue, 23 Sep 2025 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/data-lab-infra-foundation/</guid><description>Learn how to setup Terraform, with an S3-backed state, to deploy the foundation layer of your on-premise homelab infrastructure running on Proxmox.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/data-lab-infra-foundation/feature.jpeg"/></item><item><title>Data Lab Infra - Part 1: Architecture Design</title><link>https://datalabtechtv.com/posts/data-lab-infra-architecture/</link><pubDate>Tue, 16 Sep 2025 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/data-lab-infra-architecture/</guid><description>Learn how to design a modern data stack, built for home labs, freelancing data experts, or general on-premise needs.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/data-lab-infra-architecture/feature.jpeg"/></item><item><title>MLOps: A/B Testing with MLflow, Kafka, and DuckLake</title><link>https://datalabtechtv.com/posts/mlops-ab-testing/</link><pubDate>Wed, 27 Aug 2025 17:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/mlops-ab-testing/</guid><description>Learn how to implement an end-to-end machine learning workflow, from data ingestion, to A/B testing and monitoring, using MLflow, Kafka and DuckLake.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/mlops-ab-testing/feature.jpeg"/></item><item><title>Economic Competition Networks</title><link>https://datalabtechtv.com/posts/economic-competition-networks/</link><pubDate>Wed, 06 Aug 2025 17:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/economic-competition-networks/</guid><description>Let's reproduce the approach that predicts Survivor winners and apply it to Economic Competition Networks to better understand world trade and economic leaders</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/economic-competition-networks/feature.jpeg"/></item><item><title>GraphRAG with KùzuDB</title><link>https://datalabtechtv.com/posts/graphrag-with-kuzudb/</link><pubDate>Tue, 15 Jul 2025 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/graphrag-with-kuzudb/</guid><description>Let's delve into GraphRAG, learning about KùzuDB, node embeddings vs text embeddings, and LangChain, running on top of Ollama with phi4 and gemma3.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/graphrag-with-kuzudb/feature.jpeg"/></item><item><title>Automated Semantic Releases on GitHub</title><link>https://datalabtechtv.com/posts/automated-semantic-releases/</link><pubDate>Tue, 08 Jul 2025 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/automated-semantic-releases/</guid><description>Learn how to rely on conventional commits, and a simple branching workflow, to setup semantic releases for your Python projects, using GitHub Actions.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/automated-semantic-releases/feature.jpeg"/></item><item><title>Automating Hugo Blog and Social Media with GitHub Actions</title><link>https://datalabtechtv.com/posts/automate-blog-and-social-media/</link><pubDate>Tue, 01 Jul 2025 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/automate-blog-and-social-media/</guid><description>Learn how to schedule Hugo blog posts and automatically post to social media using GitHub Actions.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/automate-blog-and-social-media/feature.jpeg"/></item><item><title>Data Lakehouse with dbt and DuckLake</title><link>https://datalabtechtv.com/posts/data-lakehouse-dbt-ducklake/</link><pubDate>Tue, 24 Jun 2025 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/data-lakehouse-dbt-ducklake/</guid><description>Learn how to run your ETL pipelines on top of dbt, DuckDB and DuckLake, and get to know data lab.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/data-lakehouse-dbt-ducklake/feature.jpeg"/></item><item><title>PostgreSQL Maximalism</title><link>https://datalabtechtv.com/posts/postgresql-maximalism/</link><pubDate>Tue, 27 May 2025 12:00:00 +0100</pubDate><guid>https://datalabtechtv.com/posts/postgresql-maximalism/</guid><description>Learn about PostgreSQL's extensions for all use cases.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://datalabtechtv.com/posts/postgresql-maximalism/feature.jpeg"/></item></channel></rss>