BetterDev #201 - MVCC in PostgreSQL - Rows Versions and Teardown of a PC power supply
Better Dev #201 May 24, 2021
Hi all, This week, my email forwarding app reached a certain scale and I had to dive into Postgres performance to reduced our disk usage and improved performance. I did research and found some userful links to share with you in this issue. I also took a detour into some hardwares topic to enlighten my day so we have a link to a hardware article. As always, diversify your knowledge, enjoy more things, explore more stuff. The internet is a beautiful place :-). If you enjoy this newsletter, please consider bought me a coffee ❤ to support me.
In Postgress, if you access a row in transaction T0, then delete that row on transaction T1, then that row is still accessible in transaction T0. How Postgres maintain that view of row? Where does that data sit on disk? Check out other articles in this series such as Forks, files, pages. Let’s level up our database knowledge.
The first beta release of the upcoming Postgres 14 release was made available yesterday. In this article we’ll take a first look at what’s in the beta, with an emphasis on one major performance improvement, as well as three monitoring improvements that caught our attention.
Performance tuning does not only mean adjusting postgresql.conf properly, or making sure that your kernel parameters are properly tuned. Performance tuning also implies that we have to find performance bottlenecks first, isolate slow queries and understand what the system is doing.
Be aware that you won’t be able to use these setting and immediately bring your RPS up magically. This is a post about customize many low level for a specific workload. Eg, disable Spectre mitigation, syscall blocking. Imagine setting your code to a happy path to eliminate all logging, all if/else auth checking. It’s purely a research to show how fast we can push the machine.
To Dropbox, One of the best ways to find ways to improve performance, we’ve found, is to work closely with our customers. We love shared troubleshooting sessions with their own engineering teams to find and eliminate bottlenecks. They share a story how they are able to work with Window Core TCP team to improved the Windows implementation of the TCP RACK-TLP algorithm
Most of time when dealing with numbers, we deal with number upto 64 bits and we usually have thing like int32, int64 in our code. The max of these are 2^64. For thing bigger than that, we use Big Number. The use of Big Numbers in Cryptography is actually what makes us care about being Constant-Time.
1Password is a password manager app and they finally release Linux support. Their app leverage Rust for backend, Electron, TypeScript, React, Neon to build the UI with HTML technologies.
Look into a distributed locking algorithm based on Google Cloud. I’ll discuss several existing implementations and suggest algorithmic improvements in terms of performance and robustness.
The task of a PC power supply is to convert the power from the wall (120 or 240 volts AC) into stable power at the DC voltages that the computer requires. The power supply must be compact and low-cost while transforming the power efficiently and safely. To achieve these goals, power supplies use a variety of techniques and are more complex inside than you might expect.
A customer writes in and says the dreaded words: “My app is slow”. This post talked about how Slack impelement and roll out distributed tracing for their apps.
Code to read
Video
A big list of videos on many different fields: front-end, ML, DevOps…
Tools
Imagine your SSH server only listens on an IPv6 address, and where the last 6 digits are changing every 30 seconds as a TOTP code…
A simple and complete feature flag solution, without any complex backend system to install, you need only a file as your backend. 🎛️
A terminal UI Dashboard for monitoring requests for code review across several Github repositories and pull requests.
Open source computer vision API based on open source models. Can do thing like send an request to detect object in images. Check out server code and client code
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 #200 - Don’t push that button: Exploring the software that flies SpaceX rockets and Starships
Monday, May 17, 2021
Better Dev #200 May 17, 2021 Hi all, Hope everyone has a great week ahead. For any readers who are in Gaza, stay safe, I hope everything will be fine. This week, we have many article that focus on high
BetterDev #199 - TLS: demystifying communication encryption in PostgreSQL
Monday, May 10, 2021
Better Dev #199 May 10, 2021 Hi all, Hope everyone has a great week ahead. Things are getting better, if you are an Indian or Colombian reader. Stay safe. Thank you to the readers who have bought me a
BetterDev #198 - PostgreSQL: Understanding Deadlock and basics of Futexes
Monday, May 3, 2021
Better Dev #198 May 03, 2021 Hi all, Hope everyone has a great week ahead. This week we focus on deadlock and concurency primitive. Thank you to the readers who have bought me a coffee, really
BetterDev #197 - Postgres error: invalid byte sequence for encoding
Monday, April 26, 2021
Better Dev #197 Apr 26, 2021 Hi all, Hope everyone has a great week ahead. Enjoy this week issue with articles cover a wide ranges of knowledge: from hardware to network to SRE and algorithm. Thank you
BetterDev #196 - Allow arbitrary URLs, expect arbitrary code execution and curl those funny ipv4 addresses
Tuesday, April 20, 2021
Better Dev #196 Apr 19, 2021 Hi all, This week is an issue of network knowledge, tips and tricks. The fundamental of how computers can talk to each others :-). If you enjoy this newsletter, make a
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