<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Martino Pilia</title>
    <description>Personal Website</description>
    <link>https://martinopilia.com</link>
    <atom:link href="https://martinopilia.com/feed.xml" rel="self" type="application/rss+xml" />
    
      <item>
        <title>From 23-year-old scrap PCB to working webcam module</title>
        <description>
          Digital archaeology or new project material? - 
          Lately I have been thinking about getting a low-resolution image sensor for some bare-metal project prototyping, and I was disappointed by the limited availability of low-cost low-resolution camera modules. I wanted parts in the price range of a few bucks, not a few dozen bucks. I then remembered of a...
        </description>
        <pubDate>Sun, 14 Jun 2026 00:00:00 +0200</pubDate>
        <link>https://martinopilia.com/posts/2026/06/14/retro-webcam-repurpose.html</link>
        <guid isPermaLink="true">https://martinopilia.com/posts/2026/06/14/retro-webcam-repurpose.html</guid>
      </item>
    
      <item>
        <title>AI-driven C++ runtime optimization</title>
        <description>
          Case study of LLM-driven optimization in the wild - 
          A few weeks ago I wrote a lengthy post about making a real-world algorithm run twenty times faster. There I talked about a work package performed several years ago, well before LLMs were any useful as coding assistance tools. While writing I started asking myself: what if, instead of being...
        </description>
        <pubDate>Sun, 03 May 2026 00:00:00 +0200</pubDate>
        <link>https://martinopilia.com/posts/2026/05/03/runtime-optimization-ai.html</link>
        <guid isPermaLink="true">https://martinopilia.com/posts/2026/05/03/runtime-optimization-ai.html</guid>
      </item>
    
      <item>
        <title>Diagnosing a compiler bug</title>
        <description>
          When you have eliminated the impossible... - 
          This post is about a software issue I troubleshot some time ago. What made it interesting is how it turned out not to be a bug in the product, but rather in the C++ compiler used to generate the binary. In all of it, what surprised me the most is...
        </description>
        <pubDate>Sun, 01 Mar 2026 00:00:00 +0100</pubDate>
        <link>https://martinopilia.com/posts/2026/03/01/compiler-bug.html</link>
        <guid isPermaLink="true">https://martinopilia.com/posts/2026/03/01/compiler-bug.html</guid>
      </item>
    
      <item>
        <title>Making a real-world algorithm run twenty times faster</title>
        <description>
          A showcase of optimisation techniques from the trenches - 
          This post is a summary of an interesting code optimisation task I performed for a customer some time back. They had developed an algorithm for a product but they were way over budget on runtime, and due to the embedded and real-time nature of their product, not meeting the runtime...
        </description>
        <pubDate>Sun, 15 Feb 2026 00:00:00 +0100</pubDate>
        <link>https://martinopilia.com/posts/2026/02/15/runtime-optimization.html</link>
        <guid isPermaLink="true">https://martinopilia.com/posts/2026/02/15/runtime-optimization.html</guid>
      </item>
    
      <item>
        <title>Designing a least squares fit confidence estimate</title>
        <description>
          But making it run very fast - 
          While working on a project some time back, a friend asked me how to develop an effective confidence estimate for a model fitting problem such that it could run very fast in real time on a constrained system. While the question might sound mundane, I found the specific constraints called...
        </description>
        <pubDate>Sat, 17 Jan 2026 00:00:00 +0100</pubDate>
        <link>https://martinopilia.com/posts/2026/01/17/fit-confidence.html</link>
        <guid isPermaLink="true">https://martinopilia.com/posts/2026/01/17/fit-confidence.html</guid>
      </item>
    
      <item>
        <title>How I de-googled my personal devices</title>
        <description>
          Switching out of Google products and services has been easier than expected - 
          This post is a recap of my experience migrating to a Google-free environment. This transition is part of a broader change of habits I made in recent times. It is not just a matter of putting more focus on privacy, but also of escaping enshittified products, and creating some distance...
        </description>
        <pubDate>Sun, 26 Oct 2025 00:00:00 +0200</pubDate>
        <link>https://martinopilia.com/posts/2025/10/26/degoogle.html</link>
        <guid isPermaLink="true">https://martinopilia.com/posts/2025/10/26/degoogle.html</guid>
      </item>
    
      <item>
        <title>New timeline Jekyll plugin</title>
        <description>
          With a pure CSS solution - 
          This is a meta-post about some updates I have been developing for the website. I decided to reorganize some of the content and provide information in a way that is easier to navigate. To provide bit-sized information in chronological order I decided to use a timeline layout, and I developed...
        </description>
        <pubDate>Sat, 12 Jul 2025 00:00:00 +0200</pubDate>
        <link>https://martinopilia.com/posts/2025/07/12/timeline-plugin.html</link>
        <guid isPermaLink="true">https://martinopilia.com/posts/2025/07/12/timeline-plugin.html</guid>
      </item>
    
      <item>
        <title>One thing you must know before disassembling your G502 X</title>
        <description>
          Just to make sure you can put it back together - 
          There are two small springs under the scroll wheel assembly. Be careful to look for them when you remove it and do not let them jump out, or you risk losing them. Now, with that off my chest, a bit of backtracking. The purpose of this post is to share...
        </description>
        <pubDate>Sat, 03 May 2025 00:00:00 +0200</pubDate>
        <link>https://martinopilia.com/posts/2025/05/03/mouse-fixing.html</link>
        <guid isPermaLink="true">https://martinopilia.com/posts/2025/05/03/mouse-fixing.html</guid>
      </item>
    
      <item>
        <title>Op-ed &amp;mdash; My experience and reflections on AI assisted coding</title>
        <description>
          Reality check and thoughts on what lies ahead - 
          This post is a bit of an exception (or maybe the start of a new genre) for this blog. While my usual content is strictly limited to presenting facts, this article is more of an op-ed presenting my personal take on “AI1 assisted” coding. While I do not consider myself...
        </description>
        <pubDate>Sat, 25 Jan 2025 00:00:00 +0100</pubDate>
        <link>https://martinopilia.com/posts/2025/01/25/ai-oped.html</link>
        <guid isPermaLink="true">https://martinopilia.com/posts/2025/01/25/ai-oped.html</guid>
      </item>
    
      <item>
        <title>Testing tips for junior developers</title>
        <description>
          Or how to save me from repeating the same comments in code reviews - 
          Software testing is a fundamental aspect of any serious engineering effort, but at the same time it is such a young discipline. Importance of testing has been known in the industry for decades from a theoretical point of view, yet it took it a very long time to catch up...
        </description>
        <pubDate>Mon, 06 Jan 2025 00:00:00 +0100</pubDate>
        <link>https://martinopilia.com/posts/2025/01/06/testing-intro.html</link>
        <guid isPermaLink="true">https://martinopilia.com/posts/2025/01/06/testing-intro.html</guid>
      </item>
    
      <item>
        <title>Vim and Neovim configuration overhaul</title>
        <description>
          A major rework after several years - 
          I spent several hours over the past week testing Neovim features and plugins to update my vim and Neovim configuration, in what became a major overhaul. This post is a concise summary of changes with their rationale and directions. I wanted to start this write-up with a background on the...
        </description>
        <pubDate>Sun, 27 Oct 2024 00:00:00 +0200</pubDate>
        <link>https://martinopilia.com/posts/2024/10/27/vim-config-update.html</link>
        <guid isPermaLink="true">https://martinopilia.com/posts/2024/10/27/vim-config-update.html</guid>
      </item>
    
      <item>
        <title>Short recap of my history as a vim and Neovim user</title>
        <description>
          My (Neo)vim journey so far - 
          When writing a post about my recent (Neo)vim configuration overhaul, I wanted to start with an overview of how my (Neo)vim usage evolved in time and how it reached the point it stands at now. This overview ended up being a fairly lengthy write-up, which I therefore decided to publish...
        </description>
        <pubDate>Sun, 27 Oct 2024 00:00:00 +0200</pubDate>
        <link>https://martinopilia.com/posts/2024/10/27/vim-background.html</link>
        <guid isPermaLink="true">https://martinopilia.com/posts/2024/10/27/vim-background.html</guid>
      </item>
    
      <item>
        <title>How I sped up an e-book</title>
        <description>
          Making an unreasonably slow EPUB usable - 
          This post is a short recap of a funny situation where I had to deal with a seemingly innocent-looking e-book that ended up being unreadable on my e-reader. The solution turned out to be relatively simple, but I have not found references to any similar problem on the web, therefore...
        </description>
        <pubDate>Sun, 06 Nov 2022 00:00:00 +0100</pubDate>
        <link>https://martinopilia.com/posts/2022/11/06/speed-up-epub.html</link>
        <guid isPermaLink="true">https://martinopilia.com/posts/2022/11/06/speed-up-epub.html</guid>
      </item>
    
      <item>
        <title>CI for a collaborative LaTeX setup</title>
        <description>
          Automated LaTeX workflow, the git way - 
          LaTeX is a vital component of my work, and usually it is my go-to tool whenever I need to typeset any non-trivial document. TeX is a de facto standard tool for scientific typesetting, and in technical fields most publications, books, and reports are usually composed with it, most often using...
        </description>
        <pubDate>Sun, 12 Apr 2020 00:00:00 +0200</pubDate>
        <link>https://martinopilia.com/posts/2020/04/12/latex-ci.html</link>
        <guid isPermaLink="true">https://martinopilia.com/posts/2020/04/12/latex-ci.html</guid>
      </item>
    
      <item>
        <title>Migration to Jekyll Scholar and GitHub Actions</title>
        <description>
          New bibliography management and build system for the website - 
          Note (2024-08-31): This post was written in February 2020. Support for building and deploying Jekyll sites on GitHub pages has been streamlined in the meantime and can now be performed with stock actions. See jekyll-build-pages and deploy-pages. This is a meta post that describes the technical updates I recently performed...
        </description>
        <pubDate>Sat, 22 Feb 2020 00:00:00 +0100</pubDate>
        <link>https://martinopilia.com/posts/2020/02/22/migration.html</link>
        <guid isPermaLink="true">https://martinopilia.com/posts/2020/02/22/migration.html</guid>
      </item>
    
      <item>
        <title>Image registration guided by zero-average volume changes</title>
        <description>
          Building a mean volume anatomic atlas - 
          In Uppsala I spent several months investigating the generation of displacement fields with known volume changes, and I even implemented a software suite for the purpose. This might seem an odd topic to pick as working subject, so it is worth a bit of clarification about its purpose and applications....
        </description>
        <pubDate>Sun, 17 Nov 2019 00:00:00 +0100</pubDate>
        <link>https://martinopilia.com/posts/2019/11/17/jacobian-registration.html</link>
        <guid isPermaLink="true">https://martinopilia.com/posts/2019/11/17/jacobian-registration.html</guid>
      </item>
    
      <item>
        <title>Useful command line tools</title>
        <description>
          Improved workflow on the shell - 
          This post is meant to be a brief introduction to some productivity tools that can make a command line workflow smoother and more efficient. While well known, standard tools with similar function already exist (e.g. bash, grep, find, etc.), the tools presented hereafter have a handy user interface with sensible...
        </description>
        <pubDate>Wed, 30 Jan 2019 00:00:00 +0100</pubDate>
        <link>https://martinopilia.com/posts/2019/01/30/command-line-tools.html</link>
        <guid isPermaLink="true">https://martinopilia.com/posts/2019/01/30/command-line-tools.html</guid>
      </item>
    
      <item>
        <title>Landmark-based groupwise registration with SGD and B-splines</title>
        <description>
          Implementing a simple extension to Elastix - 
          Currently, I work mostly on image registration algorithms, and I devoted quite some time looking into groupwise registration techniques. In its essence, groupwise registration is a process that aligns multiple images, mapping them to a common reference space, without having to explicitly define such reference space (e.g. without manually selecting...
        </description>
        <pubDate>Sun, 23 Sep 2018 00:00:00 +0200</pubDate>
        <link>https://martinopilia.com/posts/2018/09/23/goupwise-landmark-registration.html</link>
        <guid isPermaLink="true">https://martinopilia.com/posts/2018/09/23/goupwise-landmark-registration.html</guid>
      </item>
    
      <item>
        <title>GPU-accelerated single-pass volumetric raycasting in Qt and OpenGL</title>
        <description>
          Implementing a simple, yet easy to extend visualiser - 
          Visualisation is a complementary but very important part of my work on image analysis. And since I work mainly with tridimensional volume images, visualisation is inherently a more complicated task compared to image analysis in only two dimensions. To help my work, I decided to implement a small tool for...
        </description>
        <pubDate>Mon, 17 Sep 2018 00:00:00 +0200</pubDate>
        <link>https://martinopilia.com/posts/2018/09/17/volume-raycasting.html</link>
        <guid isPermaLink="true">https://martinopilia.com/posts/2018/09/17/volume-raycasting.html</guid>
      </item>
    
      <item>
        <title>Building a Python C extension module with CMake</title>
        <description>
          Extending Python, with automatic cross-platform configuration - 
          Python is a high-level programming language whose extremely simple and elegant yet very powerful and expressive syntax has granted it enormous popularity in most programming contexts. Scientific applications are no exception on this respect, and this may look strange at a first glance, given that Python’s runtime is painfully slow...
        </description>
        <pubDate>Sat, 15 Sep 2018 00:00:00 +0200</pubDate>
        <link>https://martinopilia.com/posts/2018/09/15/building-python-extension.html</link>
        <guid isPermaLink="true">https://martinopilia.com/posts/2018/09/15/building-python-extension.html</guid>
      </item>
    
  </channel>
</rss>
