#305 — February 24, 2021

Web Version

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

How Uber is Evolving Schemaless into a Distributed SQL Database — An update to a hugely popular set of blog posts from 2016 about how Uber built a ‘schemaless’ data store on top of MySQL. Their thinking has evolved somewhat since then. Uber is now working on ‘Docstore’, a multi-model database that can scale horizontally – it still uses MySQL under the hood, though.

Tariq, Chatterjee, and Chaudhary (Uber)

free-for.dev: A Bumper List of Stuff That's 'Free' for Developers — An interesting and extensive list of hosted services or otherwise paid-for products that have free tiers or options for developers. We linked to this a couple of years ago but it has been updated a lot since.

R.I.Pienaar

📊 Guide to Grafana 101 — Learn how to build awesome, interactive visualizations, set up custom alerts, and tackle common Grafana issues – and get the code samples, pro tips & resources you need to apply the concepts to your projects 🎉

Timescale sponsor

Using Postgres to Do a Regex-Based Search Over 10,000 GitHub Repositories — Empirical measurements from experiments in using Postgres to index and search over 10,000 popular GitHub repositories using pg_trgm (trigram matching functions) on a 2019 MacBook Pro.

Stephen Gutekanst

Firefox 86 Introduces 'Total Cookie Protection' — The goal of ‘total cookie protection’ is to confine cookies solely to the site where they were created, rather than letting tracking companies use them to track your activity across the Web. It essentially gives you a separate ‘cookie jar’ per site. This is part of a broader idea called state partitioning.

Mozilla Security Blog

Quick Bits

📘 Tutorials, Opinions and Stories

Looks Good To Me: Making Code Reviews Better for Remote-First Teams — A developer from the BBC News team shares some of what they’ve learnt about code review that has improved their internal engineering culture.

James Donohue (BBC)

10 Software Engineering Laws Everybody Loves to Ignore — A quick fly through several common programming related adages and ‘laws’ from Conway’s Law to the Iceberg Fallacy.

Jan Schaumann

Synthetic Data: Generating Realistic User Timestamps in SQL — How to generate synthetic timestamps with SQL that match realistic user behavior data versus purely picking random times.

Cedric Dussud

Research Software Code Is Likely to Remain a Tangled Mess — For as much as developers like to adopt quality-led ideas like test driven development or strong typing, the fact is a lot of important code out there is a big pile of barely intelligible spaghetti.

Derek Jones

An Engineering Leader’s Guide to OpenTelemetry

Lightstep sponsor

Modernizing from PostgreSQL to Serverless with Fauna — It pays to note this series of blog posts is by Fauna so there’s natural bias here, but any “why you might move from X to Y” example interests me when it comes to data, and serverless data APIs do offer a lot of benefits for certain use cases. Seeing how they remodel the data is quite neat.

Brecht De Rooms (Fauna)

How to Secure API Routes for Jamstack Sites — Serverless functions such as Netlify Functions aren’t protected from misuse by default as the endpoint URL is exposed. This posts looks at some strategies to add some basic security to these functions.

Carlos Eberhardt

▶  Building Your First AWS Lambda Function in VS Code — A tight tutorial screencast that clocks in at under 10 minutes.

Dylan Albertazzi

zsh Tricks to Blow your Mind — My favorite bit is the font used by the author.

Lizzie Siegle

How Linode Went from Hardware to Live GPUs in Six Weeks

Abe Massry (Linode)

How to Build Container Images with Amazon EKS on Fargate

Re Alvarez-Parmar and Olly Pomeroy

🛠 Code and Tools

supported by Okta

Tauri: A New Framework for Building Desktop Apps with a Web FrontendElectron is the big cheese in the ‘build desktop apps with JavaScript, HTML and CSS’ space but other contenders are now coming along including this Rust-based one. You still use Node under the hood and you can get running on Linux, macOS and Windows.

Tauri Contributors

Rhit: A Nginx Log Explorer — A small utility built in Rust to do some basic analysis of Nginx log files.

Canop

Effortlessly Optimize & Resize Images in AWS S3 with ImageKit — Attach your AWS S3 bucket directly to ImageKit & start delivering optimized, transformed images in real-time in a jiffy.

ImageKit.io sponsor

Tree-Sitter: A Parser Generator Tool and Incremental Parsing Library — It can build a concrete syntax tree for a source file and efficiently update the syntax tree as the source file is edited. General enough to parse any language and claims to be fast enough “to parse on every keystroke in a text editor.” GitHub repo.

Max Brunsfeld

Announcing TypeScript 4.2 — TypeScript is an extension (a superset, if you will) to JavaScript that adds static types and type-checking.

Daniel Rosenwasser (Microsoft)

ZWS: A URL Shortener Based on Invisible Spaces — Do I recommend this approach? Not at all. Do I think it’s funny/clever? Yes. The actual service is here.

zws.im

Serverless Legacy Modernization with AWS Lambda + Cobol — A repo containing a GitHub workflow for deploying an AWS Lambda function written in Cobol (yes, the legacy language first created in 1959!)

Didier Durand

glci: Test Your Gitlab CI Pipelines Changes Locally using Docker

Maxime Dubourg

💻 Jobs

Full Stack Developer (Ruby) — Develop and grow our Rails platform/stack to support innovation funding globally. High growth, London based (UK only, Remote OK).

EmpowerRD

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

Hired

👂 Quotable

“Weeks of coding can save you hours of planning.”

___
Unknown