InfoQ Homepage Development Content on InfoQ
-
Debugging Go Code: Using pprof and trace to Diagnose and Fix Performance Issues
In this article, we will look at how to identify and fix performance issues in Go programs using the pprof and trace packages. We will begin by covering the fundamentals of the tools, then delving into practical examples of how to use them. By the end of this article, you will have a solid understanding of how to use these powerful tools to improve the performance of your Go applications.
-
How to Manage Full-Stack Java Development with Hilla
This article explores Hilla, an open-source framework that offers an approach to web application development by integrating a Spring Boot Java backend with a reactive TypeScript frontend. It uses either Lit or React, combined with Vaadin’s 40+ open-source UI web components for interface creation. It also generates REST APIs and client access codes, a secure, stateless backend architecture.
-
If You Want to Deliver Fast, Your Tests Have the Last Word
A good testing strategy is critical for safe code changes, fast delivery, reduced MTTR, and improved developer experience. Shifting the concept of “unit” can reduce the time needed for changes.
-
A Guide to the Quarkus 3 Azure Functions Extension: Bootstrap Java Microservices with Ease
A guide to using Azure Functions with Quarkus 3, for HTTP and non-HTTP functions. Covers newer native integration for serverless functions.
-
Effective Test Automation Approaches for Modern CI/CD Pipelines
Shifting left can be used to improve test design and lead to faster, more effective CI/CD pipelines. By focusing on building effective and efficient tests, CI/CD runs can quickly return feedback.
-
Easy Implementation of GDPR with Aspect Oriented Programming
GDPR compliance should be a default feature in every application that handles PII (Personally Identifiable Information). Most organizations have an impression that GDPR is a luxury feature that needs special tools to implement. But, we can see that the frameworks and design patterns we already use in our everyday development can very well be used to implement the GDPR rules.
-
Learning eBPF for Better Observability
This article shares insights into learning eBPF as a new cloud-native technology which aims to improve Observability and Security workflows. Learn how to practice using the tools, and dive into your own development. Iterate on your knowledge step-by-step, and follow-up with more advanced use cases later.
-
Rust Reviewed: the Current Trends and Pitfalls of the Ecosystem
In this article, we share findings and insights about the Rust community and ecosystem and elaborate on the peculiarities and pitfalls of starting new projects with Rust or migrating to Rust from other languages.
-
Magic Pocket: Dropbox’s Exabyte-Scale Blob Storage System
A horizontally scalable exabyte-scale blob storage system which operates out of multiple regions, Magic Pocket is used to store all of Dropbox’s data. Adopting SMR technology and erasure codes, the system has extremely high durability guarantees but is cheaper than operating in the cloud.
-
Relearning C++ after C++11
C++ is an old but evolving language. It has been around for a long time, but has changed significantly, particularly since 2011. In this article, we will review a few of its most compelling new features, including ranges, lambdas, range-based for loops, and move semantics, all by practising with a vector.
-
Banking on Thousands of Microservices
Lessons learned building a banking platform, starting from technological choices like using Cassandra and Kubernetes in the early days to maintain the speed of execution through platform engineering and developer experience. With some mistakes and incidents along the way.
-
ASP.NET SPA Templates Proxy Changes from .NET 5 to .NET 6, .NET 7, and on
From .NET 6 the communication between front-end Single Page Applications (SPA) in ASP.NET and back-end .NET API was changed, with the SPA templates using the front end’s proxy solutions. A proxy for the development servers enables readable and debuggable code for both the front and back end, with the new approach resulting in a more independent back end.