Week 11, year 2024

  • Measuring Developer Productivity via Humans - Measuring developer productivity is a difficult challenge. Conventional metrics focused on development cycle time and throughput are limited, and there aren't obvious answers for where else to turn. Qualitative metrics offer a powerful way to measure and understand developer productivity using data derived from developers themselves. Abi Noda and Tim Cochran begin their discussion by explaining what a qualitative metric is and why we shouldn't reject them for being subjective or unreliable. [Martin Fowler]
  • The Benefits of Qualitative Metrics - Abi Noda and Tim Cochran continue their discussion on using qualitative metrics to assess the productivity of development teams. In this installment they classify qualitative metrics into attitudinal and behavioral metrics. We also see that qualitative metrics allow you to measure things that are otherwise unmeasurable, provide missing visibility, and supply necessary context for quantitative data. [Martin Fowler]
  • Code samples for the opening chapter of Refactoring - From time to time people ask me for a copy of the code I used in the opening chapter of Refactoring, so they can follow along themselves. I had Reasons for not providing this code, specifically laziness. Fortunately Emily Bache is more dedicated, and she has set up a github repository - the Theatrical Players Refactoring Kata - with the code, and enough tests to make it reasonable to do the refactoring. The repository goes further than this, however, in that it includes similar sample code in a dozen languages, including C, Java, Rust, and Python. She has recently posted a video to her YouTube channel, which outlines why she encourages folks to use this code while they are reading that chapter. Her channel includes a lot of videos on good code technique, and she has a Patreon for readers to support her work. [Martin Fowler]
  • Join my Event Sourcing workshops at Techorama and DDD Europe and speed up your journey! - Event Sourcing is a pattern that is quickly gaining popularity. Many companies see the advantages it brings, e.g. business focus and keeping… [Event-Driven by Oskar Dudycz]
Permalink | From 11 March 2024 to 17 March 2024 | Last updated on: Sun, 17 Mar 2024 22:06:34 GMT

Week 10, year 2024

  • Patterns of Legacy Displacement: Event Interception - When we gradually replace a legacy system, we have plenty of cases where the legacy system and its replacement need to interact. Since these legacy systems are often difficult, and costly, to change, we need a mechanism that can integrate elements of the replacement while minimizing the impact to the legacy system. Ian Cartwright, Rob Horn, and James Lewis explain how we can use Event Interception on state-changing events, allowing us to forward them to the replacement. [Martin Fowler]
  • Expert Talk, Swag, Meet-Up | Event Store at QCon London - Event Store is excited to be joining this year's QCon London as a gold sponsor, taking place from 8th - 10th April. [Event Store blog]
  • Event Store's Explore DDD Meetup | Friday March 15th, 7pm - Excitement is in the air as we gear up for Explore DDD next week! This event brings together a diverse international community of industry experts, developers, software architects, and business leaders. Don't miss the opportunity to catch Event Store's very own Erik Shafer speaking on 'Ecommerce with DDD and Event Sourcing'. And be sure to join us for a special meet-up where you can enjoy free drinks, nibbles, and even a friendly game of pool! [Event Store blog]
  • What if we rotate pairs every day? - When pair programming, it's important to rotate the pairs frequently, but many organizations that do pair programming are reluctant to do that. Gabriel Robaina and Kieran Murphy ask the question: “What if we rotate pairs every day?” and worked with three teams through an exercise of daily pair rotation. They developed a lightweight methodology to help teams reflect on the benefits and challenges of pairing and how to solve them. Initial fears were overcome and teams discovered the benefits of frequently rotating pairs. They learned that pair swapping frequently greatly enhances the benefits of pairing. Their article shares the methodology they developed, their observations, and some common fears and insights shared by the participating team members. [Martin Fowler]
  • EventStoreDB 24.2 released - Today, we are excited to announce that the EventStoreDB 24.2 Release is here. This release is a significant update that introduces a suite of innovative features and enhancements designed to elevate the performance, security, and scalability of your event-native applications. The highlights below represent just the beginning of what EventStoreDB 24.2 offers. Read on to uncover the details of these features and more. [Event Store blog]
  • How to tackle compatibility issues in ECMA Script modules (and in general) - Do you recall moments when you’re sitting and closing dozens or more browser tabs? Most of them are Google, GitHub, Blogs, and others. You… [Event-Driven by Oskar Dudycz]
  • How to Fix a Bug: Tests, Hypotheses, Timeboxes - Here’s roughly how I fixed bugs early on in my career: Browse around in the code. Try stuff. See if it works. Below is my preferred way of doing it since about 2012: Step 1. Pair / Ensemble Find one or more people to collaborate with. Linus’ Law “Given enough eyeballs, all bugs are shallow” was formulated at least 25 years ago, and yet we do so much work in isolation. [Mathias Verraes]
Permalink | From 04 March 2024 to 10 March 2024 | Last updated on: Sun, 10 Mar 2024 14:06:31 GMT

Week 9, year 2024

  • Bliki: Periodic Face-to-Face - Improvements in communications technology have led an increasing number of teams that work in a Remote-First style, a trend that was boosted by the forced isolation of Covid-19 pandemic. But a team that operates remotely still benefits from face-to-face gatherings, and should do them every few months. Remote-first teams have everyone in a separate location, communicating entirely by email, chat, video and other communication tools. It has definite benefits: people can be recruited to the team from all over the world, and we can involve people with care-giving responsibilities. Wasteful hours of frustrating commutes can be turned into productive or recuperative time. But however capable folks may be at remote working, and however nifty modern collaboration tools become, there is still nothing like being in the same place with the other members of a team. [Martin Fowler]
  • Keeping our overachieving freak on a leash - Being busy is not something we strive for; it’s an axiom. Social media are not helping; our whole lives are on the plate. And we’re chefs… [Event-Driven by Oskar Dudycz]
Permalink | From 26 February 2024 to 03 March 2024 | Last updated on: Fri, 1 Mar 2024 14:06:34 GMT

Week 8, year 2024

Permalink | From 19 February 2024 to 25 February 2024 | Last updated on: Mon, 26 Feb 2024 14:06:33 GMT

Week 7, year 2024

Permalink | From 12 February 2024 to 18 February 2024 | Last updated on: Sat, 17 Feb 2024 14:06:33 GMT

Week 6, year 2024

  • CQRS: Dispelling the Myths - Command Query Responsibility Segregation (CQRS) is a design pattern that has gained popularity for its ability to enhance the scalability and maintainability of systems. However, like any powerful tool, CQRS is surrounded by several misconceptions that can lead to confusion and misimplementation. In this blog, let’s provide clarity on these misunderstood aspects. [Event Store blog]
  • Introducing AxonIQ Console: powering event-driven applications - It's time to celebrate! AxonIQ Console has now been released, revolutionizing the management and control of your event-driven applications built with Axon Framework. It offers a unified platform for monitoring, reporting, and seamless integration with your Axon Server environment. [AxonIQ Blog]
  • AutoMapper 13.0 Released - Today I pushed out AutoMapper 13.0 (is that too many...?): Release Notes Changelog NuGet Upgrade Guide Probably the biggest change with this release is folding in Microsoft.Extensions.DependencyInjection support directly. The AutoMapper.Extensions.Microsoft.DependencyInjection package is deprecated as a result. Side note, the docs were messed up [Jimmy Bogard]
  • Upcoming Training on Modern .NET with Vertical Slice Architecture - Something new I'm starting this year is a two-day course on Modern .NET systems with Vertical Slice Architecture. It contains a lot of topics that I've consulted with organizations and built systems around for around over a decade now, and I wanted to wrap my learnings [Jimmy Bogard]
  • Introducing the AxonIQ Technical Advisory Board - Introduction Every developer creates software for someone. Whether it's your boss, a client, or even yourself, the end-user's satisfaction is paramount. And hey, let's not forget about your dear old grandmother, who might need your help too! [AxonIQ Blog]
  • Announcing Emmett! Take your event-driven applications back to the future! - Simple is not easy. Each person has its definition of it. For me, it means that when I look at the solution, I think: “So simple. Why didn’t… [Event-Driven by Oskar Dudycz]
Permalink | From 05 February 2024 to 11 February 2024 | Last updated on: Thu, 2 May 2024 22:06:34 GMT

Week 5, year 2024

  • Tales from the .NET Migration Trenches - Hangfire - Posts in this series: Intro Cataloging Empty Proxy Shared Library Our First Controller Migrating Initial Business Logic Our First Views Session State Hangfire Authentication In the last post, we encountered our first instance of shared runtime data between our different ASP.NET 4.8 and ASP.NET Core applications, in [Jimmy Bogard]
  • Onboarding bottleneck: more steps for good onboarding - Tim and Prem continue outlining the steps for an effective onboarding process. They talk about including new hires in the company culture, nailing the post-offer and first-day experience, and investing in self-service knowledge management [Martin Fowler]
  • AxonIQ Academy: Learning for event-driven architecture - Introduction Two years ago, AxonIQ launched AxonIQ Academy to make Event Sourcing within event-driven architecture more accessible to developers. The academy begins with a brief explanation of how Domain-Driven Design (DDD), Command Query Responsibility Separation (CQRS), and Event Sourcing (ES) can help build applications that can be better prepared to scale in a distributed architecture. Now, we're customizing the learning experience to make it even easier for developers to navigate this journey. [AxonIQ Blog]
  • Onboarding bottleneck: final installment - Tim and Prem finish their article on effective onboarding. They discuss the value of pair programming, setting up personal environments, and removing friction from the process. [Martin Fowler]
  • Production-Grade Event Sourcing Workshop - Modelling, DevOps, Process - Putting the career bets is not easy; I made boring and pragmatic choices for most of my career. They took me far. Yet, I always felt that… [Event-Driven by Oskar Dudycz]
Permalink | From 29 January 2024 to 04 February 2024 | Last updated on: Thu, 2 May 2024 22:06:34 GMT