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 […]
https://reactiveui.net/ https://github.com/reactivex http://introtorx.com https://channel9.msdn.com/Shows/XamarinShow/Lifting-App-State-with-Geoffrey-Huntley ReactiveUI – world where Observable is the king
Use code analyzers in C# to improve code quality https://www.sonarlint.org/visualstudio/ https://www.nuget.org/packages/SonarAnalyzer.CSharp/
Design pattern – how to use them? 1. Remember the pattern category (creational, behavioral, structural) 1. Create simple, single sentence pattern explanation 2. Associate simple use case with previous explanation Whoila! You have a design patterns toolbox!
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 […]
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 of posts explaining them in the simplest and […]
We all know how painful it is to write unit tests and mock static code. So far, Microsoft Fakes was framework that did job perfectly, but I really don’t like re-written assemblies. They can make really painful obstacles to build automation – some frameworks like TeamCity have a big hard time building project with unit […]
SOLID is an acronym formed from the most basic, yet very important principles in OOP, defined by Robert C. Martin, back in 2000: 1. Single Responsibility 2. Open/Closed 3. Liskov Substitution 4. Interface Segregation 5. Dependency Inversion What I love about these principles are 2 things: Simple to understand and remember. They are compact, very concrete, […]