Инструменты программиста

Инструменты программиста Программист, IT юмор, Программирование, Философия, Длиннопост

Когда люди представляют себе программиста, то они видят бородатого человека в клетчатой рубашке, который согнувшись перед ноутбуком что-то непрерывно печатает. Иногда бормочет под нос какие-то иноязычные заклинания.


У кого-то есть стереотип, что программист обязательно должен работать за тремя мониторами минимум и пятью клавиатурами. При этом под столом он должен одновременно обжимать провода для соединения с сервером. Для многих программист – может взломать страничку вконтакте, умеет чинить абсолютно любые устройства – от часов, до холодильников, главное, чтобы там был маленький мониторчик с циферками и буквами.


Три тысячи лет назад программисты вполне могли бы относиться к касте жрецов. К которым обращаются по любому поводу, когда обычные познавательные способности среднестатистического индивидуума заканчиваются.


Развитие технологий благо, но у этой медали есть вторая сторона – нужны люди, понимающие как эти технологии работают. И чем дальше, тем становится сложнее понять. Уже сейчас не все опытные программисты знают, как работают нейросети. Возможно, это и не нужно, только с каждым годом техника захватывает все новые и новые области человеческой жизни. Люди стремятся облегчить свой труд, пусть это даже пустяки, вроде заказа еды, покупки товаров.

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


Что дальше? Импланты в мозгу, которые будут прогнозировать чувство голода и угадывать когда поднести ложку ко рту? А сознанию существа, под названием человек останется только витать в виртуальной нирване. И чем меньше заботы мира будут касаться, тем лучше.

Звучит смешно, но именно над этим работают программисты.


Компании тратят миллиарды долларов на разработки интерфейсов, в которых человеку нужно думать как можно меньше, двигать пальцами минимум раз, тратить денег больше.


Основной инструмент программиста – язык программирования. С помощью этого инструмента транслируется абстрактное человеческое желание, в конкретную инструкцию внутри процессора. Очень важно уметь объяснить машине, что людям лениво делать то-то и то-то. Для этого нужно самом быть ленивым. Если бы не лень, то компьютеры вообще не появились бы.

Выходит, что еще более основной инструмент программиста – лень.


Если человеку лень зарабатывать деньги на заводе, он покупает дорогущие курсы программирования, потому что мечтает о том, как будет сидеть перед монитором и рубить капусту за сам факт своего существования.


Но боюсь вас разочаровать. За внешней оболочкой человека на расслабоне перед монитором скрывается необходимость часами думать над какой-нибудь одной задачей. И когда решение задачи будет найдено, то клиенту, вдруг, захочется немного поменять условия, в результате решение перестает работать. Снова придется потратить несколько часов неподвижного сидения и раздумывания. При этом пальцы будут пробовать новые и новые варианты. И так день за днем, неделя за неделей, год за годом. Думать, думать, думать.


Представьте себе шахматную партию. Вот вы после невероятных усилий поставили мат противнику, но сразу после этого хода у противника вдруг появляется еще сотня вариантов ходов и все его срубленные фигуры возвращаются на поле в самых разных комбинациях. Такая бесконечная партия. Даже если вам повезет, и вы все-таки победите, то необходимость зарабатывать деньги заставит искать новую адскую партию.


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