Как стать автором
Обновить
1
0

Пользователь

Отправить сообщение

Разбираем протокол Dyson. Интеграция с Home Assistant

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров6K

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

В моём случае случилось так, что был приобретён очиститель воздуха Dyson Air purifier TP07, который должен стоять на страже чистоты воздуха в одной из комнат. Он исправно несёт свою службу, вот, только просто подключить его к Home Assistant (HA) не представляется возможным. В купленной модели отсутствует модуль Wi-fi. Что же делать? Будем ревёрсить. В данной статье будет разобран формат диагностических данных очистителя Dyson, которые можно считать и направить в HA.

Читать далее
Всего голосов 34: ↑34 и ↓0+34
Комментарии8

GBDev #1: разработка игр под Game Boy. История, инструменты, ресурсы

Время на прочтение8 мин
Количество просмотров5.3K

Как-то так получилось, что работая в редакции, мне часто приходилось писать новостные заметки про Game Boy. Про ту саму легендарную консоль, буквально перевернувшую идею гейминга и позволившую играть везде, а не быть привязанным к телевизору или монитору. Я писал про порты современных игр на платформу 1989 года и мне стало интересно узнать, как же писали и продолжают писать игры под Game Boy. За все это время мне удалось узнать много нового, разобраться в деталях и теперь я готов поделиться этим.

Читать далее
Всего голосов 26: ↑26 и ↓0+26
Комментарии3

Настройка AWS Auto Scaling Group (ASG) на основе использования оперативной памяти

Время на прочтение7 мин
Количество просмотров2.8K

Всем привет!

Сегодня я хотел бы поделиться опытом настройки AWS Auto Scaling Group (ASG) на основе использования оперативной памяти (RAM).

Всё началось с того, что на одном из проектов нам понадобилось настроить масштабирование EC2-инстансов по использованию памяти, а стандартный ASG Target Tracking Scaling Policy позволяет создавать политики только на основе следующих метрик: среднее использование ЦПУ, средний входящий или исходящий сетевой траффик и количество запросов на цель ALB...

Читать далее
Всего голосов 5: ↑4 и ↓1+3
Комментарии2

Метеостанция на Banana Pi M64 (Linux, C#, Docker, RabbitMQ, AvaloniaUI)

Время на прочтение37 мин
Количество просмотров12K
Weather station Banana Pi BPI-M64 Linux C# Docker RabbitMQ AvaloniaUI

Статей о создании метеостанции на базе Arduino не счесть. Можно сказать, если статья про метеостанцию, то это про микроконтроллеры Arduino, ESP32 или STM32. Но только не в этот раз. Будем запускать метеостанцию на Banana Pi BPI-M64 под Linux, без использования Arduino-подобных оберток в виде WiringPi, на C# .NET5. Пример метеостанции является демонстрацией встраиваемого решения работы с GPIO, датчиками и вывода пользовательского интерфейса напрямую на LCD. В решении используется: Linux (Armbian) — основная ОС, .NET и C# — платформа для создания прикладного ПО, AvaloniaUI — графической интерфейс с интерактивными графиками и анимацией, Docker — инструмент для развертывания, управления, доставки приложений, RabbitMQ — брокер сообщений для передачи сообщений между контейнерами. Благодаря использованию универсального подхода и технологии Docker, приложение можно запустить не только на Banana Pi BPI-M64, но и на других Banana/Orange/Rock/Nano Pi одноплатных компьютерах, включая Raspberry Pi.
Читать дальше →
Всего голосов 20: ↑19 и ↓1+18
Комментарии62

Еще одна стажировка, или сказ про реверс IP-камеры

Время на прочтение14 мин
Количество просмотров11K

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

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

Далее вас ждет история о том, что я делал на стажировке в НТЦ "Вулкан".

Читать далее
Всего голосов 17: ↑17 и ↓0+17
Комментарии6

Стерео пост // Как сделать

Время на прочтение2 мин
Количество просмотров5.4K

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

Для того, чтобы показывать дизайн своей игры с текстовыми параллакс-слоями, я решил использовать такую возможность Фейсбука, как 3D-изображения. Оказалось, что сделать их достаточно просто.

Читать далее
Всего голосов 30: ↑30 и ↓0+30
Комментарии6

Манускрипт Войнича. Маньчжурский кандидат

Время на прочтение29 мин
Количество просмотров84K
Манускрипт Войнича (МВ или VMS) называют чашей Грааля криптографии. За несколько сотен лет тысячи человеко-дней были потрачены и продолжают тратиться в попытках разгадать его смысл и перевод. Причем пытались люди очень разные, в том числе выдающиеся мировые криптографы. Пока что получается не очень. Две с небольшим сотни пергаментных страниц, неизвестный алфавит, неизвестный язык, каллиграфический уверенный почерк, десятки рисунков неизвестных растений и обнаженных женщин, купающихся в странных каналах, зодиакальные астрологические диаграммы — множество зацепок, но пока ничего, что позволило бы дешифровать рукопись. Для любого, кто хоть чуть-чуть попробовал поразгадывать крючки, МВ представляется идеальной головоломкой — не имеющей пока известной разгадки.

image

Страница 16v


Видел несколько месяцев назад пост на Хабре про ацтекский язык и ботаников, опознавших несколько центрально-американских растений, но всё-таки достану из черновиков свои записи. Их цель — познакомить читателей с миром разгадывателей VMS и моим не очень глубоким анализом одной из относительно недавних гипотез — о маньчжурском языке манускрипта.

Читать далее: Fachys ykal ar ytaiin
Всего голосов 185: ↑182 и ↓3+179
Комментарии45

Шпаргалка по SOLID-принципам с примерами на PHP

Время на прочтение10 мин
Количество просмотров439K
Тема SOLID-принципов и в целом чистоты кода не раз поднималась на Хабре и, возможно, уже порядком изъезженная. Но тем не менее, не так давно мне приходилось проходить собеседования в одну интересную IT-компанию, где меня попросили рассказать о принципах SOLID с примерами и ситуациями, когда я не соблюл эти принципы и к чему это привело. И в тот момент я понял, что на каком-то подсознательном уровне я понимаю эти принципы и даже могут назвать их все, но привести лаконичные и понятные примеры для меня стало проблемой. Поэтому я и решил для себя самого и для сообщества обобщить информацию по SOLID-принципам для ещё лучшего её понимания. Статья должна быть полезной, для людей только знакомящихся с SOLID-принципами, также, как и для людей «съевших собаку» на SOLID-принципах.

Читать дальше →
Всего голосов 110: ↑100 и ↓10+90
Комментарии67

Японские мотоаукционы, как все происходит

Время на прочтение7 мин
Количество просмотров61K
Многие хорошо знают, что японская б/у техника имеет большее качество, чем б/у отечественное. Именно поэтому значительной популярностью пользуются специальные аукционы, проводимые в Японии — там местные жители предлагают собственный транспорт, у которого закончился гарантийный срок. Только подумайте — выставляются мотоциклы, скутеры и вообще байки, которым, в большинстве своем, исполнилось 3 или чуть больше лет, с минимальным пробегом. А он небольшой потому, что редко, когда приходится ездить на большие дистанции — для этого есть общественный транспорт.

image

В результате мы наблюдаем интересную картину — байк, прослуживший больше 3 лет (а иногда и после 10 лет использования), выглядит так, словно его практически не эксплуатировали. Но он продается дешевле новой модели, хоть при должном уходе сможет прослужить не меньше. И, что не менее важно, его не придется серьезно ремонтировать. Естественно, речь не идет о битом транспорте (как говорят — «на запчасти»), эксклюзивном или просто редком — там ситуация иная, да и цены совершенно другие.
Читать дальше →
Всего голосов 27: ↑15 и ↓12+3
Комментарии4

Про установку и использование LineageOS 16, F-Droid

Время на прочтение127 мин
Количество просмотров311K
Предлагаю вашему вниманию инструкцию как оптимально (по моему мнению) перейти на свободное программное обеспечение при использовании смартфона на примере операционной системы LineageOS (далее сокращённо LOS) и приложений из F-Droid.

Я думаю, что это статья будет вам интересна, даже если вы не можете установить себе LOS, так как в данной статье также рассмотрены стандартные настройки Android, настройки и методика использования полезных приложений, магазин приложений F-Droid, разрешения Android, которые нельзя ограничить и другие, возможно полезные для вас нюансы.
Читать дальше →
Всего голосов 74: ↑72 и ↓2+70
Комментарии192

Кругом враги. Как параноику планировать свою работу

Время на прочтение14 мин
Количество просмотров32K
Казалось бы, что сложного может быть в планировании своей работы? Берёшь листок бумаги, записываешь на нём задачи, делаешь — всё просто. Но в реальности планирование почему-то не работает «из коробки».



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

Сейчас расскажу, почему так происходит. А главное — какие из «250 способов все успевать» работают и за счет каких механизмов нашего мозга.
Читать дальше →
Всего голосов 61: ↑58 и ↓3+55
Комментарии27

Подборка датасетов для машинного обучения

Время на прочтение6 мин
Количество просмотров142K
Привет, читатель!

Меня зовут Рушан, и я автор Telegram‑канала Нейрон. Не забудьте поделиться с коллегами или просто с теми, кому интересны такие статьи.

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

Меньше слов, больше данных.

image

Подборка датасетов для машинного обучения:


Читать дальше →
Всего голосов 66: ↑64 и ↓2+62
Комментарии6

Полная история серии Fallout

Время на прочтение16 мин
Количество просмотров57K
image

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

Сегодня возвращение к первой игре напрягает — Fallout 1997 года была и остаётся невероятно сложной, бескомпромиссной игрой. Ошибёшься — погибнешь. Примешь неверное решение — погибнешь. Не ошибёшься и не примешь неверное решение — всё равно погибнешь. Это мрачная и серьёзная (по большей части) история, говорящая нам, что жизнь после конца мира в зареве ядерных взрывов действительно жестока.

«Я с детства был фанатом постапокалиптической литературы», — рассказывает исполнительный продюсер Fallout (и основатель Interplay) Брайан Фарго. «И Wasteland была первой моей попыткой принести что-то новое в этот жанр. Вскоре после завершения игры Wasteland компания Interplay стала издателем и мы перестали работать на других. Я пытался добиться, чтобы EA лицензировала мне мои права обратно, но этого не удавалось добиться в течение многих лет. Наконец я решил, что мы будем делать собственную постапокалиптическую игру и назовём её Fallout».
Всего голосов 55: ↑54 и ↓1+53
Комментарии133

Чек-лист: что нужно было делать до того, как запускать микросервисы в prod

Время на прочтение9 мин
Количество просмотров50K

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


К сожалению, некоторые невысокие программисты всерьёз полагают, что Dockerfile с какой-нибудь вообще любой командой внутри — это уже сам по себе микросервис и его можно деплоить хоть сейчас. Докеры крутятся, лавешка мутится. Такой подход оборачивается проблемами начиная с падения производительности, невозможностью отладки и отказами обслуживания и заканчивая кошмарным сном под названием Data Inconsistency.


Если вы ощущаете, что пришло время запустить ещё одну аппку в Kubernetes/ECS/whatever, то мне есть чем вам возразить.


English version is also available.

Читать дальше →
Всего голосов 138: ↑135 и ↓3+132
Комментарии71

Муравейник или крепость? Строю дом по цене квартиры. 4 часть. Комфорт или необходимость гаджетов дома?

Время на прочтение6 мин
Количество просмотров11K
Часть 1. Строительство
Часть 2. Отопление
Часть 3. Электроснабжение

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


Всего голосов 21: ↑15 и ↓6+9
Комментарии43

Bonsai: фамильный вики-движок

Время на прочтение13 мин
Количество просмотров21K

Лирическое вступление


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

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



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

Идеальным решением для хранения семейных данных мне представлялся гибрид вики-движка и фотоальбома. Готовых подходящих решений не оказалось, поэтому пришлось написать собственный. Он называется Bonsai и доступен с открытым кодом по лицензии MIT. Дальше будет история о том, как он устроен и как им пользоваться, а также история его разработки и немного ДРАМЫ.
Читать дальше →
Всего голосов 67: ↑67 и ↓0+67
Комментарии40

Чисти, размечай: как мы учили чатбот различать клиентские вопросы

Время на прочтение11 мин
Количество просмотров4.3K


Антон Чайников, разработчик Data Science, Redmadrobot
Привет, Хабр! Сегодня я расскажу о терниях на пути к чатботу, облегчающему работу операторам чата страховой компании. А точнее, как мы учили бота отличать друг от друга запросы с помощью машинного обучения. С какими моделями экспериментировали и какие получили результаты. Как сделали четыре подхода к чистке и обогащению данных приличного качества и пять попыток чистки данных качества «неприличного».

Читать дальше →
Всего голосов 15: ↑12 и ↓3+9
Комментарии2

Fuck Up story: как я разочаровался в digital-услугах для бизнеса и проимел своё дело (ну почти)

Время на прочтение14 мин
Количество просмотров58K
Это была славная охота.

Моя жизнь была посвящена ИТ-сфере. Я был инженером, создававшим интересные продукты для больших промышленных компаний. Моей географией была вся Россия, я вживую видел цеха КАМАЗа, ВАЗа и других автогигантов. Но всему в нашей судьбе настаёт предел, и я выгорел. О причинах расскажу как-нибудь в другой раз. Главное, что я, опытный разработчик и техник, ушёл на вольные хлеба и, поскольку у меня появилась семья, решил сделать бизнес — свой магазин товаров для детей, по особым принципам. В общем, как многие из программеров, сделать то, чего не достаёт мне среди предложений на рынке. И знаете, что? Я выяснил, что найти простейших, базовых, нужных профессионалов-подрядчиков очень сложно. Миллион фрилансеров и фирм, а выхлоп… Это был квест, и о нём я должен поведать миру. Не ходите по моим граблям.


Это самое лучшее, что описало моё состояние
Читать дальше →
Всего голосов 181: ↑175 и ↓6+169
Комментарии102

Зацените: сделал стол

Время на прочтение6 мин
Количество просмотров145K


TL;DR В статье описывается мой опыт постройки стола c нуля из фанеры. От проектирования до сборки.

Я очень долго страдал от плохих столов. Все они неудобные, плохого качества, маленькие и, самое главное, ШАТКИЕ. Более-менее приличные столы стоили тысячи долларов. В итоге я решил изготовить стол самостоятельно.

Основные требования к столу:

  • Устойчивость! Предметы на столе не должны трястись, если резко положить руки на стол или оттолкнуться от него. Мой стол весит ~120кг. С его края можно делать сальтухи, при этом на другом конце паять SMD компоненты.
  • Ширина и глубина столешницы. Столы шириной 60 см — это унижение. Мне нужно иметь запас по глубине, чтобы можно было отодвинуть ноутбук вперед, и при этом получить достаточное рабочее пространство.
  • Вместительность. Мне нужны полки, чтобы разместить там оборудование: паяльники, лабораторный блок питания, осциллограф, аудио усилитель и т.д. При этом полки должны быть так же устойчивы, как и стол.
  • Цена. Я не готов выложить за стол несколько тысяч долларов. Мой стол обошелся в ~$300 с учётом покупки всего инструмента для сборки и покраски.
Всего голосов 261: ↑250 и ↓11+239
Комментарии559

Database as Сode. Копаем глубже

Время на прочтение13 мин
Количество просмотров14K


В IT-проектах код пишут все. Инженеры с помощью нескольких строк управляют Kubernetes кластерами, разгоняют облака Terraform'ом и ворочают тонны конфигураций на Ansible, Chef и Puppet. QA пишут понятные бизнесу тестовые сценарии на Spock и Cucumber. Аналитики свободно, часто лучше разработчиков, разговаривают на SQL. Проектная документация в форматах Markdown, AsciiDoc или LaTEX "компилируются" в нужный формат на билд-сервере. Ну а сами разработчики, эти укротители кода, владеют сразу россыпью языков на каждый жизненный случай — клиентский, серверный, скриптовый, функциональный и пр.


Код уже давно перестал быть загадочной тарабарщиной и теперь в том или ином виде доступен и понятен многим, даже премьер-министрам. И весь этот код участвует в стандартном жизненном цикле — находится под управлением VCS, подвергается code review, автоматизированному тестированию, CI, CD. Используются общие инструменты и подходы, метрики производительности и качества. А все вместе это носит гордое название — "Everything as code".


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

Database as Code? Что за дичь?
Всего голосов 22: ↑22 и ↓0+22
Комментарии16
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Израиль
Зарегистрирован
Активность