InfoQ Homepage Architecture Content on InfoQ
-
Can People Trust the Automated Decisions Made by Algorithms?
The use of automated decision making is increasing. These algorithms can produce results that are incomprehensible, or socially undesirable. How can we determine the safety of algorithms in devices if we cannot understand them? Public fears about the inability to foresee adverse consequences has impeded technologies such as nuclear energy and genetically modified crops.
-
Istio and the Future of Service Meshes
A service mesh provides a transparent and language-independent way to flexibly and easily automate networking, security, and observation functions. This article examines the past, present and future of the Istio service mesh. The near-term goal is to launch Istio to 1.0, when the key features will all be in beta, including support for Hybrid environments.
-
Democratizing Stream Processing with Apache Kafka and KSQL - Part 1
In this article, author Michael Noll discusses the stream processing with KSQL, the streaming SQL engine for Apache Kafka. Topics covered include challenges of stateful stream processing and how KSQL addresses them, and how KSQL helps to bridge the world of streams and databases through streams and tables.
-
How Technology Is Impacting the Future of Work through Fragmentation
One of the side effects of technology’s evolution is that it fragments existing architectures and creates new structures in the process. AI and Blockchain are currently doing this, but this pattern has been seen before and will continue as tech evolves. According to Kary Bheemaiah, fragmentation is impacting the future of work; it’s a tech-lead reality to be observed and leveraged when possible.
-
Ballerina Tutorial: A Programming Language for Integration
Ballerina is a new programming language and platform whose objective is to make it easy to create resilient services that integrate and orchestrate across distributed endpoints. Ballerina’s design principles focus on baking integration concepts into a language, including a network-aware type system, sequence diagrammatic syntax, concurrency workers, being “DevOps ready”, and environment awareness.
-
Q&A on the Book Many Voices, One Song - Shared Power with Sociocracy
The book Many Voices, One Song - Shared Power with Sociocracy by Ted Rau and Jerry Koch-Gonzalez provides a collection of sociocratic tools and principles and stories about applying sociocracy. It can be used as a reference for implementing sociocracy in organizations to establish self-governance.
-
Advanced Architecture for ASP.NET Core Web API
This article looks into how ASP.NET Core makes it easy to build a modern web API. This enables an implementation that is easy to design, test, and maintain. By using the Ports and Adapter Pattern business logic can be decoupled from API frameworks and data access.
-
Ballerina Microservices Programming Language: Introducing the Latest Release and "Ballerina Central"
The tutorial demonstrates Ballerina, a new programming language and platform whose objective is to make it easy to create resilient services that integrate and orchestrate across distributed endpoints. Ballerina uses compile time abstractions for distributed system primitives that enable the compiler to generate artifacts like API gateways for deployment to Docker and Kubernetes.
-
Microservices and the Economics of Small Things
In this article Mark Burgess explores the process of "decentralizing intent" and the effect it has on the predictability of our systems including what we can know as we scale systems.
-
Models and Their Interfaces in C# API Design
Traditional MVC, MVP, MVVM, Web MVC; the common element in every UI pattern is the Model. And while there are many articles discussing the view, controllers, and presenters in these architectures, almost no thought is given to the models. In this article we’ll look at the model itself and the .NET interfaces that they implement.
-
Book Review and Q&A: Microservices and Containers by Parminder Singh Kocher
The book Microservices and Containers, by Parminder Singh Kocher, provides a deep dive into the main concepts, patterns and technologies used to implement modern, highly available, highly scalable cloud-native applications.
-
Coaching with Curiosity Using Clean Language and Agile
Clean Language questions are bias-free questions. They can be used to discover the underlying rules, expressed values, and coping mechanisms in organizations, and to gain clarity and promote diverse ideas in groups. Simple to learn, but tricky to implement, clean questions require transparency and sharing a bit more of one’s thinking than usual.