воскресенье, 31 декабря 2023 г.

[АиП 2023/11-12]

Как всегда в конце текущего или начале следующего месяца сообщаю о том, что вышел свежий номер журнала “Автоматизация и Программирование”, ноябрь-декабрь 2023 г. 

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


Основные статьи этого номера:


  1. Для начинающих: 1) Мёртвый код; 2) Чем отличается класс от объекта; 3) Зачем рисовать блок-схему алгоритма.

  2. Сайтостроение: 1) Тег HR.

  3. Языки программирования: 1) Перечисляемый тип в Паскале; 2) Циклы в Си Плюс Плюс; 3) Оператор goto в PHP; 4) Интервальный тип Паскаль; 5) Глобальные переменные в функциях Python; 6) Как в PHP подавить вывод сообщений об ошибках; 7) switch в JavaScript; 8) Простой вывод в Фортране; 9) Обработка исключений в Python; 10) Функция в С++.

  4. Ассемблер: 1) Бесконечный цикл в Ассемблере.

  5. Секреты программиста: 1) Как одновременно открыть несколько файлов.

  6. Микроконтроллеры, электроника: 1) Симметричные и несимметричные входы АЦП; 2) Последовательный интерфейс TWI.

  7. Инженерия: 1) SAS простыми словами; 2) Подставка для телевизора своими руками; 3) Одоризация газа; 4) Определение ПЛК; 5) Строители-любители; 6) Аппаратно-независимые библиотеки.

  8. Управление, обучение, фриланс: 1) Хуже отсутствия данных только недостоверные данные; 2) Работает - не трогай; 3) Найти сторонника проекта; 4) Процессы и проекты простыми словами; 5) Главные вопросы после устройства на работу.

  9. Автомобили: 1) Если защёлка ремня безопасности неисправна; 2) StarLine A93 на Весте - не глохнет двигатель при постановке на автозапуск; 3) Восстановление авто после аварии.

  10. Архив: Технологии программирования.


>>> Скачать журнал АиП 2023/11-12 >>>




суббота, 30 декабря 2023 г.

Функция в С++

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


пятница, 29 декабря 2023 г.

Главные вопросы после устройства на работу

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


четверг, 28 декабря 2023 г.

Знакомство с Python


Лично я познакомился с Python случайно. Хотя, пожалуй, случайностей таких не бывает. Потому как я программист, и рано или поздно я бы всё равно узнал об этом языке программирования.


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


Да, я вряд ли уже буду профессионально заниматься созданием программ на этом языке (хотя “никогда не говори никогда”). Но мне это интересно, поэтому я и изучаю разные языки программирования. Пусть даже на каком-то минимальном уровне, но я знаю их уже не один десяток. Какие-то лучше, какие-то хуже. Но основы есть. А это означает, что если сильно прижмёт, то я смогу быстро стартануть и в короткие сроки выйти на уровень если не “мидла”, то хотя бы продвинутого “джуна” на любом из этих языков.


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


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


Ну а ещё это язык интерпретируемый. То есть вы можете писать программы и сразу, “на лету”, получать результат их работы. В некоторых случаях это то, что доктор прописал.


Так что если ещё не пробовали, обязательно попробуйте. Кто знает, быть может это перевернёт вашу жизнь в лучшую сторону…


среда, 27 декабря 2023 г.

Обработка исключений в Python

Обработка исключений - это крайне необходимая вещь. Поэтому она имеется почти во всех языках программирования. Однако, несмотря на то, что почти во всех языках для этого используются одинаковые ключевые слова, применяются они по разному. Сегодня пример для Python. Читать далее


вторник, 26 декабря 2023 г.

Последовательный интерфейс TWI

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


понедельник, 25 декабря 2023 г.

Зачем рисовать блок-схему алгоритма

В начале изучения программирования почти всегда предлагают потренироваться на составлении блок-схем алгоритмов. Для общего развития это полезно. Но насколько это необходимо в реальном программировании? Читать далее


воскресенье, 24 декабря 2023 г.

Аппаратно-независимые библиотеки

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


суббота, 23 декабря 2023 г.

Простой вывод в Фортране

Мёртвые языки для иных живее всех живых. Есть фанаты, в том числе, и Фортрана. Я хотя и не являюсь таковым, но этот язык меня привлекает. Так что иногда, когда выпадает свободная минутка, я его изучаю. Читать далее


вторник, 19 декабря 2023 г.

Строители-любители

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


воскресенье, 17 декабря 2023 г.

Предновогодняя распродажа видеокурсов 2023


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


Речь идёт о видеокурсах по программированию и сайтостроению от проверенного и “широко известного в узких кругах” автора. Не все со мной соглашаются по поводу содержимого этих курсов. Некоторые жалуются, что в них недостаточно информации. С этим я не согласен. Потому что:


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

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

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


В общем, уговаривать никого не буду, переходите по ссылке, смотрите, оценивайте, и принимайте решение. Всё в ваших руках, и всё зависит только от вас…


switch в JavaScript

“О сколько нам открытий чудных, готовит просвещенья дух…”. Если вы ранее программировали на С++ или Java, а потом увлеклись JavaScript, то на первый взгляд вы не увидите ничего особо нового. Однако, даже такие простые конструкции, как switch…case в этих языках отличаются, но не внешне, а по поведению. Читать далее


суббота, 16 декабря 2023 г.

Процессы и проекты простыми словами

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


Как в PHP подавить вывод сообщений об ошибках

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


понедельник, 11 декабря 2023 г.

Восстановление авто после аварии

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


воскресенье, 10 декабря 2023 г.

Чем отличается класс от объекта

Лично меня этот вопрос в своё время волновал, и я не мог никак понять, почему в каких-то случаях предмет называется объектом, а в каких-то - экземпляром класса. Читать далее


суббота, 9 декабря 2023 г.

Найти сторонника проекта

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


пятница, 8 декабря 2023 г.

StarLine A93 на Весте - не глохнет двигатель при постановке на автозапуск

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


вторник, 5 декабря 2023 г.

Глобальные переменные в функциях Python

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


воскресенье, 3 декабря 2023 г.

Симметричные и несимметричные входы АЦП

Многие микроконтроллеры имеют в своём составе АЦП, который позволяет измерять аналоговые сигналы. Но, оказывается, АЦП ещё могут иметь разные виды входов - симметричные и несимметричные, и от этого зависит точность измеряемого значения. Читать далее

суббота, 2 декабря 2023 г.

Интервальный тип Паскаль

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


вторник, 28 ноября 2023 г.

Определение ПЛК

Не один уже раз я упоминал в своих статьях ПЛК, но до сих пор так и не удосужился более-менее подробно рассказать о том, что же это такое. Исправляю положение - в новой статье о том, что такое ПЛК. Читать далее


воскресенье, 26 ноября 2023 г.

Бесконечный цикл в Ассемблере

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


суббота, 25 ноября 2023 г.

Одоризация газа

Те, у кого дома электроплиты, возможно никогда и не нюхали природного газа. Хотя на самом деле его не нюхал никто, так как он не имеет запаха. Вонючим его делают специально. Зачем и как - в новой статье. Читать далее


суббота, 18 ноября 2023 г.

Тег HR

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


вторник, 14 ноября 2023 г.

Работает - не трогай

Многие в погоне за модой и за желанием быть не хуже других часто просто выбрасывают деньги на ветер или того хуже (вы же помните историю про парня, который продал почку, чтобы купить новый Айфон). А между тем старые технологии могут ещё долго приносить пользу, и далеко не всегда есть крайняя необходимость их менять. Читать далее


понедельник, 13 ноября 2023 г.

Оператор goto в PHP

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


воскресенье, 12 ноября 2023 г.

Если защёлка ремня безопасности неисправна

Ездить на неисправном автомобиле запрещено ПДД. Однако неисправности бывают разные. Одно дело, если у вас не работают тормоза, и совсем другое, если перегорела лампочка подсветки салона. В случае с ремнями безопасности тоже не всё однозначно. Читать далее


суббота, 11 ноября 2023 г.

Циклы в Си Плюс Плюс

Ни одна более-менее серьёзная программа не обходится без циклов. Поэтому в каждом языке программирования имеется возможность организации циклов. Как правило, это три вида циклов: цикл с предусловием, цикл с постусловием и цикл с параметром. Читать далее


пятница, 10 ноября 2023 г.

Хуже отсутствия данных только недостоверные данные

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


Мёртвый код

В мире программирования, как и в любой другой профессии, есть очень много разных словечек, которые не очень понятны (или вообще непонятны) простому смертному. Например, знаете ли вы, что такое “мёртвый код”? Читать далее


понедельник, 6 ноября 2023 г.

Подставка для телевизора своими руками

Случилось так, что от старого телевизора, который висел на стене, я потерял подставку. И когда решил переместить его в другое место, то возможности подвесить его на стену там не оказалось. Так что пришлось мастерить подставку “из говна и палок”. Читать далее


воскресенье, 5 ноября 2023 г.

Перечисляемый тип в Паскале

Собственные типы данных - очень полезная вещь. Ранее я рассказывал, как в принципе создаются пользовательские типы данных. Сегодня приведу более конкретный пример - создание перечисляемого типа. Читать далее


суббота, 4 ноября 2023 г.

SAS простыми словами

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


Как одновременно открыть несколько файлов

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


среда, 1 ноября 2023 г.

АиП 2023/10

Как всегда в конце текущего или начале следующего месяца сообщаю о том, что вышел свежий номер журнала “Автоматизация и Программирование”, октябрь 2023 г. 

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


Основные статьи этого номера:


  1. Для начинающих: 1) Собственные типы данных; 2) Общие принципы отладки; 3) Персистентные программы.

  2. Сайтостроение: 1) HTTP-фрагмент.

  3. Языки программирования: 1) Случайное значение в Python; 2) Переменные переменных РНР; 3) Лексемы Фортрана; 4) Логические типы Lazarus; 5) Передача по ссылке и передача указателя; 6) Приоритет операторов PHP; 7) Операторы присваивания JavaScript.

  4. Микроконтроллеры, электроника: 1) Предварительный делитель AVR; 2) Протокол HART; 3) Аналоговый компаратор AVR.

  5. Инженерия: 1) Почему нельзя использовать контрольную лампу для проверки напряжения; 2) Как научиться работать в КОМПАС.

  6. Управление, обучение, фриланс: 1) Карьера и ценности; 2) Инженерный отдел как сервис; 3) Преимущества письменной формы; 4) Проверка биографии при устройстве на работу.

  7. Автомобили: 1) Чем опасны мастера на все руки; 2) Плеер ММС Весты.

  8. Архив: Функция Power.


>>> Скачать журнал АиП 2023/10 >>>



воскресенье, 29 октября 2023 г.

Как научиться работать в КОМПАС

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


среда, 25 октября 2023 г.

Операторы присваивания JavaScript

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


вторник, 24 октября 2023 г.

Проверка биографии при устройстве на работу

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


понедельник, 23 октября 2023 г.

Приоритет операторов PHP

“Всяк сверчок - знай свой шесток”. Народная поговорка. В программировании, как и в жизни, у выполнения операций есть приоритеты. Кто-то получает внимание процессора раньше, а кто-то позже. В зависимости от важности (приоритета). Читать далее


воскресенье, 22 октября 2023 г.

Плеер ММС Весты

Люди делятся на два вида: те, кто читает инструкции, и те, кто НЕ читает. Вторые потом нередко обращаются к первым за помощью, когда уже всё сломают ))) Я не могу себя причислить ни к тем, ни к другим. Потому что иногда читаю, а иногда нет. Причём читаю иногда просто из любопытства, а не по необходимости. Читать далее


суббота, 21 октября 2023 г.

Передача по ссылке и передача указателя

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


Преимущества письменной формы

Мы всё больше и больше отвыкаем от умения записывать свои мысли на бумаге, доверив всю свою память информационным системам. Однако записывание текста дедовским способом имеет свои преимущества. Читать далее


среда, 18 октября 2023 г.

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

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


вторник, 17 октября 2023 г.

Аналоговый компаратор AVR

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


понедельник, 16 октября 2023 г.

Логические типы Lazarus

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


пятница, 13 октября 2023 г.

Протокол HART

Сегодня существует очень много различных протоколов для обмена данными между устройствами. Каждый из них имеет свои особенности, преимущества и недостатки. Сегодня немного расскажу о протоколе HART, который автоматизаторами используется нечасто, а вот разработчикам систем на микроконтроллерах об этом протоколе нужно, как минимум, знать. Читать далее


четверг, 12 октября 2023 г.

Лексемы Фортрана

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