Be aware of copying in Go 25 Jan 2019

Some bugs are very hard to find and to reproduce but easy to fix. To avoid them, it’s helpful to know how the tools we’re using work under the hood. From this article, you’ll learn what shallow and...
golang   channels
read more...

Books I read in 2018 07 Jan 2019

I’m glad that this year I read so many valuable books. I want to share with you with the most interesting items which you may find interesting too. Getting Things Programmed This book is only avai...
read more...

Go deeper – Database connection pool 12 Dec 2018

Golang uses a connection pool to manage opened connections for us. As a result, new connections are used when no free connection left and reuses them when golang finds an idle connection. The most ...
read more...

How to send multiple variables via channel in golang? 10 Dec 2018

Channels in golang are referenced type. It means that they are references to a place in the memory. The information can be used to achieve the goal. Firstly, let’s consider using structs as the in...
channels   golang   concurrency
read more...

Scientific method 03 Dec 2018

In 50′ and 60′ input data for programs from those years were written on paper tapes or punch cards. Writing code, compiling and testing loop took from a few hours to even few days. It was the begin...
tests   dijkstra
read more...

Entity and value object 04 Aug 2018

Knowing the basics is the key to understanding more complex concepts. After reading this post you will know what are entities and value objects and find out differences between them. When you pay ...
read more...

Why do many people say that Scrum is a bullshit? 17 Jul 2018

A few years ago, Scrum and Agile became very popular. It became mainstream. Everyone wanted to work on this framework. However, something’s changing. I remember when microservices were one of the ...
agile   scrum
read more...

5 things I’ve learned on a hackathon 25 Jun 2018

Recently, I took part in a hackathon. That was an excellent experience. Working 24 hours on a project you came up with the day before is very exciting. After that event, I realized something that I...
hackathon
read more...

Services in DDD finally explained 15 Jun 2018

I’ve noticed that there is always a challenge of understanding what services are in a context of domain-driven development and what is the difference between a service in an application, domain, an...
read more...

Indexing in MySQL 29 May 2018

Why do we use indexes? Searching through a row in a sorted file with N length takes O(log2N) comparisons and the same number of reads from a filesystem which is heavy itself. However, tables in dat...
mysql   optimization   indexes
read more...

History of WWW 02 May 2018

he history of the WWW wasn’t simple and still isn’t. In the beginning, it was a complete mess. Every browser tried to meet developers halfway without any standards or cooperation with other web bro...
read more...

How to name exceptions? It’s not so obvious… 24 Apr 2018

Naming things is one of the most difficult things in our job. Naming exceptions are even more complicated because exceptions are not regular classes. In this article, I’ll tell you a bit about nami...
read more...

Mutational tests 24 Mar 2018

When you have a very simple application it’s not so important to test every edge case but in a project, in the very complex domain, the priority of it will increase. The more high-quality the tests...
tests   mutational tests
read more...

An agony of trying to do the job 27 Dec 2017

I’ll tell you a story of Igor. Igor is a web developer. He’s a young man with a girlfriend and some ambitious plan in the future. Igor sit at his desk because he has some work to do. In front of hi...
read more...

Recent posts

I want to help you become a Go developer

Subscribe to receive Golang Tips and Tricks every week!