About me and this blog

Hi! 👋 my name is Andrea Manzini. I’m an Unix System Administrator and a developer. As you can see, I enjoy minimalism and pragmatic solutions for a problem. I am focused on delivery, curious and enjoy learning new things. If you are interested, you can find my resume following this link or contact me using social links on this page. If you appreciate my work, you can buy me a book from my Amazon Wishlist. Thanks!

Measure your program's power consumption

🌡️ Intro For those running a datacenter, or just a simple homelab server, the arrival of summer heat means an increase in air conditioning use. On this post I asked myself how a Linux engineer can measure how much energy is the system consuming so we can start to reason about workload optimization for better power consumption patterns. 🔋 Idle power drain As a starting point, let’s measure how much power my PC is consuming when idle, doing absolutely nothing; or better: nothing useful for computation or service but just running usual, default operating system tasks....

June 30, 2024 · Andrea Manzini

Headless Testing of PySide/PyQt GUI Applications with pytest-qt

🤓 Intro Manual testing of GUI applications can become tedious and error-prone as features and complexity increase. Headless testing offers a solution by automating UI interactions without the need for a physical display. This approach allows for faster test execution, improved repeatability, and seamless integration with continuous integration and continuous delivery (CI/CD) pipelines. In this post, we’ll explore how to leverage pytest-qt, a powerful framework for headless testing of PySide/PyQt applications....

May 22, 2024 · Andrea Manzini

A different approach to terminal user interfaces

Intro Bubbletea is a framework with a philosophy based on The Elm Architecture: Making it simple, it breaks into three parts: Model: the state of your application View: a way to turn your state into something to display Update: a way to update your state based on messages The framework’s runtime manages everything else: from messages orchestration to low-level rendering details. Example Let’s say you want to create the classic to-do list:...

May 3, 2024 · Andrea Manzini

SEGFAULT: Debugging a crashing application

🙀 Something breaks If you use linux running some applications you could have seen sometimes a similar error message: [1] 24975 segmentation fault (core dumped) what’s meaning and how it can be useful ? Let’s dig it out. 🧪 Lab Setup To make a proper case study, we need a crashing program. Of course they are very rare nowadays 😁 so we just create a new one ourself, showing off our worst C coding bad skills and practices....

April 5, 2024 · Andrea Manzini