BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Programming Content on InfoQ

  • 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.

  • A Bottom-Up View of Kotlin Coroutines

    Recently coroutines have become popular as an alternative to Reactive Programming on the JVM. In many cases the costs of restructuring your code around functional operations for reactive streams outweigh the benefits, so coroutines have emerged, initially for Android, as an alternative solution. This deep dive explores how Kotlin's implementation works under the hood.

  • The Datum Data Binding Library

    There has been an explosion of frameworks and libraries for making single page applications for the web. Angular, React, Vue and quite a few others have made it easier to develop on the web and helped fuel its growth as webapps have become more dynamic and interactive. Howeve,r there may still be room for other libraries and new ideas such as Datum, a new, simple data binding library.

BT