An interesting article was shared in our chat yesterday.
This is a summary of the analysis of AI's influence on code quality. Some excerpts:
> The data strongly correlates “using Copilot” with “mistake code” being pushed to the repository more frequently.
> The 17% decrease in “move” operations when compared to 2021 hints at
the built-in trait of AI assistants to discourage code reuse. Instead of
refactoring and working to DRY (“Don’t Repeat Yourself”) code, they offer a one-keystroke templation to repeat existing code.
> Especially next to the decrease in “moved code,” the 11% increase in the proportion of duplicated code confirms the drop in overall code quality in 2023 when compared to 2021.
And my favorite one:
> In the absence of a CTO or VP of Engineering who actively schedules time to reduce “tech debt,” “copy/pasted code” often never gets consolidated into the appropriate component libraries.
Although, I saw this even before AI.
#ai #programming
Today I want to share with 2 articles from a guy who knows a thing or two about SLOs - Alex Ewerlöf.
- Heterogeneous SLI vs Homogeneous SLI in which he argues on type of events used for SLI and how to reason about them
- SLO: Elastic vs Datadog vs Grafana in which he compares SLO offerings from 3 major observability providers
#slo#observability
A new issue of the CatOps Digest!
https://newsletter.catops.dev/p/catops-digest-2024-09-29
#newsletter #digest
Recently I was on a meetup, where a guy from Grafana Labs presented Beyla - their new eBPF application instrumentation solution. It's an interesting concept, that allows one to "instrument" an app without actually changing the code, but by intercepting system calls using eBPF.
What can I say: it's a cool concept. Here, Netflix describes how they use eBPF to monitor noisy neighbors. Yet, in case of Netflix it involves a lot of custom code, ofc.
#observability #ebpf
My German teacher is also a volunteer. Together with his buddies, he constantly raises money for ongoing requests from the Ukrainian defenders.
You can support them via this Monobank Jar:
https://send.monobank.ua/jar/8jQSHW57kP
#donations #Ukraine
AI agents invade observability: snake oil or the future of SRE?.
We got from "measure everything" by Twitter to "monitor only what matters" by Honeycomb. Yet, alert fatigue, convoluted dashboards, and garbage metrics are still an issue today.
Could AI solve this? We simply don't know yet. The linked article speculates on this topic: is AI in Observability just another marketing trick or something that could help engineers to solve issues faster or more importantly prevent those issues all together.
#ai #observabilty
A friend of mine is raising funds for drones and other equipment for the International Legion of Ukraine.
https://send.monobank.ua/jar/7282sCqqgy
Currently, 60k out of 75k is there, so let's help him to reach the goal!
#donations #Ukraine
I have surely seen similar projects before, but it means that the idea is compelling.
Cyphernetes is a query language for Kubernetes inspired by Cypher (Neo4j query language).
It’s open source and available on GitHub.
So, the idea of being able to use some more or less generic query language to check your infrastructure is there. There are different implementations and none of them is a “golden standard” today. Yet, let’s see. Maybe, one day we would have one.
#kubernetes
Your company needs Junior devs.
This article reminds me of when a long time ago a senior manager was doing a presentation which had a tweet: "A team of senior engineers without juniors is just a team of engineers". This manager tried to make a point of how egalitarian we are because the team is so senior, but was quickly corrected by one of the engineers that they missed the point of the original tweet completely.
I really like how this article shifts the perspective of a senior developer:
companies, they argue, see the “assembly line” of a knowledge firm. They see the outputs: KPIs, OKRs, Quarterly results. If you only think in terms of the assembly line, you will only seek units of input that increase those outputs (ie expert employees that ‘hit the ground running’ to churn out higher metrics).
employees come prepared with that Socratic dialog: to ask dumb questions and seek their answers. Often, it turns out, experts – through ego or blindness - don’t see obvious solutions. They don’t question tacit assumptions. Juniors on the other hand eagerly crash into, and sometimes through, problems seniors have convinced themselves are too hard. Juniors try “dumb” things that often fail, but sometimes show how blinded experts have become from their long held assumptions.
Why Cutting Costs is Expensive: How $9/Hour Software Engineers Cost Boeing Billions.
This is a quite famous story about Boeings 737-Max falling down because of a software bug.
A friend of mine was closely following this story from even before the tragedies. Since it all started with Airbus blowing Boeing out of the water.
Anyway, let this article be a reminder to you that software engineering is not just for cat videos these days.
Since I’m a bit busy this week, I cannot really bring too many articles to you this week.
Every time this happens, Humble Bundle comes to my rescue :D
So, today I want to share a bundle of courses about cloud by Packt.
You can get it for a bit more than $20 for the next 11 days.
#courses
A new issue of the CatOps Digest:
https://newsletter.catops.dev/p/catops-digest-2024-09-01
#digest #newsletter
Some people know that I'm not a fan of Python. Yet, I have to tolerate it because it is objectively one of the most popular and widespread programming languages.
So, here is an article about asynchronous code in Python.
Enjoy!
#programming #python
A very nice collection of books on software architecture by O’Reilly.
As usual, you can pay different amount to unlock various number of books.
#books
When using ElasticSearch for logs, you most likely create indices periodically as well as have a job to rotate them logs.
However, ES can also be used as a database, and in that case one should be more careful with the data.
Here is a neat how-to article on changing the field type in the index mapping without downtime.
#elasticsearch
As a follow-up of the yesterday’s post, here’s a bundle of Cybersecurity books by O’Reilly on Humble Bundle.
#books #security
For today’s Donations Monday, I would like to remind you about a fundraiser for the International Legion of Ukraine.
This is a fundraiser for drones and other equipment, and it’s almost closed already. So, with your help we could close it today!
This is a great opportunity to accomplish something on Monday already 😅
Monobank Jar:
https://send.monobank.ua/jar/7282sCqqgy
#donations #Ukraine
Today you may encounter mentions of 9.9 CVE for Linux. Most likely, it's all about this one.
This CVE is related to CUPS - a printing service for Linux. So, if you don't print things, you can just uninstall or disable it on your Linux machine and move with your day.
Anyway, this is an interesting read on its own. It's interesting how they found this vulnerability.
P.S. These are news from chat, btw.
#security
YouTube algorithms got me an interesting video titled: Microservices are Technical Debt. This is an interview with a principle engineer at DoorDash (US food delivery service) and a reference to an old article in DoorDash’s blog: Future-proofing: How DoorDash Transitioned from a Code Monolith to a Microservice Architecture.
Quite ironic that the title of the original article has words “future proofing” inside. Although, the argument about monoliths vs microservices is old and boring, there are a few of interesting insights in the interview. For example, microservices did help DoorDash to move faster when Corona hit. This is something that most likely wouldn’t be able to do without them. So, even with all the clumsiness that they bring today, that decision was worth it at the time.
#architecture
If you're stuck with Python or you want to learn it, check out this collection of training courses and software on Humble Bundle.
Also, it's the last days to grab a bundle of cloud solutions architect trainings.
#humblebundle
Pinterest explains how their engineers deal with web performance. It’s a three parter:
- Part I: about the team structure
- Part II: about systems and practices for performance degradation detection
- There is no Part III, because multipart articles are hard.
I found it particularly interesting, how they organize teams and share responsibility for web performance. It would be very interesting to hear, how did they get there: was it a top-down instruction or a natural evolution. Maybe, that should have been the part III, but who knows.
P.S. Pinterest is the best social media out there!
A new CatOps digest is here:
https://newsletter.catops.dev/p/catops-digest-2024-09-15
As a bonus (I forgot to make this post yesterday):
- 35% discount on Linux Foundation courses and certifications with promo-code SEPTEMBER24. The offer is valid until 17th of September, so hurry up!
#newsletter #digest
A blog post from DHH on why don't more people use Linux.
Technically, the answer is quite simple for the general public: no one uses an OS for the sake of an OS itself. People use computers to run specific software to help them with their routines. OS is secondary.
However, he raises another question: if you're not a part of the "general public", what if you're a person who writes code that then (most likely) is run on Linux, shouldn't you know your tools better in this case?
#culture #linux
Our friends from UA DevOps started a new fundraiser for Special Operations units.
You can donate to this Monobank Jar:
https://send.monobank.ua/jar/6ZzfTRqPT5
P.S. Also, here’s a picture of a drone you’ve helped to fund!
I rarely share videos here, but it's Friday, so it's fine. Also, this video provides some food for thoughts.
This is a reaction video, if you wish, to an interview with Pieter Levels on the Lex Fridman podcast. I don't link the whole podcast episode here, because it's long, and it's also linked to the video I'm sharing.
You can think whatever you want about Lex and his podcast specifically, but here is what's interesting about this particular quest: he's running several websites that allegedly bring him $3M a year, and all of these websites are hosted on a single DigitalOcean server that costs $400. All these websites are created with PHP and JQuery.
We need to address an elephant in the room here: he does use 3rd party vendors to do some heavy-lifting for his projects, but many "startups" that have much more complex technical stacks do that as well.
I'm not arguing that this is the way to go for everyone, but still an interesting thing to think about.
#architecture #video
For today’s Donations Monday, I would like to share with you an initiative from Come Back Alive - “Dronefall”.
Instead of a monetary goal, this project aims to strike down 1000 russian reconnaissance drones.
#donations #Ukraine
Sehr geehrte Damen und Herren,
Ich möchte gerne Ihren eine neue Cloud Alternative vorstellen.
European alternative to AWS, Azure and Google was born inside Lidl
P.S. АТБ Cloud: when?
The Senior Engineer Illusion: What I Thought vs. What I Learned is an article about one could have regarding the day-to-day routine of their more senior colleagues.
Ofc, many things may sound familiar to you personally, but never forget that there are less experienced peers in the industry for whom this information may be useful.
P.S. I didn't like some word choices of this article, but overall it's Ok.
#culture
I skipped the newsletter today, because there were not that many posts on the channel, TBH.
So, as an apology, here is a brief reminder from Google on why heroism is bad.
#culture