Archive for June 2016

Week 26, year 2016

  • DDD Weekly: Issue #1 - Domain-Driven Security: Dan Bergh Johnsson & Daniel Deogun. In which a user was able to enter a -1 into a checkout form and the system issued a credit to “Joe Tester”… and then a spiral into SQL injection, cross-site scripting, etc. and how the benefits of DDD and hexagonal architecture are just as applicable to security. Aggregate Root - How to Build One for CQRS and Event Sourcing: Daniel Whittaker. Daniel walks us through Greg Young’s definition of an Aggregate Root that is designed for Event Sourcing. [DDD Weekly]
Permalink | From 27 June 2016 to 03 July 2016 | Last updated on: Mon, 7 Jun 2021 09:10:50 GMT

Week 25, year 2016

  • What’s going on here? - Question: What is more exasperating than reading design documentation that doesn’t synch up with the code? One answer: Writing such useless design documentation. Another answer: Writing documents that don’t stand a chance of being aligned with the code. My answer: … Continue reading → [The Responsible Designer]
  • Welcome! - Just starting out with Domain Driven Design? You’re just getting into Domain Driven Design (DDD), Command Query Responsibility Separation (CQRS), and Event Sourcing (ES) and most of the overall principles are clear… but as soon as you start using them in your own domain - everything becomes a decision-making nightmare… You start having conceptual problems modeling your application. Your model starts to get polluted. You don’t know if your Aggregates are reasonable. [DDD Weekly]
  • C# functional extensions NuGet library - I’ve created a NuGet package out of the functional extensions I wrote about in this post series and in my Pluralsight course. C# functional extensions NuGet library Thanks to one of the listeners of my Functional C# course, I finally made a separate NuGet package which is based on the Result class I wrote about awhile ago. The package contains the following classes: Result ResultExtensions [Enterprise Craftsmanship]
  • Pragmatic integration testing - The topic described in this article is part of my Unit Testing Pluralsight course. When trying to break down unit testing, the bigger picture stays incomplete if you overlook the subject of integration testing. In this post, we’ll discuss how to make the most out of your integration tests with pragmatic integration testing. Integration tests are tests that, unlike unit tests, work with some of the volatile dependencies directly (usually with the database and the file system). [Enterprise Craftsmanship]
Permalink | From 20 June 2016 to 26 June 2016 | Last updated on: Mon, 7 Jun 2021 09:11:14 GMT

Week 24, year 2016

  • Pragmatic unit testing - The topic described in this article is part of my Unit Testing Pluralsight course. This post is about pragmatic unit testing: how to get the most out of your unit test suite. Pragmatic unit testing: black-box vs white-box Pragmatic unit testing is about investing only in the tests that yield the biggest return on your effort. In the previous posts, we discussed what traits a valuable test possess (high chance of catching a regression, low chance of producing a false positive, fast feedback) and how various styles of unit testing (functional, state verification, collaboration verification) differ in terms of their value proposition. [Enterprise Craftsmanship]
Permalink | From 13 June 2016 to 19 June 2016 | Last updated on: Mon, 7 Jun 2021 09:11:14 GMT

Week 23, year 2016

  • Being Agile About Documenting and Communicating Architecture - Software architects and developers often need to defend, critique, define, or explain many different aspects of the design a complex system. Yet agile teams favor direct communications over documentation. Do we still need to document our designs? Of course we … Continue reading → [The Responsible Designer]
  • Styles of unit testing - The topic described in this article is part of my Unit Testing Pluralsight course. In this post, I’ll describe different styles of unit testing and compare them in terms of their value proposition. Styles of unit testing and their value proposition There are 3 major styles of unit testing. The first one is functional, where you feed an input to the system under test (SUT) and check what output it produces: [Enterprise Craftsmanship]
  • Database Delivery Best Practices Pluralsight course - My new course Database Delivery Best Practices for Pluralsight went live. Database Delivery Best Practices Database delivery is still something many programmers struggle with. It’s not always clear how to deal with the database schema differences in different environments, how to resolve merge conflicts that inevitably arise when more than one programmer works with the DB, how to make sure you don’t break the other teams' applications when you refactor the database structure and so on. [Enterprise Craftsmanship]
Permalink | From 06 June 2016 to 12 June 2016 | Last updated on: Mon, 7 Jun 2021 09:11:14 GMT