BetterDev #147 - How Much of a Genius-Level Move Was Using Binary Space Partitioning in Doom and Migration ZooKeeper into Kubernetes without downtime
Better Dev #147 Apr 13, 2020
Hi everyone,
The world continue to need video chat software that secure and reliable. WebRTC is utilized a lot to quickly build your own tool. In this issue, I had 2 code bases that to help you learn about building video call apps with WebRTC.
I also found this great resource: Freecodecamp is offering free course for AWS certificate, available on their youtube channel, for free and no advertisements. Check them out.
A decade after Doom’s release, in 2003, journalist David Kushner published a book about id Software called Masters of Doom, which has since become the canonical account of Doom’s creation. Carmack, realizing the problem with his renderer was fundamental enough that he would need to find a better rendering algorithm, started reading research papers. He eventually implemented a technique called “binary space partitioning,” never before used in a video game, that dramatically sped up the Doom engine.
Hubspot migrated hundreds of ZooKeeper instances from individual server instances to Kubernetes without downtime. Their approach used powerful Kubernetes features like endpoints to ease the process, so we’re sharing the high level outline of the approach for anyone who wants to follow in our footsteps.
Slack’s TURN server allowed relaying of TCP connections and UDP packets to internal Slack network and meta-data services on AWS. Accessing to that meta-data services usually allow you to get the IAM credential of that instance profile.
Having a good database schema design is crucial for building applications that will need to scale in traffic and complexity. If you happen to do a bad design choice you will see that it takes a lot of effort to stop the pattern from propagating to your backends’ services and controllers, and finally to your frontend
Postgres is great and it has so many options to tune its performance. New article pop up time to time. There are four high-level settings which will be discussed here: shared_buffers, wal_buffers, effective_cache_size, and maintenance_work_mem.
Expensify has an unusual technology stack in many way. No internal dns, just managed /etc/host, but most surprising is that they don’t use MySQL or Postgres — instead using none other than SQLite — and it works great. They wrap SQLite in bedrockdb, even using it for their job queue.
Diagnosing network problems is something that system administrators dread. Almost always their inability to perform efficient network analysis is based on their own reluctance to learn and embrace network testing. Let’s change that by learning three tools that a system admin should routinely use: mtr, iperf, and MTU testing with ping.
Third book in the SRE seria book by Google. It’s free in all digital form now: PDF, EPUB(iBook), Mobi(Kindle)
A Buffer Overflow is a bug class in a program typically written in a memory unsafe language like C or C++. Buffer Overflow bugs from user-input can often allow someone to overwrite some data in memory they weren’t supposed to. Before we dive into how to exploit Buffer Overflow bugs, we will do a quick introduction to Assembly.
We all run our own web server, dev server, hosting side project, but prolly not many run their own mail server. It is suprising easy to do that in 2020. Plus you got to lear what component we need for mail server.
TLS is fundamental to secure HTTP trafic. They are complex, from time to time we include link about TLS to help you understand more about it. This is chapter 4 of a networking 101 book, help you lean Encryption, Authentication, and Integrity, TLS Handshake. RSA, Diffie-Hellman and Forward Secrecy and more. Another article, in very short from about TLS Handshake by Cloudflare if you just want a short overview.
Code to read
Zoom’s most interesting feature is the “Virtual Background” support which allows users to replace the background behind them in their webcam video feed with any image (or video). How can we implement that ourself because that feature is not well support on Linux.
PythonKubernetes rust kubelet. Make it easy to deploy WebAssembly workloads on Kubernetes. Also demonstrate to the community how to build architectural pieces of Kubernetes in alternative programming languages.
Rust🚀 Zipcall.io 🚀 Peer to peer browser video calling platform with unmatched video quality and latency.
JavaScriptWebRTCTerminal multiplexer inspired by i3. Want to know how to write something like tmux in Go? read on.
GoVideo
Tools
A command-line tool for producing vector-graphics charts of the night sky in SVG, PDF and PNG formats. A fun tool I would say.
source code of a hosted service to test email. You can read more about how it works in case you want to use hosted service.
a CLI to manage aliases through simple commands to add and remove scoped aliases and substitutions.
Open Source Identity and Access Management. You can do Single Singon, LDAP,OpenID Connect, OAuth 2.0 and SAML 2.0
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 #146 - Security Engineering: A Guide to Building Dependable Distributed Systems
Tuesday, April 7, 2020
Better Dev #146 Apr 6, 2020 Hi everyone, Memory Leak, Security, Low level systems: sound system and linux kernel module and how Slack deploy their system. I got them all this week :). Hope you like
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