Switching to Ungoogled Chromium

There aren’t many real choices when it comes to web browsers these days. Over the past decade or so, Google Chrome has effectively monopolized the market, with most estimates placing its global market share between 60 and 70 percent. In addition to obvious anti-consumer concerns, this is especially unsettling for privacy-conscious individuals, as it leaves much of the modern web shaped by a company whose business model is fundamentally at odds with user privacy.

[Read more]

An Unexpected [Linux] Journey

An Unexpected [Linux] Journey

Introduction

The year of the Linux desktop” is somewhat of a running joke in the Linux community. It refers to the idea that one day, Linux will finally establish itself as a mainstream desktop operating system alongside Windows and macOS for everyday computer users. But the prophecy has not yet been fulfilled—thanks to limited support for popular software, a fragmented landscape of desktop environments, and minimal adoption from computer manufacturers. All of this has kept Linux just out of reach for the average computer user.

[Read more]

Learning Web Development with HTMX

Earlier this year, I started a side project called Papernote. It is a simple note-taking application that runs in the browser. Like most of my side projects, the actual product was more of a side quest—I just wanted an excuse to learn something new. Since this was a web app, I had to decide on a front-end framework. I had used React and Vue in past projects, so those were out. I had been hearing a lot about a JavaScript library called HTMX, so, having no idea what I was getting myself into, I decided to give it a shot.

[Read more]

Implementing Infinite Scroll with HTMX, Python, and MongoDB

The source code for this demo is available here. Instructions for setting up the project are in the README.

Context

I am working on a project at my day job where we are building a documentation site for a very large and complex software system. We have over 20,000 technical documents outlining how the software works. Our customer needs a way to search, browse, and update these documents efficiently. Our current proposed solution uses a Python/FastAPI web server, MongoDB to store the document data, and HTMX to handle frontend updates. (I am not able to make my work repo publicly available, so I have pulled out only the essential logic portions for this demo.) The purpose of this article is to show how we have implemented the “infinite scroll” functionality for the document search results page with our chosen tooling. The ideas, however, should be easily adaptable to other languages (as long you’re using HTMX.) Familiarity with HTMX is recommended before reading this article.

[Read more]