InfoQ Homepage Architecture & Design Content on InfoQ
-
Cats, Qubits, and Teleportation: The Spooky World of Quantum Computation Applications (Part 3)
The same factors which make quantum theory so startling also make quantum computers very difficult to implement in practice: quantum phenomena don't manifest themselves in everyday life. Given the cost, size, and physical delicacy of quantum computers, they're a perfect fit for the 'pay per use' cloud consumption model.
-
How to Adopt a New Technology: Advice from Buoyant on Utilising a Service Mesh
When adding a new technology like a service mesh into your production stack, be mindful of the impact this will have on you and your colleagues. Be clear about what problem you are solving, and define appropriate acceptance criteria. Run experiments that attempt to show how a service mesh can make life better for the various stakeholders.
-
Cats, Qubits, and Teleportation: The Spooky World of Quantum Algorithms (Part 2)
Quantum information theory really took off once people noticed that the computational complexity of quantum systems was actually a computational capacity, which could be applied to other problems, such as factorization, which is used within public key cryptography. This article explores quantum algorithms and their applicability.
-
Data Citizens: Why We All Care about Data Ethics
Data citizens are impacted by the models, methods, and algorithms created by data scientists, but they have limited agency to affect the tools which are acting on them.
-
Cats, Qubits, and Teleportation: The Spooky World of Quantum Computation (Part One)
By the time most of us reach adulthood, we know a few basic truths: cats cannot be simultaneously alive and dead; objects at opposite ends of the universe can’t affect each other; and computers operate on 0s and 1s, and that’s the most fundamental unit of information. The premise of quantum computation is that these truths are partially wrong.
-
Service Mesh: Promise or Peril?
Service meshes such as Istio, Linkerd, and Cilium are gaining increased visibility as companies adopt microservice architectures. The arguments for a service mesh are compelling: full-stack observability, transparent security, systems resilience, and more. But is a service mesh really the right solution for you? This article examines when a service mesh makes sense and when it might not.
-
The C4 Model for Software Architecture
Software architecture diagrams can be a very useful communication tool, but many teams have scaled back on the creation of diagrams, and when diagrams are created, they are often confusing and unclear. The C4 model consists of a hierarchical set of software architecture diagrams for context, containers, components, and code.
-
The SOA Journey: from Understanding Business to Agile Architecture
If your monolith is tightly coupled and not cohesive, you could split it in order for a business to be more agile. There are a lot of wrong ways that you can do that. They result in the same tightly coupled and non-cohesive monolith, but which is distributed across a network. This article examines how you can align your technical services and business-capabilities.
-
How BuzzFeed Migrated from a Perl Monolith to Go and Python Microservices
Starting in 2016 BuzzFeed began a re-architecture project moving from a single monolithic application written in Perl to a set of microservices. The main reason for the move was that the Perl application was proving hard to scale, essential given that buzzfeed.com alone serves about 7 billion page views/month.
-
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.
-
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.
-
Picking an Active-Active Geo Distribution Strategy: Comparing Merge Replication and CRDT
Modern distributed applications are fuelling the growing demand for distributed active-active, multi-master databases. While most popular databases support multi-master deployment, different databases employ different techniques. LWW, MVCC, merge replication and CRDTs deliver eventual consistency, offering read and write access with local latency and remaining available during network partitions.