Как справиться с задачей: пройти или провалить — комплексное руководство по преодолению препятствий в программировании