InfoQ Homepage Programming Content on InfoQ
-
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.
-
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.
-
Write More, Talk Less: Building Organizational Resilience through Documentation and InnerSource
Better documentation and knowledge sharing creates transparency that aids onboarding, prevents turnover disruption, and withstands reorganizations. Different practices can help, such as communicating asynchronously, creating incentives for documentation, making docs discoverable, understanding team members' preferences, and providing dedicated writing time. And maybe InnerSource can help too.
-
Helidon 4 Adopts Virtual Threads: Explore the Increased Performance and Improved DevEx
This article delves into Helidon 4's integration of Java 21's virtual threads from Project Loom, marking a significant shift in Java development. It highlights the transition from a reactive to an imperative model, simplifying coding and debugging. Helidon 4 claims improved performance over previous versions and some external frameworks, balancing performance with simplicity.
-
Going Global: a Deep Dive to Build an Internationalization Framework
Internationalization (i18n) is a critical process in web development, and requires a robust, well-designed framework to ensure scalability. While some JavaScript libraries exist, this article provides a language-agonistic framework that can be implemented at a global level.
-
InfoQ Java Trends Report - November 2023
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 2023. 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.
-
Efficiently Arranging Test Data: Streamlining Setup with Instancio
The need to ensure code quality is ubiquitous, regardless of the development paradigm. Continuous Deployment and Continuous Delivery indicate that reliable test suites are directly connected to the speed of development and quicker customer feedback loop. Instancio automates the data setup step - the A in Arrange-Act-Assert. So, it allows you to put more emphasis on the business feature tested.
-
How to Sustain Quality and Velocity in a JavaScript or TypeScript Project?
The JavaScript language and its ever-changing ecosystem of packages and practices can make codebases quickly become hard to maintain. The resulting loss of development velocity and/or code quality can be prevented without rewriting everything from scratch, nor pausing the development of new features. In this article, we have analyzed a few best practices to help avoid that.
-
Simplifying Persistence Integration with Jakarta EE Data
Jakarta Data streamlines Java enterprise data integration. Supporting various databases, it boosts productivity, is open-source, and community-driven. GitHub offers hands-on experience for modernizing enterprise architectures.
-
Why Developers and Staff+ Engineers Should Get Involved in Open-Source Collaborative Development
Over the last 30 years, the world has become connected and digital. Open source is how we do modern software development, stitching together downloaded open-source libraries, frameworks, and other code to create new applications or functionality. This is why every developer and senior staff+ roles need to know what open source is and how it works.
-
Dealing with Java CVEs: Discovery, Detection, Analysis, and Resolution
This article delves into the importance of integrating Software Composition Analysis (SCA) in CI/CD pipelines for security. It highlights the need for human oversight to accurately assess vulnerability impact and cautions against "alert fatigue." The article also recommends specialized tools for effective vulnerability management.
-
Building Kafka Event-Driven Applications with KafkaFlow
KafkaFlow, a .NET open-source project, simplifies Kafka-based event-driven app development with features like middleware for message processing, enhancing maintainability, customization potential, and allowing developers to prioritize business logic.