InfoQ Homepage Programming Content on InfoQ
-
Using a DDD Approach for Validating Business Rules
If the goal is to create software applications that emulate the behavior of domain experts, then the challenge is in capturing and implementing the business rules. This is more a factor of good knowledge management than it is raw coding ability. Following techniques from Domain-Driven Design can provide a structure for effectively validating and implementing business rules in a system.
-
TornadoVM: Accelerating Java with GPUs and FPGAs
The proliferation of heterogeneous hardware represents a problem for programming languages such as Java that target CPUs. TornadoVM extends the Graal JIT compiler to take advantage of GPUs & FPGAs and provides a flexible, high-level model whilst still enabling high performance and features such as live task migration.
-
Blazor RenderTree Explained
Blazor is a new single page application (SPA) framework from Microsoft that relies on the .NET framework in favor of JavaScript. As part of its component development model, Blazor uses a DOM abstraction called a RenderTree. In this article we’ll learn what exactly a DOM abstraction is, what the RenderTree is used for, and why Blazor developers should know about it.
-
Crank, a New Front-End Framework with Baked-In Asynchronous Rendering - Q&A with Brian Kim
Brian Kim introduces Crank.js, a new front-end framework with baked-in asynchronous rendering. The framework orchestrates front-end applications' tasks and rendering with standard asynchronous generators. Crank strives to be Just JavaScript, and reduces the number of concepts that need to be acquired to write a front-end application. Gone are proprietary notions of asynchronous resources.
-
Running Axon Server - CQRS and Event Sourcing in Java
Axon Server Standard Edition is an Open Source, purpose-built solution supporting distributed CQRS and Event Sourcing applications written in Java with the Axon Framework. Part one in this series discusses running it locally and explores aspects of Administration/Security and Configuration. It also discusses more advanced features available with the Enterprise Edition - Clustering/Multi-Contexts.
-
PHP 7 — Getting Started and OOP Improvements
PHP had almost become a forgotten language, with a lapse of more than 10 years without a new major version after PHP 5.0 in 2004. PHP 7.0 is a major version with several improvements and new features which have brought it to the level of other modern languages. In this series of articles, we shall discuss new features in the various PHP 7.x versions.
-
Extensible Effects in JavaScript for Fun and Profit - Q&A with William Heslam
Extensible effects, described by some as the right way to structure programs, are crossing over to JavaScript. Extensible effects at core provide a composable and flexible way to separate concerns, while allowing to redefine the implementation of those concerns at will. William Heslam explained what extensible effects are and the benefit of using them.
-
Machine Learning in Java with Amazon Deep Java Library
In this article, we demonstrate how Java developers can use the JSR-381 VisRec API to implement image classification or object detection with DJL’s pre-trained models in less than 10 lines of code.
-
Apache Arrow and Java: Lightning Speed Big Data Transfer
Apache Arrow puts forward a cross-language, cross-platform, columnar in-memory data format for data. It is designed to eliminate the need for data serialization and reduce the overhead of copying.
-
Building .NET Applications for AWS
AWS provides a large set of online services. To use those services effectively, AWS offers .NET developers a complete SDK for building apps, and a set of toolkits for popular IDEs.
-
Interview with Node.js Technical Steering Committee Chair
Michael Dawson, active contributor to the Node.js project and chair of the Node.js Technical Steering Committee(TSC), and IBM Node.js community lead, joins us for a behind-the-scenes look at Node.js. The recent Node.js 14 release introduces improvements in Diagnostic Reporting, Internationalization, ES module loading, and an experimental Web Assembly System Interface.
-
Q&A with Galo Navarro on Building an Effective Platform Team
Galo Navarro discusses how to build an effective platform team and scale it to support a large organization. InfoQ recently sat down with Navarro to discuss his approach for building a strong platform team including setting a clear mandate and balancing autonomy of product teams with clear standards.