The next installment of Poppy Rowse and Chris Shepherd's article on infrastructure platforms looks how to communicate the technical vision of platform and how to understand the platform from the users' point of view. more… https://martinfowler.com/articles/building-infrastructure-platform.html#CommunicateYourTechnicalVision
A 2002 article by Michael Feathers. This article introduced the idea of dealing with a hard-to-test GUI behavior by minimizing the behavior within the GUI element, moving as much as possible to a separate object that’s easier to test. This idea was generalized into the Humble Object pattern.
The pdf of this article is here, but if you’re wish to share a link, please link to this page instead, as that pdf link may not be stable and this page allows us to more easily enhance this resource later.
Poppy Rowse and Chris Shepherd continue their advice on building infrastructure platforms by discussing techniques to discover what platform users need and stress the importance of finding the Shortest Path to Value by onboarding them quickly. more… https://martinfowler.com/articles/building-infrastructure-platform.html#FindOutWhatYourCustomersNeed
A lot of organizations are looking to improve the way their teams build on top of clouds by assembling their own preferred set of cloud components into an infrastructure platform. This allows product teams work with a consistent and curated set of services, rather than having to figure it out on their own. Poppy Rowse and Chris Shepherd have worked with several of these teams and put together some guidelines on how to do this successfully. They
Yesterday Ian Cartwright, Rob Horn, and James Lewis described the Critical Aggregator and how it can metastasize into an invasive form. When a legacy system has such an Invasive Critical Aggregator it's often best, if a little counter-intuitive, to Divert the Flow of data by building a new critical aggregator first. Once this is done, we have far more freedom to change or relocate the various upstream data sources.
Business Leaders often need to make decisions that are influenced by a wide range of activity throughout the whole enterprise. To support this systems often have a what Ian Cartwright, Rob Horn, and James Lewis call a Critical Aggregator: a component whose job is to visit various other systems and pull this information together. A critical aggregator is important, but often metastasizes into an Invasive Critical Aggregator
Continuing his exploration of important patterns to maintain consistency across a cluster, Unmesh Joshi now looks at Two Phase Commit. It's broadly the most familiar approach, but comes with lots of complexities to make it work in practice over unreliable networks.
more… https://martinfowler.com/articles/patterns-of-distributed-systems/two-phase-commit.html
Ian Cartwright, Rob Horn, and James Lewis are also back with the New Year with a couple more articles from Patterns of Legacy Displacement in the funnel for the next couple of weeks. This one describes a Legacy Mimic: a part of the new system designed to make the old system think that nothing has changed.
more… https://martinfowler.com/articles/patterns-legacy-displacement/legacy-mimic.html
One of the core challenges in a distributed system is keeping the state synchronized across all the nodes, especially when neither the nodes, or the connections between them, are reliable. The core approach to handle with is a replicated log: using the write-ahead log pattern over the cluster. Unmesh Joshi shows how this works using its most common implementation: the Raft protocol.
more… https://martinfowler.com/articles/patterns-of-distributed-systems/replicat
Unmesh Joshi is ready to start the New Year with a few more of his Patterns of Distributed Systems. With this one he attempts the tricky task of explaining Paxos. This is a well-known protocol developed by Leslie Lamport, for nodes to reach a reliable consensus when both they, and the network, are prone to unexpected failure. Although it's well-known, it's also notoriously difficult to understand, indeed we had considerable difficulty getting our heads arou