The tech world updates daily, and new developments are constant in many spheres. Hence, DevShorts is back with another issue to cover all of it. Like our previous week’s issue, this one is also filled with a lot of news covering tech conferences, open-source projects, and developer stories from around the globe that happened over the past weeks. If you missed our old editions, you can see them here.
Must Read
GitHub, the most popular code hosting website, has launched a merge queue, a new feature that will eliminate the traffic jam while trying to merge code in a busy branch. This feature will help multiple developers commit code to a single branch without the frustration of using automated branch management. It streamlines pull requests and ensures that they are compatible with changes ahead of them. Also, it notifies through alerting if something goes wrong in the process. This helps developers focus on committing, submitting, and writing code. Learn all about this new feature and how to use it from this article on the official GitHub blog.
Most developers have used an ORM of some sort, but you may not have heard about it because it is an underappreciated part of the backend stack. It is software that allows developers to interact with their databases with the programming language of their choice instead of only SQL. SQL is a great programming language when it comes to databases, but it gets complex while building web apps. Known as a database translator, ORM translates SQL into languages the developer uses to build a web app like Javascript or Python. This article from Justin from Technically discusses in detail the know-how of an ORM.
Latency is something that we all are familiar with. It is the time delay between the initiation of a command and the result received from the command. In other words, it is also the time taken by data to travel from one end to another. We use latency as a measure to determine how slow a system is. The higher the latency, the slower the system is due to the long period of waiting for the response. And similarly, a low latency system is fast because of the fast responses. Igor discusses in detail what latency is and how you can measure latency data by means of heat maps, histograms, and bar diagrams with the help of this article.
If you are familiar with SRE or DevOps in general, you might have come across the term “Failover”. It is a risk mitigation strategy to improve your application’s service continuity and reduce downtime. In an application, the primary system handles the traffic, while secondary systems or replicas are on standby. Through failover, the fault detection system keeps a look at the primary system. If any fault is detected, the traffic is shifted to the secondary systems, which buys time for the engineers to fix the fault. Once it’s fixed, the primary system takes over. Learn more about it from this article by Alex Ewerlof, where you can find the different kinds of failovers and their methodologies and purposes.
Now, we will head over to some of the news and articles that will be at a place of interest for developers and the tech community out there.
Good to know
OpenTelemetry is still hot in the Cloud-native space. We all know that Grafana is an excellent tool for monitoring, but when combined with distributed tracing, it can be used for troubleshooting issues and diagnosing problems. The data captured from distributed tracing can be used in the test strategy to prevent errors from reaching production. Combining Grafana Tempo and Tracetest, you can monitor and test APIs with the help of distributed tracing. Follow this detailed tutorial from Tracetest to get a walkthrough on how to do it independently.
If you have an active system, incidents are bound to happen. An incident can be measured based on its severity and helps responders and stakeholders easily understand the impact on the system. Incident severity also helps in setting the tone of the response effort to resolve the problem faster. This blog from Firehydrant talks in detail about why you need incident severity and how you can ensure its setting in your system.
This week, A GitHub project named Axe API is a point of interest. It is a node.js framework that helps in creating REST APIs quickly in a declarative way. Other than handling all endpoints, it can analyse API definitions. It can also create documentation by checking model definitions, table relations, database schemas, and other sources. You can check out AXE API by directly going to their GitHub repository.
Headless tech has been pretty trendy these days, and a new GitHub project serves to fit the purpose well. Kuma UI is a UI component library that comprises headless components with a utility-first and zero runtime approach. The headless components make customization easy, and the zero runtime CSS extractions help in delivering ultra-fast websites. With style autocompletion and RSC support, developers can experience seamless development. Check out more from its GitHub repository, where you will also find a small demo video about its usage.
Logging is one of the most important tasks when it comes to monitoring and observability. It collects important information that can be used for debugging, identifying issues beforehand, increasing the efficiency of a cluster, monitoring the performance of an application, node, and cluster, etc. Collecting logs from a Kubernetes cluster can be done by collecting logs from the application deployed on pods, from the nodes, and from the control plane components and worker nodes. This detailed article from CloudYuga extensively describes the various sources of logs in Kubernetes control and data plane and managing them by means of logging pipelines.
Lastly, we will take a look at some of the trending scoops that hold a special mention for the community.
Notable FYIs
If you have used the internet, you probably have heard of HTTP. HyperText Transfer Protocol or HTTP is the foundation of data communication to the World Wide Web and is also the gateway when it comes to REST API. Learn everything about this protocol from this detailed read from ByteByteGo, which beautifully explains how it came into existence, its different versions over the years, headers, fields, API calling methods, etc.
Prometheus, the powerful observability tool, has its own query language: PromQL. But the major problem is that it is hard to understand. Evan Schwartz explains in his article from Fiberplane titled “Why are prometheus queries hard?” about the problems many developers face with the query language and its alternate solution.
Lately, a lot of discussion has been going on around data and its way of management. To manage data properly, you need a data storage paradigm. Have a look at the different analytical data storage methodologies and their differences from this well-explained piece from SeattleDataGuy.
A lot of modern-day development revolves around low-code technologies, and as a result, many new companies and organisations want developers to use these technologies and automate tasks. Automating work using low code sounds easy, but there are a lot of decisions to make, including the tasks to automate and the tools you can use to automate. All of this is explained perfectly by Luca Rossi in his latest piece from Refactoring titled “How to automate work with low code”.
Communication is critical in every organisation, and its value increases by folds when you bring incidents and their impact on the system into the picture. Here are 5 strategies on how you can improve your incident communication from incident.io.
That’s it from us this week. We hope you are going away with a ton of new information. Lastly, share this newsletter with your colleagues and pals if you find it valuable, and a subscription to the newsletter will be awesome if you are reading it for the first time.