InfoQ Homepage Architecture & Design Content on InfoQ
-
An Introduction to Kotlin for Serverside Java Developers
Kotlin is one of the newer languages on the JVM from JetBrains, the makers of IntelliJ. It is a statically typed language which aims to provide a blend of OO and FP programming styles. Kotlin compiler creates bytecode compatible with the JVM, allowing it to run on the JVM and interoperate with existing libraries. We present the main features that might appeal to Java developers.
-
Ethics - What Next?
This year at QCon London and the Coed:Ethics Conference we started to talk about what it means to be an ethical technologist. The running theme of both conferences was taking care. Who should do that? Everyone. From shareholders to individual developers to implementers and users we need to feel personally responsible for the ethics of our products
-
Natural Language Processing with Java - Second Edition: Book Review and Interview
Natural Language Processing with Java - Second Edition book covers the Natural Language Processing (NLP) topic and various tools developers can use in their applications. Technologies discussed in the book include Apache OpenNLP and Stanford NLP. InfoQ spoke with co-author Richard Reese about the book and how NLP can be used in enterprise applications.
-
Resilient Systems in Banking
Resilience is about tolerating failure, not eliminating it. To build a resilient system, you must build a system that absorbs shocks, and continues or recovers. Following best practices for resilient architecture, including established cloud patterns, allowed Starling Bank to build a bank, from scratch, in a year, against a backdrop of highly public outages amongst incumbent banks.
-
Micronaut Tutorial: How to Build Microservices with This JVM-Based Framework
Micronaut is a modern, JVM-based, full-stack framework for building modular and easily testable microservice applications. In this tutorial you will create three microservices written in Java, Kotlin and Groovy that use the framework.
-
Modeling Uncertainty with Reactive DDD
Vaughn Vernon has written several books on DDD and reactive messaging patterns, and has found that the nature of distributed systems means you must deal with uncertainty. How to respond to a missing message, or a message that is received twice, should be a business decision, and therefore must be part of the domain model.
-
Explore the New Java 10 “var” Type: An Introduction and Hands-on Tutorial
Learn about the new Java 10 "var" type, and experiment using JShell with this hands-on tutorial on how to reduce boilerplate code using new type inference for local variables.
-
The 2018 InfoQ Editors’ Recommended Reading List: Part One
As part of our core values of sharing knowledge, the InfoQ editor team has listed and commented on their most recent recommended reading.
-
Ethics, a Psychological Perspective
With emerging technologies like machine learning, developers can now achieve much more than ever before. But this new power has a downside. Only recently, Facebook’s chief executive apologised in front of the European Parliament for not taking enough responsibility for fake news, foreign interference in elections and developers misusing people’s information.
-
JShell: A Comprehensive Guide to the Java REPL
JShell provides an interactive shell for quickly prototyping, debugging, and learning Java and Java APIs. In this article, we’ll take a comprehensive look at JShell, understanding all its commands, its uses, and how to use it most effectively.
-
The DDD Do-Over
Jimmy Bogard had a rare opportunity to do what many developers want after finishing a tough project -- a do-over. His team worked on two very similar projects, both using DDD. He discusses the lessons learned from the first project and how the team avoided common pitfalls and was more successful on their later project.
-
Chaos Conf Q&A: The Benefits, Challenges and Practices of Chaos Engineering
This Q&A, from the upcoming Chaos Conf event that is running in San Francisco in September, examines the benefits and challenges of chaos engineering. The article also provides emerging good practice, and contains prerequisites, recommendations, and tips for getting started.