Step by step problems for learning programming in a better way