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