NoSQL

MongoDB Basics – part 1.

In my previous blog post - Introduction to NoSQL and Polyglot Persistence, I wrote about what NoSQL databases are, how they can be used, and what the benefits of using one in your system are. Also, different types of NoSQL databases were mentioned as well as their most popular representatives. One of those types is Document… Continue reading MongoDB Basics – part 1.

NoSQL

Introduction to NoSQL and Polyglot Persistence

Today we are facing the rapid expansion of data-driven businesses, especially businesses that are web-based and have an enormous amount of data that is being transferred every second. In fact, almost 90% of all data on the web has been created in the last two years. Usually that data has to be stored somewhere, and… Continue reading Introduction to NoSQL and Polyglot Persistence

.NET, Design

Abolishing Switch-Case Statement and Pattern Matching in C# 7.0

There are many arguments on the web regarding the switch-case statement. It seems that half of the programmers think that switch-case statement is actually an anti-pattern, and other half claims there are in fact use cases for this concept. Usually, the second group tries to prove a point that in some simple situations it is alright… Continue reading Abolishing Switch-Case Statement and Pattern Matching in C# 7.0

Productivity, Professionalism

Pomodoro Technique – the Good, the Bad and the Tomato

Countless articles, self-help books and general discussions have been written in an attempt to shed more light on the ways in which one’s productivity can be increased. In my opinion, there is no one solution for every person in the world. There is a different method for every person out there that seems to increase… Continue reading Pomodoro Technique – the Good, the Bad and the Tomato

.NET

Tuples in .NET world and C# 7.0 improvements

Back in the day when I was a young developer, I was using output parameters. Then I figured out it is somewhat complicated to test functions with output parameters, and that their use is clunky at best. Also, out parameters don't work with async function, because of CLR limitations. In general, I liked them less… Continue reading Tuples in .NET world and C# 7.0 improvements

Professionalism

How to use “Art of War” to be better Software Craftsman

At the moment there are a lot of agile methodologies out there which you can use on your team and see if they are applicable to it. Some teams develop their own processes, which is a great way to find out what really works best for you. These kinds of teams basically experiment and they… Continue reading How to use “Art of War” to be better Software Craftsman

Design

Single Responsibility Principle on different levels of abstraction

Somewhere in the early 2000s Robert C. Martin, most commonly known as Uncle Bob, came up with first five principles of Object Oriented Programming and Design - SOLID principles. SOLID is one astute acronym, in which each letter stand for different principle: S - Single Responsibility Principle O - Open Close Principle L - Liskov Principle of Substitution… Continue reading Single Responsibility Principle on different levels of abstraction