Temporal Table feature overview SQL Server 2016 introduced database feature that brings support for providing information about tracking the history of records processed with Create/Update/Delete operations. This is quite often business demand in enterprise applications. So far it was realized in several ways: Creating Created, Updated columns in a table Creating a history table for… Read More

I am a big fan of code generation. I would like to have code typed instantly after it is designed in my head. It seems that there’s popular belief that what could be done in this subject was done in Resharper. To my regret, I haven’t found many solutions. But those which I found are… Read More

Sending emails is I guess a quite common feature in business applications development, so there’s a common necessity to apply to send emails tests. In my opinion, apart from unit testing, it is good practice to validate if email as the end product of specific application behaviour was sent and if has proper recipients, subject… Read More

Topshelf framework simplifies creating, installing and managing Windows services. Finally, you do not need to click in Services Control Manager, remember what was that command to install and start service. Everything that is to be done is to define what you want in fluent configuration, without any detailed knowledge about Windows services infrastructure. From now… Read More

In this post I will connect with Neo4j from .NET application. I will try to generate social network structure – one of most exemplary use case for applying Neo4j. We will use Neo4j.Driver: officially supported by Neo4j connects to the database using the binary protocol it aims to be minimal – suports query execution, materialize… Read More

Getting started In this post, I am going to walk you through Neo4j installation and first queries. 1. Go to¬†https://neo4j.com/download/ 2. After quick, [bezproblemowy] installation process, you will see Neo4j desktop 3. To add a new database click Add Graph, then Create a Local Graph. 4. Type database name, and password. 5. Click Start to… Read More

Neo4j is representative for graph databases, which are of four main types of NoSQL databases. Graph databases are usually mentioned as the last item of this list and as we see below, there are not so popular comparing to SQL and other NoSQL databases.   But what for me was very noticeable that usability and… Read More

In the project I recently had been worked on I needed to create a lot of POCO classes. To make my work easier I quickly created simple Windows Forms application that helped me a little bit. I was bored with typing, even copy-pasting ‘public’, ‘get’, ‘set’ and other stuff, and written myself app that try… Read More

If you think you never had encounter window functions, maybe you remember the question from an interview: What’s difference between GROUP BY and PARTITION BY. Think is that PARTITION BY is one of many window functions. Ok, so let’s start with the difference between GROUP BY and PARTITION BY. Understanding¬†window functions concept Let’s consider stored… Read More

Design patterns: Page Object The page object is quite fresh design pattern, much younger than folks from standard suite popularized by Gang of Four (founding fathers), although it is assigned to one of three Go4 pattern types (creational, structural and behavioural). As you quickly observe it is structural design pattern and helps us maintain clean… Read More