RSSAmplifier

Blog

The Raccoon Bytes

The Raccoon Bytes - Bite-piece of knowledge from a garbage code connosseur

maho.devRSS feed ↗50 posts

Latest posts

Using GoToSocial as the Social Layer for Your Apps

How GoToSocial can provide identity, federation, and social features inside existing applications without requiring users to create and manage another account.

LinuxFest Northwest 2026: Beer, Badges, and the Spirit of the PNW

Three months after speaking at FOSDEM in Brussels, I brought my family to LinuxFest Northwest in Bellingham, WA. What I found was a college town bursting with craft beer, open-source energy, and one of my personal heroes.

AI is Making Libraries Obsolete

AI agents are fundamentally changing the economics of general-purpose libraries. Why build on Bootstrap when an agent can generate exactly what you need? A collection of thoughts on where this is all heading.

If There's a Nazi at Your Bar, It's a Nazi Bar

I found out Substack isn't just tolerating extremism—it's literally hosting Nazi newsletters. So I'm out. Here's why you should care.

FOSDEM 2026: The Kid Who Dreamed of Hackers Found Them in Brussels

A kid from a small Mexican town dreamed of finding real-life hackers. Two decades later, he flew his family to Brussels and spoke at one of the world's largest open-source conferences. This is that story.

A Guide to Implementing ActivityPub in a Static Site (or Any Website) - Part 9: Quote Posts

Find the index and earlier parts of this series here . Quote Posts for Static Sites: A Practical Guide to FEP-044f Implementation Transform your static blog int...

The Anachronistic Internet: When Cat Videos Actually Mattered

A late-night, sleep-deprived rant about how the internet used to work, triggered by watching 2 Broke Girls and realizing how anachronistic everything feels now.

The Forkiverse Experiment and Why Instance Choice Matters

A reflection on the Forkiverse experiment, why it felt different from day one, and how it changed my view on instance choice in the Fediverse.

Single Agent vs Multi-Agent: The Architectural Decision That'll Make or Break Your AI Project

The brutal truth about choosing between single and multi-agent architectures for your AI project. Complete with battle scars, unofficial Microsoft insights, and the harsh reality that agents are just fancy microservices with commitment issues.

VocalCat: Why it went open source

The story behind why I decided to open-source VocalCat—my social media management suite for creators. It's about ego checks, building in public, and staying true to open-source values.

F*ck Yeah, There's Still a Human in the Loop

AI is taking over everything—except the parts that still need soul. Here’s why the future of software still needs people, not just prompts.

MCP Expert Zone: Common Questions from Microsoft Build 2025

A recap of the most frequently asked questions about the Model Context Protocol (MCP) from my time as an expert at the MCP booth during Microsoft Build 2025. Covers what MCP is, how it works, authentication, differences from OpenAPI, agent-to-agent communication, and practical advice for developers.

Integrating MCP in a Real SaaS: VocalCat

In this blog post, I'll share how I integrated the Model Context Protocol (MCP) into a real SaaS product, VocalCat , by reusing an existing API. This guide will...

A Guide to Implementing ActivityPub in a Static Site (or Any Website) - Q1 2025 Updates

Bringing Static Sites to the Fediverse: Enhancements and Implementations Integrating static sites into this ecosystem via the ActivityPub protocol presents uniq...

When AI Spits Your Own Shitty Code Back at You

A rollercoaster of pride, panic, and AI gasliting I code to relax. Some people do yoga, some meditate—I open VS Code at 11 PM like a gremlin-raccoon. Don't judg...

Why Agile Beats Processes and why the Agile Manifesto is the GOAT document of Software Development

Processes, tools, and extensive documentation are not going to save your ass, but the Agile Manifesto may. A friend just landed a job after a long hiatus. The v...

Open Letter to Nonprofits and Public Organizations: Reconsidering Our Social Media Platforms

Amplify Your Organization's Voice: Embrace Radical Transparency and Authentic Connections Dear Leaders of Nonprofits and Public Organizations, In our digital ag...

How to Multistream Using Azure, Azure VM, MonaServer 2, and FFmpeg with OBS Studio

In this guide, we will set up a multistreaming workflow using Azure, an Azure VM, MonaServer 2, and FFmpeg to broadcast to multiple platforms like LinkedIn Live...

A Guide to Implementing ActivityPub in a Static Site (or Any Website) - Part 8

Find the index and earlier parts of this series here . We're almost there! Thanks for sticking with me on this journey. In this final part, we'll integrate repl...

The Power of Representation

Yeah, I know the last 3 chapters are titled "The Power of..." but let me tell you, I like it, and it's my blog. When I was a kid, I always knew I want...

The Power Struggle of Social Media Engagement

The Power Struggle of Social Media Engagement Breaking Free: Reclaiming Visibility and Voice from the Algorithmic Gatekeeping. aka F**ck the algorithm. So, I ha...

The Power of a Feel Good Story

Breaking the Cycle of Fear: How We Can Spread a Better Kind of Story A few months back, I received a free book at a Microsoft event: Infectious Generosity by Ch...

A Guide to Implementing ActivityPub in a Static Site (or Any Website) - Part 7

You can find the index and other parts of this series here . We are almost done! Thank you for coming all the way into this journey. In this part we will learn ...

The Digital Umwelt. Beyond the noise and the crap content.

Back in May, while commuting the few miles from the rural area where I was staying in Mexico to the city for virtual meetings, I listened to a podcast episode a...

My coffee history

My relationship with coffee probably began in my mother's womb. She may deny it, but I am pretty sure she drank more coffee than was advised or allowed in the 1...

Career Advice From People I Admire

I am incredibly grateful to the people who have helped shape me into who I am today. Their support and guidance have been invaluable. But advice, like wisdom, c...

If someone copies your content, it's a good sign.

"Imitation is the sincerest form of flattery," I often say when someone tells me they're mad because someone stole their idea or post. It's a poor con...

Do not prioritize efficiency over nuance, fuck Gen-AI

I used to write a lot when I was younger, even as a kid. There was no Gen-AI, no Grammarly, no advanced tools to assist with spelling or grammar. It was just me...

A Historic Shift: How Mexico's First Woman President Challenges Toxic Masculinity

Today was a historic day for Mexico, as the country elected its first woman president. I love Mexico—the culture, food, friends, and family—but it has always be...

A Guide to Implementing ActivityPub in a Static Site (or Any Website) - Part 6

You can find the index and other parts of this series here . Let's dig in into the most controversial part of my guide: the inbox. As far as I know, there is no...

Every engineer needs to know a Silicon Valley

Reflecting on Seven Years: A Revisited Perspective I've chosen to revisit this post, originally published in 2017, which was likely the second entry on this blo...

Advocating for Accessibility at 11: A Story of Limited Means

I was 11 years old when I became an accessibility advocate in software products thanks to Bill Gates. I did not know the term at the time, and it certainly was ...

Implementing Subscribing to Your Site Feature with Mastodon/Fediverse Accounts

We will take a break from discussing ActivityPub concepts, and I'll explain how I implemented a very simple "Subscribe" feature for this blog using Ma...

Demystifying LLMS From Zero to Raccoon-Hero, with Azure and DotNet, Part 2: Adding the OpenAI magic with Semantic Kernel

There is a video version of this post in my YouTube Channel . So we have our boilerplate app, and we are ready to start adding fun stuff. If you do not have tha...

Large Language Models Demystified: Are LLMs Artificial Intelligence? Harnessing Their Power Responsibly

I'll keep this short and sweet since there's already gazillions of information about Large Language Models (LLMs) and artificial intelligence (AI), and I doubt ...

Demystifying LLMS From Zero to Raccoon-Hero, with Azure and DotNet, Part 1: Creating a CLI

If you prefer video, there is a YouTube version of this blog-post . Since the release of LLMs, I have been extremely enthusiastic about exploring such a fun too...

A Guide to Implementing ActivityPub in a Static Site (or Any Website) - Part 4

In this blog post, we will explain how to generate the outbox and notes, ready to be shared in the Fediverse. You can also navigate the other parts of this seri...

The Gendered Lens of AI: Unpacking Bias in Language Models

ChatGPT and most AI systems have biases, often manifesting as racism and discrimination, mirroring the biases present in human society and hence in the data we ...

A Guide to Implementing ActivityPub in a Static Site (or Any Website) - Part 3

In this blog post, we will explain how to make your blog discoverable in the Fediverse as an account, and also address some of the annoying pitfalls I encounter...

A guide to implement ActivityPub in a static site (or any website) - Part 2

In Part 2, we will delve into the design of my implementation. If you want to read about why you should bring your site to the Fediverse, check out Part 1 . You...

Bringing your site to the Fediverse: A practical guide for static sites - Part 1

You can find the index and other parts of this series here . This blog is on the fediverse! You can discover and follow the blog (@blog@maho.dev) and comment on...

A guide to implement ActivityPub in a static site (or any website)

Hi! I have created this index for easy navigation. In Part 1, we will discuss why it is important to bring your site to the Fediverse . In Part 2, we will delve...

How Machines Took Over the Internet, and Why We Need to Take It Back!

Rediscovering Human Connection While AI may be the buzz today, I believe there is other technology gaining traction with a significant impact, paradoxically in ...

Mentorship Matters: Building Your Tech Career with Guidance and Insight

Entering the tech industry is a mix of opportunities, skills, and pure luck. For many of us, breaking into BigTech felt more like winning a lottery ticket than ...

Paying It Forward YouTube Interview

I recently had the incredible opportunity to sit down with my colleague Peter Maynard , the dynamic force behind the YouTube channel Paying it Forward . Here's ...

The Allure of Software Prototypes, a Delight of Impermanence

The following post is a stream of consciousness about prototypes; it does not offer any practical advice (except that you should not get attached to a prototype...

Embracing Accents: Celebrating Diversity in Language and Culture

Six years ago, I embarked on a journey to the United States, five years ago, I made a conscious decision to stop worrying about my English accent. In this time,...

Balancing Act: Navigating Personal and Professional Worlds

I'm currently aboard an airplane with my heart soaring. It's been a challenging Sunday as I embark on a 15+ hour work-related journey that will keep me away for...

Navigating Risk: Lessons from Chernobyl for Software Development

I have always found Chernobyl fascinating, it is a captivating tale of caution yes, but also a profound tale of wisdom. Chernobyl by Midjourney Chernobyl stands...

Why Microsoft

This was me over 15 years ago, enjoying lunch with a Caguama-sized beer in front of my parents' house in Puerto Vallarta, eagerly awaiting the start of the Free...