Как стать автором
Обновить
1
0
Валерий @Vall

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

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

Cуществование DOU.ua в рамках украинского правового поля не представляется возможным

Время на прочтение1 мин
Количество просмотров21K
На главной странице сообщества украинских разработчиков DOU.ua сейчас висит следующий текст:
Cуществование DOU.ua в рамках украинского правового поля не представляется возможным. Хотите — забирайте.

Сервер: 178.79.140.30
Логин/пароль: root/bimba

Макс

Такой ответ на принятие Верховной Радой Украины ряда «законов про диктатуру».
Внутренние страницы сайта по-прежнему доступны.

Страница обсуждения Что с главной страницей DOU? на форуме сообщества.
Комментарии создателя сайта Макса Ищенко в твиттере:
12:05 «Без комментариев»
19:10 «Неизвестные получили контроль над хостингом DOU, поставили редирект douua.org»
Всего голосов 125: ↑95 и ↓30+65
Комментарии65

Тестирование на основе моделей

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

Картинка с unsplash.com

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

Принято считать, что тестирование следует после разработки ПО. В каком-то смысле это правда: нельзя проверить работающий продукт, пока он не готов. Однако в эпоху гибких методологий только ленивый не слышал про так называемый принцип «смещения влево», или shift left — включение специалиста по тестированию в процесс разработки продукта как можно раньше.
Как это возможно?
Сейчас разберемся!
Всего голосов 23: ↑23 и ↓0+23
Комментарии6

Zabbix: мониторим всё подряд (на примере Redis'а)

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

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


Правда я не могу сказать, что понимаю "философию Zabbix'а". Несмотря на обширную подробную документацию на русском языке, мне было сложно погружаться в мир Zabbix'а — создавалось ощущение, что мы с разработчиками одни и те же вещи называем разными именами. Возможно потому, что Zabbix создавался админами для админов, а я всё-таки больше разработчик и пользователь.


Тем не менее, для запуска Zabbix'а и для мониторинга основных параметров компьютерных систем (процессор, память и т.п.) навыков обычного linux-пользователя хватает. Есть большое количество плагинов от сторонних разработчиков, расширяющих возможности Zabbix'а. Для моих нужд мне потребовалось настроить мониторинг Redis-сервера. Я немного покопался в коде имеющихся плагинов и на их примере выяснил, что архитектура Zabbix'а позволяет достаточно просто подключать к мониторингу любые параметры информационных систем, которые могут быть выражены в числовом виде.


Под катом — пример Zabbix-плагина с моим пояснением по терминологии Zabbix'а. Кому-то этот пример покажется наивным, ну а кому-то поможет проще освоиться с понятиями. В любом случае, Zabbix достаточно велик для того, чтобы ощупать его с разных сторон.

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

Разработка плагинов для Zabbix Agent 2

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

На последнем Zabbix Summit 2019 вместе с выходом Zabbix 4.4 был анонсирован новый Zabbix Agent 2, ключевая фишка которого — возможность написания плагинов к нему на языке Go. И многие сразу стали спрашивать: а как же, собственно, эти плагины писать, как они устроены? Где взять документацию и примеры?


В этой статье я хочу дать ответы на эти и некоторые другие вопросы. Обо всём по порядку, но если вы из тех, кто сразу рвётся в бой, смело пропускайте вступительную часть и переходите к практике ⎝◔◞ ◔⎠


Итак...


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

Умный дом xiaomi правильнее, чем home assistant, но можно еще правильнее

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

В предыдущих сериях я:


  1. Накупил устройств от Xiaomi для умного дома и посредством паяльника заставил их работать в увлекательной манере — без родных серверов через home assistant (ссылка на пост)
  2. Завернул web interface от home assistant в electron (ссылка на пост) с поддержкой нотификаций, менюшек, точбара итд (код тут)
  3. Разобрал протокол miio со стороны рассылки сообщений (ссылка на пост) и реализовал поддержку всяческих кнопок в xiaomi_miio.

Со временем накопилось понимание как устроены разные инкарнации умных домов, с точки зрения реализации сценариев и протоколов взаимодействия. С этим знанием я наделал устройств и реализовал для них "правильную" распределенную среду программирования для IoT с lisp-ом, криптографией и сборкой мусора. Под катом поведаю о ходе и результате процесса.

Читать дальше →
Всего голосов 28: ↑26 и ↓2+34
Комментарии61

Разбор пакетов NetFlow v.9 на C#

Время на прочтение7 мин
Количество просмотров20K
NetFlow это сетевой протокол, созданный компанией Cisco Systems для учёта сетевого трафика. Наиболее распространёнными версиями данного протокола являются 5 и 9. Девятая версия более гибкая так как используются шаблоны, согласно которым присылаются данные. В пятой версии данные присылаются согласно спецификации.
image

Система сбора информации о трафике по протоколу NetFlow состоит из следующих компонентов:
  • Сенсор. Устройство (маршрутизатор, L3-коммутатор) собирающее статистику по проходящему через него трафику;
  • Коллектор. Занимается сбором данных от сенсора и помещает их в хранилище;
  • Анализатор. Анализирует данные, которые собрал коллектор и формирует отчёты.


О разработки части функций анализатора на C#, а точнее разбор пакетов NetFlow я и расскажу
Читать дальше →
Всего голосов 6: ↑5 и ↓1+4
Комментарии0

Умная хрущёвка на максималках

Время на прочтение10 мин
Количество просмотров63K
Моя статья про проводной умный дом была популярной на Хабре (159 тысяч просмотров) — в ней я описал положительный опыт от идеи до реализации умного дома в новостройке.

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

  1. мониторинг приборов учета;
  2. датчики контроля: домофона, температуры, шума, открытия дверей, ...;
  3. единая панель управления умным домом;
  4. подъездное видеонаблюдение;
  5. настенный дисплей для текущего времени и температуры за окном;
  6. освещение в квартире, включая кнопку «выключить всё»;
  7. удаленное обесточивание квартиры;
  8. удаленное перекрытие воды.


3D модель этой двухкомнатной квартиры 47 кв.м, которая была автоматизирована, нарисованная в Sweet Home 3D
Хрущёвка в полном фарше
Всего голосов 44: ↑42 и ↓2+58
Комментарии106

Яндекс открывает Testsuite

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


Сегодня мы открываем исходный код testsuite — фреймворка для тестирования HTTP-сервисов, который разработан и применяется в Яндекс.Такси. Исходники опубликованы на GitHub под лицензией MIT.

С помощью testsuite удобно тестировать HTTP-сервисы. Он предоставляет готовые механизмы, чтобы:

  • Взаимодействовать с сервисом через вызовы его HTTP API.
  • Перехватить и обработать HTTP-вызовы, которые сервис отправляет во внешние сервисы.
  • Проверить, какие вызовы во внешние сервисы сделаны и в каком порядке.
  • Взаимодействовать с базой данных сервиса, чтобы создать предусловие или проверить результат.
Читать дальше →
Всего голосов 45: ↑36 и ↓9+43
Комментарии28

Полная домашняя автоматизация в новостройке

Время на прочтение8 мин
Количество просмотров221K
Три года назад стал претворять свою давнюю мечту в реальность — максимальная домашняя автоматизация квартиры, купленной в новостройке с нуля. При этом «отделку от застройщика» пришлось принести в жертву умному дому image и полностью переделать, а вся электрика, не связанная с автоматикой приехала с известного китайского сайта. Паяльник не потребовался, но знающих мастеров, электриков и плотников пришлось искать долго.


Панель управления квартирой в феврале 2020 года (Home Assistant)

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


Строительство нашего дома в процессе — ноябрь 2016 года
Умный дом в самом соку...
Всего голосов 104: ↑101 и ↓3+132
Комментарии514

Что вы захотите знать до того, как писать приложение под Apple Watch: наш опыт

Время на прочтение8 мин
Количество просмотров13K
Вас ждёт очень медленная платформа, переход на новые фреймворки, тестирование с особой атмосферой и уведомления от ОС «эй, подвинься» за секунду до принудительной выгрузки треда.


Да, это моя волосатая рука

Наше расписание электричек смотрит в день 600 тысяч человек. Причём с каждым годом всё больше — через мобильное приложение. Мы подумали и решили сделать версию для часов. Проблема была в том, что мы не знали, сколько вообще Apple Watch есть на российском рынке, и сколько из них ездят в электричках. Но в любом случае надо было разбираться с тем, как это делать, поэтому мы взяли и написали в Apple с просьбой дать статистику.

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

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

Читать дальше →
Всего голосов 37: ↑37 и ↓0+37
Комментарии13

Шпаргалка по тестированию требований к мобильным приложениям

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

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


Статья ориентирована на тестировщиков, которых просят провести ревью ТЗ и найти в нём несоответствия, и на аналитиков, которым разработчики после прочтения ТЗ часто задают вопросы формата: «А что должно быть, если …?».

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

Сравнение React Native и Flutter с точки зрения их применения в реальных проектах

Время на прочтение10 мин
Количество просмотров37K
Чем React Native отличается от Flutter, за исключением того, что речь идёт о разных фреймворках, в основу которых положены разные технологии? На что ориентироваться тому, кто не знаком с этими инструментами для разработки кросс-платформенных приложений, но хочет выбрать один из них для своего очередного проекта?



Автор статьи, перевод которой мы публикуем, говорит, что в последнее время ему попадалось множество сравнений React Native и Flutter. Во всех этих сравнениях речь шла о таких вещах, которые, на самом деле, особого значения не имеют. Например — о языках, используемых для разработки проектов, или об инструментах командной строки. Здесь будет сделано сравнение React Native и Flutter с точки зрения реального положения дел, с точки зрения того, что имеет значение для настоящих проектов. Это сравнение призвано снабдить всех желающих сведениями, которые помогут им выбрать именно то, что им нужно.
Читать дальше →
Всего голосов 23: ↑20 и ↓3+31
Комментарии23

Flipper Zero — пацанский мультитул-тамагочи для пентестера

Время на прочтение10 мин
Количество просмотров287K
Flipper Zero — Multi-tool Device for Hackers

Warning

Информация в статье устарела, Flipper Zero был полностью пеработан на другой платформе. Актуальная информация в нашем блоге blog.flipperzero.one


Flipper Zero — проект карманного мультитула на основе Raspberry Pi Zero для пентеста IoT и беспроводных систем контроля доступа, который я разрабатываю с друзьями. А еще это тамагочи, в котором живет кибер-дельфин.

Он будет уметь:

  • Работать в диапазоне 433 MHz — для исследования радиопультов, датчиков, электронных замков и реле.
  • NFC — читать/записывать и эмулировать карты ISO-14443.
  • 125 kHz RFID — читать/записывать и эмулировать низкочастотные карты.
  • iButton ключи — читать/записывать и эмулировать контактные ключи, работающие по протоколу 1-Wire.
  • Wi-Fi — для проверки защищенности беспроводных сетей. Адаптер поддерживает инъекции пакетов и мониторный режим.
  • Bluetooth — поддерживается пакет bluez для Linux
  • Режим Bad USB — может подключаться как USB-slave и эмулировать клавиатуру, ethernet-адаптер и другие устройства, для инъекции кода или сетевого пентеста.
  • Тамагочи! — микроконтроллер с низким энергопотреблением работает, когда основная система выключена.

Я с волнением представляю свой самый амбициозный проект, идею которого я вынашивал много лет. Это попытка объединить все часто необходимые инструменты для физического пентеста в одно устройство, при этом добавив ему личность, чтобы он был милым до усрачки.
В данный момент проект находится на стадии R&D и утверждения функционала, и я приглашаю всех поучаствовать в обсуждении функций или даже принять участие в разработке. Под катом подробное описание проекта.
Читать дальше →
Всего голосов 176: ↑173 и ↓3+231
Комментарии162

Как работает Flutter

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


Как Flutter работает на самом деле?


Что такое Widgets, Elements, BuildContext, RenderOject, Bindings?..


Сложность: Новичок


Вступление


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


Что же такое Widgets (виджеты), Elements (элементы), BuildContext? Почему Flutter быстрый? Почему иногда он работает не так, как ожидается? Что такое деревья и зачем они нужны?


В 95% случаев при написании приложения вы будете иметь дело только с виджетами, чтобы что-то отображать на экране или взаимодействовать с ним. Но неужели вы никогда не задумывались, как вся эта магия работает внутри? Как система узнает, когда обновить экран и какие части должны быть обновлены?


Содержание:


Читать дальше →
Всего голосов 14: ↑13 и ↓1+12
Комментарии6

JsonDiscovery: Меняем опыт просмотра JSON в браузере

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

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


Давайте же взглянем поближе...


Всего голосов 75: ↑74 и ↓1+73
Комментарии32

Чему я научился на своём горьком опыте (за 30 лет в разработке ПО)

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

Это циничная, клиническая коллекция того, чему я научился за 30 лет работы в разработке программного обеспечения. Повторюсь, некоторые вещи весьма циничны, а остальное — результат долгих наблюдений на разных местах работы.
Читать дальше →
Всего голосов 187: ↑178 и ↓9+169
Комментарии128

Беспроводные устройства Xiaomi в умном доме ioBroker

Время на прочтение9 мин
Количество просмотров44K
Приветствую всех любителей домашней автоматизации. Решил поделиться опытом использования беспроводных Xiaomi устройств с интерфейсом ZigBee. Я, честно говоря, против применения любых беспроводных устройств в любой автоматизации, от серьезных АСУТП больших объектов до малой автоматики типа охранно-пожарной сигнализации или умного дома, но… Решения Xiaomi подкупили дешевизной, доступностью, отличным дизайном и множеством положительных отзывов от пользователей, решил попробовать.

Этот пост следует воспринимать, как пошаговую инструкцию для интеграции ZigBee устройств в инфраструктуру умного дома. Описанное здесь ни в коем случае не является аксиомой и можно найти много других способов подключения ZigBee устройств. Если всё же пропускать детальное описание, то можно составить впечатление о сложности или легкости объединения устройств от разных производителей в одну локальную платформу на примере ZigBee и ioBroker (о нём чуть позже). Я расскажу в этой статье, как подключить устройства к умному дому, отобразить информацию с них на планшете или просто в браузере и отправить сообщения через телеграм о смене состояния устройств. Если я вас заинтересовал, то прошу под кат.
Всего голосов 35: ↑35 и ↓0+35
Комментарии36

Как составить стратегию тестирования: версия настоящих инженеров

Время на прочтение10 мин
Количество просмотров111K
Без стратегии тестирования можно наверняка обойтись, если есть бесконечное количество квалифицированных сотрудников, времени и денег. Словом, возможность пилить один релиз годами. В таких гипотетических идеальных условиях никакая стратегия не нужна, потому что вы можете тестировать ваш продукт всеми существующими способами как угодно долго, применяя техники в любом порядке, на несколько кругов, и рано или поздно каким-то путем вы придете к production ready качеству.

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

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


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

Codable для API запросов и как навести в коде порядок

Время на прочтение11 мин
Количество просмотров8.5K
Привет, Хабр!

Начиная со Swift 4 нам доступен новый протокол Codable, который позволяет легко кодировать/декодировать модели. В моих проектах очень много кода для API вызовов, и за последний год я проделал большую работу по оптимизации этого огромного массива кода во что-то очень легкое, лаконичное и простое путем убивания повторяющегося кода и использования Codable даже для multipart запросов и url query параметров. Так получилось несколько отличных на мой взгляд классов для отправки запросов и парсинга ответов от сервера. А также удобная структура файлов представляющая из себя контроллеры для каждой группы запросов, которая мне привилась при использовании Vapor 3 на бэкенде. Несколько дней назад я выделил все свои наработки в отдельную библиотеку и назвал ее CodyFire. О ней мне и хотелось бы рассказать в этой статье.
Читать дальше →
Всего голосов 13: ↑13 и ↓0+13
Комментарии17

Как мы настольную игру с удаленным управлением сделали

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

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

image

Вторую часть можно найти тут: ссылка

Внимание! Много картинок дальше.

Читать дальше →
Всего голосов 124: ↑124 и ↓0+124
Комментарии83
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Харьков, Харьковская обл., Украина
Дата рождения
Зарегистрирован
Активность