Bell Labs & Google: bookends of the same sad story?
When I finished reading this (must-read) wonderful profile of Bell Labs, the singular most iconic research institution of the modern era, I was left wondering — just because you invent the fut…
[Paper Review] Blueprint: A Toolchain for Highly-Reconfigurable Microservice Applications
Thanks for reading Micah Learns! Subscribe for free to receive new posts and support my work. This is the first of several papers I’ll be writing about from SOSP’2023 (Symposium on Operating Systems Principles). Blueprint: A Toolchain for Highly-Reconfigurable Microservice Applications
One of the established and most popular programming languages is the C programming language. It is relatively easy to learn, and highly practical. Maybe surprisingly, the C programming language keeps evolving, slowly and carefully. If you have GCC 13 or LLVM (Clang) 16, you already have a compiler with some of the features from the … Continue reading C23: a slightly better C
Why you should use AVIF over JPEG, WebP, PNG and GIF In 2024
AVIF is a recent file format that, at the time of this article, has gained support in Microsoft Edge, thereby achieving significant browser support. !Important: We are no longer in the dark ages, the…
The details and analysis of capturing gRPC packets
IntroductionIf you're only using gRPC at the application layer, I believe studying the examples on the gRPC official website is sufficient. However, when planning to extensively use gRPC within a team
Ever been in a situation where you landed a software engineering job with a particular tech stack, mastered it, switched to another company with a different stack, nailed that too, and then found yourself in a third company that used the original stack? Now, you suddenly sense that your hard-earned acumen in that initial stack has not only atrophied over the years but also a portion, or all of it, has become irrelevant, making it a bit of a struggle to catch up with the latest changes.
Perceiving the layers of context in problems will unlock another stage of career progression as a Staff-plus engineer, but there’s at least one essential skill to develop afterwards: navigating ambiguity. In my experience, navigating deeply ambiguous problems is the rarest skill in engineers, and doing it well is a rarity. It’s sufficiently rare that many executives can’t do it well either, although I do believe that all long-term successful executives find at least one toolkit for these kinds of problems.
The Scary Thing About Automating Deploys - Slack Engineering
Most of Slack runs on a monolithic service simply called “The Webapp”. It’s big – hundreds of developers create hundreds of changes every week. Deploying at this scale is a unique challenge. When people talk about continuous deployment, they’re often thinking about deploying to systems as soon as changes are ready. They talk about microservices …
The Role of CAP Theorem in Modern Day Distributed Systems
Twenty years after its debut, what is the role of the CAP theorem in modern-day distributed systems?
Stumbling across the CAP theorem is like walking into a discussion (or a debate) already in progress. Imagine how others might feel walking into an argument amongst developers about which IDE is the
CAP Twelve Years Later: How the "Rules" Have Changed
The CAP theorem asserts that any networked shared-data system can have only two of three desirable properties (Consistency, Availability and Partition Tolerance). In this IEEE article, author Eric Brewer discusses how designers can optimize consistency and availability by explicitly handling partitions, thereby achieving some trade-off of all three.
Above is a deranged version of the innovation curve that is often brought out when thinking about products (often tech products specifically).
Here’s a better one:
A very few people are “innovators” who are there on day one for new stuff and are willing to look past flaws or
multiformats/cid: Self-describing content-addressed identifiers for distributed systems
Self-describing content-addressed identifiers for distributed systems - multiformats/cid: Self-describing content-addressed identifiers for distributed systems
Meet MOCAS — World's Oldest Computer Program That's Still In Use
MOCAS is the world's oldest computer program that's still in active use. It was launched in 1958 by the United States Department of Defense for keeping track of contracts and payments.