BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Development Content on InfoQ

  • AWS Lambda under the Hood

    Mike Danilov, a senior principal engineer at AWS, presented on AWS Lambda and what is under the hood during QCon San Francisco 2023. This article represents the talk, which will start with an introduction to Lambda itself to outline the key concepts of the service and its fundamentals, which will facilitate a deep dive into the understanding of the system.

  • How to Use Rust Procedural Macros to Replace Panic with syn’s Fold

    In this article, we show how you can write advanced macros to step through Rust code and modify it. Using the standard tooling available in the syn crate, we first show how to change the occurrence of a panic into an Err. Then we go a step beyond and use the Fold trait to recursively step through the entire function, automatically executing a change in every applicable location.

  • The Hidden Cost of Using Managed Databases

    The rising popularity of managed relational databases brings hidden costs, and informed decisions are crucial for optimal use. This article shows the importance of monitoring service expenses, revising default settings, and understanding operational constraints, considering limitations like reduced flexibility and observability.

  • What's New in PHP 8.3

    PHP 8.3 is the latest major update in the PHP 8.x series. In addition to performance improvements, it brings a wealth of new features, including amendments to the readonly feature introduced in PHP 8.1; explicitly-typed class constants; a new #[\Override] attribute for methods intended to be overridden from a superclass, and more.

  • Spring Boot 3.2 and Spring Framework 6.1 Add Java 21, Virtual Threads, and CRaC

    Spring Framework 6.1 and Spring Boot 3.2 run on Java 21. They make concurrent programming simpler and more efficient with virtual threads, as well as improving reactive programming and Kotlin coroutines. For “Scale to Zero” startup time reduction, the OpenJDK project CRaC received initial support, while the existing GraalVM Native Image integration got faster through a GraalVM release.

  • How Platform and Site Reliability Engineering Are Evolving DevOps

    Companies are now looking to grow and more effectively manage DevOps with platform engineering and site reliability engineering roles. No one has these roles perfectly carved out right now — there’s just too much to do and not enough people to do it — but knowing where these three disciplines do and don’t overlap will help organizations evolve and take advantage when they are ready.

  • A Primer on Idempotence for AWS Serverless Architecture

    Understand idempotence in AWS serverless, tackling challenges from at-least-once delivery. Implement and automate with AWS Lambda, emphasizing early planning for consistent outcomes. Use tools like Lambda Powertools and prioritize testing for reliability.

  • Understanding Architectures for Multi-Region Data Residency

    This article focuses on implementing data residency strategies for a positive stakeholder experience. It underscores the need to diversify data locations, driven by motivations like disaster recovery and geo-redundancy. The core principle is data distribution, ensuring specific sets reside in distinct regions without overlap - a practice termed data residency.

  • Cloud-Computing in the Post-Serverless Era: Current Trends and beyond

    Discover the evolution of cloud-computing in the post-serverless era, with a shift towards hyper-specialized vertical multi-cloud services and a trend moving from Infrastructure as Code to Composition as Code. Microservices are being redefined in the cloud landscape and upcoming cloud services are set to be rich in constructs.

  • Beyond API Compatibility: Understanding the Full Impact of Breaking Changes

    In this article, we address the most contentious and misinterpreted parts of the SemVer standard, i.e backward compatibility and breaking changes. With the proliferation of SaaS APIs for Generative AI continuing, now is a good time for a retrospection on what constitutes a breaking change and how you can trade off backward compatibility and upgradability with modernization and iterability.

  • Orchestrating Resilience Building Modern Asynchronous Systems

    In this article, we will discuss what problems we had to solve at Twilio to efficiently build a resilient and scalable asynchronous system to handle a complex workflow and the advantages we got from adopting a Workflow Orchestration solution, including abstracting away state management and out-of-the-box support for retries, observability, and audibility.

  • Architecting with Java Persistence: Patterns and Strategies

    Explore a spectrum of Java persistence patterns, from data-oriented to domain-centric. Delve into Driver, Mapper, DAO, Active Record, and Repository for robust architectural foundations.

BT