#294 — November 25, 2020

Web Version

StatusCode Weekly
What's happening in software development, ops, platforms and tools.

How An Analytics Service Faced a Malicious, Targeted DDoS Attack Head On“At the start of November, someone decided that they would try to destroy our company.” This is a fantastic write-up of how a (very) small team faced a DDoS attack on their service and got AWS to help (for a price). The associated Hacker News discussion dug into some potential long term solutions.

Jack Ellis (Fathom Analytics)

▶  The Birth of UNIX with Brian Kernighan — Technically a (50-minute) podcast but with an easily read and complete transcript here. This is a fantastic chat with Brian Kernighan, a hugely influential Unix developer, co-creator of Awk, co-author of The C Programming Language, and more besides.

Corecursive Podcast podcast

How To Protect Your APIs Against Top Threats
As more and more data is exposed via APIs, security can no longer be an afterthought. See what the most common threats are and how to instrument your APIs to detect and block them.

Moesif sponsor

A Tale of Going from JavaScript to WebAssembly — A developer of a ‘ultra resolution’ storytelling platform tells the tale of upgrading their Web client’s performance by moving from a pure JavaScript approach to one turbocharged with WebAssembly. There’s a lot to learn here.

Marcel Duin

The Macro Problem with Microservices — Moving from building big monolithic apps with centralized state to distributed microservices has been a frequent occurrence in the past decade, but for all their advantages, microservices bring plenty of problems too. This article goes into depth, but is essentially a pitch for using a stateful, microservice orchestration runtime to resolve the problems microservices often introduce.

Ryland Goldstein (Temporal)

📘 Tutorials, Opinions and Stories

The curl Web Infrastructurecurl is one of the most fundamental pieces of Internet tooling there is, and here’s a quick look at the stack its maintainer uses for its official site.

Daniel Stenberg

Today I Learnt.. eBPF is Awesome — If you’re not familiar with eBPF (based on a technology originally designed for monitoring network packets, but now a way to dynamically tinker with the Linux kernel) or why you might use it, this is a nice entry point. How io_uring and eBPF Will Revolutionize Programming in Linux is another take.

Filip Nikolovski

'Everything You Know About MongoDB is Wrong' — Both fairly and unfairly, MongoDB has been the target of numerous assertions over the years that they’re keen to correct and refine here.

Mark Smith (MongoDB)

10 GitHub Security Best Practices — Stay secure as a Github user or contributor.

Snyk sponsor

Use a Docker Container as a Development Environment with VS Code — Do you live in VS Code? Did you know you can create and configure a full-featured container based development environment from it? Here’s all the pieces to take into account.

Burke Holland

How Do Spotify Codes Work? — ‘Spotify Codes’ are QR-like codes that Spotify users can generate to share songs, playlists, etc. This is a fun bit of digging into how they work and are constructed.

Peter Boone

'Why I Left IBM to Work on CockroachDB' — Despite the title, this is more an interesting story of what a self described ‘database nerd’ got up to at IBM working on its autonomic computing team and on their Db2 database products.

Adam Storm

Even Faster Bash Startup“I sped up bash startup from 165 ms to 40 ms. It’s actually noticeable. Why and how did I do it?”

Tomáš Janoušek

What Was It Like to Be a Software Engineer at NeXT? — NeXT was Steve Jobs’ company between 1985-1997 and its technology formed the underpinnings of what is now macOS and iOS.

Quora

Live Workshop: Getting Started with OpenTelemetry in Go

Lightstep sponsor

Build a Flask Microservice with OpenFaaS — Which is better: Flask or serverless-style Python functions? Or.. you could just have both ;-)

Alex Ellis

Getting to the Core: Benchmarking Cloudflare’s Latest Server Hardware — A refresh of the hardware that Cloudflare uses to run analytics provided big efficiency improvements with lots of numbers shared here.

Brian Bassett (Cloudflare)

Transitioning from Docker to Podman

How To Use Traefik v2 as a Reverse Proxy for Docker Containers on Ubuntu

Running PgBouncer on AWS Elastic Container Service

The Ten Commandments of Egoless Programming

💻 Jobs

Find Your Next Job Through Vettery — Create a profile on Vettery to connect with hiring managers at startups and Fortune 500 companies. It's free for job-seekers.

Vettery

ℹ️ Interested in running a job listing in StatusCode? There's more info here.

🛠 Code and Tools

supported by Okta

Dev Fonts: Live Preview Fonts Aimed at Developers — An interactive tool to test drive dozens of coding fonts that are live-displayed in dozens of different themed embeds. Includes both free and non-free fonts.

Mostafa Gaafar

Announcing Modules for AWS CloudFormation — CloudFormation provides a way to define and provision AWS infrastructure in code and now it’s more modular thanks to… reusable building blocks called ‘modules’ ;-)

Amazon Web Services

Tailwind CSS v2.0 Released — A CSS framework that has taken the frontend development world by storm in the last couple of years.

Tailwind CSS

Alacritty 0.6.0: Cross-Platform, GPU-Accelerated Terminal Emulator — Boasts that it’s “the fastest terminal emulator in existence.”

Alacritty

Docker-Mailserver: A Full Email Server Stack on Docker — Includes SMTP, mail relay, IMAP (or POP3) with SSL support, spam protection, antivirus, and more, supplied by popular open source projects.

Thomas VIAL

7777: Your Remote AWS Database on Local Port 7777 — This is a neat idea. It’s a paid piece of software, but it automates the job of creating AWS jump servers and SSH tunnels to RDS servers and works with MySQL, Postgres, MariaDB, and Aurora.

Napoli and Deleu

Istio 1.8: A Smart DNS Proxy Takes Support for Virtual Machines a Step Further
Jimmy Song

😄 A little bit of retro fun

Booting a PC from a Vinyl Record — Back in the day, it wasn’t uncommon to boot microcomputers from cassette tape, and even the IBM PC had (rarely used) support for this. But what about if you only have a boot disk on 12 inch vinyl? Well…

Jozef Bogin