BetterDev #243 - Scaling Etsy Payments with Vitess and Husky DataDog Exactly Once Ingestion and Multi Tenancy at Scale
Better Dev #243 Feb 26, 2023
Etsy Payment system reached the point where vertical scale won’t work anymore. They used biggest instance on GCP. They migrated this to Vitess. They have to change schema and update data model and roll out in 2 phases and share with us how they do in this article
Every day Refind picks 5 links from around the web that make you smarter, tailored to your interests. Refind is a must-read newsletter loved by 100,000+ curious minds. Sign up for free today
As CPU cores become both faster and more numerous, the limiting factor for most programs is memory access. Hardware designers have come up with ever more sophisticated memory handling and acceleration techniques–such as CPU caches–but these cannot work optimally without some help from the programmer. Unfortunately, neither the structure nor the cost of using the memory subsystem of a computer or the caches on CPUs is well understood by most programmers. This paper explains the structure of memory subsystems in use on modern commodity hardware, illustrating why CPU caches were developed, how they work, and what programs should do to achieve optimal performance by utilizing them.
DataDog handle massive amount of data so they build a system to redesign how they ingest and store log call Husky. Husky’s architecture decouples storage and compute so that they can be scaled independently. In this post we learn how Husky organized its data and establish consensus.
we could build a simple Virtual Machine (VM) with no dynamic linking and a small set of minimalistic APIs that remain stable over time, it would make it a lot easier to build software without worrying about becoming randomly broken by changing APIs or dependencies. The author build such a VM call UVM and share with us here.
Consistent hashing is a technique to associate a resource with a set a nodes evenly, but also support adding new nodes into system without reallocating resource around.
discussed how roles (users and groups) are created and managed in PostgreSQL Depending on your background with permissions, particularly in other database products, some of those nuances in how permissions work may have been surprising.
I always wonder how those walk through, fly through or 3d object model are being build. This is an end to end tutorial to show you the entire process of implement JS, CSS code and build the animation
In JavaScript, its very easy to create object with no extra syntax: just do a {foo: 1}
. But turning out there is another better and fast way: const o = new Map();o.set('foo', 1)
. Map is optimize for adding/removing key frequently
A walk-through of multiple tools that can be very useful when audit and analyse a network system. This is the step call analyze footprint of any system to find relevant components. By running these tools on your own network can yield interesting result sometimes.
A very good way to learn and build reliable distributed system. The famous Kyle of Jepsen team up with fly.io to build a challenge, where you implement the system to communicate with a pre-build server follow a protocol. Your program needs to communicate the right way to pass the challenge.
Skillshare is a platform that offers thousands of classes in a variety of subjects. From creative arts to business and technology, there’s something for everyone. Expert instructors guide students every step of the way and a community of passionate learners provides support and inspiration. Whether you’re looking to learn something new or enhance your existing skills, Skillshare has something for you. Explore the platform today and start your learning journey.
Code to read
A chrome extension that mount your browser tabs as a file system and you simply interact with part of it like the title, close tab etc. Read the companion post here
JavaScriptFusegenerate a pre-built authentication system into a rails application (web or api-only) that follows both security and rails best practices. By generating code into the user’s application instead of using a library, the user has complete freedom to modify the authentication system so it works best with their app.
Rubya DOM-only, super-fast, uber-tolerant XSS sanitizer for HTML, MathML and SVG. When scraping site or need to display a certain user input such as email or html in browser, this come in handy.
JavaScriptA project that build a queue on Postgres, but expose extra SQL function where you call in to queue/enqueue job. Its API is similar to AWS SQS. I love this kind of code base, I got to learn Rust, learn how to write extension with pgx, a tool to write Postgres extension in Rust, and can also evaluate to use this tool for my lightweight queue in the future
RustTools
A tasty, self-hostable Git server for the command line. You SSH into it and browse it through a TUI (terminal based user interface). You can even click on it too, in a terminal just like a normal remote SSH session.
SQLite Foreign Data Wrapper for PostgreSQL. This means that PostgreSQL now can access and join data with another SQLite database.
tream Arrow file data into Postgres. Tools like BigQuery, RedShift already support Arrow format due to their compression, easiser to parse and fast.
a simple CLI tool that contains everything you need to start creating Alerts. builtin providers (e.g. sentry/datadog or slack/pagerduty), 100% open sourced.
a high-throughput generation engine for running large language models with limited GPU memory (e.g., a 16GB T4 GPU or a 24GB RTX3090 gaming card!). FlexGen allows high-throughput generation by IO-efficient offloading, compression and large effective batch sizes.
You can view this issue in web browser.
If you have any suggestion/feedback, do tell me by replying to this email. I read them all.
No longer want to receive these emails? Unsubscribe
Older messages
BetterDev #242 - Neural Networks: Zero to Hero and Bit Hacking with Go code
Monday, February 13, 2023
Better Dev #242 Feb 13, 2023 Neural Networks: Zero to Hero A course by Andrej Karpathy on building neural networks, from scratch, in code. We start with the basics of backpropagation and build up to
BetterDev #241 - How a single line of code brought down a half-billion euro rocket launch
Monday, February 6, 2023
Better Dev #241 Feb 06, 2023 How a single line of code brought down a half-billion euro rocket launch How a rocket launch fail? Re-use of code written for 32-bit system on a 64-bit data range. Novo
BetterDev #240 - Hello, PNG
Tuesday, January 24, 2023
Better Dev #240 Jan 23, 2023 Start speaking a new language in just three weeks with Babbel (SPONSOR) Learning to speak a new language goes beyond just vocabulary: it's about being able to hold a
BetterDev #239 - What happens when you open a terminal and enter ‘ls’
Friday, January 20, 2023
Better Dev #239 Jan 16, 2023 What happens when you open a terminal and enter 'ls' This could be the equivalent of the in famous “what happen when you type an address into the browser”, but for
BetterDev #238 - Avoiding Double Payments in a Distributed Payments System
Monday, January 9, 2023
Better Dev #238 Jan 9, 2023 Hi everyone, this week is security week. First, if you used CircleCI, make sure to rotate any secret since they suffered a breach. Second, Slack private repository got
You Might Also Like
Import AI 399: 1,000 samples to make a reasoning model; DeepSeek proliferation; Apple's self-driving car simulator
Friday, February 14, 2025
What came before the golem? ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏
Defining Your Paranoia Level: Navigating Change Without the Overkill
Friday, February 14, 2025
We've all been there: trying to learn something new, only to find our old habits holding us back. We discussed today how our gut feelings about solving problems can sometimes be our own worst enemy
5 ways AI can help with taxes 🪄
Friday, February 14, 2025
Remotely control an iPhone; 💸 50+ early Presidents' Day deals -- ZDNET ZDNET Tech Today - US February 10, 2025 5 ways AI can help you with your taxes (and what not to use it for) 5 ways AI can help
Recurring Automations + Secret Updates
Friday, February 14, 2025
Smarter automations, better templates, and hidden updates to explore 👀 ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏
The First Provable AI-Proof Game: Introducing Butterfly Wings 4
Friday, February 14, 2025
Top Tech Content sent at Noon! Boost Your Article on HackerNoon for $159.99! Read this email in your browser How are you, @newsletterest1? undefined The Market Today #01 Instagram (Meta) 714.52 -0.32%
GCP Newsletter #437
Friday, February 14, 2025
Welcome to issue #437 February 10th, 2025 News BigQuery Cloud Marketplace Official Blog Partners BigQuery datasets now available on Google Cloud Marketplace - Google Cloud Marketplace now offers
Charted | The 1%'s Share of U.S. Wealth Over Time (1989-2024) 💰
Friday, February 14, 2025
Discover how the share of US wealth held by the top 1% has evolved from 1989 to 2024 in this infographic. View Online | Subscribe | Download Our App Download our app to see thousands of new charts from
The Great Social Media Diaspora & Tapestry is here
Friday, February 14, 2025
Apple introduces new app called 'Apple Invites', The Iconfactory launches Tapestry, beyond the traditional portfolio, and more in this week's issue of Creativerly. Creativerly The Great
Daily Coding Problem: Problem #1689 [Medium]
Friday, February 14, 2025
Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by Google. Given a linked list, sort it in O(n log n) time and constant space. For example,
📧 Stop Conflating CQRS and MediatR
Friday, February 14, 2025
Stop Conflating CQRS and MediatR Read on: my website / Read time: 4 minutes The .NET Weekly is brought to you by: Step right up to the Generative AI Use Cases Repository! See how MongoDB powers your