Psychology of code readability

https://medium.com/@egonelbre/psychology-of-code-readability-d23b1ff1258a – we remember 4+/-1 item in our short memory, then they fade away. – in our brain facts/knowledge pieces are grouped, chunked and CHUNKS are linked. – we process input with our focus/locus of attention (one thing at the same time in the same space) – focus/locus is called CONTEXT – MENTAL MODEL is […]

Continue reading


 Specification Pattern – Essentials

Specification pattern is DDD specific way for building blocks of business logic on top of domain entities. They are defined as predicates/filters for entities. They can be combined in more complex logic. You can benefit from implementation specifics as some technologies provide many enhancements.   To correctly define specification pattern and find an applicable area […]

Continue reading


 Covariance

Covariance & Contravariance are one of the most confusing terms in C#, no surprise it’s very popular for geeky questions in job interviews. Any time someone mentions those terms, it takes quite a while to refresh my knowledge about it. So, I decided to write a couple posts explaining them in the simplest and shortest […]

Continue reading


 SOLID – Single Responsibility

Def. A class should have only a single responsibility. “S” in SOLID acronym stands for Single Responsibility Principle. The definition seems quite obvious, intuitive and simple. But it’s not. Let’s clarify it. In order to proceed, I will introduce 2 new terms: Business Responsibility is business requirement, functionality that describe public class’ interface. It usually comes from client’s […]

Continue reading