Disclaimer: This content reflects my personal opinions, not those of any organizations I am or have been affiliated with. Code samples are provided for illustration purposes only, use with caution and test thoroughly before deployment.
I’ve been working on improving my Dutch by watching NOS Journaal in Makkelijke Taal (NOS News in Simple Language). It’s perfect for language learners - the vocabulary is accessible, the pronunciation is clear, and the topics are current and relevant.
But here’s the thing: while listening helps with comprehension, I wanted to read the subtitles after watching to catch vocabulary I missed during the video. The built-in video player has subtitles, but constantly pausing to point my phone’s Google Translate camera at the screen proved incredibly disruptive. I’d get tired of watching within minutes.
I already use Readlang extensively for my Dutch studies. It’s a language learning tool where you can import articles, then click on any word or phrase to get AI-powered translations with contextual explanations. The UX is phenomenally smooth, removing most of the friction from reading foreign language content. This would be a great tool to study the subtitles right after I watched the video. However, there is a problem.
I use AI chatbots and agents extensively in my daily workflow. Sometimes I need to provide them with documents converted to markdown, but I don’t want to give away too much personal information. Markitdown is an excellent tool for converting PDFs and Word documents to markdown, but I lacked a CLI tool that could redact PII from the output. There are existing tools out there, and cloud services too, but I wanted something completely offline that wouldn’t raise any IT security team’s eyebrows. Then I stumbled upon Microsoft’s Presidio library, which can anonymize Personally Identifiable Information (PII) easily. So I decided to flex my vibe coding muscles and code a CLI myself.
AI agents like Cline can now install complex software by interpreting documentation and handling environment differences automatically. Is this the future of software installation, or are we creating new problems by delegating these tasks to AI?
I’m a bit late to the Model Context Protocol (MCP) party. While everyone was enthusiastically exploring the capabilities of MCP months ago, I only recently started diving into this ecosystem. My first experience was with the Logseq MCP, which provides some basic but useful functionality for the note-taking app. Then I tried the Brave Search MCP, which allows AI assistants to perform web searches directly.
What struck me wasn’t just the functionality these MCPs provided, but rather the installation process. As a developer who’s set up numerous environments and tools over the years, I found myself watching with fascination as Cline, the AI assistant as a VS Code Plugin, took over what would typically be a manual, error-prone process.
Last year, I wrote about turning hand-drawn architecture diagrams into digital diagrams using generative AI. While that approach worked well for creating editable digital diagrams, the result was quite basic—mostly rectangles and text. But if you’ve ever seen presentations by AWS solution architects, you’ll know that colorful AWS service icons can make architecture diagrams much more visually appealing and easier to understand at a glance.
I’ve since figured out how to leverage AI to not only create the basic diagram structure but also incorporate those recognizable AWS service icons. In this post, I’ll walk you through the process step by step.
Since COVID, online meetings have become an indispensable tool for collaboration, communication, and productivity. Whether you’re a seasoned professional or just starting your career, mastering the art of online meetings is crucial for success. Having spent four years in a customer-facing role, I’ve participated in countless online meetings across various time zones, gaining valuable insights into what works and what doesn’t. This blog post shares my experiences and provides practical tips to help you engineer better online meetings by focusing on two key areas: hardware configuration and software optimization. By addressing these elements, you can create a more professional, engaging, and productive online meeting experience for yourself and your participants. Here are some tips for better online meetings.