Не думаю, что предвзятость связана с вашим возрастом. Я полагаю, что это связано с тем, что в те ранние годы я не научился программировать и у него сложились предвзятые представления о том, как работают компьютеры, от которых пришлось отказаться.

Я постоянно сталкиваюсь с этим с молодыми программистами, которые «ориентированы на язык» и строят предубеждения, потому что их понимание того, как все работает, основано на поверхностном опыте работы с такими вещами, как компиляторы, компоновщики, язык ассемблера, микрокод и т. д. Они знают что это за вещи, но на самом деле понятия не имею, как именно, точно, строка кода, которую они набирают, в конечном итоге преобразуется в машинные инструкции, выполняющие работу. Затем, если они талантливы (как вы, очевидно, есть) и переходят к другим языкам, они сталкиваются с тем, что я называю «фобией оптимизации», когда они начинают чрезмерно анализировать то, что они делают, потому что они задаются вопросом, что может быть происходит, если, например, они используют цикл «для» вместо использования понимания списка.

Дело действительно не в возрасте.

Компьютеры сегодня работают точно так же, как и тогда, и те же проблемы, которые вы описываете, происходят сегодня, на самом деле, сегодня они даже хуже. Например, если вы собираетесь парсить XML-код, вы можете сделать это с нуля (что не так сложно), а можете использовать полный стек технологий, состоящий из Python, lxml и libxml2…. и одним простым решением добавить более миллиона строк кода к выполнению вашей задачи. Сумма этих решений может поставить на колени даже современные мощные машины.

Знание того, вызывает ли одна строка кода 8 машинных инструкций или 8 миллиардов, имеет решающее значение, и для полного понимания этих вещей требуются огромные глубокие знания. Это, по сути, разделительная линия между программистами, которые могут создавать быстро реагирующие, казалось бы, идеальные программы, и теми, кто создает программы, в которых нажатие кнопок кажется «залипающим» или требует слишком много времени для выполнения, казалось бы, простых задач.

Получить такие глубокие знания несложно, но это должно быть страстью, требует времени и не для всех. Например, такие люди, как Линус Торвальдс, обладают такими глубокими знаниями не столько потому, что они талантливы и одарены (каким он может быть), сколько потому, что у него есть непреодолимое желание точно знать, как все работает, и побеждать. не идти вперед, если он не делает. Другие программисты могут быть столь же талантливы и не заботиться о том, как на самом деле работает строка кода, и с удовольствием используют высокоуровневые библиотеки, потому что они экономят время. Часто они в конечном итоге предлагают идеи, которые Торвальдс не может, потому что они свободны от одержимости деталями.

Я думаю, что многие ваши предубеждения — это не предубеждения, а реальные факты в определенных контекстах. Код действительно замедляет работу даже сегодня. Серверы не любят слишком много запросов, и именно поэтому асинхронное программирование (например, NodeJS) стало популярным. Серверы на самом деле перегружаются данными, поскольку люди, которые начинают небрежно экспериментировать с гипермасштабируемыми технологиями, такими как Hadoop, обнаруживают, что не проявляют осторожности.

И действительно, встроенные комментарии замедляют работу некоторых приложений, в зависимости от языка, на котором они написаны, и контекста, в котором замедление может быть или не быть проблемой. Вы можете написать миллион строк комментариев в программе на C, и это совсем не замедлит ее работу.Ноль. То же самое верно для Swift, ObjectiveC, C++ и Go. Но если вы сделаете то же самое в PHP, ваше приложение, скорее всего, остановится, а в Python у вас будут заметные задержки запуска.

Ваша статья привлекла мое внимание, потому что, как 58-летний программист, я всегда задаюсь вопросом, является ли возраст фактором в моей работе. Но я работаю инженером-программистом уже почти 40 лет, и я действительно верю, что могу делать это сейчас так же хорошо, как и тогда, и что очень мало из этого связано с возрастом, и все дело исключительно в знаниях и желании. начинать с нуля снова и снова, и снова, и снова, не беспокоясь о том, сколько знаний вам придется выбросить. Это мир кодирования.