Как стать автором
Обновить
4
0.1

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

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

Выбор графического движка (GUI) для встраиваемой электроники

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

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

В нашем полифункциональном заряднике есть небольшой графический дисплей. Разберём что тут можно подобрать. 

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

Делаем встраиваемый полифункциональный зарядник

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

Попытаемся сделать зарядник 300 Вт с КПД 99% из тех деталей которые еще остались в стоках интернет-продавцов. Продумаем архитектуру. Cоздадим схему. Проведем симуляцию в LTSpice и Microcap. Научимся технологии оптимизации в симуляторе. Найдем применение методу Monte Carlo. Посмотрим на трассировку. Попробуем сравнительно новую фишку Altium Designer - PDN Analyzer.

Читать далее
Всего голосов 76: ↑75 и ↓1+96
Комментарии69

Право на ошибку. Деньги и методологии разработки в ИТ

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

Есть много разных методологий разработки: Waterfall, Agile, Lean и другие. Ситуацию усложняют различные схемы оплаты разработки в ИТ. Что лучше: Fixed Price, Time&Material или взять людей на аутстафф? Человеку, далёкому от коммерческой разработки, бывает сложно разобраться что и когда стоит использовать. Чтобы помочь с этим разобраться, рассмотрим разные методологии и схемы оплаты с точки зрения работы с рисками и права на ошибку. Попробую писать простым языком, чтобы было понятно всем.

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

Компактный DIY Zigbee датчик температуры с e-ink дисплеем

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

В сегодняшней статье хочу рассказать о новой версии миниатюрного датчика температуры и влажности с e-ink дисплеем. Этот проект является продолжением моего старого открытого ардуино проекта миниатюрного датчика температуры c e-paper дисплеем, который работал на nrf52810.
Читать дальше →
Всего голосов 64: ↑64 и ↓0+64
Комментарии15

Правила перезаписи PostgreSQL

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

Представления (Views) — это не совсем то, о чём вы можете подумать. В этой статье мы разберём правила перезаписи PostgreSQL, как они работают, что они могут и чего не могут делать.

Начиная с версии 10, PostgreSQL поддерживает концепцию правил перезаписи, которые позволяют изменять способ выполнения запросов.

Фактически правила перезаписи — это то, как представления реализованы в PostgreSQL. Когда вы обращаетесь к представлению, ваш запрос фактически переписывается в соответствии с правилом, которое было создано при создании представления. По сути, представление — это, как мы сейчас увидим, правило перезаписи.

Однако не стоит расслабляться — некоторые условности всё же есть. Например, эти правила перезаписи сильно отличаются от плагинов перезаписи MySQL и в целом являются более комплексными.
Читать дальше →
Всего голосов 15: ↑15 и ↓0+15
Комментарии2

Цифровая свобода. Часть 1. Менеджер паролей

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

Всем привет! Я хочу запустить цикл статей с инструкциями которые помогут, отвязаться от сервисов и вернут вам контроль над вашими данными. Тут будут представлены opensource аналоги сервисов, которыми все мы пользуемся каждый день и утилиты для бекапа ваших данных из цепких лап вендоров. Я не ставлю цель 100% уйти на опенсорс и селфхостед, всё таки сервисы должны быть удобными и доступными. Поэтому это не только полноценные аналоги, иногда это будут утилиты для бекапов. Главное это удобство, бесплатность и контроль над своими данными.

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

Сравнение эффективности поиска: Elasticsearch и конкуренты

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

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

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

Разработка Z-Wave бесшумного выключателя и автоматизация на балконе

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

Решился балкон переделать в рабочий кабинет. Фотографий ДО и ПОСЛЕ не будет, но я расскажу об автоматизации, которую там устроил. С самого начала планировал автоматическое управление теплым полом и освещением, а уже по окончанию ремонта решил добавить еще и сенсорную панель управления на стену. Устройства выбрал с технологией Z-Wave, но в процессе использования оказалось, что меня не устраивает функционал управления освещением. Пришлось разработать свой собственный выключатель на базе платы Z-Uno 2 и твердотельных реле Сrydom.
Читать дальше →
Всего голосов 36: ↑34 и ↓2+51
Комментарии17

Основные инструменты Kubernetes в 2021 году

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

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

В основе этого списка — мой личный опыт, и чтобы избежать предвзятости, я расскажу и об альтернативных инструментах, чтобы вы могли всё сравнить и принять решение, исходя из своих потребностей. Постараюсь дать информацию сжато и привести источники, чтобы при желании вы могли изучить всё самостоятельно. Описывая инструменты для различных задач разработки ПО, я хотел ответить на вопрос: «Как я могу сделать X в Kubernetes?»

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

Сборка собственного RPM-пакета, содержащего простую Go-программу

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

А именно, в мире Linux уже довольно давно существуют менеджеры пакетов. Например — это RPM и YUM. Они упрощают установку, обновление и удаление программ в Linux-системах. Собственно говоря, в этой статье я хочу рассказать о том, как создать собственный простой RPM-пакет, хочу показать, что это совсем несложно.



Надо отметить, что во многих организациях менеджеры пакетов используются лишь для установки программ, предлагаемых разработчиком используемого этими организациями дистрибутива Linux. Для управления развёртываниями собственных программ менеджеры пакетов не применяются. Тому, кто попытается собрать свой первый RPM-пакет, может показаться, что это не так уж и просто. Но обычно тот, кто учится создавать такие пакеты, тратит время с пользой. Дело в том, что соответствующие знания способны помочь ему в деле оптимизации его рабочих процессов. Здесь мы рассмотрим процесс создания RPM-пакета, содержащего простую программу, написанную на Go.
Читать дальше →
Всего голосов 26: ↑25 и ↓1+34
Комментарии3

Задача выбора (назначения). Венгерский метод решения

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

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

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

Как симулировать плохую сеть под Linux, macOS и Windows

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

Clumsy 0.2

Все распределённые системы — базы данных, мобильные приложения, корпративные SaaS и так далее — следует разрабатывать с учётом сбоев. Например, компания Stripe во время тестов убивала случайные инстансы — и смотрела, что произойдёт. Компания Netflix рандомно уничтожала инстансы прямо в продакшне с помощью программы Chaos Monkey (проект Simian Army).

Симуляция сбоев — необходимое средство тестирования. Проблема в том, что ситуации не делятся только на чёрное и белое, Есть огромная «серая» зона, где сбои явно не выражены, а проявляются в плохих условиях сети: ненадёжное соединение, узкий канал, потери пакетов, высокая задержка, дубликаты пакетов и так далее.
Читать дальше →
Всего голосов 45: ↑45 и ↓0+45
Комментарии6

Пудра для мозга или как сделать порошок для посудомойки в 9,7 раз дешевле

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


Update
Новый вариант порошка и более подробный разбор во второй части: DIY порошок для посудомойки: разбираем промышленные средства и улучшаем рецепт

Сейчас расскажу, как из соды и стирального порошка сделать порошок для посудомоечной машины. Такой же по составу, только дешевле на порядок.

Есть очень много областей нашей жизни, где наше представление формирует исключительно маркетинговый буллшит. Увы, большинство людей даже не пытаются задумываться о том, что лежит в основе всего этого. Очень часто рыночная ситуация приводит к тому, что себестоимость продукта составляет 0.5% от его цены. Остальное маркетинг, наценки, логистика, упаковка и тому подобное. Почти все в курсе про концепцию продажи чернил для принтера по цене слез гималайских девственниц и настойчивые рекомендации производителей использовать только оригинальные расходные материалы. Например, совсем недавно меня озарило, что 1.5 грамма сухого вещества во флаконе удобрений для растений не могут стоить 200-250 рублей. А ведь именно такое количество может уместиться в относительно стабильном состоянии в виде раствора. Я сразу представил себе гектары полей и грузовики, которые везут тонны порошка. В результате перешел на расфасовки по 1 кг Буйских комплексных сухих удобрений. Можно ванну раствора приготовить.

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

TLDR:

70% прокаленной соды и 30% стирального порошка вместо моющего средства.
Если очень лень возиться с содой, то просто порошок Биолан или его аналоги. Сода удешевляет.
Пищевая соль «Экстра» вместо соли.
Да начнутся адские эксперименты!
Всего голосов 159: ↑158 и ↓1+157
Комментарии447

Оптимизация размера Go-бинарника

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

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

Читать дальше →
Всего голосов 32: ↑30 и ↓2+35
Комментарии21

Читаем QR код

Время на прочтение5 мин
Количество просмотров1.1M
Иногда возникают такие ситуации, когда нужно прочитать QR код, а смартфона под рукой нет. Что же делать? В голову приходит лишь попробовать прочитать вручную. Если кто-нибудь сталкивался с такими ситуациями или кому просто интересно как же читается QR код машинами, то данная статья поможет вам разобраться в этой проблеме.

В статье рассмотрены базовые особенности QR кодов и методика дешифрирования информации без использования вычислительных машин.

Иллюстраций: 14, символов: 8 510.
Читать дальше →
Всего голосов 623: ↑614 и ↓9+605
Комментарии109

QR-художество

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

На хабре уже обсуждалось устройство QR-кодов и украшение их произвольными рисунками, но дизайнерская мысль до сих пор работала только в двух основных направлениях: замена квадратных модулей на более интересные формы, либо замена части кода рисунком. Такие художества возможны благодаря тому, что блоки данных в QR-коде дополняются кодами Рида-Соломона, позволяющими восстановить до 30% искажённых байтов. Основываясь на этом, дизайнеры QR-кодов давно уже наловчились заменять участок, занимающий до 30% площади кода, какой-нибудь картинкой. Я же решил испробовать другой подход — художественно искажать в QR-коде отдельные биты в целях получения интересного изображения. Например, в этом коде инвертированы лишь 50 модулей из 841.

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

Создание favicon для сайта 2020

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

Что такое favicon и для чего он нужен?


Favicon – это значок (иконка), который отображается во вкладке браузера, закладках, а также в сниппетах результатов поиска.

image

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

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

Какой формат использовать для favicon?


Раньше в качестве основного формата использовали ICO. Особенность данного формата – мульти-размерность. Данный файл может хранить в себе несколько размеров иконки. На смену ICO пришел формат PNG. ICO все еще поддерживаемый, но большинство современных браузеров выбирают PNG формат иконки, который легче. Некоторые браузеры не могут выбрать правильный значок в файле ICO, что приводит к неправильному использования значка с низким разрешением.

О каких платформах пойдет речь в этой статье?


  • Десктопные браузеры
  • Chrome на Android
  • Иконка закладки в iOS (PWA)
  • macOS
  • Windows

Читать дальше →
Всего голосов 44: ↑42 и ↓2+46
Комментарии30

Выбираем флеш-карты: подробное руководство по разновидностям Secure Digital

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


При выборе жесткого диска у «продвинутого» покупателя обычно не возникает особых проблем. Взять тот же WD6003FZBX на 6 ТБ: скорость вращения шпинделя 7200 оборотов в минуту, вместительный кэш в 256 мегабайт и наличие высокоскоростного интерфейса SATA III с пропускной способностью 6 Гбит/с красноречиво свидетельствуют о том, что перед нами высокопроизводительное решение, способное удовлетворить нужды как заядлых геймеров и энтузиастов, так и профессионалов. Единственный нюанс, который здесь необходимо учитывать, заключается в том, что показатель 6 Гбит/с — это пропускная способность самой шины: хотя скорость передачи информации из кэша в систему составляет 550 МБ/с, реальная скорость обмена данными между системой и накопителем для рассматриваемой модели достигает 227 МБ/с, что все равно является превосходным результатом для классических винчестеров. Впрочем, об этом и так знает практически любой технически подкованный пользователь ПК.

Когда же речь заходит о флеш-картах, в тупик может зайти даже бывалый админ. За примерами далеко ходить не надо: достаточно открыть страницу карты памяти SanDisk Extreme PRO UHS-I. Помимо привычных строк «скорость чтения: до 170 МБ/с» и «скорость записи: до 90 МБ/с», в спецификациях красуется таинственная надпись «скорость видео: C10, U3, A2, V30». Но позвольте, мы уже знаем скоростные характеристики продукта. Зачем нужны еще какие-то непонятные классы скорости, да еще и в количестве четырех штук? И в чем вообще состоит принципиальное отличие перечисленных показателей друг от друга? Именно в этих вопросах нам предстоит разобраться в сегодняшнем материале.
Читать дальше →
Всего голосов 31: ↑31 и ↓0+31
Комментарии31

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

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

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


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


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


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

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

Работаем с аудио: прогресс и визуализация данных

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


Доброго времени суток, друзья!

Хочу поделиться опытом работы с аудио. Под «аудио» я подразумеваю HTMLAudioElement и Web Audio API.

Что будем делать?

Мы создадим нечто вроде плеера для одного трека (о полноценном проигрывателе — в одной из следующих статей).

Условия:

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

В сети полно материалов как по HTMLAudioElement, так и по WAAPI, поэтому я сделаю акцент на практической составляющей. Кроме аудио, мы будем работать с drag-drop и canvas.

Без дальнейших предисловий…
Читать дальше →
Всего голосов 14: ↑14 и ↓0+14
Комментарии12

Информация

В рейтинге
3 992-й
Откуда
Самарская обл., Россия
Зарегистрирован
Активность