Computer programming has been an integral part of our lives for many years now, providing solutions to complex tasks and facilitating activities such as communication, data storage, game playing and so on.