ApprovalTests is one of my favorite NuGet in C#. It helps you to verify is your method's output or object changed. It will automatically visualize the error by opening your diff tool and shows the difference there. I really recommend you to become familiar with this if you are a C# developer.
Automatic Rollback to Integration Tests in C#
This is something that has made my integration tests better. You define a test method to run in transaction and rollback at the end of each test. This makes it possible to write integration tests that write to the database. And tests won't leave any "garbage" there because rollback at the end of the test undoes all database updates (and inserts and deletes). If this is possible in your language and testing framework I strongly recommend it. In this blog post I will explain how you can do it with NUnit in C#.
The Clean Coder by Robert C. Martin
I wrote a book review of The Clean Coder by Robert C. Martin ("Uncle Bob"). It tells what makes programmer a professional programmer and gives practical advice. Professional programmer takes responsibility for his/her work and improves himself/herself constantly. Someone who cares about his/her career as a programmer. The book is relatively short (210 pages) and easy to read. I recommend it to all software developers. My rating: 4/5.
Functional Programming in C# by Enrico Buonanno
This was really interesting and educational book about functional programming. What makes this book really good is that it is really practical. I wrote about what was most interesting in this book. And how it opened my eyes that functional programming is useful even for object-oriented programmers like me. I deeply recommend this book to every C# developer.
Too Busy to Improve?
The most important thing for a software developer is his knowledge. Unfortunately it will expire sooner or later if we don't maintain and improve it. But problem is that we are often too busy to improve. Working on the important and non-urgent is one solution to improve even if you are busy.
Constant or static readonly?
SonarQube has two rules about constant and static readonly: - Public constant members should not be used and - Static readonly constants should be const instead. I wrote this blog post to learn these rules and their difference. Now I know when to use const and when to use static readonly.
C#: Difference of Properties and Fields
I didn't clearly understand what is field and property in C#. So I decided to write this blog post to finally learn what is field and what is property and how I should use them.
New Language Every Year
Software developers should learn a new language every year. My choice for this year is JavaScript.
Advent of Code 2017
Advent of Code is an online advent calendar where you will get two programming puzzle each day. Really good for learning new programming language and I recommend it to every developer. I wrote about my experience with it.
Why I Started a Blog?
I read John Sonmez's Soft Skills book last autumn. In book he says: "every software developer who cares about their career should invest in creating a blog". I started to think about it and here I am writing my first personal blog post.