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
JSK Daily for Nov 27, 2024
Wednesday, November 27, 2024
JSK Daily for Nov 27, 2024 View this email in your browser A community curated daily e-mail of JavaScript news JavaScript Certification Black Friday Offer – Up to 54% Off! Certificates.dev, the trusted
Ranked | The World's Biggest Importers of Goods 🌎
Wednesday, November 27, 2024
As Trump tariffs are anticipated to disrupt global trade and push up prices for consumers, we show the world's biggest importers of goods. View Online | Subscribe | Download Our App >> 📱Book
Daily Coding Problem: Problem #1621 [Easy]
Wednesday, November 27, 2024
Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by Google. A regular number in mathematics is defined as one which evenly divides some
Spyglass Dispatch: The Xitter Bail Out • OpenAI Tender • Grokking Grok • Smartphone Sales • Fischer Random Chess • Scott Bessent for Treasury
Wednesday, November 27, 2024
The Xitter Bail Out • OpenAI Tender • Grokking Grok • Smartphone Sales • Fischer Random Chess • Scott Bessent for Treasury The Spyglass Dispatch is a free newsletter sent out daily on weekdays. Feel
The Long Road Home: A Story of Loss, Learning, and Renaissance - PART 4
Wednesday, November 27, 2024
Top Tech Content sent at Noon! How the world collects web data Read this email in your browser How are you, @newsletterest1? 🪐 What's happening in tech today, November 27, 2024? The HackerNoon
Top Tech Deals 🏷️ PS5 Slim, 4K TVs, 10th Gen iPad, and More!
Wednesday, November 27, 2024
The Black Friday madness is here! How-To Geek Logo November 27, 2024 Top Tech Deals: PS5 Slim, 4K TVs, 10th Gen iPad, and More! The Black Friday madness is here! Black Friday sales are here, and we
The 165+ best Black Friday deals
Wednesday, November 27, 2024
Windows Super God Mode; Bluesky starter packs; Tech gifts under $100 -- ZDNET ZDNET Tech Today - US November 27, 2024 Black Friday 2024 live blog Best Black Friday deals 2024: 165+ sales live now
⚙️ Neuralink's new trial
Wednesday, November 27, 2024
Plus: Zoom is becoming an AI-first company
Matrix Botnet Exploits IoT Devices in Widespread DDoS Botnet Campaign
Wednesday, November 27, 2024
THN Daily Updates Newsletter cover The AI Value Playbook ($35.99) FREE for a Limited Time Business leaders are challenged by the speed of AI innovation and how to navigate disruption and uncertainty.
The Sequence Chat: Why are Foundation Models so Hard to Explain and What are we Doing About it?
Wednesday, November 27, 2024
Addressing some of the interpretability challenges of foundation models and the emerging fields of mechanistic interpretability and behavioral probing. ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏