InfoQ Homepage Programming Content on InfoQ
-
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.
-
Moving to .NET 7 MSMQ Alternatives
No MSMQ support is available in the new versions of .NET; if it’s time to move, this article presents a few considerations on what that transition can look like. It will explore some of the available options. By the end, you should see that even though it may be tough, there is a pathway forward.
-
Adopting Low Code/No Code: Six Fitnesses to Look for
When selecting a no-code/low-code platform, six key fitnesses should be examined: purpose fit, cost fit, ops fit, user fit, use-case fit, and organization fit. The IT team should be heavily involved in this decision as they play a pivotal role in helping citizen developers with platform adoption.
-
Using Serverless WebSockets to Enable Real-Time Messaging
This article reviews some of the most common live-user experiences with examples, discusses event-driven architectures to support real-time updates, and introduces common technology choices.
-
API Security: from Defense-in-Depth (DiD) to Zero Trust
Nearly all companies have experienced security incidents but few have an API security policy that includes dedicated API testing and protection. A defense-in-depth approach that includes boundary defense, observability, and authentication is recommended.
-
PHP 8 - Classes and Enums
In this article, we will review new PHP 8 features related to classes, including enums, used to specify an enumerated list of possible values for a type; the new readonly modifier for a class property, which makes the property unmodifiable after its initialization; and constructor parameter promotion, useful to assign a constructor parameter value to an object property automatically.
-
Java Champion Josh Long on Spring Framework 6 and Spring Boot 3
Microservices show where Java lags behind other languages. Reactive programming provides a concise DSL to express the movement of state and to write concurrent, multithreaded code with better scaling. Developing in Spring Boot works well even without special tooling support. Josh Long is excited about Project Loom, Java optimization in Project Leyden, and Foreign-Function access in Project Panama.
-
The Future of DevOps is No-Code
The need for high-quality DevOps personnel is skyrocketing, but it is harder than ever to find enough staff. It is possible to augment your DevOps organization using no-code and low-code tooling. Low-code and no-code tools can free up existing developers by reducing the time spent on integrating and administering DevOps toolsets.
-
Build, Test, and Deploy Scalable REST APIs in Go
In this article, we'll look at how to use the gin framework to create a simple Go application. We will also learn how to use CircleCI, a continuous deployment tool, to automate testing and deployment.
-
Polyglot Microservices Communication Using Dapr on AKS
Dapr is a useful tool for solving several challenges engineers might face. It allows engineering organizations to gain productivity by training developers on a common set of tools and techniques. It also helps adopt standardization in development, deployment, and debugging.
-
Separation of Concerns in Node.js
In Node.js you can structure your code however you want. There is no "correct way". You have the option of writing all of your code in a single app.js file or creating multiple files and placing them in different folders. Most developers, however, would recommend structuring your projects by grouping related data together rather than having it all together.