Week 34, year 2023

  • Strategic Directions supporting the people - Having a robust digital talent strategy is a competitive advantage in today’s fiercely competitive market. This enables businesses to have the right talent and have the right competencies to meet current and future demand to meet business goals or to stay on track for digital transformation aspirations. Sarah Taraporewalla continues her article on how to create an integrated business and technology strategy by looking at questions raised by two strategic directions that support people: culture and internal systems. [Martin Fowler]
  • Bottlenecks of Scaleups #05: Resilience and Observability - Here is a new article in the bottlenecks of scaleups series, looking at resilience and observability. Startups tend to only address resilience when their systems are already down, often taking a very reactive approach. For a scaleup, excessive system downtime represents a significant bottleneck to the organization, both from the effort expended on restoring function and also from the impact of customer dissatisfaction.Punit Lad and Carl Nygard explain that to move past this, resilience needs to be built into the business objectives, which will influence the architecture, design, product management, and even governance of business systems. [Martin Fowler]
  • Getting started with EventStoreDB: our how-to guide on Windows [Event Store blog]
  • Demo Front-End: A front-end application to test and explore an API - Many software teams create services exposed as APIs, designed to be consumed by other software and thus without any user-interface. Such services are hard to demonstrate, as they effectively just dump pages of JSON. A demo front-end is a simple user-interface just used to manipulate such an API. Matteo Vaccari describes how and why to build one - showing its usefulness both in explaining the API's capabilities to stakeholders and to help client developers explore how to interact with the API. [Martin Fowler]
  • Tales from the .NET Migration Trenches - Cataloging - Posts in this series: Intro Cataloging Empty Proxy Shared Library Our First Controller Migrating Initial Business Logic Our First Views Session State Hangfire Authentication Middleware Turning Off the Lights When I talk with folks about modernization, inevitably the question comes up "OK but how much is it going to [Jimmy Bogard]
  • Technology Strategy for Emerging Technologies and Markets - Sarah Taraporewalla completes her study of building a technology strategy that's integrated with strategic business interests. This final strategic direction considers the ever-changing future, suggesting lines of inquiry to consider the impact of new technologies, market trends, and broader social-political changes. [Martin Fowler]
  • Prototyping, an underestimated design skill - Coding is an underestimated part of the design. When we think about the design, we immediately fall to whiteboard diagrams, sticky notes, or… [Event-Driven by Oskar Dudycz]
  • Getting started with EventStoreDB: our how-to guide on Windows [Event Store blog]
Permalink | From 21 August 2023 to 27 August 2023 | Last updated on: Wed, 11 Sep 2024 14:36:58 GMT

Week 33, year 2023

  • We will miss Stefan Tilkov - We are saddened today to learn of the passing of Stefan Tilkov. We’ve met Stefan several times at workshops and conferences and always enjoyed his good company and insightful views. He advocated many of the things that we and our colleagues support - and as well as skillfully explaining these ideas, he also backed them up with concrete experience from his work. We shall really miss his wise contributions online, and regret that we won’t get the chance to chat with him again. We offer our condolences to his family, friends, and colleagues at INNOQ. Birgitta Boeckeler Erik Dörnenburg Dave Farley Neal Ford Martin Fowler James Lewis Sam Newman Rebecca Parsons Daniel Terhorst-North [Martin Fowler]
  • Modernizing Legacy Systems with EventStoreDB - The Insureon Success Story - Is modernizing your legacy system a critical challenge faced by your organization? The cost and risks associated with a full rewrite often deter businesses from embracing the latest technologies. However, EventStoreDB, can help with this process by offering an incremental approach to modernizing your existing legacy systems. [Event Store blog]
  • Bottlenecks of Scaleups Webinar: Sep 7 2023 - Join Tim Cochran and Rickey Zachary on Thursday, September 7th 1-2pm EST for a webinar on Bottlenecks of Scaleups: Technology mistakes every growing startup makes. They researched Thoughtwork's portfolio to analyze why companies struggle to scale, spanning across Technology, People, and Product. Covering areas such as experimentation culture, overcomplicated architectures, onboarding, developer productivity, product and engineering collaboration, and cost efficiency. [Martin Fowler]
  • Strategic directions to build a strong foundation - Any business that wants to grow needs to be built on strong and stable foundations. While these strategic directions are often familiar to technical folks it's important that the improvements to engineering align with the themes that resonate with the rest of the organization.Sarah Taraporewalla illustrates how this appears with two strategic directions that consider improvements in efficiency and quality. [Martin Fowler]
  • Actions to sustain cost control for scaleups - When scaling up, getting costs under control is vital to stabilizing financial health. But as a weight-loss expert might say, the key to long-term health is to do things that promote a sustainable lifestyle. Sofia Tania and Stefania Stefansdottir now move on to begin to describe these initiatives: federated accountability, visibility, and nudges towards better financial discipline. [Martin Fowler]
  • 23.6.0 Release Notes [Event Store blog]
  • Tales from the .NET Migration Trenches - Intro - Posts in this series: Intro Cataloging Empty Proxy Shared Library Our First Controller Migrating Initial Business Logic Our First Views Session State Hangfire Authentication Over the past year or so I've been part of a large-ish modernization effort, both migrating from .NET 4.8 to .NET 6 (the [Jimmy Bogard]
  • Strategic directions: minimizing risk and being data driven - Time for two more strategic directions from Sarah Taraporewalla. These look at the questions that need to be investigated when reducing cost, minimizing operation risk, and enabling data-driven decision making. [Martin Fowler]
  • Behaviour-Driven Design is more than tests - Why did I name the testing library Ogooreck? Between my friends, I’m well known for my lame jokes. Ogooreck is one of them. Ogooreck is a… [Event-Driven by Oskar Dudycz]
  • Five reasons to attend AxonIQ conference 2023 - AxonIQ Conference 2023 is Thursday, September 28 in Amsterdam. Yes, it is a physical, not a virtual conference, and it’s being held in one of the most vibrant cities at an iconic Amsterdam location, Pakhuis de Zwijger. Here are five reasons not to miss this year’s conference. [AxonIQ Blog]
  • TDD with GitHub Copilot - At Thoughtworks, we are strong practitioners of Test Driven Development (TDD). Naturally this leads to the question of how generative AI can help with this technique. Paul Sobocinski writes a brief memo explaining how some of our teams have used TDD with GitHub Copilot. As ever, co-pilot can't be relied on to fly the plane, but can suggest some useful ideas for the red and green steps. It isn't very helpful for the all-important refactoring step. [Martin Fowler]
  • Final parts of the cost bottleneck of scaleups - Sofia Tania and Stefania Stefansdottir complete their examination of how to overcome the bottleneck that costs impose on a scaleup. In this final installment, they look at how to review and govern the technology portfolio, optimize rates, and provide a general view of cost efficiency initiatives during the life-cycle of a scaleup. [Martin Fowler]
  • IxC: Infrastructure as Code, from Code, with Code - Today's cloud automation goes far beyond provisioning servers. Let's apply architecture models to the latest trends. [The Architect Elevator]
  • 23.6.0 Release Notes [Event Store blog]
  • Modernizing Legacy Systems with EventStoreDB - The Insureon Success Story - Is modernizing your legacy system a critical challenge faced by your organization? The cost and risks associated with a full rewrite often deter businesses from embracing the latest technologies. However, EventStoreDB, can help with this process by offering an incremental approach to modernizing your existing legacy systems. [Event Store blog]
  • The Swedbank Outage shows that Change Controls don't work - This week I’ve been reading through the recent judgment from the Swedish FSA on the Swedbank outage. If you’re unfamiliar with this story, Swedbank had a major outage in April 2022 that was caused by an unapproved change to their IT systems. It temporarily left nearly a million customers with incorrect balances, many of whom were unable to meet payments. After investigation, the regulator found that Swedbank had not followed their change management process and issued a SEK850M (~85M USD) fine. That’s a lot of money to you and me, but probably didn’t impact their bottom line very much. Either way I’m sure the whole episode will have been a big wake up call for the people at the bank whose job it is to ensure adequate risk and change controls. [High Scalability]
Permalink | From 14 August 2023 to 20 August 2023 | Last updated on: Mon, 22 Apr 2024 22:06:33 GMT

Week 32, year 2023

  • State Transition: Uncovering a New Data Model - Every database paradigm, past and present, has a data model with concepts that uniquely identifies it: [Event Store blog]
  • Creating an integrated business and technology strategy - My colleague Sarah Taraporewalla describes an approach to building technology strategy that challenges the convention. It starts by identifying the overall strategic directions that the organization is considering, and using common aspects of these directions to indicate the investigations needed for the organization to understand the technology implications raised by that strategic change. This first installment looks at two of these directions: expanding the business by creating complementary products, and expanding the business into new markets and regions. [Martin Fowler]
  • Starting your first PoC with an event-driven approach and Axon - Introduction Are you planning to get your first hands-on experience with a more event-driven approach to software development? Are you considering using Axon? Then this blog is meant to help you. [AxonIQ Blog]
  • Coding assistants do not replace pair programming - In her 5th memo about exploring GenAI for software development, Birgitta Böckeler answers the frequently asked question if coding assistants are making the practice of Pair Programming obsolete. Spoiler alert: They don't. [Martin Fowler]
  • First stage of reducing costs for a scaleup - When scaleups need to start working on cost efficiency, our experience is that they need to form a cost optimization team to work on the immediate steps that are needed. In this installment Sofia and Stefania describe how to understand the primary cost drivers, together with the levers to get them under control. [Martin Fowler]
  • Tech strategy for new customer segments and inorganic growth - Sarah Taraporewalla moves on to the remaining two strategic directions that are part of growing the business. Expanding into new customer segments can introduce new operational processes or channels. Inorganic growth (eg acquisitions and mergers) needs an understanding of the drivers of increased value and the long term expectation (eg merge or keep separate and divest) for the business unit. [Martin Fowler]
  • Could you help me by filling a short survey about an online course? - I realised that I could do more to help you and other folks. I’ve been sharing online content for free in the last few years on this blog… [Event-Driven by Oskar Dudycz]
Permalink | From 07 August 2023 to 13 August 2023 | Last updated on: Tue, 15 Aug 2023 14:24:14 GMT

Week 31, year 2023

  • Bottlenecks of Scaleups: Cost Efficiency - As startups begin to grow rapidly, they often find that early decisions that helped them find a product/market fit lead to excessive costs once traffic increases. These costs can threaten a scaleup's ability to grow. Sofia Tania and Stefania Stefansdottir have worked with many scaleups in this predicament and share their approach to understanding and reducing these costs. [Martin Fowler]
  • Embracing the Tech Community: Event Store's Impact at MSCC 2023 - The Mauritius Developer's Conference, held from July 20-22, proved to be an unforgettable gathering, attracting a record-breaking attendance of 1500 tech enthusiasts, industry experts, and aspiring developers. Event Store made its mark by actively engaging with attendees, sharing valuable insights on event sourcing and potential career opportunities. In this blog post, we will highlight the key moments that made Event Store's presence at the conference a notable success, showcasing our commitment to driving innovation and fostering valuable connections within the tech community. [Event Store blog]
  • Exploring Gen AI: When is in-line assistance useful? - The most widely used form of coding assistance in Thoughtworks at the moment is in-line code generation in the IDE, where an IDE extension generates suggestions for the developer as they are typing. Birgitta Böckeler looks at the factors that impact the usefulness of these suggestions, indicating where they lead to safe waters, and the rocks that we need to look out for. [Martin Fowler]
  • Did you know that EventStoreDB has a Visualize tab? [Event Store blog]
  • A case study of getting out of the costs bottleneck - Sofia and Stefania begin their examination of how to get out of the bottleneck of surging cloud costs by relating a case study from a recent client - illustrating how the cost control can be separated into reduce and sustain phases. [Martin Fowler]
  • Event sourcing is not scary - Introduction Using the wrong tools can bite you. I remember trying to drill holes in the ceiling for a light fixture using a simple cordless drill. It always took too long, and I sometimes needed the help of a hammer to finish the job. Everything changed when I got a hammer drill, making it much more manageable. But I’ll never forget the time I needed to drill a hole in a wall and didn’t check what kind of wall it was. Suddenly, I had an enormous hole in the wall from using the hammer drill. Using the proper tool for the job is vital if you want good results. [AxonIQ Blog]
  • Exploring Gen AI: how can in-line assistance get in the way? - While coding assistants like Copilot can improve speed and flow, they can also disrupt it. Birgitta Böckeler looks at two ways in which they can get in the way: amplifying bad or outdated practices, and review fatigue. [Martin Fowler]
  • A simple way to configure integration tests pipeline - Continuing an effort to explain DevOps scenarios, today I’d like to show you a simple way to set up integration tests that I’m using in my… [Event-Driven by Oskar Dudycz]
  • Application Architecture as Code - Cloud automation isn't just about infrastructure anymore. This also affects automation language design. [The Architect Elevator]
  • Did you know that EventStoreDB has a Visualize tab? [Event Store blog]
  • Embracing the Tech Community: Event Store's Impact at MSCC 2023 - The Mauritius Developer's Conference, held from July 20-22, proved to be an unforgettable gathering, attracting a record-breaking attendance of 1500 tech enthusiasts, industry experts, and aspiring developers. Event Store made its mark by actively engaging with attendees, sharing valuable insights on event sourcing and potential career opportunities. In this blog post, we will highlight the key moments that made Event Store's presence at the conference a notable success, showcasing our commitment to driving innovation and fostering valuable connections within the tech community. [Event Store blog]
  • Bottlenecks of Scaleups #04: Cost Efficiency - As startups begin to grow rapidly, they often find that early decisions that helped them find a product/market fit lead to excessive costs once traffic increases. These costs can threaten a scaleup's ability to grow. Sofia Tania and Stefania Stefansdottir have worked with many scaleups in this predicament and share their approach to understanding and reducing these costs. [Martin Fowler]
Permalink | From 31 July 2023 to 06 August 2023 | Last updated on: Tue, 22 Aug 2023 22:06:37 GMT

Week 30, year 2023

  • 5 reasons why you should embrace immutability in event sourcing - Whether you’re new to Event Sourcing or have adopted the pattern before, we’re sure you’ve heard again and again about this particular benefit: the immutability of events. [Event Store blog]
  • Bliki: TeamTopologies - Any large software effort, such as the software estate for a large company, requires a lot of people - and whenever you have a lot of people you have to figure out how to divide them into effective teams. Forming Business Capability Centric teams helps software efforts to be responsive to customers’ needs, but the range of skills required often overwhelms such teams. Team Topologies is a model for describing the organization of software development teams, developed by Matthew Skelton and Manuel Pais. It defines four forms of teams and three modes of team interactions. The model encourages healthy interactions that allow business-capability centric teams to flourish in their task of providing a steady flow of valuable software. The primary kind of team in this framework is the stream-aligned team, a Business Capability Centric team that is responsible for software for a single business capability. [Martin Fowler]
  • Bliki: TwoPizzaTeam - A two-pizza team is a small team that fully supports software for a particular business capability. The term became popular as it used to describe how Amazon organized their software staff. The name suggests the most obvious aspect of such teams, their size. The name comes from the principle that the team should no larger than can be fed with two pizzas. (Although we are talking about American Pizzas here, which seemed alarmingly huge when I first encountered them over here. ) Keeping a team small keeps it cohesive, forming tight working relationships. [Martin Fowler]
  • Exploring Gen AI - The toolchain - My colleague Birgitta Böckeler has long been one of our senior technology leaders in Germany. She's now moved into a new role coordinating our work with Generative AI and its effect of software delivery practices. She's decided to publish her exploration in a series of memos. The first memo looks at the current toolchain for LLMs, categorizing them by what tasks they help with, how we interact with the LLM, and where they come from. [Martin Fowler]
  • Exploring Gen AI - Three versions of a median - Birgitta Böckeler continues her explorations in using LLMs, this time by asking GitHub Copilot to write a median function. It gave her three suggestions to choose from. The experience shows you still have to know what you're doing when asking LLMs to write code, since the LLM's programming skills are often rather flawed. [Martin Fowler]
  • How to scale out Marten - If you are already a reader of this blog, you probably know already that I’m not so fond of the Will it scale? question. I believe that, too… [Event-Driven by Oskar Dudycz]
  • 5 reasons why you should embrace immutability in event sourcing - Whether you’re new to Event Sourcing or have adopted the pattern before, we’re sure you’ve heard again and again about this particular benefit: the immutability of events. [Event Store blog]
Permalink | From 24 July 2023 to 30 July 2023 | Last updated on: Wed, 9 Aug 2023 06:06:35 GMT

Week 29, year 2023

  • Decentralizing the Practice of Architecture at Xapo Bank - It's common to see a centralized architecture function that sets standards and oversees development projects. Such teams often suffer from being far removed from the issues of implementation with long feedback loops that slow down the flow of work. To counter these problems, many organizations have explored a decentralized approach to yield alignment between teams without these problems. One such organization is Xapo bank, which did this using ideas taken from Domain-Driven Design, Team Topologies, and the Architectural Advice Process. [Martin Fowler]
  • Unleashing AI/ML potential with EventStoreDB - “How does EventStoreDB work with Artificial Intelligence?” is a question that’s increasingly asked by industry analysts, investors and customers alike. [Event Store blog]
  • How platform teams get stuff done - Platform teams have a unique reliance on other teams to ensure adoption of their platform - getting code changes into other teams' codebase is critical to their success. Pete Hodgson structures how platform teams collaborate into phases of migration, consumption, and evolution. He describes what's different in each of these phases, the operating models to adopt, and which cross-team collaboration patterns work best. [Martin Fowler]
  • How to set global setting for XUnit tests - XUnit is not my favourite testing tool; I already mentioned that in How to set up a test matrix in XUnit?. To be fair, none of the .NET test… [Event-Driven by Oskar Dudycz]
  • Cloud Automation à la DDD: From stringly typed to affordances - Domain-driven design very much applies to technical domains. Let's try it on event-driven cloud systems to see why I am such a big fan of object-oriented automation languages. [The Architect Elevator]
  • Unleashing AI/ML potential with EventStoreDB - “How does EventStoreDB work with Artificial Intelligence?” is a question that’s increasingly asked by industry analysts, investors and customers alike. [Event Store blog]
Permalink | From 17 July 2023 to 23 July 2023 | Last updated on: Wed, 9 Aug 2023 06:06:35 GMT