Latest posts

2020-07-21 – Views / Templates
2020-07-07 – Value Objects
2020-06-23 – DTO – Data Transfer Objects
2019-08-12 – 20. Documenting Software Architecture
2019-06-05 – 19. Explicit Architecture #03: Reflecting architecture and domain in code
2019-04-29 – 16. No silver bullet

Top posts

2017-11-16 – 17. Explicit Architecture #01: DDD, Hexagonal, Onion, Clean, CQRS, … How I put it all together
2018-07-07 – 18. Explicit Architecture #02: More than concentric layers
2017-01-26 – Microservices architecture: What the gurus say about it
2015-11-01 – Teams: building, managing, leading, performing

Unclassified pages

  • Dev curricula
    A list of resources about software development, from basic to advanced levels.

Unclassified posts

2017-02-08 – DDD Europe 2017: The 3 talks I most enjoyed
2017-01-26 – Microservices architecture: What the gurus say about it
2015-11-01 – Teams: building, managing, leading, performing

Post series

Dev rules of thumb

This series of posts is a collection of rules of thumb I use when developing software. Each post contains an explanation of those rules for a specific subject, and a poster with the rules of thumb (both as an image and as a PDF) which you can print and scatter around your office. However, please remember, a dev rule of thumb is a Principle with broad application that is not intended to be strictly accurate or reliable for every situation.

2020-06-23 – DTO – Data Transfer Objects
2020-07-07 – Value Objects
2020-07-21 – Views / Templates

The Software Architecture Chronicles

This is a series of posts about Software Architecture. In them, I write about what I’ve learned on Software Architecture, how I think of it, and how I use that knowledge.

2017-07-03 – 1. The Software Architecture Chronicles
2017-07-05 – 2. Software Architecture Premises
2017-07-10 – 3. Programming Language evolution
2017-07-28 – 4. Architectural Styles vs. Architectural Patterns vs. Design Patterns
2017-07-31 – 5. Monolithic Architecture
2017-08-03 – 6. Layered Architecture
2017-08-17 – 7. MVC and its alternatives:
. . 2017-08-17 – 1. 1979 – Model-View-Controller
. . 2017-08-17 – 2. 1987/2000 – PAC / Hierarchical Model-View-Controller
. . 2017-08-17 – 3. 1996 – Model-View-Presenter
. . 2017-08-29 – 4. 1998 – ”Model 1″ & “Model 2”
. . 2017-08-17 – 5. 2005 – Model-View-ViewModel
. . 2017-08-17 – 6. ???? – Model-View-Presenter-ViewModel
. . 2017-08-31 – 7. 2008 – Resource-Method-Representation
. . 2018-09-03 – 8. 2014 – Action-Domain-Responder
2017-08-24 – 8. EBI Architecture
2017-08-31 – 9. Packaging & namespacing
2017-09-07 – 10. Domain-Driven Design
2017-09-14 – 11. Ports & Adapters Architecture (aka Hexagonal Architecture)
2017-09-21 – 12. Onion Architecture
2017-09-28 – 13. Clean Architecture
2017-10-05 – 14. Event-Driven Architecture
2017-10-19 – 15. From CQS to CQRS
2017-11-09 – 16. Service Oriented Architecture (SOA)
2017-11-16 – 17. Explicit Architecture #01: DDD, Hexagonal, Onion, Clean, CQRS, … How I put it all together
2018-07-07 – 18. Explicit Architecture #02: More than concentric layers
2019-06-05 – 19. Explicit Architecture #03: Reflecting architecture and domain in code
2019-08-12 – 20. Documenting Software Architecture

The Containerization Chronicles

2018-04-02 – 1. The Containerization Chronicles
2018-07-07 – 2. Cleaning up the demo project
2018-07-07 – 3. Containerize development
2018-07-07 – 4. Continuous Integration with containers (using Scrutinizer)
2018-07-07 – 5. Integration with CodeCov
2018-06-15 – 6. Deployments with containers (using Heroku)

Lecture distillations

2018-08-27 – TDD, Where Did It All Go Wrong
2015-10-11 – The Dev0ps role and the company culture
2015-09-27 – Expecting professionalism
2015-09-22 – The responsibility of knowing
2015-09-20 – Clean Code I: Arguments

Book distillations

Domain Driven Design

Author: Eric Evans

2015-09-07 – DDD.1 – Crunching knowledge
2015-09-12 – DDD.2 – Communication and the use of language
2015-09-16 – DDD.3 – Binding model and implementation
2015-09-18 – DDD.4 – Isolating the domain
2015-09-29 – DDD.5 – A model expressed in software
2015-10-04 – DDD.6 – The lifecycle of a domain object
2015-10-15 – DDD.7 – Using the language
2015-10-19 – DDD.8 – Refactoring toward deeper insight / Breakthrough
2015-12-02 – DDD.9 – Making implicit concepts explicit
2015-12-07 – DDD.10 – Supple Design
2015-12-22 – DDD.11 – Applying Analysis Patterns
2015-12-24 – DDD.12 – Relating Design Patterns to the Model
2015-12-28 – DDD.13 – Refactoring toward deeper insight
2015-12-31 – DDD.IV – STRATEGIC DESIGN
2016-02-05 – DDD.14 – Maintaining model integrity
2016-05-09 – DDD.15 – Distillation
2016-06-13 – DDD.16 – Large-scale structure
2016-06-20 – DDD.17 – Bringing the strategy together

Lean Architecture

Author: James Coplien and Gertrud Bjornvig

2016-12-23 – Lean Architecture
2017-01-02 – Agile Production in a Nutshell
2017-01-09 – Stakeholder engagement: The value stream
2017-01-16 – Stakeholder engagement: The end-users
2017-01-23 – Stakeholder engagement: The business, customers and domain experts
2017-01-30 – Stakeholder engagement: the process
2017-02-13 – Stakeholder engagement: Trimming wasted time
2017-02-20 – Problem definition
2017-02-27 – What is Lean and Agile about Software Architecture
2017-03-06 – Architecture 1st design step: Partitioning

Patterns of Enterprise Application Architecture

Author: Martin Fowler

2016-06-27 – PEAA.1 – Layering
2016-07-04 – PEAA.2 – Organizing Domain Logic
2016-07-11 – PEAA.3 – Mapping to relational DBs
2016-07-18 – PEAA.4 – Web Presentation
2016-07-25 – PEAA.5 – Concurrency
2016-08-01 – PEAA.6 – Session state
2016-08-03 – PEAA.7 – Distribution strategies
2016-08-08 – PEAA.8 – Putting it all together
2016-08-10 – PEAA – Part 2 – The patterns

Patterns Principles and Practices of Domain-Driven Design

Authors: Scott Millett and Nick Tune

2016-08-15 – PPPDDD.1 – What is Domain Driven Design?
2016-08-22 – PPPDDD.2 – Distilling the Problem Domain
2016-10-03 – PPPDDD.3 – Focusing on the Core Domain

The mythical man-month

Author: Frederick P. Brooks

2018-09-05 – 1. The tar pit
2018-09-07 – 2. The mythical man-month
2018-09-10 – 3. The surgical team
2018-09-12 – 4. Aristocracy, democracy and system design
2018-09-14 – 5. The second system effect
2018-09-17 – 6. Passing the word
2018-09-19 – 7. Why did the Tower of Babel fail
2018-09-21 – 8. Calling the shot
2018-11-05 – 9. Ten Pounds in a Five-Pound Sack
2018-11-12 – 10. The Documentary Hypothesis
2018-11-19 – 11. Plan to Throw One Away
2019-03-04 – 12. Sharp tools
2019-03-18 – 13. The whole and the parts
2019-04-01 – 14. Hatching a catastrophe
2019-04-15 – 15. The other face
2019-04-29 – 16. No silver bullet