Pull to refresh
55
0
Калягин Евгений Игоревич @eugenk

Программист, в основном железячник

Send message

Домашняя биотехнологическая лаборатория — начало

Reading time15 min
Views28K

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

О том, как из нескольких орхидей возникла целая лаборатория микроклонального размножения, под катом…

Читать далее
Total votes 95: ↑94 and ↓1+126
Comments63

Едем на солнечной энергии. Солнечное зарядное устройство для электровелосипеда. Часть 1

Reading time9 min
Views18K

Здравствуйте, уважаемые читатели Хабра. Меня зовут Илья.
Одним из занятий, которому я посвятил значительную часть своей жизни - является электротранспорт.
Особое внимание я уделяю экзотике в сфере электротранспорта: электрические летательные аппараты, использование солнечной энергии для заряда аккумуляторов и т.д.

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

Всего на электровелосипеде преодолено более 92 тыс. км за 10 лет, из них 3000 км было преодолено на солнечной энергии (2021-2022 г), поэтому накопился определенный инженерный и эксплуатационно-технический опыт, которым есть возможность поделиться в данной статье.

Читать далее
Total votes 52: ↑51 and ↓1+63
Comments37

Используем клиентский процессор по максимуму. Часть 1: Rust + WebAssembly

Reading time19 min
Views11K

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

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

Прирост производительности при использовании всех техник оптимизации по сравнению с реализацией на чистом JS может составлять ~1000%: от 8–9 до 100–110 фпс. Это можно проверить на интерактивном онлайн-демо, позволяющем также поиграться с числом потоков, способом вычислений и формой фрактала.
Читать дальше →
Total votes 64: ↑64 and ↓0+64
Comments9

Функциональные языки в разработке аппаратуры

Reading time8 min
Views14K
Функциональные языки, как правило, не слишком подходят для низкоуровнеого программирования, хотя и применяются для кодогенерации.

Примеры проектов
генерация безопасного кода на C (используется в лаборатории Касперского) Ivory, поддержка реактивного программирования на Arduino, и так далее Atom, Ion

Но если спуститься еще ниже, на уровень аппаратуры, то неожиданно ФП оказывается очень кстати. Ведь блок комбитаторной логики не что иное, как функция из величин входящих сигналов в величины исходящих, а для последовательной логики достаточно добавить в параметры и результат старое и новое состояние.
так как же это работает
Total votes 37: ↑37 and ↓0+37
Comments20

Суперскалярный стековый процессор: скрещиваем ужа и ежа

Reading time11 min
Views13K

В данной статье мы будем разрабатывать (программную) модель суперскалярного процессора с OOO и фронтендом стековой машины.
Читать дальше →
Total votes 16: ↑16 and ↓0+16
Comments16

Три года я работал в VSC – и переключился на Lite

Reading time4 min
Views17K
Lite на моём компьютере с Linux, снято автором. Фотография ноутбука с Linux и редактора Lite, который выполняется на ноутбуке

Вероятно, Lite подойдёт программистам, которым не нужно слишком много функций, чтобы писать код. Редактор создал впечатление Notepad++, урезанного в сторону Блокнота. В нём есть очарование минимализма и любопытный исходный код, но хотя бы небольшого обзора на Хабре не было до сих пор. Я исправляю ситуацию. Не лишним будет сказать, что автор оригинала – разработчик веб-фреймворка Neutralinojs, публикации о котором есть на Хабре, а также член комитета управления проектами в Apache Software Foundation.
Читать дальше →
Total votes 11: ↑11 and ↓0+11
Comments41

Разводка регулярных структур в KiCAD: путь лентяя

Reading time11 min
Views4.9K
image

Я в одной из предыдущих статей писал — я, фактически, безработный. Юридически — нет, во-первых я пенсионер, но вполне мог бы и работать. Во-вторых, вроде как и работаю в одной маленькой фирме из двух человек, но последний год у нас с контрактами напряженка. С голоду не умираем, пенсии вполне достаточно на жизнь, но ведь развлекаться как-то надо?
Время от времени от скуки публикую статьи-обзоры на сайте шопоголиков, администрация сайта даже денег довольно-таки регулярно за это дает. Очень хорошая отмазка для супруги — нет, я не шопоголик, это я, вроде как, при деле. И вот здесь взялся публиковать статейки — если на том сайте такие публиковать, только минусов нахватаешь — типа ты что, слишком умный, что ли? — а вот на тебе минус и не балуй. И в следующий раз пиши про какую-нибудь мыльницу.
Читать дальше →
Total votes 32: ↑31 and ↓1+40
Comments13

Jammer: глушим GSM, 3G, 4G, WiMAX, Yota

Reading time3 min
Views225K
Мы живем в свободной стране. Любой может приобрести «игрушку», за которую в США светит штраф $112,000 (джаммеры так же признаны вне закона в Англии, Странах Евросоюза, Австралии, Канаде, Индии, Сингапуре и пр)

Пока есть возможность («пока лопух не догадался»), я взял на обзор одну из популярных гражданских глушилок.

Обзор 5-канальной глушилки ГРН40-А5

В 2012 году обсуждался вопрос широкого использования GSM-глушилок в общественных местах.
В 2014 российские разработчики представили свой аппарат для ЕГЭ.
В 2014 журнал «Хакер» признал глушилки (jammer) полезным гаджетом.
В феврале 2015 года африканский злоумышленник протащил глушилку в парламент.

Что интересно, началась веселуха и на глушилки появляются антиглушилки (и обнаружители глушилок), а на них в свою очередь появляются глушилки антиглушилок и тд.
ТТХ
Общая выходная мощность: 12 Вт
Размер прибора: 21*17*6 мм
Вес устройства: 2 кг
Питание: АС:110/220V — DC:5V, 12A
Потребляемая мощность устройства: 30 Вт
Подавляемые системы:
CDMA-800, GSM-900 и GSM-1800, PHS-1900, 3G, 4G, LTE, WIMAX
Рабочие температуры -40℃ to +55℃
Расстояние эффективного подавления регулируемое, от 1 до 80 м (в зависимости от близости базовой станции и прочих условий)


Читать дальше →
Total votes 46: ↑37 and ↓9+28
Comments32

Дефицит есть, а денег не дают. Почему?

Reading time27 min
Views296K

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

Читать далее
Total votes 512: ↑497 and ↓15+588
Comments1205

Дефицит специалистов не только в IT — он везде. Но денег не платят

Reading time17 min
Views199K

Когда мы писали про рост зарплат в IT, то выяснили, что они растут из-за дефицита специалистов и выравнивания значений по уровню западных зарплат. Но оказывается, что дефицит есть везде. Абсолютно везде. Не хватает учителей, врачей, строителей, металлургов, водителей, инженеров и даже курьеров. На рынке повальный дефицит специалистов, которым предлагают зарплаты на уровне Молдавии или Республики Косово.

Читать далее
Total votes 368: ↑352 and ↓16+408
Comments1017

STM32H7 — настройка тактирования без HAL

Reading time4 min
Views20K
Не так давно компания STM выпустила на рынок очень мощную, по меркам микроконтроллеров, линейку кристаллов STM32H7. Что меня в ней привлекло:

  • повышенная частота ядра до 400 МГц
  • увеличенный объем ОЗУ, до 1 МБ
  • 16 разрядный АЦП
  • pin-to-pin совместимость с серий F7

Отлично подумал я, запаял на плату кристалл STM32H743IIT6 вместо STM32F746IGT6 и начал новый проект в SW4STM32.
И вот что из этого получилось.
Total votes 26: ↑20 and ↓6+14
Comments54

1982: The Hobbit

Reading time12 min
Views16K

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

На востоке расположена круглая зелёная дверь.

Вы видите:

    Деревянный сундук.

    Гэндальфа. У Гэндальфа странная карта.

    Торина.

Гэндальф отдаёт вам странную карту.

Торин ждёт.

Читать далее
Total votes 50: ↑49 and ↓1+67
Comments20

Лунный звездный месяц (27.32 дней), лунный месяц по фазам Луны (29.5306 дней) в радиоактивном распаде

Reading time6 min
Views3.3K

Эта статья продолжение серии публикаций по эффекту Шноля - космо-физических циклов проявляющихся в случайных процессах (прежде всего в радиоактивном распаде). Здесь приведенный алгоритм используется и в данной статье. Изменение косметические (графики вероятностей не двигаются до более полного совпадения по дистанции Эвклида). Данные предоставлены пользователем - 48 дней с 19 декабря 2012 года по 6 февраля 2013 года распад стронция-90, измерение дозиметром ДП-5В.

Читать далее
Total votes 11: ↑3 and ↓8-3
Comments23

Nuklear — идеальный GUI для микро-проектов?

Reading time7 min
Views66K

Nuklear — это библиотека для создания immediate mode пользовательских интерфейсов. Библиотека не имеет никаких зависимостей (только C89! только хардкор!), но и не умеет создавать окна операционной системы или выполнять реальный рендеринг. Nuklear — встраиваемая библиотека, которая предоставляет удобные интерфейсы для отрисовки средствами реализованного приложения. Есть примеры на WinAPI, X11, SDL, Allegro, GLFW, OpenGL, DirectX. Родителем концепции была библиотека ImGUI.


Чем прекрасна именно Nuklear? Она имеет небольшой размер (порядка 15 тысяч строк кода), полностью содержится в одном заголовочном файле, создавалась с упором на портативность и простоту использования. Лицензия Public Domain.

Читать дальше →
Total votes 109: ↑107 and ↓2+105
Comments80

Ковид-пандемия: взгляд ковидоскептика

Reading time62 min
Views157K


Роман Левентов leventov
Довожу до вашего сведения, что я отправил ссылку на ваш пост в интернет-приемную sledcom.ru. За распространение фейков сейчас есть административная и уголовная ответственность: www.garant.ru/news/1362894. Можете считать это чем угодно, заговором, цензурой, и т. д. но надеюсь что у вас сработает инстинкт самосохранения.



Port5 Роман всё правильно сделал, респект ему.







When they say «trust the science», they really mean «don't ask questions».

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

Любые проблемы всегда выдаются за «отдельные недостатки», за «случайные инциденты». И отдельные факты действительно могут казаться такими, если не представлены в комплексе. Только общий взгляд на последовательность событий помогает выявить закономерность.

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

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

В самом начале событий мы не имели практически никакой информации и оперировали в основном догадками, но ближе к настоящему моменту ситуация прояснялась — хотя нельзя сказать, что она стала менее подозрительной, скорее даже более. Впрочем, вы сами это увидите.
Читать дальше →
Total votes 313: ↑131 and ↓182-13
Comments2354

Генератор фракталов и математика внутри нас

Reading time8 min
Views8.7K

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

Приглашаю отведать салат из разнородных, но неожиданно связанных друг с другом тем:

- Почему нам нравится симметрия и фракталы? И как это влияет на выживаемость?

- Как математика связана с эмбриональным развитием?

- Сколько старинных программ ещё надо спасти от неумолимого времени?

- Конкурс красоты среди фракталов.

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

Читать далее
Total votes 18: ↑18 and ↓0+18
Comments14

Реверс-инжиниринг QR-кода для доказательства вакцинации

Reading time8 min
Views31K
image

Когда Квебек объявил, что будет рассылать электронные письма с подтверждением вакцинации всем, кто был вакцинирован с помощью прикрепленного QR-кода, у меня немного подкосились колени. Мне не терпелось разобрать его на части и покачать головой из-за количества частной медицинской информации, которая, несомненно, будет раскрыта в процессе.

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

Мое первое впечатление было: «Боже мой, это излишне большой QR-код». Под QR-кодом перечислено не так много информации, поэтому они наверняка кодируют все виды личной информации без моего ведома. Знаете, как тот штрих-код на обратной стороне ваших водительских прав.

Естественно, первое, что я сделал, — отсканировал код с помощью приложения QRcode.
Читать дальше →
Total votes 21: ↑15 and ↓6+12
Comments11

Безопасность встраиваемых систем Linux

Reading time24 min
Views16K
Embedded Linux security

Весь наш мир построен на противоположностях. Если вы создаете свое устройство и продаете его, то всегда найдется тот, кто захочет его взломать. Цели у злоумышленника буду самыми разными, от попыток сделать клон устройства (привет Китаю) до шантажа конечных потребителей, что весьма ухудшит вашу репутацию с точки зрения изготовления надежных устройств. И чем популярнее система на основе которой построено устройство, тем интереснее она злоумышленнику. В последнее время активно развивается сегмент одноплатных компьютеров, таких как Raspberry Pi, и множества других. Linux системы по распространенности использования во встраиваемых систем, вышли на первые места. Большая функциональность устройств, например наличие разных беспроводных интерфейсов коммуникаций, в совокупности с большими возможностями ОС Linux, привела к серьезной необходимости организации защиты устройства. Некоторые думают, что достаточно отключить учетную запись root и установить надежный пароль, но на самом деле это только малая часть того, что следует сделать. Какие технологии и концепции используются для снижения рисков и реализации более безопасного устройства работающего на Linux узнаете под катом.
Читать дальше →
Total votes 30: ↑29 and ↓1+40
Comments19

Blender: 3D-модель микросхемы для подключения в библиотеке KiCad

Reading time6 min
Views11K
Когда проектируешь печатные платы, часто возникает потребность добавить трёхмерную модель электронного компонента на плату. Но не всегда получается найти готовый файл в интернете. Нарисовать такую модель с помощью CAD-программы труда не составляет: задать параметры корпуса и выводов дело десяти минут, если, конечно, нужна габаритная модель а не фотореалистичная картинка.

Но есть проблема: профессиональный CAD-редактор стоит не дёшево, а свободно распространяемые не всегда удобны в использовании.

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

Читать дальше →
Total votes 54: ↑52 and ↓2+50
Comments21

Как мы верифицированный полетный контроллер для квадрокоптера написали. На Ada

Reading time10 min
Views20K

Однажды на новогодних каникулах, лениво листая интернет, бракоделы в нашем* R&D офисе заметили видео с испытаний прототипа роботакси. Комментатор отзывался восторженным тоном – революция, как-никак. Но тренированное ухо расслышало в шуме с испытательной площадки еще кое-что. Контроллер скорости (штука для управления тягой винтов) сыграл мелодию при старте, как это любят делать пилоты дронов, которые часто используют полётный контроллер Betaflight. Неужели там бета-флайт? Ну, или какая-то из ее немногих разновидностей.

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

После просмотра исходного кода Betaflight на гитхабе стало еще страшнее, и чем дальше, тем хуже. Это – управляющая программа для тяжелого устройства с острыми винтами, которое летает высоко, быстро. Становится страшно: игрушки это одно, но я бы не хотел летать, на таком такси. Но ведь можно иначе? Можно, решили мы! И решили это доказать. На Avito был куплен акробатический FPV-“квадрик” на базе STM32F405, для отладки – Discovery-платы для этого же контроллера, а дальше все как в тумане..

Читать далее
Total votes 70: ↑68 and ↓2+88
Comments58

Information

Rating
5,999-th
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity