41554 blogs · [ { "id": "01a08761-3982-7036-92bf-0483397af709", "title": "Comparing Apache, CNCF, and Commonhaus", "url": "https://cnr.sh/posts/comparing-apache-cncf-commonhaus", "published_at": "2025-02-12T21:23:23+00:00" }, { "id": "01a08761-3982-7036-92bf-048346240a5a", "title": "Colophon", "url": "https://cnr.sh/colophon", "published_at": "2025-02-11T01:45:25+00:00" }, { "id": "01a08761-3982-7036-92bf-0483421b12e5", "title": "Posts", "url": "https://cnr.sh/posts", "published_at": "2025-02-10T18:34:29+00:00" }, { "id": "01a08761-3982-7036-92bf-04834528d95c", "title": "Oops!", "url": "https://cnr.sh/404", "published_at": "2025-02-10T18:34:29+00:00" }, { "id": "01a08761-3982-7036-92bf-04834690b7f7", "title": "Talks", "url": "https://cnr.sh/talks", "published_at": "2025-02-10T18:34:29+00:00" }, { "id": "01a08761-3982-7036-92bf-048346c54ada", "title": "Home", "url": "https://cnr.sh/.", "published_at": "2025-02-10T18:34:29+00:00" }, { "id": "01a08761-3982-7036-92bf-04833e146bf2", "title": "AI at the Helm: Building an Entire Open Source Project With GPT-4", "url": "https://cnr.sh/posts/2023-05-18-ai-helm-building-open-source-project-gpt-4", "published_at": "2023-05-18T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-048334886dca", "title": "Recap: A Data Catalog for People Who Hate Data Catalogs", "url": "https://cnr.sh/posts/2023-01-05-recap-for-people-who-hate-data-catalogs", "published_at": "2023-01-05T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-04833cc6ea7d", "title": "How to Plan Work for an Infrastructure Team", "url": "https://cnr.sh/posts/2022-06-13-how-to-plan-work-for-infrastructure-team", "published_at": "2022-06-13T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-04833fcb2697", "title": "How to Write a Technical Book", "url": "https://cnr.sh/posts/2021-12-13-how-to-write-a-technical-book", "published_at": "2021-12-13T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-048343d6cee2", "title": "Work for Two Companies", "url": "https://cnr.sh/posts/2021-11-08-work-for-two-companies", "published_at": "2021-11-08T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-048336dee9ca", "title": "The Missing README Software Engineering Links & Resources", "url": "https://cnr.sh/posts/2021-11-01-missing-readme-books-and-links", "published_at": "2021-11-01T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-04833729fbb4", "title": "OAuth \"Sign In With Google\" in a WkWebView", "url": "https://cnr.sh/posts/2021-10-11-google-oauth-wkwebview", "published_at": "2021-10-11T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-0483375d1cc7", "title": "Preventing Technology Turf Wars", "url": "https://cnr.sh/posts/2021-06-21-preventing-technology-turf-wars", "published_at": "2021-06-21T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-048338e04451", "title": "What the Heck is a Data Mesh?!", "url": "https://cnr.sh/posts/2021-06-08-what-the-heck-data-mesh", "published_at": "2021-06-08T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-04833c2e6575", "title": "The Future of Data Engineering", "url": "https://cnr.sh/posts/2019-07-29-future-data-engineering", "published_at": "2019-07-29T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-048334c9b496", "title": "Yes, you still need a QA team (but not for writing your tests)", "url": "https://cnr.sh/posts/2019-02-19-yes-you-still-need-qa-team-not-for-writing-tests", "published_at": "2019-02-19T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-04834094f5ea", "title": "Managing Kafka topic configuration", "url": "https://cnr.sh/posts/2019-02-04-managing-kafka-topic-configuration", "published_at": "2019-02-04T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-04833ec24698", "title": "Kafka is your escape hatch", "url": "https://cnr.sh/posts/2019-01-22-kafka-escape-hatch", "published_at": "2019-01-22T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-04833f8bd4ce", "title": "Research in cell, animal, and human software simulation can speed up experimentation", "url": "https://cnr.sh/posts/2019-01-15-research-cell-animal-human-software-simulation-speed-up-experimentation", "published_at": "2019-01-15T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-04833e0998ba", "title": "In defense of design documents", "url": "https://cnr.sh/posts/2018-11-27-in-defense-of-design-documents", "published_at": "2018-11-27T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-04833a7062d2", "title": "Minimum viable infrastructure", "url": "https://cnr.sh/posts/2018-11-19-minimum-viable-infrastructure", "published_at": "2018-11-19T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-048341790263", "title": "Don't tell people what to do, ask them how to do it", "url": "https://cnr.sh/posts/2018-11-12-dont-tell-people-what-to-do-ask-them-how-to-do-it", "published_at": "2018-11-12T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-04833cb3c955", "title": "Kafka change data capture breaks database encapsulation", "url": "https://cnr.sh/posts/2018-11-05-kafka-change-data-capture-breaks-database-encapsulation", "published_at": "2018-11-05T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-04833bb70832", "title": "Models and microservices should be running on the same continuous delivery stack", "url": "https://cnr.sh/posts/2018-10-29-models-microservices-should-be-using-same-continuous-delivery-stack", "published_at": "2018-10-29T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-048344d364f2", "title": "Your First Technical Presentation", "url": "https://cnr.sh/posts/2018-10-23-your-first-technical-presentation", "published_at": "2018-10-23T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-048335575e02", "title": "Trust, but automate", "url": "https://cnr.sh/posts/2017-09-11-trust-but-automate", "published_at": "2017-09-11T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-048336532853", "title": "Kafka Topic Naming Conventions", "url": "https://cnr.sh/posts/2017-08-29-how-paint-bike-shed-kafka-topic-naming-conventions", "published_at": "2017-08-29T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-0483430cc181", "title": "Choosing Where to Work", "url": "https://cnr.sh/posts/2017-08-21-choosing-where-to-work", "published_at": "2017-08-21T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-0483399fc648", "title": "One big cluster, or many small ones?", "url": "https://cnr.sh/posts/2017-08-14-one-big-cluster-many-small-ones", "published_at": "2017-08-14T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-048338b8a346", "title": "So, you want to build a Kafka Connector? Source edition.", "url": "https://cnr.sh/posts/2017-08-07-build-kafka-connector-source", "published_at": "2017-08-07T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-04833b4940f2", "title": "Using YARN with Cgroups", "url": "https://cnr.sh/posts/2013-06-14-yarn-with-cgroups", "published_at": "2013-06-14T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-0483443de6c0", "title": "Tech exits", "url": "https://cnr.sh/posts/2012-10-22-tech-exits", "published_at": "2012-10-22T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-04833d2878d2", "title": "Kafka Consumer Memory Tuning", "url": "https://cnr.sh/posts/2012-10-05-kafka-consumer-memory-tuning", "published_at": "2012-10-05T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-048337e226f2", "title": "Schedules & Scores API for Streaming Live Sports Stats", "url": "https://cnr.sh/posts/2012-09-29-streaming-live-sports-schedule-scores-stats-api", "published_at": "2012-09-29T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-04833ccb050e", "title": "Killing Subprocesses in Linux/Bash", "url": "https://cnr.sh/posts/2012-09-25-kill-subprocesses-linux-bash", "published_at": "2012-09-25T00:00:00+00:00" }, { "id": "01a08761-3982-7036-92bf-048339886f26", "title": "Sorting Reducer Input Values in Hadoop", "url": "https://cnr.sh/posts/2009-11-13-sort-reducer-input-value-hadoop", "published_at": "2009-11-13T00:00:00+00:00" } ] posts Claim your blog
Back to cnr.sh
Blog · corpus.blog/blogs/cnr.sh/posts

cnr.sh

cnr.sh

2025

10 Feb 2025

2023

2022

2021

2019

2018

2017

2013

2012

2009