The solution for programmers