Comparing Change Logs and Event Sourcing: Choosing the Right Approach for Your System

Introduction In the ever-evolving landscape of software development, tracking changes to data is a fundamental requirement. Whether for auditing, debugging, compliance, or analytics, maintaining a history of changes enhances transparency and accountability within a system. Two prevalent approaches to capturing these changes are storing a change log and using event sourcing. While they share common goals, they differ significantly in implementation and suitability depending on the system’s needs. This blog post delves into the similarities and differences between change logs and event sourcing, assesses their applicability through practical examples, and provides guidance on choosing the right approach for your system....

October 1, 2024 · 7 min · Kia Raad

Navigating the Unknown: How to approach a new and unfamiliar codebase

If you’re anything like me, diving into a new and unfamiliar codebase can feel like being dropped into a dense forest without a map. Whether you’re joining a new team, taking over a project, or just exploring an open-source project, understanding its nature, purpose, and architecture is essential. Let me share how I tackle this challenge, while giving examples using C# and .NET projects. Lets dive into the process… Initial Assessment Before I dive headfirst into the code, I take a moment to understand the broader context....

August 8, 2024 · 5 min · Kia Raad

Becoming a Solutions Architect

The professional path of a Software Solutions Architect I’ve been working in software for more than 12 years now. I’ve been doing help desk stuff, database management, IT work, networking, low-level and high-level programming, hacking and penetration testing and everything in between. All these experiences and upportunities that I have had, helped me becoming me more well-rounded engineer which is a cruitial attribute to have if one wantes to embark on the mission to becoming an architect, specially a Solutions Architect....

July 14, 2024 · 7 min · Kia Raad

Genesis

It’s customary to write a Hello World! app when one starts to familiarize oneself with a new language / framework. So I’ll start my journy with the same approach in the most famous esolang, AKA brainfuck. -[------->+<]>+++.-[--->++++<]>+.[--->+<]>---.[---->+<]>+++.---[->++++<]>.------------.---.--[--->+<]>-.[->+++<]>++.++++++++++.+++.--------..++.+++++.-------.-[--->+<]>--.[->+++<]>++.+++.++.++.+++++.>++++++++++..[->+++<]>+.--[-->+++<]>.[--->++<]>++.--[-->+++++<]>.-----[-->+++<]>.--------. Oh BTW, you can find the output here.

January 3, 2020 · 1 min · Kia Raad