Правда. Все вокруг говорят, что главное — это не собственно кодить, а придумать хороший алгоритм. И для этого действительно нужна логика, «квадратное» мышление, чтобы представлять данные в подходящем для компьютера виде и представлять себе, какие операции он будет с ними делать.
Еще я точно знаю качество, которого, в отличие у предыдущего, у меня никогда не было, и из-за которого я стесняюсь показывать кому-либо свой код. Это лень, но не за себя, а за компьютер. Мало написать первое пришедшее в голову решение: оно может быть кривым, занимать много времени и памяти. Нужно сделать решение аккуратным и быстрым. Для этого программисту понадобится лишний час подумать или покопаться в документации, но в итоге компьютер будет достигать нужного результата разумнее и быстрее.