InfoQ Homepage Programming Content on InfoQ
-
Intro to knysa: Async-Await Style PhantomJS Scripting
Typical PhantomJS test frameworks suffer from callback hell and other tricks that reduce the clarity of how the program flows. Bo Zou created knysa which uses async-await style programming to eliminate these callbacks. Additionally, there's no need to resort to currying and common try-catch-fail constructs are used to maintain a sane path through the code.
-
JUnit 5 - An Early Test Drive - Part 1
JUnit, Java's most ubiquitous testing framework, is getting an update. Yes, JUnit 5 is a complete rewrite that decouples "JUnit the Platform" from "JUnit the Tool" and makes the platform available to other testing frameworks, which might very well redefine the future of testing on the JVM. More than that, it evolves the API and has a very promising extension model.
-
HTTP-RPC: A Lightweight Cross-Platform REST Framework
HTTP-RPC is an open-source framework allowing developers to create and access cross-platform polyglot RESTful web services using a convenient, RPC-like metaphor, while preserving fundamental REST principles such as statelessness and uniform resource access.
-
Writing Maintainable Configuration Code
The article discusses a catalog of configuration smells containing 13 implementation configuration smells and 11 design configuration smells. It provides a few examples of configuration smells along with corresponding refactorings, explains their impact on the quality of the project, and lists a few tools that could be used to reveal such smells.
-
What the JIT!? Anatomy of the OpenJDK HotSpot VM
If you've ever wondered what happens when your bytecode executes, join former Oracle G1GC performance-lead Monica Beckwith in her guided tour of just-in-time (JIT) compilation and runtime optimizations in OpenJDK HotSpot VM.
-
Configure Once, Run Everywhere: Decoupling Configuration and Runtime
Configuration is one of the most widely used cross-cutting concerns in application development. Apache Tamaya is a new incubator project that brings standardized property management to Java.
-
Using SEMAT and Essence at Fujitsu UK
Fujitsu UK is using a large number of processes and methods which have developed over the period of many years. Looking for a way of combining agile and traditional methods, they became aware of SEMAT and the Essence Kernel. This article explores how they applied SEMAT and Essence to systems engineering, and used it to look at the whole programme of work across all disciplines.
-
Inner Source—Adopting Open Source Development Practices in Organizations
Although inner source offers numerous benefits, many practitioners are unclear about what it is and how to adopt it. When adopting inner source, organizations should consider nine factors pertaining to product, process, and organization.
-
Living in the Matrix with Bytecode Manipulation
In this article we take a deep dive into two popular bytecode manipulation frameworks: Javassist & ASM. Bytecode manipulation is used in Java libraries like Spring and Hibernate, most JVM languages and even your IDE. For this reason, and because it’s really quite fun, it is a valuable skillset to learn for performing tasks that are otherwise impossible. And once you learn it, the sky's the limit!
-
Four Benefits of Switching Your Contact Center Agent Software to WebRTC
Contact centers around the globe are running two sets of expensive software: CRM and Real-Time Communications. Tsahi Levent-Levi shows how, by integrating WebRTC, companies can become more flexible and save money. Using only a browser, with no additional software or plug-ins to install, call centers can distribute their work force around the globe.
-
Microservice Threading Models and their Tradeoffs
A microservice's efficiency and resource consumption patterns are dramatically affected by its threading model. Choosing the correct model for your solution is a basic requirement for success. Glenn Engstrand investigates multiple options for a service's execution life-cycle, gives examples of the benefits and drawbacks for each choice, and provides recommendations for each model's implementation.
-
Q&A on Express.js with Evan Hahn
When people talk about Node.js powering the back-end web, they're often actually talking about Express. Just as jQuery and other frameworks smooth over the XmlHttpRequest work in the browser, Express.js works to make the experience on the server just as easy. In this Q&A, author Evan Hahn provides more context on Express and where it's going.