FullStack Bulletin

Subscribe
Archives
August 26, 2024

🤓 #387: Continuous reinvention: A brief history of block storage at AWS

Good Refactoring vs Bad Refactoring, The TSConfig Cheat Sheet, uv: Unified Python packaging, SIMD Matters, Real-time mouse pointers, Authentik

View this email in your browser

Logo

Hello,

Welcome back to FullStack Bulletin!
I've got a pretty eclectic mix for you this week. From cutting-edge AWS engineering and innovation to a thorough TSConfig guide, and even a new Python package manager, there's a little something for everyone. I hope this lineup keeps you both informed and inspired.
Oh, and before you dive in, just a heads-up: the live stream I did last week with the BelieveInServerless community about Rust and AWS Lambda is now up on YouTube. I think you'll find it pretty cool.
P.S. I'm diving into Nix right now, and honestly, it's a bit overwhelming! If you’re into it and have any resources to share, I’d love to hear from you!
Cheers,
Luciano

“Humanity is acquiring all the right technology for all the wrong reasons“

— R. Buckminster Fuller , Inventor

Continuous reinvention: A brief history of block storage at AWS

Continuous reinvention: A brief history of block storage at AWS — Marc Olson, a long-time Amazonian, discusses the evolution of EBS, highlighting hard-won lessons in queueing theory, the importance of comprehensive instrumentation, and the value of incrementalism versus radical changes. It's an insightful look at how one of AWS’s foundational services has evolved to meet the needs of our customers. This is possibly not your usual full-stack read, but it's absolutely interesting story of innovation and I am sure there are some learnings there even for full-stack devs! Read article

Good Refactoring vs Bad Refactoring — Refactoring can make your code way better - or way worse. Here's how to avoid messing up your codebase when you refactor (JavaScript) code. Read article

The TSConfig Cheat Sheet —  Matt Pocock shares his favourite tsconfig.json and explains what every setting is used for. This is an absolute wonder if you have ever been confused by the multitude of configuration options available and struggled to come up with something working! Read article

uv: Unified Python packaging —  uv is a new Python package manager that promises to revolutionise the way you manage packages and virtual environments. It's written in Rust and it comes from the same developers that have already innovated this space with the ruff linter and formatter. If you are into Python, you must check out this one! Read article

SIMD Matters —  SIMD is the holy grail of CPU performance, often out of reach. The conventional wisdom is that it is difficult to achieve real gains from SIMD. It is tempting to build a math library around SIMD hoping to get some performance gains. However, it often has no proven benefit. It just feels good to be using something we know can improve performance. This article showcases how the author of Box2D (a famous physics simulation engine also used on the web) has managed to achieve great performance by using SIMD. It's an interesting read if you work on dynamic web applications like games or simulations or are just trying to add some dynamic elements to a web page. Read article

Real-time mouse pointers —  The engineers at Canva share how the managed to implement a multiplayer-like collaborative mode that allows multiple people to edit designs collaboratively. The most interesting bit is how they managed to synchronise the position of mouse cursors! Read article

Authentik —  Authentik is a new open source identity provider that promises to help you with managing user and logins for your web applications. It can be easily tried with Docker and it supports a variety of protocols including SAML, OAuth and OIDC. Worth a look if you are looking for a good self-hosted option. Read article

Algorithms to Live By: The Computer Science of Human Decisions

by Brian Christian, and Tom Griffiths

Algorithms to Live By: The Computer Science of Human Decisions

A fascinating exploration of how computer algorithms can be applied to our everyday lives, helping to solve common decision-making problems and illuminate the workings of the human mind All our lives are constrained by limited space and time, limits that give rise to a particular set of problems. What should we do, or leave undone, in a day or a lifetime? How much messiness should we accept? What balance of new activities and familiar favourites is the most fulfilling? These may seem like uniquely human quandaries, but they are not: computers, too, face the same constraints, so computer scientists have been grappling with their version of such problems for decades. And the solutions they've found have much to teach us.

Buy on Amazon.com

Buy on Amazon.co.uk

Thirsty for more content? Go, hydrate! 🥤

  • Exactly-Once Payments At Airbnb
  • srcbookdev/srcbook: TypeScript notebook for rapid prototyping
  • I Built an Event Scheduler in NodeJs using Google Calendar API
  • dahlia/logtape: Simple logging library with zero dependencies for Deno, Node.js, Bun, browsers, and edge functions
  • vercel/little-date: A friendly formatter to make date ranges small & sweet
  • Protobuf-ES 2.0 is now generally available
  • Creating S3 Signed URLs in Node.js
  • Lambda Provisioned Concurrency (podcast)

👋 That’s all for this week. See you next Monday!

Greetings from your full stack friends Luciano & Andrea

🙌 Support us

If you enjoy FullStack Bulletin, consider sharing this newsletter with your friends and colleagues.


If there's something we can improve, let us know!


You can also sponsor the next issue!

Website iconTwitter iconMastodon icon

Copyright (C) 2024 FullStack Bulletin. All rights reserved.
*|IFNOT:ARCHIVE_PAGE|*

FullStack Bulletin is a FREE weekly curated newsletter for ambitious full stack developers. We sift the internet for builders, covering frontend, backend, databases, DevOps, and architecture to find what truly matters. Expect practical picks, clear takeaways, and fresh ideas that cut the noise, sharpen your skills, and fuel your creativity so you can put them to work right away.

*|END:IF|*

Our mailing address is:
*|IFNOT:ARCHIVE_PAGE|**|HTML:LIST_ADDRESS|**|END:IF|*

Want to change how you receive these emails?

You can update your preferences or unsubscribe

Don't miss what's next. Subscribe to FullStack Bulletin:
Powered by Buttondown, the easiest way to start and grow your newsletter.