Hi there, I’m Maurice 👋

Welcome to my blog about AWS, Python and other random stuff.

How I spent a few hours using advanced technology to save $2

Opportunity cost is an important economic concept, but sometimes we need to ignore it to learn something. Join me in using a variety of services and tools to figure out what is using my KMS keys and if I can safely delete them.

2024-11-01 · 8 min · Maurice Borgmeier

AWS Community Day 2024: Finding and using undocumented AWS APIs

Links and References for my Talk at the AWS Community Day 2024 in Sofia As soon as the recording is available, it will appear here Contact If you want to get in touch, send me an e-mail hi [ät] mauricebrg.com. Presentation The slides are available as a PDF here. Links Blog Post: Using undocumented AWS APIs with Python Python Package that implements some undocumented APIs (Github) If you’re interested in (un)documented or non-production APIs for Security research, Datadog has an interesting article here

2024-10-11 · 1 min · Maurice Borgmeier

AWS-Blog: Building Data Aggregation Pipelines using Apache Airflow and Athena

Business insights are frequently generated from aggregated data, like daily sales per market segment over time. In this blog post we’ll use Apache Airflow to build a data aggregation pipeline that utilizes Amazon Athena for the heavy lifting. We’ll cover best practices that you should follow to build a production-ready system.

2024-09-23 · 7 min · Maurice Borgmeier

AWS-Blog: How to accidentally create read-only DynamoDB items

In a recent Developing on AWS course I was faced with an interesting question about DynamoDB. What happens if you create an item that features attributes of a global secondary index with a data type that doesn’t match the index? My intuition was wrong, let’s check out what actually happens.

2024-09-14 · 5 min · Maurice Borgmeier

AWS-Blog: Making the TPC-H dataset available in Athena using Airflow

The TPC-H dataset is commonly used to benchmark data warehouses or, more generally, decision support systems. It describes a typical e-commerce workload and includes benchmark queries to enable performance comparison between different data warehouses. I think the dataset is also useful to teach building different kinds of ETL or analytics workflows, so I decided to explore ways of making it available in Amazon Athena.

2024-08-29 · 7 min · Maurice Borgmeier

AWS-Blog: Enabling Apache Airflow to copy large S3 objects

If you’re trying to use Apache Airflow to copy large objects in S3, you might have encountered issues where S3 complains about you sending an InvalidRequest. We will fix that in this post by writing a custom operator to handle the underlying problem.

2024-08-27 · 3 min · Maurice Borgmeier

AWS-Blog: You can't Opt-Out of Performance Tracking in the AWS Console

Even though I had opted out of performance measurement cookies, I noticed a lot of web requests that look like performance measurement in the AWS console. In this article I investigate what’s being sent and what we can do about it.

2024-08-22 · 7 min · Maurice Borgmeier

AWS-Blog: Improving Accessibility by Generating Image-alt texts using GenAI

In this article, we’ll be using GenAI to generate alternative texts for images in Markdown documents, which will help people relying on screen readers to access your content.

2024-08-21 · 7 min · Maurice Borgmeier

Bag in Black

There are things whose price doesn’t seem proportionate to their usefulness. Simple things. Common things. One such item, which I bought from a drugstore in Germany a couple of years ago, is a reusable shopping bag. It’s a simple bag, made, I think, out of polyester and comes with a smaller bag to carry it in. I paid maybe 2€ for it. Since then I’ve been using it 3-4 times per week to carry around all kinds of stuff....

2024-08-19 · 3 min · Maurice Borgmeier

Installing Apache Airflow on MacOS

I’m currently diving a bit deeper into Apache Airflow and want to further my understanding of the system. I chose to install it locally on my Mac because a managed service like Managed Workflows for Apache Airflow (MWAA) on AWS limits how much I can tinker with the system. For anything remotely production-related, I’d still go with the managed service. I used the Airflow: Getting Started documentation to do exactly that, getting started....

2024-08-16 · 4 min · Maurice Borgmeier