56,966 blogs Β· [ { "id": "01a087c3-b9fc-72d4-b8d6-51d458f6d706", "title": "Explaining FoundationDB's Architecture Through Compartmentalization", "url": "https://pierrezemb.fr/posts/foundationdb-architecture-through-compartmentalization/", "published_at": "2026-08-13T00:00:00+00:00" }, { "id": "01a087c3-b9fc-72d4-b8d6-51d459a4d603", "title": "Why Apache Avro Needs Two Schemas", "url": "https://pierrezemb.fr/posts/why-apache-avro-needs-two-schemas/", "published_at": "2026-07-30T00:00:00+00:00" }, { "id": "01a087c3-b9fc-72d4-b8d6-51d459ae9364", "title": "Designing Fakes That Prove Correctness", "url": "https://pierrezemb.fr/posts/designing-fakes-that-prove-correctness/", "published_at": "2026-06-09T00:00:00+00:00" }, { "id": "01a087c3-b9fc-72d4-b8d6-51d459d6e036", "title": "BugBash 2026, or how the correctness decade has started", "url": "https://pierrezemb.fr/posts/bugbash-2026/", "published_at": "2026-05-05T00:00:00+00:00" }, { "id": "01a087c3-b9fc-72d4-b8d6-51d45abcaffc", "title": "Why Fakes Beat Mocks and Testcontainers", "url": "https://pierrezemb.fr/posts/why-fakes-beat-mocks-and-testcontainers/", "published_at": "2026-03-26T00:00:00+00:00" }, { "id": "01a087c3-b9fc-72d4-b8d6-51d45b21975f", "title": "Diving Into Coverage-Guided Fuzzing", "url": "https://pierrezemb.fr/posts/diving-into-coverage-guided-fuzzing/", "published_at": "2026-03-23T00:00:00+00:00" }, { "id": "01a087c3-b9fc-72d4-b8d6-51d45b525002", "title": "Building Index-Backed Query Plans in DataFusion", "url": "https://pierrezemb.fr/posts/datafusion-index-provider/", "published_at": "2026-02-25T00:00:00+00:00" }, { "id": "01a087c3-b9fc-72d4-b8d6-51d45bd7a8d8", "title": "Simulating Leader Election on top of FoundationDB", "url": "https://pierrezemb.fr/posts/simulating-leader-election-on-foundationdb/", "published_at": "2026-02-05T00:00:00+00:00" }, { "id": "01a087c3-b9fc-72d4-b8d6-51d45c01962b", "title": "FoundationDB's Transaction Model for Layer Engineers", "url": "https://pierrezemb.fr/posts/fdb-transaction-model-for-layer-engineers/", "published_at": "2026-01-30T00:00:00+00:00" }, { "id": "01a087c3-b9fc-72d4-b8d6-51d45c81afa1", "title": "What I Tell Colleagues About Using LLMs for Engineering", "url": "https://pierrezemb.fr/posts/llms-for-engineering/", "published_at": "2026-01-15T00:00:00+00:00" }, { "id": "01a087c3-b9fc-72d4-b8d6-51d45d562a0e", "title": "2025: A Year in Review", "url": "https://pierrezemb.fr/posts/2025-year-in-review/", "published_at": "2025-12-26T00:00:00+00:00" }, { "id": "01a087c3-b9fc-72d4-b8d6-51d45de5de6a", "title": "Specs Are Back, But We're Missing the Tools", "url": "https://pierrezemb.fr/posts/specs-are-back/", "published_at": "2025-12-19T00:00:00+00:00" }, { "id": "01a087c3-b9fc-72d4-b8d6-51d45ed92482", "title": "Designing Rust FDB Workloads That Actually Find Bugs", "url": "https://pierrezemb.fr/posts/writing-rust-fdb-workloads-that-find-bugs/", "published_at": "2025-12-09T00:00:00+00:00" }, { "id": "01a087c3-b9fc-72d4-b8d6-51d45f07602d", "title": "Diving into Kubernetes' Watch Cache", "url": "https://pierrezemb.fr/posts/diving-into-kubernetes-watch-cache/", "published_at": "2025-11-12T00:00:00+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bcfac35876", "title": "Diving into FoundationDB's Simulation Framework", "url": "https://pierrezemb.fr/posts/diving-into-foundationdb-simulation/", "published_at": "2025-10-30T00:00:00+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bcfb86b99b", "title": "From Arc to Box: One Deref Bound to Rule Them All", "url": "https://pierrezemb.fr/posts/from-arc-to-box-one-deref-bound/", "published_at": "2025-10-02T00:00:00+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bcfc2466ab", "title": "A Practical Guide to Application Metrics: Where to Put Your Instrumentation", "url": "https://pierrezemb.fr/posts/practical-guide-to-application-metrics/", "published_at": "2025-09-24T00:00:00+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bcfcca7cf1", "title": "Testing: prevention vs discovery", "url": "https://pierrezemb.fr/posts/testing-prevention-vs-discovery/", "published_at": "2025-09-08T00:00:00+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bcfd8cef12", "title": "Shipped vs. Operated, or How Many Bash Scripts Does It Take?", "url": "https://pierrezemb.fr/posts/shipped-vs-operated/", "published_at": "2025-08-18T00:00:00+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bcfda5a772", "title": "Two Podcast Episodes on Topics Developers Rarely Talk About", "url": "https://pierrezemb.fr/posts/debugging-and-correctness-podcasts/", "published_at": "2025-08-11T00:00:00+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bcfe55da96", "title": "Three Years of Nix and NixOS: The Good, the Bad, and the Ugly", "url": "https://pierrezemb.fr/posts/nixos-good-bad-ugly/", "published_at": "2025-07-01T23:37:27+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bcff0695ad", "title": "Thank You, DataFusion: Queries in Rust, Without the Pain", "url": "https://pierrezemb.fr/posts/thank-you-datafusion/", "published_at": "2025-06-04T00:00:00+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bcff2f491f", "title": "Bypassing FoundationDB's Transaction Limits with Record Layer Continuations", "url": "https://pierrezemb.fr/posts/understanding-fdb-record-layer-continuations/", "published_at": "2025-06-02T22:30:00+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bcffea541a", "title": "Unlocking Tokio's Hidden Gems: Determinism, Paused Time, and Local Execution", "url": "https://pierrezemb.fr/posts/tokio-hidden-gems/", "published_at": "2025-05-18T16:13:02+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd00a1d018", "title": "What if we embraced simulation-driven development?", "url": "https://pierrezemb.fr/posts/simulation-driven-development/", "published_at": "2025-04-18T09:12:12+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd014096ef", "title": "So, You Want to Learn More About Deterministic Simulation Testing?", "url": "https://pierrezemb.fr/posts/learn-about-dst/", "published_at": "2025-04-10T22:00:00+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd01c66067", "title": "Key design tip: reverse number scanning in ordered key-value stores", "url": "https://pierrezemb.fr/posts/reverse-number-scanning/", "published_at": "2025-03-27T04:24:27+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd02487847", "title": "Debugging FoundationDB's Data Distributor", "url": "https://pierrezemb.fr/posts/fdb-data-distributor/", "published_at": "2025-03-06T23:00:00+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd0258ccfe", "title": "Ensuring Safety in FoundationDB's Rust Crate", "url": "https://pierrezemb.fr/posts/providing-safety-fdb-rs/", "published_at": "2025-02-10T23:00:00+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd02f5935a", "title": "Back in engineering!", "url": "https://pierrezemb.fr/posts/back-engineering/", "published_at": "2025-01-14T23:37:27+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd030ab582", "title": "Redwood’s memory tuning in FoundationDB", "url": "https://pierrezemb.fr/posts/redwood-memory-tuning/", "published_at": "2024-04-21T23:37:27+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd037fe224", "title": "True idempotent transactions with FoundationDB 7.3", "url": "https://pierrezemb.fr/posts/automatic-txn-fdb-730/", "published_at": "2024-03-11T23:37:27+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd047949f3", "title": "The unseen treasures of Infrastructure Engineering: Academic Papers", "url": "https://pierrezemb.fr/posts/academic-conferences/", "published_at": "2024-01-22T14:37:27+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd047c2fdf", "title": "Best resources to learn about data and distributed systems", "url": "https://pierrezemb.fr/posts/distsys-resources/", "published_at": "2022-01-17T00:37:27+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd0520a868", "title": "Crafting row keys in FoundationDB", "url": "https://pierrezemb.fr/posts/crafting-keys-in-fdb/", "published_at": "2021-02-20T23:24:27+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd05ab3629", "title": "Notes about ETCD", "url": "https://pierrezemb.fr/posts/notes-about-etcd/", "published_at": "2021-01-10T23:24:27+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd062133ae", "title": "10 years of programming and counting πŸš€", "url": "https://pierrezemb.fr/posts/ten-years-programming/", "published_at": "2020-09-29T23:24:27+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd0654938d", "title": "Announcing Record-Store, a new (experimental) place for your data", "url": "https://pierrezemb.fr/posts/announcing-record-store/", "published_at": "2020-09-23T09:24:27+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd06a91244", "title": "Diving into ETCD's linearizable reads", "url": "https://pierrezemb.fr/posts/diving-into-etcd-linearizable/", "published_at": "2020-09-18T04:24:27+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd07a2b2d7", "title": "Notes about Raft's paper", "url": "https://pierrezemb.fr/posts/notes-about-raft/", "published_at": "2020-07-30T06:24:27+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd08638f61", "title": "Announcing Kafka-on-Pulsar: bring native Kafka protocol support to Apache Pulsar", "url": "https://pierrezemb.fr/posts/announcing-kop/", "published_at": "2020-03-24T09:24:27+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd08ed0a51", "title": "Contributing to Apache HBase: custom data balancing", "url": "https://pierrezemb.fr/posts/hbase-custom-data-balancing/", "published_at": "2020-02-14T09:24:27+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd09b9bcad", "title": "Notes about FoundationDB", "url": "https://pierrezemb.fr/posts/notes-about-foundationdb/", "published_at": "2020-01-30T09:24:27+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd0a4a2d83", "title": "Diving into Kafka's Protocol", "url": "https://pierrezemb.fr/posts/diving-into-kafka-protocol/", "published_at": "2019-12-08T14:00:00+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd0b052d14", "title": "Diving into Hbase's MemStore", "url": "https://pierrezemb.fr/posts/diving-into-hbase-memstore/", "published_at": "2019-11-17T09:24:27+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd0b623693", "title": "What can be gleaned about GFS successor codenamed Colossus?", "url": "https://pierrezemb.fr/posts/colossus-google/", "published_at": "2019-08-04T13:07:11+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd0bed89c4", "title": "Playing with TTL in HBase", "url": "https://pierrezemb.fr/posts/ttl-hbase/", "published_at": "2019-05-27T20:07:11+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd0bf6e1e2", "title": "Handling OVH's alerts with Apache Flink", "url": "https://pierrezemb.fr/posts/ovh-alerts-flink/", "published_at": "2019-02-03T14:37:27+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd0c85b953", "title": "What are ACID transactions?", "url": "https://pierrezemb.fr/posts/acid-transactions/", "published_at": "2019-02-03T00:00:00+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd0ce8a86f", "title": "Hbase Data Model", "url": "https://pierrezemb.fr/posts/hbase-data-model/", "published_at": "2019-01-27T19:24:27+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd0de5c157", "title": "Introducing HelloExoWorld: The quest to discover exoplanets with Warp10 and Tensorflow", "url": "https://pierrezemb.fr/posts/introducing-helloexoworld-the-quest-to-discover-exoplanets-with-warp10-and-tensorflow/", "published_at": "2017-10-11T10:23:11+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd0e6b22bd", "title": "Engage maximum warp speed in time series analysis with WarpScript", "url": "https://pierrezemb.fr/posts/engage-maximum-warp-speed-in-time-series-analysis-with-warpscript/", "published_at": "2017-10-08T20:43:05+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd0f021765", "title": "Event-driven architecture 101", "url": "https://pierrezemb.fr/posts/eventdriven-architecture-101/", "published_at": "2016-05-13T17:19:23+00:00" }, { "id": "01a087c3-b9fd-7324-a2fa-d6bd0f6a615e", "title": "Let’s talk about containers", "url": "https://pierrezemb.fr/posts/lets-talk-about-containers/", "published_at": "2016-01-04T18:52:19+00:00" } ] posts Claim your blog
Back to pierrezemb.fr
Blog Β· corpus.blog/blogs/pierrezemb.fr/posts

pierrezemb.fr

pierrezemb.fr

2026

2025

2024

2022

2021

2020

2019

2017

2016