Newsletter 43 – 09/2023

Featured

The Worst Programmer I Know – A nice and valuable story about how more senior contributors impact a team without delivering tasks. Must read.

Building and operating a pretty big storage system called S3 – S3 is one of the most used services that we have available right know, its reliability and scale is a reference for every software. This post covers three perspectives on scale and complexity around it.

Shining a Light on the Digital Dark Age – Each day we’re producing more data, and few people are discussing how we can archive and make all this data available forever. Not talking about only storage, but software, codecs, formats, specifications, and many other things. This interesting post takes a look in this important subject and makes a reflection about how can we preserve all that information.

DEATH BY A THOUSAND MICROSERVICES – Microservices are a well-known pattern to every company, and quickly became the main standard architecture to any company… Even the ones that don’t need it, most companies don’t need all this complexity, and will never reach the stage where they really need it.

In a git repository, where do your files live? – Git is an everyday tool for all developers worldwide, but most of them don’t know deeply about this essential tool, even less how it works or the design decisions behind it. Git implements some nice ideas and concepts, this excellent post, explains how it stores repository files.

MISC

Ruby Outperforms C: Breaking the Catch-22 – Sometimes old practices or solutions get outdated, in languages like Ruby or Python, when a code was slow, a common solution was to write extensions in C or Rust (recently). With the advance of the languages versions, Ruby for example introduced new JIT compilers (YJIT), and some of these practices will change. This post explains and shows how sometimes, with the usage of a JIT compiler, writing pure Ruby can be faster than a C extension.

The Engineering executive’s role in hiring. – Any kind of hiring is crucial to companies, this post contains tips, explains, and gives nice insights about the hiring process, these insights are useful to a company at any stage, not only for engineering executives but also focussed on it.

How to land the manager-to-IC pivot – The manager-to-IC shift is becoming more popular with people who aren’t happy with their current positions. You don’t have to be afraid of it, this kind of change must be completely normalized.

UNPACKING ELIXIR: CONCURRENCY – Elixir concurrency is one of its key features, this post explains how it works, without digging deep into the Actor model or complex code. Good to remember & understand. There’s another post in this series Real-Time & Latency, which is a good read too.

What I Have Changed My Mind About in Software Development – Changing my mind while gaining experience is normal and everybody will face it. Have you changed your mind about something recently?

If you want to address tech debt, quantify it first – Knowing how to quantify tech debt and sell it to stakeholders is a key skill for every developer.

Backward Compatibility, Go 1.21, and Go 2 – maintain companility in small libraries with few users is hard, can you imagine how hard is it in one of most popular programing languages? Go have the promise of maintain backward compatibility with all previous versions, this os hard and in this post Russ explains how the Go team works to make It happen. “In fact, we believe that prioritizing compatibility was the most important design decision we made for Go 1.”

Leave a comment