Эмуляция АСУ ТП

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

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

Ранее я написал об этом пост, но потом набралось больше материала и я расширил до статьи.
Работая над одним из проектов, который недавно переехал из Framework 4.8 на Core 9, обнаружил множество самых разных вариантов использования модификатора required и атрибута Required, примерно каждый второй из которых был использован неправильно. Я написал это коллегам и хочу поделиться этим здесь. Это не обязательные правила, но сильно упрощают работу с кодом.

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

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

В голову ни шла ни одна идея, о чём бы написать. Всё сидел и ломал голову, но не помогало, ведь первую статью я написал сходу, не задумываясь, ведь во всём этом я варился аж лет десять. И получилось хорошо. И хотелось повторить. И вот, оказалось, что мне продали эмпанаду с острым мясом, так что помимо горячего чая рот обжигает ещё и горсть перца. А мыслей всё нет.
И, как сейчас модно, я описал свою проблему ChatGPT в надежде увидеть что-то эдакое. А он мне выдаёт:
"Шаг 1: Найди тему, которая цепляет тебя самого"
"Boring!" — зазвучал в голове голос желтокожего семьянина, к возрасту которого я неожиданно, похоже, уже подобрался совсем вплотную.
Я пытаюсь объяснить бездушной машине, что мне не инструкция нужна. Сам текст мне нужен, да такой, чтобы цеплял с первых строк и не отпускал. Такой, чтобы история была, решение проблемы и злодей, наверно.

Я C#-программист с многолетним стажем (и примерно middle на Go, который лишь однажды использовал в коммерческих целях), о чём написано в моём профиле на LinkedIn, но мне всё равно пришло предложение о работе в качестве Senior Python/Go engineer.
Конечно, если бы я был начинающим программистом, то даже не получил бы таких предложений. Чтобы дорасти до опытного программиста, так или иначе нужны годы. Но так ли уж важно быть senior'ом в предлагаемой должности, если ты уже имеешь аналогичную квалификацию в другой?

Эта статья не претендует на то, чтобы дать вам какие‑то особые знания, но она может помочь узнать вам что‑то полезное о своей жизни. Без лишней воды, только по делу.
Четыре года назад я проходил курс, который должен был избавить от негативных установок касательно денег и раскрыть границы. И он действительно сработал. Многое изменилось в отношение денег. Но было ещё кое‑что. В одном из заданий нужно было посчитать, сколько я заработаю денег за всю свою жизнь.

Начну с того, что я C#-разработчик, но Go мне очень нравится и один из проектов я решил для разнообразия и расширения знаний написать в связке Go + React.js + MongoDB. И тут я понял, что не могу найти библиотеку пакет для чтения единых настроек конфигурации из разных источников. Часть настроек была в .env, часть - в переменных окружения. Хотелось получить экземпляр одной структуры со всеми значениями, выполнив какую-то одну функцию. Возможно, плохо искал. Но, не найдя, решил написать своё. Тем более у меня уже был опыт работы над подобным open-source проектом, но для C#.
Я никогда ранее не писал пакетов для Go, поэтому просто начал писать код как для программы, чтобы просто смотреть, запускать, тестировать. Понять, насколько это реализуемо. А потом уже оформил в пакет.

Эта статья — ответ на ранее опубликованную статью про IT на заводах. Я почитал и понял, что мне есть что об этом рассказать. Вопросы оттуда же и немного больше. Сразу уточню, что я не работал непосредственно на заводах, а работал в компании, которая предоставляла услуги по автоматизации производственных линий разным предприятиям, но в основном ориентированные на работу с весами и дозированием.