Code Optimization: Finding the correct spot on the leaderboard

Imagine you’re running a sports competition with multiple competitions going on and you need to keep track of the top 10 fastest scores across all disciplines. As each athlete finishes competing in one or more games they want to know what their spot on the leaderboard is. What’s the fastest way to compute this across a range of competitions? Given a n x m matrix like you can see below where the rows are the disciplines and columns the top 10 spots, figure out where player p ranks in all disciplines based on their times....

2023-10-28 · 8 min · Maurice Borgmeier

AWS-Blog: Teaching boto3 to store floats and datetime objects in DynamoDB

I published a new blog post on the tecRacer AWS Blog: https://www.tecracer.com/blog/2023/09/teaching-boto3-to-store-floats-and-datetime-objects-in-dynamodb.html

2023-09-07 · 1 min · Maurice Borgmeier

AWS-Blog: Handling Errors and Retries in StepFunctions

I published a new blog post on the tecRacer AWS Blog: https://www.tecracer.com/blog/2023/08/handling-errors-and-retries-in-stepfunctions.html

2023-08-23 · 1 min · Maurice Borgmeier

AWS-Blog: HIVE_CURSOR_ERROR in Athena when reading parquet files written by pandas

I published a new blog post on the tecRacer AWS Blog: https://www.tecracer.com/blog/2023/08/hive_cursor_error-in-athena-when-reading-parquet-files-written-by-pandas.html

2023-08-07 · Maurice Borgmeier

AWS-Blog: Advanced Credential Rotation for IAM Users with a Grace Period

I published a new blog post on the tecRacer AWS Blog: https://www.tecracer.com/blog/2023/06/advanced-credential-rotation-for-iam-users-with-a-grace-period.html

2023-06-09 · Maurice Borgmeier

AWS-Blog: Push-Down-Predicates in Parquet and how to use them to reduce IOPS while reading from S3

I published a new blog post on the tecRacer AWS Blog: https://www.tecracer.com/blog/2023/04/avoiding-memoryerrors-when-working-with-parquet-data-in-pandas.html

2023-04-11 · Maurice Borgmeier

AWS-Blog: The beating heart of SQS - of Heartbeats and Watchdogs

I published a new blog post on the tecRacer AWS Blog: https://www.tecracer.com/blog/2023/03/the-beating-heart-of-sqs-of-heartbeats-and-watchdogs.html

2023-03-24 · Maurice Borgmeier

Even more efficient hashing of columns in a pandas dataframe

One of the joys of software development is that small changes can sometimes make solving the same problem orders of magnitude faster. Revisiting previous solutions with more experience can lead to even better results. I show you how I improved the previous implementation by a factor of 2.7.

2022-12-20 · 5 min · Maurice Borgmeier

AWS-Blog: Introduction to asynchronous interactions with the AWS API in Python

I published a new blog post on the tecRacer AWS Blog: https://www.tecracer.com/blog/2022/12/introduction-to-asynchronous-interactions-with-the-aws-api-in-python.html

2022-12-05 · Maurice Borgmeier

AWS-Blog: Implementing Pessimistic Locking with DynamoDB and Python

I published a new blog post on the tecRacer AWS Blog: https://www.tecracer.com/blog/2022/10/implementing-pessimistic-locking-with-dynamodb-and-python.html

2022-10-21 · Maurice Borgmeier