InfoQ Homepage Programming Content on InfoQ
-
Tutorial: Writing Microservices in Kotlin with Ktor—a Multiplatform Framework for Connected Systems
Ktor (pronounced Kay-tor) is a framework built from the ground up using Kotlin and coroutines. It is a great fit for applications that require HTTP and/or socket connectivity. These can be HTTP backends and RESTful systems, whether or not they’re architectured in a microservice approach.
-
Q&A on the Book Surrounded by Idiots
The book Surrounded by Idiots by Thomas Erikson provides a method for assessing behaviors of people we communicate with. This method can help to increase our understanding of how people communicate and to better communicate and collaborate with people. It will also give you a better self-awareness.
-
Functional UI - a Model-Based Approach
Functional UI techniques rely on the functional relation between events processed by the user interface and the actions performed by the interface. If the user interface has discrete modes in which its behavior can be expressed simply, a modelization with state machines is an advantageous functional UI technique. This article explains the technique, its benefits and how it is used in the industry.
-
Software, Aesthetics, and Craft: How Java, Lisp, and Agile Shape and Reflect Their Culture
The software industry styles itself on architecture and construction, but rarely discusses aesthetics.
-
Mono: from Xamarin to WebAssembly, Blazor, and .NET 5 - Q&A with Miguel de Icaza
Mono started as an open source .NET platform in 2001, being developed by Xamarin until 2011. Since the company’s acquisition by Microsoft in 2016, both Mono and .NET Core have been developed in parallel. In the light of the most recent releases, InfoQ interviewed Miguel de Icaza —the original author of the Mono project—to talk about the current state of Mono and its future in the .NET ecosystem.
-
Q&A on the Book Righting Software
The book Righting Software by Juval Löwy provides a structured way to design a software system and the project to build it. Löwy proposes to use volatility-based decomposition to encapsulate changes inside the system’s building blocks, and explains how to design the project in order to provide decision makers with several viable options trading schedule, cost, and risk.
-
Java 14 Feature Spotlight: Records
Java SE 14 (March 2020) introduces records (jep359) as a preview feature. Records aim to enhance the language's ability to model "plain data" aggregates with less ceremony. In this article Java Language Architect Brian Goetz takes a deep dive into the feature.
-
The Road to Artificial Intelligence: An Ethical Minefield
Increasingly-rapid developments in the field of AI have offered society profound benefits, but have also produced complex ethical dilemmas. Many of the most nefarious issues are often overlooked, even in the engineering community. There also exists the meta-ethical question of who ought to be the ones making decisions concerning the encoding of values into autonomous systems.
-
Q&A on the Book Build a Next-Generation Digital Workplace
The book Build a Next-Generation Digital Workplace by Shailesh Shivakumar explains what employee experience platforms (EXP) are and how digital technologies can be used to improve employee productivity, increase employee engagement, and support collaboration.
-
Groovy 3.0 Adds New Java-Like Features
Groovy 3 adds several new features similar to equivalents in Java, including the enhanced for loop, try-with-resources and lambda expressions.
-
Functional UI (Framework-Free at Last)
Functional UI is a set of techniques which rely heavily on functional programming to develop user interface applications. While deceptively simple, functional UI techniques are surprisingly powerful. Functional UI directly reflects the application's specifications, allows developers to unit-test user scenarios, and UI frameworks become mere libraries. Framework-free at last!
-
Book Review: Developer, Advocate!
Developer, Advocate! is a set of interviews with prominent technologists, covering what drives their interest and enthusiasm in the industry. The brevity of each interview provides direct information and insight that can be read separately at any time, in any order, enabling those with busy schedules to read, put down, and repeat.