Overview
Connections
News
Salaries
Products
People
Growth
Offices
Financials

Overview

I’m Piotr, a software developer, living in Warsaw, Poland. Projects You can find my Open Source projects on GitHub.

News

Blog 2 months ago
Near-instant large image uploads
PixelPeeper is a web-based image metadata viewer. Photographers use it to reverse-engineer camera settings and Adobe Lightroom edits from JPEG files. Image upload is a core feature and I wanted to make it feel really fast. Images are uploaded to an S3 buc
Read more
Report
Blog 4 months ago
Nothing Works and Everyone Is Euphoric
As I'm writing this, we're in the middle of an AI-induced mass psychosis. People are literally token-maxxing themselves into hospital beds , scrambling to capture some of that market value before everything is automated away. I can't blame them. Models ke
Read more
Report
Blog 4 months ago
Postgres Backups to S3 with WAL-G and Kamal
The Kamal setup guides I found online focus on S3 backups using pg_dump . You don't want that for a production database. A better solution is to set up your Postgres database for Point-In-Time Recovery (PITR) using WAL-G or pgBackRest. This means your dat
Read more
Report
Blog 10 months ago
Switching to Linux After 19 Years on macOS
img sizes="(min-width: 35em) 1200px, 100vw" width="3831" height="2155" loading="lazy" srcset=' /posts/switching-to-linux/hyprland-screenshot_hu_5e4071a3a90f0a0d.png 500w , /posts/switching-to-linux/hyprland-screenshot_hu_5ecb03a8eaa131a6.png 800w , /posts
Read more
Report
Blog 1 year ago
Event-driven Modular Monolith
The main Rails app I currently work on has just turned eight. It's not a huge app. It doesn't deal with web-scale traffic or large volumes of data. Only six people working on it now. But eight years of pushing new code adds up. This is a quick overview of
Read more
Report
Blog 3 years ago
Base32 Encoding Explained
Base64 is one of those things I've used countless times, without ever fully understanding what it does. For my UUID shortener , I chose to implement Base32 - a more readable and URL-friendly alternative to Base64. I didn't want to rely on any third-party
Read more
Report
Blog 3 years ago
BasedUUID: URL-friendly, Base32-encoded UUIDs for Rails Models
Recently, I wrote about UUIDv7 and how to use it in Rails. The time-sorted UUIDv7 addresses some performance issues associated with UUIDv4-based primary keys, but the experience of using UUIDs is still far from perfect: https://example.com/posts/226d037c-
Read more
Report
Blog 3 years ago
How to Use UUIDv7 in Rails for Primary Keys
Using UUIDs for primary keys offers many benefits, but there are some downsides to consider. The most widely-used UUIDv4 is fully random, which is ideal for minimizing the risk of collision. However, random IDs as primary keys do not index and sort effici
Read more
Report
Blog 4 years ago
Building an Image Processing Service in Go
Update: March, 2024 The project described in this post no longer exists. However, some parts of it now live under a new project, available on GitHub . Many of the details below no longer apply, but I've decided to keep this post as a historical record. Ov
Read more
Report
Show more news