Archive for February 2023

Week 9, year 2023

Permalink | From 27 February 2023 to 05 March 2023 | Last updated on: Sun, 5 Mar 2023 20:36:50 GMT

Week 8, year 2023

  • Consistent hashing algorithm - This is a guest article by NK. You can view the original article Consistent hashing explained on systemdesign.one website. How does consistent hashing work? At a high level, consistent hashing performs the following operations: The output of the hash function is placed on a virtual ring structure (known as the hash ring) The hashed IP addresses of the nodes are used to assign a position for the nodes on the hash ring The key of a data object is hashed using the same hash function to find the position of the key on the hash ring The hash ring is traversed in the clockwise direction starting from the position of the key until a node is found The data object is stored or retrieved from the node that was found Terminology [High Scalability]
  • Don't let Event-Driven Architecture buzzwords fool you - I see a lot of new terms like Command-Event, Event-Based Compute, etc., presented around Event-Driven Architecture. Let me clear that up… [Event-Driven by Oskar Dudycz]
Permalink | From 20 February 2023 to 26 February 2023 | Last updated on: Sun, 26 Feb 2023 12:36:53 GMT

Week 7, year 2023

  • Evaluating the Differences Between EventStoreDB and Event Store Cloud - Whether you work for a start-up or a large corporate company, you need a reliable operational database to store and organize essential data, whilst improving your customer experience. [Event Store blog]
  • A new database technology transforming the fintech industry - As a software architect or developer in the financial industry, you're always on the lookout for new technology that can improve how your organization handles data. And every five or so years, there are new developments in database technology—consider the impact and benefits of relational databases, and hierarchical, graph, and document models. At Event Store, we recently analyzed our top fintech clients overwhelmed by the minefield of database options. [Event Store blog]
  • MediatR 12.0 Released - This is a pretty big release, with a number of breaking changes. Release Notes Migration Guide Breaking changes include: Depending directly on IServiceProvider to resolve services Making "void" request handlers return Task instead of Unit IRequest does not inherit IRequest<Unit> instead IBaseRequest Consolidating the MediatR.Extensions.Microsoft. [Jimmy Bogard]
  • I made everything loosely coupled. Will my cloud bill go up? - Loose coupling is an essential property of fine-grained, event-driven systems. However, cloud resources that decouple event producers and consumers incur a run-time cost. How to weigh the trade-offs? [The Architect Elevator]
  • Retrospectives Antipatterns - Retrospectives are a key element for effective software initiatives, as they allow a team to learn and improve. However, like any good practice, it's easy for teams to make mistakes that undermine their value. Aino Corry has many years facilitating retrospectives and has run into many common problems and how to solve them. Three of these skipping generating insights, getting lost in things you can't change, and being dominated by a loudmouth. [Martin Fowler]
  • Software Design for Startups and Scaleups - Software Captains is a organisation that helps startup CTOs through coaching, advice, and networking. In the interview, the founder Tom Klaassen and I discuss software design. We talk about challenges CTOs face, such making technical debt visible for non-technical colleagues, about how software quality is contextual, but still very important even for early stage startups. The podcast was recorded in Dutch. On YouTube, you can turn on captions and set the autogenerated translation to your language of choice. Or listen here: Spotify Apple Amazon Deezer Libsyn References: Design & Reality book Source [Mathias Verraes]
  • 22.10.1 Release Notes - We are pleased to announce the official patch release of EventStoreDB OSS & Commercial version 22.10.1 LTS. This is a patch to the 22.10 LTS release, which will be supported until October 2024. Read more about our versioning strategy here. [Event Store blog]
  • Modularizing React Applications: fixing Shotgun Surgery - Juntao Qiu completes his article on modularizing react applications by identifying that the last change smelled of Shotgun Surgery and taking the steps to fix it. [Martin Fowler]
  • Modularizing React Applications: adding a new feature - Juntao Qiu now demonstrates how the refactored structure helps him deal with adding a charitable donation to the order and how this change prompts some further refactorings. [Martin Fowler]
  • Event Sourcing: a better way to audit - Does your operational database (relational, NoSQL, graph, document, etc) solve the auditing requirements you have today? [Event Store blog]
  • Shaky Twitter Two-Factor Authentication Interaction - Accessing Twitter this morning, I was greeted with a prompt saying that they were getting rid of text messages as a form of two-factor authentication unless you subscribed to Twitter Blue. I thought “fine”, because I don’t use text messages for that, preferring a one-time code managed by 1Password. I clicked through and it told me it had removed the text message two-factor that I didn’t have, and would I like to set up something using a one-time code or hardware dongle? It seems that Twitter had mistakenly deleted my one-time code link. I don’t think this is a huge deal, as I just set up another one-time code. But it’s the sort of thing that reinforces the impression that bits are steadily falling off Twitter. Whatever anyone thinks of this, I do urge readers to use two-factor authentication on any important service. [Martin Fowler]
  • Set up OpenTelemetry with Event Sourcing and Marten - If I had to select the Distributed Systems Song, I’d choose Land of Confusion. This is the world we live in. And these are the hands we’re… [Event-Driven by Oskar Dudycz]
  • 20 year old books every architect should read - Book lists are pretty popular these days. But how about some classics? If architecture is timeless, so should be the books about it. [The Architect Elevator]
  • Open source wins by having as better programming model - Many projects tout portability but it's productivity that they really offer. Why not say so? [The Architect Elevator]
  • Fast forward that movie - Architects aren't clairvoyants But occasionally they can be a very useful FF button. [The Architect Elevator]
  • MediatR 12.0 Released - This is a pretty big release, with a number of breaking changes. Release Notes Migration Guide Breaking changes include: Depending directly on IServiceProvider to resolve services Making "void" request handlers return Task instead of Unit IRequest does not inherit IRequest<Unit> instead IBaseRequest Consolidating the MediatR. [Jimmy Bogard]
Permalink | From 13 February 2023 to 19 February 2023 | Last updated on: Mon, 7 Aug 2023 22:06:33 GMT

Week 6, year 2023

  • The Power of Real-Time Data: Revolutionize Your Business with EventStoreDB - In today's fast-paced business environment, the ability to make informed decisions quickly and accurately is critical to success. Real-time data processing provides organizations with the ability to analyze and respond to changes as they happen, offering a level of responsiveness and agility that was previously impossible. With real-time data, organizations can enhance customer satisfaction, stay ahead of the competition, and improve overall efficiency and effectiveness. [Event Store blog]
  • Modularizing React Applications with Established UI Patterns - I've been working in front-end software for over three decades. A perennial problem has been mixing non-UI logic into the UI framework itself, leading to code that's both hard to understand and near-impossible to test. Despite being the hot new thing, React is just as vulnerable to this problem as Swing and Turbo Pascal. My colleague Juntao Qiu writes about how to untangle such a mess. In this first part he gives an overview of how a React application can evolve into a better modular structure. Later parts will dig into a small, but representative example. [Martin Fowler]
  • An example of modularizing a React application - Juntao Qiu illuminates his general description of modularizing a React application with a small example of presenting a user a dynamic set of choices. [Martin Fowler]
  • Comparing Engagement on Twitter and the Fediverse - My colleague Julien Deswaef recently compared engagement data for my Twitter and Mastodon posts. From this we can see that boosts and comments are very similar. Twitter does get significantly more likes, but considering I have nearly 20 times more Twitter followers than Mastodon, it’s a remarkably small difference. [Martin Fowler]
  • 2023 Trends in Data Engineering - As every developer knows, data sent to data lakes regularly changes meaning over time—fields merge and separate, codes are added, and so on. Yet, data engineering trends increasingly demand operational historical data, leaving data teams with a heavy load of backtracking and downstream data drifting struggles. But what if data was automatically stored at its origin? And each change of state was kept in a stream? [Event Store blog]
  • Event-driven projections in Marten explained - Projections are a neverending story. One does not simply write a single guide. One needs to write more examples of more advanced cases. That… [Event-Driven by Oskar Dudycz]
Permalink | From 06 February 2023 to 12 February 2023 | Last updated on: Sun, 12 Feb 2023 12:36:55 GMT