Pull to refresh
12
1.5
Сергей М. @sim31r

SAP R3, АСУТП

Программист с фигой в кармане: в чем причины?

Level of difficulty Easy
Reading time 11 min
Views 68K

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

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

Я далек от того, чтобы делать какие-либо моральные оценки этому явлению (если
прочтете до конца, поймете, почему).  Я – тимлид с 15-летним опытом работы в IT. Я лично нанимал многих людей и со многими прощался. У меня есть своя приличная статистика откровенных мыслей и настроений людей, которые со мной работали, работают, или работают, но не со мной. На основании этого своего опыта (и не только своего) я попытаюсь дать ответ на вопрос, как и почему вырастает фига в кармане программиста. Я потяну за ниточку клубка причин и постепенно попытаюсь его распутать целиком. Результатом будет сводный граф причин феномена саботажа в IT. Поехали!

Читать далее
Total votes 115: ↑97 and ↓18 +79
Comments 290

Как перестать писать прошивки для микроконтроллеров и начать жить

Reading time 8 min
Views 48K

Здравствуйте, меня зовут Евгений, и мне надоело писать прошивки для микроконтроллеров. Как это это случилось и что с этим делать, давайте разберемся.

Читать дальше →
Total votes 50: ↑46 and ↓4 +42
Comments 81

История одного байта

Reading time 15 min
Views 52K
Предисловие.
Этот рассказ имеет свою длинную историю. Для многих это, возможно, будет махровый баян, но мне кажется он стоит того, что бы его прочитали новые люди.
Во всех источниках, где я встречал его сведения об авторе были просты и незатейливы: Dmitry Galuscenko. Если кто-то может указать сайт или e-mail — напишите в комментариях, я с удовольствием добавлю.
Итак, начнем.


Мне не хватало байта. Всего одного. Да, да. Того самого, что из восьми бит состоит. Что? Hет, я не псих, хотя одному богу известно, сколь тонкой была граница отделявшая меня от этого состояния.
Hо все по порядку
Total votes 140: ↑121 and ↓19 +102
Comments 120

Вы в Самом Деле Хотите Стать Программистом Микроконтроллеров?

Level of difficulty Easy
Reading time 36 min
Views 61K

В этом тексте я напишу о буднях программиста МК в РФ.

Что вообще пишут программисты МК и на чем?

Основной язык программирования это С. Языку С уже более 50лет. Кроме микроконтроллеров С уже практические никому не нужен. Навыки программирования на С очень слабо конвертируются. В свое время, видимо на С написали компилятор для С++ и нужда в С для desktop как таковая отпала. A сам С остался для сборки артефактов для микроконтроллеров с экстремально малыми ресурсами. Хотя и сейчас большинство компаний в ЕС уже микроконтроллерные сборки собирают на С++ 17. 

Иногда программистам MК приходится обсчитывать аналоговые цепи и вычислять какие-то сложные 8-этажные формулы и строить графики. Для этого практикуют бесплатный интерпретатор Python.

Главным образом программисты МК составляют Board Support Package, пишут драйверы для новых умных периферийных чипов, пишут загрузчики, портируют RTOS(ы) на разные процессорные ядра, пишут код-генераторы, скрипты сборки, составляют модульные тесты, изредка производят рефакторинг, часто чинят ошибки в Legacy коде, изредка что-то изменяют в коде Assembler(а), который запускается до вызова функции main().

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

Читать далее
Total votes 172: ↑147 and ↓25 +122
Comments 348

Изготовление Макета для Прототипа (или Как Буравить Пластмаски)

Level of difficulty Easy
Reading time 6 min
Views 3.8K

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

Далее следует инструкция как сделать качественное основание для прототипа.

Читать далее
Total votes 8: ↑5 and ↓3 +2
Comments 12

Как летает космическая ракета (на примере РН Союз)?

Reading time 5 min
Views 12K

Добрый день, дорогие Хабровчане!

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

Читать далее
Total votes 29: ↑28 and ↓1 +27
Comments 24

Обследование рельефа острова Валаам нашим подводным роботом

Level of difficulty Easy
Reading time 8 min
Views 9.7K

Рассказываем про наш опыт использования собственного подводного робота "Трионикс-4М" для обследования подводного рельефа острова Валаам.

Скажем пару слов о себе, о робототехнике и подводной навигации.

Много фотографий и ссылка на видео с подводными кадрами.

Погружаемся
Total votes 74: ↑74 and ↓0 +74
Comments 56

Шахматные алгоритмы, которые думают почти так же, как человек, только лучше

Reading time 6 min
Views 34K

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

В 1980-х программа Belle достигла рейтинга Эло в 2250 пунктов, что примерно соответствует рейтингу мастера спорта. И с того времени развитие компьютерных шахмат вышло на совершенно новый уровень. 

Сначала честь человечества не смог защитить Гарри Каспаров в 1996 году, а сегодня уже создана нейросеть с рейтингом около 5000 Эло, что в разы превосходит даже сильнейших игроков.

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

Приятного чтения
Total votes 21: ↑18 and ↓3 +15
Comments 30

[Разбор резюме] SAP-разработчик, ушедший в Backend: как оформить резюме, когда сменил специализацию

Level of difficulty Easy
Reading time 3 min
Views 4.5K

Сегодня у нас на разборе интересное резюме: у человека большой опыт, но в SAP-разработке. Буквально год назад он решил переквалифицироваться в Go-разработчики. Разберем его резюме и посмотрим, как правильно показать большой трудовой опыт, при этом сделав акцент на новых рабочих навыках.

Читать далее
Total votes 13: ↑11 and ↓2 +9
Comments 0

Жизнь внутри черной дыры

Reading time 10 min
Views 118K
Знаю, что здесь это якобы не приветствуется, но делаю кросс-пост отсюда по прямой просьбе автора — Горькавого Николая Николаевича. Есть некоторый шанс, что их идея перевернёт современную науку. И лучше прочитать о ней в оригинале, чем в пересказе рен-тв или ленты.ру.

image

Для тех, кто не следил за темой. Рассмотрим две вращающихся друг вокруг друга чёрных дыры, допустим, массами 15 и 20 единиц (масс Солнца). Рано или поздно они сольются в одну черную дыру, но её масса будет не 35 единиц, а, скажем, всего 30. Остальные 5 улетят в виде гравитационных волн. Именно эту энергию улавливает гравитационный телескоп LIGO.

Суть идеи Горькавого и Василькова в следующем. Допустим, вы наблюдатель, сидите в своём кресле и чувствуете притяжение 35 единиц массы делить на квадрат расстояния. И тут бац — буквально за секунду их масса уменьшается до 30 единиц. Для вас, в силу принципа относительности, это будет неотличимо от ситуации, когда вас отбросило в обратном направлении с силой в 5 единиц, делить на квадрат расстояния. То есть, неотличимо от антигравитации.

Читать дальше →
Total votes 91: ↑86 and ↓5 +81
Comments 591

Циркулярные кривые 2-го порядка

Reading time 4 min
Views 8.6K
Как известно, кривыми Безье нельзя построить дугу окружности или эллипса. В этой статье рассматриваются кривые, лишённые такого недостатка.


Дальше будут картинки и анимации
Total votes 26: ↑26 and ↓0 +26
Comments 7

Реализуем с нуля функцию косинуса на языке C

Level of difficulty Hard
Reading time 10 min
Views 13K

Я изучил, как реализовать функцию косинуса при помощи нескольких разных подходов. Одна из реализаций почти в три раза быстрее, чем math.h, но придётся смириться с точностью до четырёх знаков после запятой.

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

Моё исследование началось с того, что мой друг и коллега Стивен Марц работал над ядром операционной системы и я предложил, чтобы он отрисовал на экране функцию косинуса. Я часто использую косинус в качестве «hello, world» для графических приложений. Возникла проблема: его ядро не задействовало стандартную библиотеку C (а значит, прощай math.h!), а целевой платформой являлась архитектура RISC-V (а значит, никаких подобий команды fcos Intel!).

Так началось моё долгое приключение.
Читать дальше →
Total votes 60: ↑57 and ↓3 +54
Comments 29

Starting Electronics: руководство по веб-серверам на Arduino. Часть 13. Графический индикатор на веб-странице

Level of difficulty Medium
Reading time 6 min
Views 4.6K


От переводчика. В этой части руководства рассказывается как подключать к страницам Arduino сервера и использовать Javascript компоненты, в данном случае компонент стрелочного индикатора.

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

Читать дальше →
Total votes 12: ↑12 and ↓0 +12
Comments 0

О маленьком хранителе точного времени

Reading time 9 min
Views 17K

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

Total votes 35: ↑35 and ↓0 +35
Comments 32

Точное саратовское время

Level of difficulty Medium
Reading time 12 min
Views 13K

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

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

Читать далее
Total votes 67: ↑67 and ↓0 +67
Comments 76

Как выглядит край Вселенной?

Level of difficulty Easy
Reading time 7 min
Views 51K

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

Но в одном мы уверены точно: у Вселенной есть край. Только не в пространстве, а во времени. Поскольку горячий Большой взрыв произошёл в известное, конечное время в прошлом — 13,8 миллиарда лет назад, с неопределённостью менее 1% — существует «край» того, как далеко мы можем видеть. Даже при скорости света, предельной космической скорости, существует фундаментальный предел того, как далеко назад мы можем заглянуть. Чем дальше мы смотрим, тем дальше назад во времени мы заглядываем. И вот что мы видим, приближаясь к краю Вселенной.
Читать дальше →
Total votes 102: ↑99 and ↓3 +96
Comments 141

Что делает ChatGPT… и почему это работает?

Level of difficulty Medium
Reading time 75 min
Views 133K

То, что ChatGPT может автоматически генерировать что-то, что хотя бы на первый взгляд похоже на написанный человеком текст, удивительно и неожиданно. Но как он это делает? И почему это работает? Цель этой статьи - дать приблизительное описание того, что происходит внутри ChatGPT, а затем исследовать, почему он может так хорошо справляться с созданием более-менее осмысленного текста. С самого начала я должен сказать, что собираюсь сосредоточиться на общей картине происходящего, и хотя я упомяну некоторые инженерные детали, но не буду глубоко в них вникать. (Примеры в статье применимы как к другим современным "большим языковым моделям" (LLM), так и к ChatGPT).

Читать далее
Total votes 248: ↑248 and ↓0 +248
Comments 121

«Перспективный вид общественного транспорта для больших и средних городов» — главная идея в кратком пересказе

Level of difficulty Easy
Reading time 9 min
Views 4.1K

(источник)

Зачем нужна еще одна статья


Недавно я опубликовал цикл статей “Дешевый как автобус, удобный как такси ...”:

Ссылка на Часть1: «Предварительный анализ» (ру / eng )
Ссылка на Часть2: «Эксперименты на торе» (ру / eng )
Cсылка на «Часть3: Практически значимые решения» (ру / eng )

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

Должен признаться, что три предыдущие три статьи были написаны так, чтобы прочитавший их человек сумел применить полученные знания на практике или продолжить начатые мной исследования самому. К сожалению, мое желание «научить» вылилось в почти 100 страниц не самого простого математического текста, что явно много для читателей, которые хотели бы просто познакомиться с идеей. Здесь я попытаюсь исправить эту ошибку и рассказать о технологии автобусного такси хоть и поверхностно, но зато достаточно коротко и просто.
Читать дальше →
Total votes 18: ↑12 and ↓6 +6
Comments 80

LoRa one love. Почему стандарт разочаровал коммунальщиков, но зашёл на заводах

Reading time 6 min
Views 25K

В 2019 году я был на очередной конференции по IoT и до гостиницы меня подвозил местный коллега. По пути мы обсуждали умное ЖКХ и, конечно же, коснулись LoRaWAN. Коллега сказал фразу, которая надолго мне запомнилась: «Мне кажется, будто рынок сопротивляется внедрению Лоры».

Да, в 2019-м именно так всё и было. Лору тогда попробовали внедрить в ЖКХ и в промышленности. Проекты строили с огромным упорством, взлетали они тяжело, часто сразу падали. После общего подъёма и веры в тему IoT парой лет ранее столкновение с реальностью воспринималось болезненно. Но уже тогда я потихоньку начал признаваться себе: не будет Лоры в каждом утюге. Очень уж ограничен круг её использования. А всякие NB-IoT и Wi-Fi 6 её просто добьют. 

Каково же было мое удивление, когда в 2022 году технология обрела вторую жизнь! Несколько крупных игроков (ММК, Сибур) начали развёртку сети на своих заводах. 

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

Читать далее
Total votes 58: ↑57 and ↓1 +56
Comments 98

GPT-3. Есть проблема побольше, чем потеря рабочих мест

Level of difficulty Easy
Reading time 6 min
Views 73K

В моей книге “Просто о мозге” была ещё одна глава, которую я удалил перед публикацией. Она называлась “Будущее”. В ней я приводил прогнозы развития человечества на основе того, что сейчас известно о мозге. Глава получилась грустной, а мне хотелось, чтобы книга заканчивалась на позитивной ноте.

Поэтому расскажу три прогноза оттуда здесь. Они хорошо перекликаются с хайпом вокруг GPT-3 и позволяют по-новому взглянуть на всё, что происходит.

///

Прогноз первый. Нейросеть-президент.

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

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

Моральная проблема чуть сложнее. Звучит она примерно так: “Чтоооо?! Да никогда мы не позволим компьютеру принимать столь важные решения!”. Давайте все дружно крикнем вслух, как называется решение этой проблемы. Раз! Два! Три! Беспилотное Такси!

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

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

Ещё два предсказания
Total votes 194: ↑161 and ↓33 +128
Comments 766

Information

Rating
1,018-th
Location
Белгород, Белгородская обл., Россия
Registered
Activity