small blog with book reviews,
thoughts about programming
Directive for tracking outside click in angular 5.
Let's say we use angular 5 or greater and we want to track clicks outside of specific elements. And even more. Sometimes we need to track outside clicks which happened only on specific area.
Setting up gogs with nginx in docker containers
I looked for analogues for gitlab because of some issues which I experienced while managing my git repos with it.
I stopped on gogs because it is more lightweight and works much faster comparing to gitlab-ce.
Here is a short note of how to get dockerized gogs running.
Transform nested objects with mongoose
Mongoose does not have a possibility to configure your schema to transform nested arrays of objects. In this post we will look at a possible workaround for this.
E-Type, P-Type, S-Type systems
In 1970s Manny Lehman a set of Lehman's laws of software evolution. These laws only apply to a certain type of systems so he divided the systems into three categories:
- P-type, and
- S-type systems
Primitive obsession explanation
Let's talk about primitive obsession. So primitive obsession is when you are using primitives to represent domain concepts. We'll talk about examples, but let's first talk about it.
So let's start with the question what is a domain concept.
CQS - trivial habbit which keeps your code from failure
Let's talk about CQS (command query separation). Command query separation is a term first formulated by Bertrand Meyer who is the creator of "eiffel" programming language. Command query separation essentially states that you should separate your queries from your commands. Is is kind of intuitive name right? But what does that actually mean?
Let's first get it clear that what we are talking about in this post is methods.