InfoQ Homepage Programming Content on InfoQ
-
PHP 8 - Type System Improvements
In this article we will discuss extensions to the PHP type system introduced in PHP 8, 8.1, and 8.2. Those include union, intersection, and mixed types, as well as the static and never return types. Additionally, PHP 8 also brings support for true, null, and false stand-alone types.
-
Proven Solutions to Five Test Automation Issues
Automated testing is often blocked due to some well-known issues, especially in a microservices architecture. API and service simulators can eliminate five common issues that block test automation.
-
InfoQ Software Trends Report: Major Trends in 2022 and What to Watch for in 2023
2022 was another year of significant technological innovations and trends in the software industry and communities. The InfoQ podcast co-hosts met last month to discuss the major trends from 2022, and what to watch for in 2023. This article is a summary of the 2022 software trends podcast.
-
How to Measure the Energy Consumption of Bugs
Software engineers should accept their responsibility for taking energy consumption and carbon dioxide emissions into account when developing software; they have a big responsibility towards nature, our environment and sustainability. This article sheds light on how software engineers can this perspective into account, zooming in on energetic shortcomings or bottlenecks of bugs.
-
Lessons Learned from Enterprise Usage of GitHub Actions
GitHub Actions is an effective CI tool. However, integrating it into enterprise organizations can be challenging. This article looks at best practices for GitHub Actions in the enterprise.
-
Blue-Green Deployment from the Trenches
Introducing blue-green deployments is often a beneficial improvement. However, with some architectures, it can be challenging to make the changes without impeding deployments. This article covers the challenges and lessons learned in implementing blue-green deployments in the real-world.
-
Securing a Kafka Cluster in Kubernetes Using Strimzi
Deploying an Apache Kafka cluster to Kubernetes is easy if you use Strimzi, but that’s only the first step; you need to secure the communication between Kafka and the consumers and producers, provide RBAC to access topics, spread the secrets correctly to Kafka Connect components and all using a Kubernetes GitOps way.
-
Microservices Integration Done Right Using Contract-Driven Development
Build your microservices and micro-frontend in parallel and deploy them independently without worrying about integration issues, by leveraging API specifications such as OpenAPI and AsyncAPI as executable contracts to shift left the identification of compatibility bugs with Contract Driven Development using Specmatic, thereby removing the need for integration testing.
-
The Service and the Beast: Building a Windows Service that Does Not Fail to Restart
Windows Services play a key role in the Microsoft Windows operating system, and support the creation and management of long-running processes. When “Fast Startup” is enabled and the PC is started after a regular shutdown, though, services may fail to restart. The aim of this article is to create a persistent service that will always run and restart after Windows restarts, or after shutdown.
-
PHP 8 – Functions and Methods
PHP 8.0 adds support for several functions- and methods-related features, including enhanced callable syntax, named function arguments, and Fibers, which are interruptible functions that add support for multitasking.
-
GraalVM Java Compilers Join OpenJDK in 2023, Align with OpenJDK Releases and Processes
The Community Editions of the GraalVM JIT and Ahead-of-Time (AOT) compilers will move to OpenJDK in 2023. They will align with OpenJDK releases and processes. Existing releases, GraalVM Enterprise Edition, and other GraalVM projects will not. GraalVM 22.3 provides experimental support for JDK 19 and improves observability. Project Leyden will standardize Java AOT compilation.
-
Java InfoQ Trends Report - December 2022
This report provides a summary of how the InfoQ Java editorial team and several Java Champions currently see the adoption of technology and emerging trends within the Java and JVM space in 2022. We focus on Java the language, as well as related languages like Kotlin and Scala, the Java Virtual Machine (JVM), and Java-based frameworks and utilities.