Issue #125
Turing award honors JAck J Dongarra, networks from scratch, Markov chains, your computer is a distributed sysmtem, Go Mods lesser known features.
Everything meaningful takes time.
— unknown
Posts
Mourning loss as a remote team
— I am unable to summarize this post. Please read the full post.
Dongarra has led the world of high-performance computing through his contributions to efficient numerical algorithms for linear algebra operations, parallel computing programming mechanisms, and performance evaluation tools. For nearly forty years, Moore’s Law produced exponential growth in hardware performance. During that same time, while most software failed to keep pace with these hardware advances, high performance numerical software did—in large part due to Dongarra’s algorithms, optimization techniques, and production-quality software implementations. - #ACM
Abstraction: Not What You Think It Is
People do not even agree what abstraction means. Abstraction seems to stand for a hodgepodge of different concepts involving generality, vagueness, or just plain code reuse. These engineering debates — debates about whether duplications are better than the wrong abstraction or about whether abstraction makes code harder to read — trickle down into heated discussions over code. But this confusion over abstraction's basic meaning makes all such debates doomed. - #JamesKoppel #pathsensitive
Maybe you should do less 'work'
Working in tech, I've observed developers who work as hard as possible when they don't need to. I'm here today to tell you that it's a bad idea and you shouldn't do it.
What do I mean by working as hard as possible? I mean someone who can finish all the work that is expected of them in less than the total time that they are meant to spend working and then asks for more, similar, work to do. - #JohnWhiles
A *magical* AWS serverless developer experience
If you only focus on testing your lambda code then you’re skipping a large part of your feature. Examples that you might encounter if you don’t verify your infrastructure:
missing an S3 trigger to SQS or a Lambda function
missing an EventBridge rule to route events to the right targets
missing a Lambda IAM role update to use a new AWS service
incorrect CORS or authorizer configuration in API Gateway
One of the most important questions to answer is: when do you want to find out about these mistakes? - #AkosKrivachy #Plain
Computer networks from scratch
Occasionally I'll ask a candidate to describe what happens when they type a url into the address bar and press enter. The answers I get have taught me that most programmers don't have a basic understanding of how the internet works outside of their narrow specialty. This lack of a rudimentary mental model is one of the largest contributors to wasted time and effort in web application development.
This book began as an explanation of computer networks for programmers. Much of it came from my lecture notes for talks I've given at previous tech companies over the years. -#SethArcherBrown #networksfromscratch
Generics can make your Go code slower
This blog post does not take sides in that debate, or advise where and when to use Generics in Go. Instead, this blog post is about the third side of the generics conundrum: It’s about systems engineers who are not excited about generics per se, but about monomorphization and its performance implications. There are dozens of us! Dozens! And we’re all due for some serious disappointment. - #VicentMarti #Planetscale
Your computer is a distributed system
Most computers are essentially a distributed system internally, and provide their more familiar programming interface as an abstraction on top of that. Piercing through these abstractions can yield greater performance, but most programmers do not need to do so. This is something unique: an abstraction that hides the distributed nature of a system and actually succeeds. - #SpencerBaugh #catern
How I operated as a Staff engineer at Heroku
-#AmyUnger
Go mod's lesser known features
Modules are how Go manages dependencies. A module is a collection of packages that are released, versioned, and distributed together. Each package within a module is a collection of source files in the same directory that are compiled together.
In this post, we will explore Go mododules design and learn how they support supply chain security. - #DrTonyWorm
Authorization in a microservices world
Authorization? How hard can it be? I am pretty sure that others have already solved it. We are not the first ones doing microservices. It should be easy to integrate what's already out there.
- Everybody when they started designing their microservices, before they cried - #AlexanderLolis
There is one very fun database out there: SQLite. But live replication typically involves layers on top of SQLite, which introduces a lot of the operational overhead risks of other databases, only with systems that are less widely deployed and so not as well known.
However, something new has appeared on the SQLite front that makes live-replication feasible, without interpositing itself between your application and SQLite: litestream. - #DavidCrawshaw #tailscale
Book
Markov Chains for programmers” is devoted to programmers at any level wanting to understand more about the underpinnings of Markov Chains (MC) and basic solution methods. - #RicardoMCzekster
Observability Analysis for Angles-Only Distributed Space Systems