Найти в Дзене

Как не «стать программистом», но как такое хобби помогает в жизни

В общей статье по АСУТП коснулся я основной боли любого асушника — вроде и автоматизируют, и властвуют, и унижают, а все равно младшие братья распиаренных айтишников. Однако, если копнуть глубже, то так и со многими инженерами, которые тоже в теории могут блистать на подиуме высоких технологий, мышление у них для этого подходящее. Но ведь на нет и суда нет. На днях вспомнил, что «тоже программист» и за пару вечеров на коленке набросал простую программку, чтобы быстро и укрупненно считать комплектацию для КТП. Вспомнил, конечно, не просто так. В свете изменившихся обстоятельств, когда данный процесс надо делегировать менеджерам, а их уровень веры в себя столь простые вещи делать не позволяет. Конечно, сначала была составлена просто подробная методичка, которую на мой взгляд любой идиот ребенок бы понял. Но то ребенок, а менеджер, он оперирует категориями ответственности, компетенции и исключительной роли партии коммерческого отдела в создании ценного продукта компании. Если данные кате
Оглавление
Как не «стать программистом», но как такое хобби помогает в жизни
Как не «стать программистом», но как такое хобби помогает в жизни
Карточка статьи
Карточка статьи

В общей статье по АСУТП коснулся я основной боли любого асушника — вроде и автоматизируют, и властвуют, и унижают, а все равно младшие братья распиаренных айтишников. Однако, если копнуть глубже, то так и со многими инженерами, которые тоже в теории могут блистать на подиуме высоких технологий, мышление у них для этого подходящее. Но ведь на нет и суда нет.

Информатика для инженера

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

Программа для быстрого расчета комплектации для РУНН КТП
Программа для быстрого расчета комплектации для РУНН КТП

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

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

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

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

Простой расчет показателей по проекту (в том числе премий сотрудникам) в до 1С-ную эпоху
Простой расчет показателей по проекту (в том числе премий сотрудникам) в до 1С-ную эпоху
Попытка реализовать личную картотеку в далеком 2013 году
Попытка реализовать личную картотеку в далеком 2013 году
Английский для сына (точнее больше для проверки его знаний), вроде и программ таких много, а готовые ему не зашли
Английский для сына (точнее больше для проверки его знаний), вроде и программ таких много, а готовые ему не зашли
Расчет раскроя электротехнических шин электроустановки по запросу конструктора
Расчет раскроя электротехнических шин электроустановки по запросу конструктора
Немного упрощаю себе жизнь в структурировании данных по проекту
Немного упрощаю себе жизнь в структурировании данных по проекту

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

Писал я на заре карьеры для частной коллекции базу данных. Все как положено — долго согласовывали техническое задание: функционал, отчеты, способы резервирования, процедуру приемки. Силы свои, помню, переоценил, но сидел ночами — таки сделал. Помолясь сдал заказчику. А он ею и не воспользовался. Заплатил мне денег и положил на полку. Порядок работы у него с коллекцией был другой и новый не зашел. Или сложно вводить информацию оказалось, не знаю. Через пару лет звонил, просил все переделать переработать, но, увы, пришлось отказать — времени не было совсем.

База данных открыток для частной коллекции: а) пример экрана, б) пример отчета
База данных открыток для частной коллекции: а) пример экрана, б) пример отчета

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

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

Тенденции

А между тем, если верить СМИ, компании начали увольнять IT-шников, ибо не фиг в условиях дорогих денег не могут себе их позволить. К чему это все приведет, то будем посмотреть. Однако, уже сейчас есть мнение, что искусственный интеллект дремать не будет процесс написания ПО продолжит автоматизироваться, а множеству посредственных специалистов придется менять сферу деятельности. Конечно, я не говорю про высококвалифицированных айтишников — тех, да и в общем-то, как и любых профессионалов своего дела, всегда будет не хватать.

Пример использования нейросетей для генерации кода
Пример использования нейросетей для генерации кода

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

Конечно, это не случайно. Не в смысле мне высвечивает, то понятно. Не случайно, что этих материалов очень много. Более того, они часто взаимосвязаны. Ну про курсы и возбуждение мотивации. Многие «программисты» успешно обучились на таких курсах и, безусловно, запомнили, что в моменте золотодобычи на Аляске больше заработали не те, кто героически добывал презренный метал, а те, кто продавал мамкиным старателям кирки и лопаты.

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

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

Может ли любой инженер быть программистом, нужно ли это?

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

Между тем, обучение любой инженерной специальности включает в себя ряд курсов по программированию. Что не случайно. Помимо необходимости автоматизации расчетов, конструктор ли, технолог ли, строитель ли может столкнуться с задачами, требующими программистских навыков. Любая машина или прибор нынче немыслим без электроники, в основе которой контроллер. Станки и различные приборы требуется если не программировать, то конфигурировать хитрым образом. Вот на днях сидели, разбирались с цифровыми терминалами релейной защиты одной фирмы, что теперь с завода идут пустыми — то есть не включаются, пока ты вручную не запрограммируешь за конфигурируешь ввода и выводы, да требуемые функции в среде, подозрительно напоминающей таковую для языка релейной логики LD (Ladder Diagram). И да, оказалось, что это по факту могут сделать только конструктора, что разрабатывали конструктив и схемы распределительных устройств. Такая подстава.

Помню, что когда поступал в ВУЗ, то имел возможность выбрать либо IT-шную (тогда не раскрученную), либо более фундаментальную инженерную специальность. При этом у меня уже был значительный опыт в первой области: я писал для знакомых программы, базы данных, делал им веб-сайты. Собственно, в какой-то степени это и повлияло на итоговый выбор: я наивно посчитал (эх, юность и неопытность!), что в этой области знаю достаточно, а если учиться, то новому и интересному. Правда, гештальт уже много после закрыл. Переподготовился и корочки, позволяющие официально считаться и программистом тоже, получил.

Но вот я к чему. На чисто инженерной специальности, на программистских предметах, где надо было решать очень много разных задач и писать код, факультет разделился (30/70) на тех, кто делал все самостоятельно с удовольствием и тех, кому все это делала первая часть сообщества. Эка невидаль, скажите, но общаешься с таким (а у нас каждую задачу надо было объяснить и защитить преподавателю), а он реально не понимает. Почему этот алгоритм работает так, а не иначе и зачем вообще так. Хотя вроде лекции слушал, заинтересованность есть.

Но нет «правильного» алгоритмического мышления. И вот поэтому я считаю, что если вы хороший инженер, то вероятно лучше заниматься своим уникальным делом, а не прыгать из отрасли в отрасль в зависимости от конъюнктуры, теряя основные навыки. За тем одним исключением: если вам просто это нравится, и вы в состоянии поддерживать свои навыки на высоком уровне. Что весьма трудозатратно. Ибо чтобы как-то это проворачивать, нужно не сидеть на пустых курсах славных обещаниями, а ежедневно решать пул, возможно, рутинных задач, писать код, автоматизируя в том числе свою инженерную деятельность.

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

Некоторые авторские поделки на базе промышленного компьютера: а) система взвешивания шихты для печей; б) экран системы регистрации температуры штук для прокатного стана
Некоторые авторские поделки на базе промышленного компьютера: а) система взвешивания шихты для печей; б) экран системы регистрации температуры штук для прокатного стана

Ознакомиться с содержанием журнала.

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

ПРЕДУПРЕЖДЕНИЕ №1: Оценки, суждения и предложения по рассматриваемым вопросам являются личным мнением автора.

ПРЕДУПРЕЖДЕНИЕ №2: Техническая информация, представленная на сайте, не является официальной и предоставлена только в целях ознакомления. Владелец сайта не несет никакой ответственности за риски, связанные с использованием информации, полученной из данного источника.

Все изображения, если не указано иное, либо выполнены автором, либо взяты из открытых источников.