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


    Не всем известна опция разработки оборудования на заказ. Для большинства промышленных контроллеров не нужен «дальний космос» в виде уникального функционала или дизайнерского корпуса. При удачном выборе подрядчика, имеющего необходимые наработки, за 2-3 месяца можно сделать опытные образцы, а еще через пару месяцев — начать серийное производство. Разработка может окупиться за счет использования недорогой элементной базы и реализации нужного количества функций под конкретный проект. Комплекс оборудования на объекте будет состоять из минимального количества устройств (часто одного), а значит будет меньше работ по сборке, установке и пуско-наладке.

    Заказная разработка «железа» давно не является уделом избранных заказчиков с огромными бюджетами. Однако, имеется ряд особенностей, с которыми лучше ознакомиться на собственном чужом опыте до начала проекта.
    Любопытно
  • [recovery mode] Почему топовым физикам не нравятся голые сингулярности

    Роджер Пенроуз стал лауреатом Нобелевской премии по физике 2020 года за теоремы о формировании черных дыр, которые он доказал совместно с Хокингом еще в 1960-70х годах. Поздравляем!


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


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

    Читать дальше →
  • [Перевод] Как предоставить табличные данные и сохранить при этом конфиденциальность
    Продолжаем тему информационной безопасности и публикуем перевод статьи Coussement Bruno.

    Добавить шум к существующим данным, добавить шум только к результатам операций над данными или генерация синтетических данных? Доверимся интуиции?
    Читать дальше →
  • NeoPixel + ESP8266 + PLYWOOD = WALL LAMP «BATMAN» (part 1)

    Номинант на премию «БОМЖ-ПРОЕКТ ГОДА» 2020

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

    P.S. Осторожно, много картинок!

    Читать далее
  • /proc/meminfo + gawk = удобный JSON для discovery метрик в zabbix

    В работе над одной задачей понадобилось добавить в мониторинг все счетчики памяти находящиеся в /proc/meminfo

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

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

    Читать далее
  • Мнемоника и английский язык: как ошибки превратить в победы


    Ученые подсчитали, что объем памяти самого обычного человека примерно равен 2,5 петабайт информации. Больше 2,5 миллионов гигабайт — это примерно 35,5 лет непрерывной записи видео в формате Full HD.

    Но как ни странно, с таким мощнейшим суперкомпьютером в голове мы часто не можем запомнить элементарные вещи. Возьмем, к примеру, английский.

    «Affect» или «effect»? «Complement» или «compliment»? В каких случаях нужно использовать «than», а в каких — «then»? Как правильно писать слово: «neccessary», «neccesary» или «necessary»? И таких примеров сотни.

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

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


    На хабре всё чаще проскакивают различные интересные посты о том, как кто-то собрал очередной паровой двигатель, либо какое-то устройство работающее на паре. Оно и понятно, каждому какой-то момент надоедает гипнотизировать монитор, и душа просит моря, приключений и романтики, но с инженерным подходом. Что может быть романтичнее парового двигателя, да ещё и установленного на корабле? Поскольку в асфальтовых джунглях нет возможности развернуть полноценную судоверфь, то можно поразвлечься на столе. Здесь расскажу о некоторых своих экспериментах, а так же то что удалось откопать на просторах сети. Читать дальше →
  • Архитектура финансового сервиса — доклады c ЮMoneyDay
    Совсем недавно мы героически провели первую онлайн-конференцию ЮMoneyDay — 7 часов наши ИТ-специалисты в прямом эфире рассказывали о своем опыте и отвечали на всевозможные вопросы слушателей. Теперь мы хотим поделиться полезными материалами и на Хабре.

    Начинаем с докладов направления «Архитектура». Под катом вы найдете видео выступлений экспертов с таймкодами. Приятного просмотра!

    Читать дальше →
  • [Перевод] Введение в Spring Data JDBC

    Spring Data JDBC был анонсирован в 2018 году. Целью было предоставить разработчикам более простую альтернативу JPA, продолжая при этом следовать принципам Spring Data. Подробнее узнать о мотивах, лежащих в основе проекта, вы можете в документации

    В этой статье я покажу несколько примеров использования Spring Data JDBC. Здесь не будет подробного руководства, но, надеюсь, приведенной информации хватит, чтобы попробовать его самостоятельно. Очень хорошо, если вы уже знакомы со Spring Data JPA. Исходный код вы можете найти в github.

    Для быстрого старта я использовал этот шаблон.

    Читать далее
  • [Перевод] Отправка ответа с Коа

    Koa - это небольшой фреймворк, позволяющий создавать бэкэнд-приложения, работающие на платформе Node.js.

    В этой статье мы рассмотрим, как отправлять различные типы ответов с помощью Koa.

    Читать далее
  • Разрабатывайте приложение для друзей

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

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

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

    Создавайте сценарий логичного и очевидного общение друга с вашим приложением.

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

    Друг может нервничать, спешить или просто эта информация «выпала» на некий момент и не вспомнилась в данный момент другу.

    Даёт ли приложение консистентные сообщения, чтобы друг ориентировался не только на сущность обратной связи, но и по внешним характеристикам обратной связи, мог многое понимать по внешним атрибутам? Не путают ли характеристики обратной связи друга в течении времени, в разных фрагментах приложения, при разных действиях?

    Друг может быстро взглянуть на сообщение, на интерфейс, быть невнимательным, быть рассеянным.

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

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

    Read more
  • Практические методы оптимизации запросов в Apache Spark
    После вводной статьи про Spark Shell мне хотелось бы рассмотреть некоторые приемы оптимизации запросов в Spark и Hive, и сравнить их с теми, что обычно применяются в классических СУБД типа Oracle или MS SQL.

    Базовая модель данных


    Рассмотрим разные техники на базе известной всем модели библиотеки. И так, у нас есть книги, они разложены по полкам в шкафах. Шкафы пронумерованы, если библиотека большая — то к шкафу еще прилагается и номер комнаты. Книги разложены в определенном порядке, это «физический» порядок, его можно поменять — но это сложно и долго. Даже если у нас «всего лишь» такая библиотека, как у российских императоров:


    А тем более если такая, как в Тринити колледже в Дублине:


    Кроме этого, у нас есть каталожные шкафы, где размещены карточки книг. Карточки разложены в логическом порядке, и этих порядков может быть больше одного. Например, алфавитный порядок по названию книги, алфавитный порядок по фамилии автора (авторов и названий бывает несколько, например русское и английское названия), возможно еще какой-то тематический порядок (в жизни бывает редко, так как в оффлайн библиотеке поддерживать даже два порядка уже сложно).
    Читать дальше →
  • Самые популярные языки программирования. Хабратоп 2020 года
    Мы тут решили подбить предварительные итоги года и проанализировать рейтинги популярности языков программирования. Как менялась популярность ЯП и какие языки в 2020 году считаются топовыми, читайте в этой статье.


    Ситуация с ЯП очень похожа на события этого фильма. Узнали же из какого?
    Приятного чтения!
  • Где криптовалюте жить хорошо: страны с благоприятными для крупных игроков законами и факторы роста


    Сегодня хотел бы поговорить о, возможно, не самой популярной здесь, но весьма интересной теме — криптовалютах. А именно — странах, где с ними выгодно работать, причинах, которые привели к росту и постепенном улучшении ситуации на рынке криптовалют для крупных игроков. Своим видением по этой теме поделился Сергей Шанаев, директор по СНГ в компании Copper, платформе, предоставляющей институциональным игрокам решения для хранения и торговли цифровыми активами.

    Биткоин показывает необычайно активный рост. В октябре, например, его стоимость подскочила сразу на 30%, а ноябрь он закрыл с 40% прибылью для инвесторов, повторив достижения криптовалюты 2016-2017 годов. Сейчас рекорд 2017 года так и вовсе побит. Но отличие от 2017 в том, что сейчас сильного падения быть не должно — на рынок вышли реально крупные игроки.
    Читать дальше →
  • Конструктивные сборки в nanoCAD Конструкторский BIM


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

    Не откладывая знакомство с новинкой в долгий ящик, давайте подробнее рассмотрим работу инструмента, изучим его настройки, а ближе к концу статьи я поделюсь с вами одним очень полезным лайфхаком…
    Читать дальше
  • Учебный видео-курс по арифметике с плавающей запятой в формате IEEE-754. Часть I
    Арифметика с плавающей запятой хорошо понятна далеко не всем программистам. Раньше я работал в разных IT-фирмах и с удивлением обнаруживал, что даже опытные программисты теряются, когда возникает задача подобрать для сравнения двух чисел с плавающей запятой в коде вроде такого:

    if (abs (a-b) < EPS) . . .

    Они наивно выбирали одно и то же число типа 1e-8 для всех своих проектов, создавая тем самым потенциальное место проявление суровых ошибок. Более того, они пытались сравнивать два числа типа double вот так:

    if (a < b) . . .

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


    Читать дальше →
  • Советская IBM-PC Электроника МС-1502

    Хочу познакомить вас с одним из компьютеров из моей коллекции. IBM PC-совместимый советский домашний компьютер. Разработан в НПО «Микропроцессор» г. Киев, выпускался на заводе «Континент» в г. Зеленодольске, на заводе «Элекон» в г. Казань.

    Электроника МС 1502 — советский персональный компьютер на процессоре КМ1810ВМ88, аналог IBM PC XT на базе процессора Intel 8088. Конструктивно представлял собой моноблок с клавиатурой, встроенным блоком питания, видеоконтроллером, контроллером магнитофона и контроллерами портов ИРПР-М и ИРПС.

    Читать далее
  • Сенсорика для медицины и Умного дома — лекция Станислава Полонского

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

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

    Читать далее
  • [Перевод] Машинное обучение в Hum to Search от Google

    Навязчивые мелодии (англ. earworms) – хорошо известное и порой раздражающее явление. Как только одна из таких застревает в голове, избавиться от нее бывает довольно трудно. Исследования показали, что так называемое взаимодействие с оригинальной композицией, будь то ее прослушивание или пропевание, помогает прогнать навязчивую мелодию. Но что, если вы не можете вспомнить название песни, а можете только напеть мотив?
    Читать дальше →
  • Анонсируем новую версию Rightech IoT Cloud v2.2. Небольшой обзор
    Всем привет!

    В рамках нашего блога мы планируем делиться не только историями и опытом, но также освещать последние нововведения и изменения, связанные с платформой Rightech IoT Cloud (RIC).

    Недавно мы опубликовали версию RIC v2.2. А теперь рассказываем, что же именно вошло в релиз этого квартала.

    Ну что, погнали?

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

    • Import/export сущностей платформы, а именно моделей, объектов и автоматов.
    • Обработку ошибок в редакторе автоматов.
    • RIC-app — упрощенную мобильную версию платформы.


    Читать дальше →