InfoQ Homepage Architecture Content on InfoQ
-
Evolutionary Architecture from an Organizational Perspective
Creating an architecture that can evolve over time is not simply a technical challenge, and requires collaboration with non-technical people in an organization to ensure the software adapts as needed.
-
Case Study: a Decade of Microservices at a Financial Firm
Microservices are the hot new architectural pattern, but the problem with “hot” and “new” is that it can take years for the real costs of an architectural pattern to be revealed. Fortunately, the pattern isn’t new, just the name is. So, we can learn from companies that have been doing this for a decade or more.
-
Keeping Technology Change Human
When we are at the forefront of so much change, it's easy to forget that other people around us find change more challenging. This article is a reminder to look beyond the code and processes, to consider how tech team actions can affect our users in emotional ways. It seeks to establish a few ways of thinking to help bring others along with us when working through technology change.
-
Containers Are Contagious and Often Misused
Let’s get something straight right right from the start— this article is not to argue that containers are bad; containers are certainly one of many great options developers have in their hands today. This article is also not scoped at the pros/cons of containers; my intent is just to present the developers and dev leads with some considerations around containers.
-
Local-First Cooperation: Autonomy at the Edge, Secured by Crypto, 100% Available
Why do two local devices need the cloud to be able to communicate? Shouldn't we be able to enable robust cooperation between nearby computing devices? This idea is the realm of local-first cooperation. In what follows, the author discusses the technologies used to make it function and a few places where work is still needed.
-
Can We Trust the Cloud Not to Fail?
I will start with the theory behind failure detection, and then review a couple of real-world examples of how the mechanism works in a real cloud - on Azure. Even though this article includes real-world applications of failure detection within Azure, the same notions could also apply to GCP, AWS, or any other distributed system.
-
Compiled, Typed, Ruby-Inspired Crystal Language is Ready for Production - Q&A with Beta Ziliani
The Crystal language is ready for production, 12 years after inception. Crystal is compiled for performance, typed for safety, and Ruby-like for productivity. Due to the strong type inference, developers need only sparse type annotations. We interviewed the head of the Crystal team on the language tradeoffs, the present features and the language roadmap.
-
Continuous Learning as a Tool for Adaptation
The fifth and capstone article in a series on how software companies adapted and continue to adapt to enhance their resilience explores key themes with a special view on the practicality of organizational resilience. It also provides practical guidance to engineering leadership and recommendations on how to create this investment.
-
Running Axon Server in a Virtual Machine
In this series, we’ve been looking at running Axon Server locally, in Docker, and Kubernetes. What happens if we use a VM as a platform? Naturally, we need to do more work to get everything set up correctly, because instead of sharing a part of the Operating System, we now have to consider everything from the machine and upwards.
-
Software Architecture and Design InfoQ Trends Report—April 2021
An overview of how the InfoQ editorial team sees the Software Architecture and Design topic evolving in 2021, with a focus on what architects are designing for today.
-
Designing & Managing for Resilience
The fourth article in a series on how software companies adapted and continue to adapt to enhance their resilience explores the strategies used by engineering leaders to help create the conditions for sustained resilience. It provides stories, examples, and strategies towards designing an organizational structure to support resilient performance and managing for resilience.
-
Article Series: Building Microservices in Java
This article series will explore the state-of-the-art in building microservice-based architectures using the Java language. Alongside popular stalwarts, such as Spring Boot and Dropwizard, newer frameworks, such as Quarkus, Micronaut and Helidon, have been gaining momentum. These frameworks emerged after MicroProfile was introduced to the Java community in 2016.