54,302 blogs · [ { "id": "01a087df-7c1d-717c-a561-76be4b2a3605", "title": "Every fast write moves work somewhere else", "url": "https://www.shayon.dev/post/2026/220/every-fast-write-moves-work-somewhere-else/", "published_at": "2026-08-08T14:00:00+00:00" }, { "id": "01a087df-7c1e-73ce-a164-b6d4e88547d2", "title": "Building a tiny FUSE filesystem", "url": "https://www.shayon.dev/post/2026/161/building-a-tiny-fuse-filesystem/", "published_at": "2026-06-10T14:00:00+00:00" }, { "id": "01a087df-7c1e-73ce-a164-b6d4e8ff230f", "title": "I am not leaving GitHub any time soon", "url": "https://www.shayon.dev/post/2026/118/i-am-not-leaving-github-any-time-soon/", "published_at": "2026-04-28T16:00:00+00:00" }, { "id": "01a087df-7c1e-73ce-a164-b6d4e9ab4b0c", "title": "Linux Page Faults, mmap, and userfaultfd", "url": "https://www.shayon.dev/post/2026/65/linux-page-faults-mmap-and-userfaultfd/", "published_at": "2026-03-06T19:00:00+00:00" }, { "id": "01a087df-7c1e-73ce-a164-b6d4ea843e8e", "title": "Let's discuss sandbox isolation", "url": "https://www.shayon.dev/post/2026/52/lets-discuss-sandbox-isolation/", "published_at": "2026-02-21T19:00:00+00:00" }, { "id": "01a087df-7c1e-73ce-a164-b6d4ea8756fc", "title": "Understanding how GIL Affects Checkpoint Performance in PyTorch Training", "url": "https://www.shayon.dev/post/2026/38/understanding-how-gil-affects-checkpoint-performance-in-pytorch-training/", "published_at": "2026-02-07T19:00:00+00:00" }, { "id": "01a087df-7c1e-73ce-a164-b6d4ea9e5fed", "title": "Software engineering when machine writes the code", "url": "https://www.shayon.dev/post/2026/19/software-engineering-when-the-machine-writes-code/", "published_at": "2026-01-19T21:04:00+00:00" }, { "id": "01a087df-7c1e-73ce-a164-b6d4eadb71d3", "title": "A hypothetical search engine on S3 with Tantivy and warm cache on NVMe", "url": "https://www.shayon.dev/post/2025/314/a-hypothetical-search-engine-on-s3-with-tantivy-and-warm-cache-on-nvme/", "published_at": "2025-11-10T14:00:00+00:00" }, { "id": "01a087df-7c1e-73ce-a164-b6d4eb28e087", "title": "Diwali", "url": "https://www.shayon.dev/post/2025/300/diwali/", "published_at": "2025-10-27T05:11:27+00:00" }, { "id": "01a087df-7c1e-73ce-a164-b6d4eb408fb6", "title": "Mutable atomic deletes with Parquet backed columnar tables on S3", "url": "https://www.shayon.dev/post/2025/285/mutable-atomic-deletes-with-parquet-backed-columnar-tables-on-s3/", "published_at": "2025-10-12T13:00:00+00:00" }, { "id": "01a087df-7c1e-73ce-a164-b6d4ebbf4b1b", "title": "An MVCC-like columnar table on S3 with constant-time deletes", "url": "https://www.shayon.dev/post/2025/277/an-mvcc-like-columnar-table-on-s3-with-constant-time-deletes/", "published_at": "2025-10-04T12:00:00+00:00" }, { "id": "01a087df-7c1e-73ce-a164-b6d4ec7ae5d3", "title": "Exploring PostgreSQL to Parquet archival for JSON data with S3 range reads", "url": "https://www.shayon.dev/post/2025/276/exploring-postgresql-to-parquet-archival-for-json-data-with-s3-range-reads/", "published_at": "2025-10-03T14:00:00+00:00" }, { "id": "01a087df-7c1e-73ce-a164-b6d4ec870307", "title": "Bypass PostgreSQL catalog overhead with direct partition hash calculations", "url": "https://www.shayon.dev/post/2025/221/bypass-postgresql-catalog-overhead-with-direct-partition-hash-calculations/", "published_at": "2025-08-10T02:30:00+00:00" }, { "id": "01a087df-7c1e-73ce-a164-b6d4ece54a3a", "title": "Is AGI paradoxical?", "url": "https://www.shayon.dev/post/2025/172/is-agi-paradoxical/", "published_at": "2025-06-22T02:30:00+00:00" }, { "id": "01a087df-7c1e-73ce-a164-b6d4ed05eddb", "title": "Pitfalls of premature closure with LLM assisted coding", "url": "https://www.shayon.dev/post/2025/164/pitfalls-of-premature-closure-with-llm-assisted-coding/", "published_at": "2025-06-13T09:46:48+00:00" }, { "id": "01a087df-7c1e-73ce-a164-b6d4ed1fd5ff", "title": "Another look into PostgreSQL CTE materialization and non-idempotent subqueries", "url": "https://www.shayon.dev/post/2025/124/another-look-into-postgresql-cte-materialization-and-non-idempotent-subqueries/", "published_at": "2025-05-04T12:00:38+00:00" }, { "id": "01a087df-7c1e-73ce-a164-b6d4edd70f81", "title": "A PostgreSQL planner gotcha with CTEs DELETE and LIMIT", "url": "https://www.shayon.dev/post/2025/119/a-postgresql-planner-gotcha-with-ctes-delete-and-limit/", "published_at": "2025-04-29T12:00:38+00:00" }, { "id": "01a087df-7c1e-73ce-a164-b6d4eed6065e", "title": "Selective asynchronous commits in PostgreSQL - balancing durability and performance", "url": "https://www.shayon.dev/post/2025/75/selective-asynchronous-commits-in-postgresql-balancing-durability-and-performance/", "published_at": "2025-03-16T15:24:26+00:00" }, { "id": "01a087df-7c1e-73ce-a164-b6d4ef861d85", "title": "Challenging AI generated code from first principles", "url": "https://www.shayon.dev/post/2025/53/challenging-ai-generated-code-from-first-principles/", "published_at": "2025-02-22T21:50:20+00:00" }, { "id": "01a087df-7c1e-73ce-a164-b6d4efad35b4", "title": "Scaling with PostgreSQL without boiling the ocean", "url": "https://www.shayon.dev/post/2025/40/scaling-with-postgresql-without-boiling-the-ocean/", "published_at": "2025-02-09T13:59:32+00:00" }, { "id": "01a087df-7c1e-73ce-a164-b6d4f01e454f", "title": "Database mocks are just not worth it", "url": "https://www.shayon.dev/post/2024/365/database-mocks-are-just-not-worth-it/", "published_at": "2024-12-30T19:50:09+00:00" }, { "id": "01a087df-7c1e-73ce-a164-b6d4f05b6ff7", "title": "Using CTID Based Pagination for Data Cleanups in PostgreSQL", "url": "https://www.shayon.dev/post/2024/303/using-ctid-based-pagination-for-data-cleanups-in-postgresql/", "published_at": "2024-10-29T11:44:24+00:00" }, { "id": "01a087df-7c1e-73ce-a164-b6d4f070d2f4", "title": "pg_easy_replicate Supports Schema Change Tracking During Logical Replication", "url": "https://www.shayon.dev/post/2024/244/pg_easy_replicate-supports-schema-change-tracking-during-logical-replication/", "published_at": "2024-08-31T16:19:30+00:00" }, { "id": "01a087df-7c1e-73ce-a164-b6d4f0d91f76", "title": "Stop Relying on IF NOT EXISTS for Concurrent Index Creation in PostgreSQL", "url": "https://www.shayon.dev/post/2024/225/stop-relying-on-if-not-exists-for-concurrent-index-creation-in-postgresql/", "published_at": "2024-08-12T17:43:48+00:00" }, { "id": "01a087df-7c1e-73ce-a164-b6d4f0ee8396", "title": "The Tech Industry's Moral Vacuum", "url": "https://www.shayon.dev/post/2024/203/the-tech-industrys-moral-vacuum/", "published_at": "2024-07-21T19:15:41+00:00" }, { "id": "01a087df-7c1e-73ce-a164-b6d4f1d4529d", "title": "Use pg_easy_replicate for setting up Logical Replication and Switchover in PostgreSQL", "url": "https://www.shayon.dev/post/2024/195/use-pg_easy_replicate-for-setting-up-logical-replication-and-switchover-in-postgresql/", "published_at": "2024-07-13T13:11:27+00:00" }, { "id": "01a087df-7c1e-73ce-a164-b6d4f21ecb66", "title": "Fast, Simple and Metered Concurrency in Ruby with Concurrent::Semaphore", "url": "https://www.shayon.dev/post/2024/148/fast-simple-and-metered-concurrency-in-ruby-with-concurrentsemaphore/", "published_at": "2024-05-27T12:00:38+00:00" }, { "id": "01a087df-7c1f-738a-b39c-8456a0e72bb2", "title": "The value of sitting on an idea", "url": "https://www.shayon.dev/post/2024/104/the-value-of-sitting-on-an-idea/", "published_at": "2024-04-13T13:37:51+00:00" }, { "id": "01a087df-7c1f-738a-b39c-8456a1e14635", "title": "Incidents and the requirement of slowing down", "url": "https://www.shayon.dev/post/2024/89/incidents-and-the-requirement-of-slowing-down/", "published_at": "2024-03-29T14:31:16+00:00" }, { "id": "01a087df-7c1f-738a-b39c-8456a2b0a45f", "title": "Embracing the weeds", "url": "https://www.shayon.dev/post/2024/69/embracing-the-weeds/", "published_at": "2024-03-09T13:21:20+00:00" }, { "id": "01a087df-7c1f-738a-b39c-8456a3376be2", "title": "100x Faster Query in Aurora Postgres with a lower random_page_cost", "url": "https://www.shayon.dev/post/2024/55/100x-faster-query-in-aurora-postgres-with-a-lower-random_page_cost/", "published_at": "2024-02-24T06:43:34+00:00" }, { "id": "01a087df-7c1f-738a-b39c-8456a3c57e9a", "title": "Shipping Fast Requires a High Degree of Trust", "url": "https://www.shayon.dev/post/2024/7/shipping-fast-requires-a-high-degree-of-trust/", "published_at": "2024-01-07T15:56:48+00:00" }, { "id": "01a087df-7c1f-738a-b39c-8456a3e96b3b", "title": "Introducing pg_easy_replicate 2.0", "url": "https://www.shayon.dev/post/2023/363/introducing-pg_easy_replicate-2.0/", "published_at": "2023-12-29T16:53:10+00:00" }, { "id": "01a087df-7c1f-738a-b39c-8456a41c1ab7", "title": "Do you really need Foreign Keys?", "url": "https://www.shayon.dev/post/2023/355/do-you-really-need-foreign-keys/", "published_at": "2023-12-21T14:25:15+00:00" }, { "id": "01a087df-7c1f-738a-b39c-8456a4ba3e7d", "title": "pg-osc: Zero downtime schema changes in PostgreSQL", "url": "https://www.shayon.dev/post/2022/47/pg-osc-zero-downtime-schema-changes-in-postgresql/", "published_at": "2022-02-16T16:50:49+00:00" }, { "id": "01a087df-7c1f-738a-b39c-8456a55d3319", "title": "Why I enjoy PostgreSQL - Infrastructure Engineer's Perspective", "url": "https://www.shayon.dev/post/2022/17/why-i-enjoy-postgresql-infrastructure-engineers-perspective/", "published_at": "2022-01-17T19:33:20+00:00" }, { "id": "01a087df-7c1f-738a-b39c-8456a5c8cc97", "title": "talks & publications", "url": "https://www.shayon.dev/publications/", "published_at": "2020-12-06T00:00:00+00:00" }, { "id": "01a087df-7c1f-738a-b39c-8456a691d9ef", "title": "Handling Network Failures in the Cloud", "url": "https://www.shayon.dev/post/2020/130/handling-network-failures-in-the-cloud/", "published_at": "2020-05-09T20:49:53+00:00" }, { "id": "01a087df-7c1f-738a-b39c-8456a71fcf75", "title": "about", "url": "https://www.shayon.dev/about/", "published_at": "2020-04-25T00:00:00+00:00" }, { "id": "01a087df-7c1f-738a-b39c-8456a7eb13a9", "title": "mitigate first, investigate later", "url": "https://www.shayon.dev/incident/", "published_at": "2020-04-25T00:00:00+00:00" }, { "id": "01a087df-7c1f-738a-b39c-8456a849c664", "title": "reading list", "url": "https://www.shayon.dev/reading/", "published_at": "2020-04-25T00:00:00+00:00" }, { "id": "01a087df-7c1f-738a-b39c-8456a94498b0", "title": "Fetch current signal handlers without overriding in Ruby", "url": "https://www.shayon.dev/post/2017/363/fetch-current-signal-handlers-without-overriding-in-ruby/", "published_at": "2017-12-29T22:36:51+00:00" } ] posts Claim your blog
Back to Shayon Mukherjee
Blog · corpus.blog/blogs/shayon.dev/posts

Shayon Mukherjee

shayon.dev

2026

2025

2024

2023

2022

2020

2017