Что объединяет удаленного сотрудника, на долю которого выпало много видеозвонков, зарождающуюся звезду YouTube и начинающего стримера? Все они, рано или поздно, осознают неотъемлемую важность повышения качества изображения, которое предоставляется их зрителям. А еще у них наверняка есть какой-нибудь Xiaomi Nano Porridge 10 Pro с довольно неплохой матрицей. И я не исключение, бросив вызов этой проблеме по-программистски и постаравшись обойтись без больших финансовых затрат, решением которой и хочу поделиться с вами. Добро пожаловать под кат!
Старынин Валерий
@TeXHaPb
Backend Developer
Запуск команд в процессе доставки нового релиза приложения в Kubernetes
7 min
6.9KВ своей практике мы часто сталкиваемся с задачей адаптации клиентских приложений для запуска в Kubernetes. При проведении данных работ возникает ряд типовых проблем. Одну из них мы недавно осветили в статье Локальные файлы при переносе приложения в Kubernetes, а о другой, связанной уже с процессами CI/CD, — расскажем в этом материале.
Произвольные команды с Helm и werf
Приложение — это не только бизнес-логика и данные, но и набор произвольных команд, которые необходимо выполнить для успешного обновления. Это могут быть, например, миграции для баз данных, «ожидатели» готовности внешних ресурсов, какие-то перекодировщики или распаковщики, регистраторы во внешних Service Discovery — на разных проектах можно встретить разные задачи.
Что же предлагает Kubernetes для решения таких задач?
«Последние дни жизни» демотивированного сотрудника
8 min
45K
Recovery Mode
Под последними днями я, конечно же, имею в виду последние этапы сотрудничества демотивированного сотрудника с компанией.
В эти “дни” все мысли сотрудника направлены не на решение бизнес задач и не на качественное выполнение своих функций. Он обижен, он задумывается об уходе, он занят поиском работы… . Вы и ваша компания его не интересует. Вы для него становитесь временным источником доходов.
Глобально, я выделяю 3 этапа, через которые проходит каждый такой сотрудник. Во всех примерах я описываю усредненный вариант сотрудника: не сильно деструктивный и не сильно лояльный. Я, конечно же, понимаю, что каждый отдельный сотрудник может по разному проживать эти этапы, но, глобально, это выглядит именно так.
Теперь я не могу сделать даже маленький сайт
3 min
153KКороче, я хорошо помню, как в 2013 году я сел и написал небольшой сайт за один день.
Это был сайт про события моего родного города. На одной странице выводились все мероприятия на грядущую неделю.
Я сделал страничку с мероприятиями, и небольшую админку, где они редактировались. У меня была книжка по PHP, поэтому сайт я написал на PHP, подключил MySQL-базу, сверстал на HTML и CSS, и залил на виртуальный хостинг. Сайтом пользовались, а я усердно добавлял мероприятия каждое утро, пока не ушёл в армию, не оставив никого на поддержку. Так сайт и почил.
Идея сайта всё ещё казалась хорошей, и я решил его возродить. Казалось бы, бери и делай, но против меня играло то, что я толком не помнил PHP, и уже успел набраться опыта разработки в очень больших, средних и маленьких компаниях.
Я решил взяться за дело и стал думать.
Взлом ESP32 путём обхода Secure Boot и Flash Encryption (CVE-2020-13629)
13 min
11K
Translation
Мы провели исследование микроконтроллера Espressif ESP32 на предмет устойчивости к атакам, выполняемым методом внесения сбоев в работу чипов (Fault Injection). Мы постепенно шли к тому, чтобы найти уязвимости, которые позволят нам обойти механизмы защищённой загрузки (Secure Boot) и шифрования флеш-памяти (Flash Encryption) посредством всего одного сбоя, вызванного электромагнитным полем. Более того, мы, успешно проведя атаку, не только смогли выполнить произвольный код, но и получили данные флеш-памяти в расшифрованном виде.
Компания Espressif зарегистрировала эту уязвимость в базе данных CVE под кодом CVE-2020-13629. Знакомясь с атакой, описанной в этой статье, учитывайте то, что она применима к чипам ESP32 ревизий 0 и 1. Более новые ESP32 V3 поддерживают функционал отключения загрузчика UART, который использован в этой атаке.
Компания Espressif зарегистрировала эту уязвимость в базе данных CVE под кодом CVE-2020-13629. Знакомясь с атакой, описанной в этой статье, учитывайте то, что она применима к чипам ESP32 ревизий 0 и 1. Более новые ESP32 V3 поддерживают функционал отключения загрузчика UART, который использован в этой атаке.
CH341A, USB-UART-конвертер и I2C/SPI-программатор за $5
4 min
251KКогда-то давным-давно я писал пару статей о широко известном в узких кругах чипе FTDI FT232H и различных его применениях. Всем хорош был FT232H для DIY, но и у него нашлось несколько недостатков — относительно неприятный для ручной пайки корпус LQFP48 (для истинных любителей хардкора есть еще вариант в QFN48, паяй — не хочу, DIHALT не даст соврать), цена за оригинальный чип от 250 рублей, вероятность проблем с драйверами на поддельных чипах и некоторая функциональная избыточность, к примеру, поддержка JTAG нужна далеко не всем.
Решение, как обычно, пришло из Поднебесной, в которой после нескольких леттупого передирания творческой адаптации чужих чипов наконец выпустили свой собственный конвертер USB-TTL — WinChipHead CH341A в корпусе SOP-28 (не DIP, но тоже паяется без проблем).
Производство чипа было начато году приблизительно в 2006, но в поле моего зрения он попал только в 2014, когда I2C/SPI-программаторы на этом чипе наводнили европейский EBAY, причем продавцы предлагали цену от 3,5 евро вместе с доставкой, что при средней стоимости хорошего китайского программатора вроде MiniPro TL866A в 50 евро оказалось настолько заманчивым предложением, что устоять не получилось.
Если вам все еще интересно, что умеет этот китайский чип за 1$ и стоит ли платить больше, если не видно разницы — прошу под кат.
Решение, как обычно, пришло из Поднебесной, в которой после нескольких лет
Производство чипа было начато году приблизительно в 2006, но в поле моего зрения он попал только в 2014, когда I2C/SPI-программаторы на этом чипе наводнили европейский EBAY, причем продавцы предлагали цену от 3,5 евро вместе с доставкой, что при средней стоимости хорошего китайского программатора вроде MiniPro TL866A в 50 евро оказалось настолько заманчивым предложением, что устоять не получилось.
Если вам все еще интересно, что умеет этот китайский чип за 1$ и стоит ли платить больше, если не видно разницы — прошу под кат.
15 советов и хитростей инструментов разработчика Chrome, которые вы обязаны знать
5 min
204K
Translation
Сегодня Google Chrome является самым популярным браузером среди веб разработчиков. С быстрым, шести недельным, циклом релизов и мощным набором постоянно расширяющихся инструментов разработчика, превратившим браузер в инструмент, который вы обязаны иметь. Большинство из вас, вероятно, знакомы со многими его функциями, такими как «живое» редактирование CSS, используя консоль и отладчик. В этой статье мы с вами рассмотрим 15 захватывающих советов и хитростей, которые позволят улучшить вашу производительность еще больше.
Файловая система Linux полностью на tmpfs — скорость без компромиссов
4 min
121KПредыстория
Так сложилось, что уже пять лет мой раздел ntfs с операционной системой Windows располагается на рамдиске. Решено это не аппаратным, а чисто программным способом, доступным на любом ПК с достаточным количеством оперативной памяти: рамдиск создается средствами загрузчика grub4dos, а Windows распознаёт его при помощи драйвера firadisk.
Однако до недавнего времени мне не был известен способ, как реализовать подобное для Linux. Нет, безусловно, существует огромное количество линуксовых LiveCD, загружающихся в память при помощи опций ядра toram, copy2ram и т. д., однако это не совсем то. Во-первых, это сжатые файловые системы, обычно squashfs, поэтому любое чтение с них сопровождается накладными расходами на распаковку, что вредит производительности. Во-вторых, это достаточно сложная каскадная система монтирования (так как squashfs — рид-онли система, а для функционирования ОС нужна запись), а мне хотелось по возможности простого способа, которым можно «вот так взять и превратить» любой установленный на жесткий диск Linux в загружаемый целиком в RAM.
Ниже я опишу такой способ, который был с успехом опробован. Для опытов был взят самый заслуженный дистрибутив Linux — Debian.
Курс по Big Data: три месяца на основные знания, и зачем это нужно
8 min
79K
Recovery Mode
Студент в Big Data получает 70 тысяч рублей в месяц, а специалист с опытом 3-4 года — 250 тысяч рублей в месяц. Это те, например, кто умеет персонализировать предложения розницы, искать в соцсети человека по анкетным данным заявки на кредит или по списку посещённых сайтов вычислять новую симку старого абонента.
Мы решили сделать профессиональный курс по Big Data без «воды», маркетинга и всяких эджайлов, только хардкор. Позвали практиков из 7 крупных компаний (включая Сбербанк и Oracle) и устроили, фактически, хакатон длиной во весь курс. Недавно у нас прошел день открытых дверей по программе, где мы напрямую спросили практиков, что же есть Big Data в России, и как компании на деле используют большие данные. Ниже ответы.
OEM-активация Windows Vista/7/8/8.1 под гипервизором QEMU
6 min
196KOEM-версии ОС от Microsoft, начиная с Vista, используют проверку подлинности, основанную на сличении трех компонентов:
При успешном сличении трех этих компонентов происходит оффлайн-активация ОС. На корпусе ПК в этом случае имеется наклейка, содержащая лицензионный ключ конкретного экземпляра ОС (а не производителя), которым можно произвести онлайн-активацию ОС в случае ее установки не с образа, предоставляемого производителем ПК, а с «чистого» (MSDN) OEM-образа от Microsoft.
Кроме того, лицензионный ключ конкретного экземпляра ОС может быть вшит в текстовом виде в BIOS, в таблицу ACPI MSDM. В этом случае, при установке ОС ключ будет извлечен из BIOS и вшит в конкретный экземпляр ОС. OEM-наклейка на корпусе ноутбука в этом случае может уже не содержать лицензионный ключ. Такой способ используется для активации Windows 8/8.1
- OEM-сертификата, вшитого в дистрибутив ОС
- бинарного ключа, вшитого в BIOS, а конкретно — в таблицу ACPI SLIC
- лицензионного 25-значного ключа производителя, вшитого в дистрибутив ОС
При успешном сличении трех этих компонентов происходит оффлайн-активация ОС. На корпусе ПК в этом случае имеется наклейка, содержащая лицензионный ключ конкретного экземпляра ОС (а не производителя), которым можно произвести онлайн-активацию ОС в случае ее установки не с образа, предоставляемого производителем ПК, а с «чистого» (MSDN) OEM-образа от Microsoft.
Кроме того, лицензионный ключ конкретного экземпляра ОС может быть вшит в текстовом виде в BIOS, в таблицу ACPI MSDM. В этом случае, при установке ОС ключ будет извлечен из BIOS и вшит в конкретный экземпляр ОС. OEM-наклейка на корпусе ноутбука в этом случае может уже не содержать лицензионный ключ. Такой способ используется для активации Windows 8/8.1
FISCHERTECHNIK: хемотроника, ионисторы, электрохимические суперконденсаторы внутри детского конструктора для программистов
6 min
88KВ детстве я не расставался с конструкторами. У меня их было 2 типа: аналог LEGO (пластмассовый и с пупырышками) и металлический с болтиками. После поста на Хабре, я понял, насколько скудный был в те времена выбор. Пару недель назад мембер хакспейса Костя Костюк подсказал мне, что в Москве есть люди, которые занимаются продвижением и обучением FISCHERTECHNIK.
(на фото: Электромобиль с заправочной станцией и водородный топливный элемент, солнечная батарея)
В Германии вокруг этого конструктора сложилось свое сообщество, они гордятся своим изобретателем и ставят свои рекорды.
Чем понравился мне этот конструктор —хардкорностью научно-технической серьезностью и отсылками ко множеству реальных механизмов/устройств (от принтера, CD-привода и механизмов Леонардо да Винчи, до шаговых экскаваторов, роботов и электромобилей). В наборы входит и контроллер с графической средой программирования, что позволяет учить детей основам алгоритмов и программирования.
Под катом немного про автомобиль на водородном топливном элементе (из конструктора «Экологическая
энергетика» + «Топливный элемент»), про изобретателя конструктора и короткий обзор существующих в Москве наборов для конструирования (можно только позавидовать тем гикам, кому сейчас 8+ лет, ибо на новый год их ждут такие подарки).
(Осторожно! Под катом боль за бесцельно прожитые годы)
(на фото: Электромобиль с заправочной станцией и водородный топливный элемент, солнечная батарея)
В Германии вокруг этого конструктора сложилось свое сообщество, они гордятся своим изобретателем и ставят свои рекорды.
Видео
Чем понравился мне этот конструктор —
Под катом немного про автомобиль на водородном топливном элементе (из конструктора «Экологическая
энергетика» + «Топливный элемент»), про изобретателя конструктора и короткий обзор существующих в Москве наборов для конструирования (можно только позавидовать тем гикам, кому сейчас 8+ лет, ибо на новый год их ждут такие подарки).
(Осторожно! Под катом боль за бесцельно прожитые годы)
Ричард Фейнман «В ПОИСКАХ НОВЫХ ЗАКОНОВ»
1 min
10KПеревод седьмой лекции из курса «Характер физических законов», самого яркого ученого двадцатого века Ричарда Фейнмана.
Лекция называется «В поисках новых законов».
Что молодёжь должна знать о прошлом веке
4 min
6.9K
Translation
За два дня до наступления второго десятилетия 21 века возрастные пользователи Reddit составили список воспоминаний, которыми хотят поделиться с младшим поколением. Хотя молодёжь вряд ли поверит, что их отцы могли жить в подобных условиях, когда не было интернета.
• Я написал письмо на физическом листе бумаги и отправил его в Microsoft с вопросом, как вводить математические формулы в Word (на моём компьютере Macintosh II в конце 80-х). Получил ответ, также бумажной почтой, от настоящего программиста Microsoft, который очень подробно ответил на мой вопрос.
• Пультов от телевизора не было. Нужно было оторвать спину от дивана, встать и подойти к телевизору, чтобы нажать кнопку.
• Я написал письмо на физическом листе бумаги и отправил его в Microsoft с вопросом, как вводить математические формулы в Word (на моём компьютере Macintosh II в конце 80-х). Получил ответ, также бумажной почтой, от настоящего программиста Microsoft, который очень подробно ответил на мой вопрос.
• Пультов от телевизора не было. Нужно было оторвать спину от дивана, встать и подойти к телевизору, чтобы нажать кнопку.
Airrouter — новое умное сетевое железо
4 min
28KЗнаете, я никогда раньше не писал обзоров нового железа — просто потому, что когда какие-то устройства попадали в мои руки, все они давным-давно продавалось в магазинах, и присутствовали в обзорах на многочисленных IT-ресурсах.
Однако сегодня у меня в руках появилась железка, обзоров которой я ещё в Рунете не встречал, и краткое описание которой мне хочется написать на Хабре (благо железка действительно неординарная). Речь идёт о WiFi-маршрутизаторе AirRouter.
Под катом — краткая история появления у меня этого устройства, техническая спецификация, и некоторые интересные штуки, которые умеет это устройство. Да, и ещё скажу сразу цену (сам я тоже не люблю проматывать обзоры донизу) — стоит устройство в диапазоне 80-90 долларов, хотя полагаю, что вскоре цена значительно снизится.
Однако сегодня у меня в руках появилась железка, обзоров которой я ещё в Рунете не встречал, и краткое описание которой мне хочется написать на Хабре (благо железка действительно неординарная). Речь идёт о WiFi-маршрутизаторе AirRouter.
Под катом — краткая история появления у меня этого устройства, техническая спецификация, и некоторые интересные штуки, которые умеет это устройство. Да, и ещё скажу сразу цену (сам я тоже не люблю проматывать обзоры донизу) — стоит устройство в диапазоне 80-90 долларов, хотя полагаю, что вскоре цена значительно снизится.
Р. Фейнман «Характер физических законов» (четвертая лекция)
6 min
9.7KПеревод четвертой лекции из курса «Характер физических законов», самого яркого ученого двадцатого века Ричарда Фейнмана.
Лекция называется «Симметрия физических законов».
Курс не требует специальных знаний по физике и начинать смотреть можно с любой лекции. А эта лекция наверное самая интересная во всем курсе.
Вообще сегодня будет две лекции: одна видео лекция Фейнмана, другая небольшая заметка профессора университета Радбоуда (Голландия) Михаила Кацнельсона, поясняющая кое-какой принцип, о котором Фейнман умолчал.
Р. Фейнман «Характер физических законов» (третья лекция)
1 min
2.5KПредставляю вашему вниманию третью лекцию из семи прочитанных лауреатом нобелевской премии профессором Ричардом Фейнманом в Корнелльском университете в 1964г, которая называлась «Великие законы сохранения».
На яндекс видео:
video.yandex.ru/users/ztarlitz/view/5
Лекция 1 — ПРИМЕР ФИЗИЧЕСКОГО ЗАКОНА — ЗАКОН ТЯГОТЕНИЯ
Лекция 2 — СВЯЗЬ МАТЕМАТИКИ С ФИЗИКОЙ
Лекция 3 — ВЕЛИКИЕ ЗАКОНЫ СОХРАНЕНИЯ
Лекция 4 — СИММЕТРИЯ ФИЗИЧЕСКИХ ЗАКОНОВ
Лекция 5 — РАЗЛИЧИЕ ПРОШЛОГО И БУДУЩЕГО
На яндекс видео:
video.yandex.ru/users/ztarlitz/view/5
Список лекций:
Лекция 1 — ПРИМЕР ФИЗИЧЕСКОГО ЗАКОНА — ЗАКОН ТЯГОТЕНИЯ
Лекция 2 — СВЯЗЬ МАТЕМАТИКИ С ФИЗИКОЙ
Лекция 3 — ВЕЛИКИЕ ЗАКОНЫ СОХРАНЕНИЯ
Лекция 4 — СИММЕТРИЯ ФИЗИЧЕСКИХ ЗАКОНОВ
Лекция 5 — РАЗЛИЧИЕ ПРОШЛОГО И БУДУЩЕГО
Лекция 6 — ВЕРОЯТНОСТЬ И НЕОПРЕДЕЛЕННОСТЬ — КВАНТОВОМЕХАНИЧЕСКИЙ ВЗГЛЯД НА ПРИРОДУ
Лекция 7 — В ПОИСКАХ НОВЫХ ЗАКОНОВ
Р. Фейнман «Характер физических законов» (вторая лекция)
2 min
7.3KПредставляю вашему вниманию вторую лекцию из семи прочитанных лауреатом нобелевской премии профессором Ричардом Фейнманом в Корнелльском университете в 1964г, которая называлась «Связь математики и физики».
Я убежден, что не существует популярной науки, есть только популярная ее интерпретация. И это не самый мною любимый жанр, сейчас я практически не читаю научно популярных книг, наука не заслуживает того чтобы скользить вечно по поверхности. Однако какие-то книги я все-таки читал и вам советую, много и восхитительно писали: Бор с Эйнштейном (любой популярный текст, особенно советую их переписку), Паули (переписка), Гейзенберг «Часть и целое» (это уже больше философия в стиле Витгенштейна), сам Витгенштейн, Куайн «Две догмы эмпиризма», Дэвид Дойч «Структура реальности» (с оговорками- совершенно замечательная вещь), по квантовой механике опять же Фейнман «КЭД — удивительное свойство света и вещества», по логике — Хофштадтер GEB (Гедель, Эшер, Бах) — книга моего детства, по биохимии Франк-Каменецкий «Самая главная молекула» — замечательная книга про ДНК, конечно советую Джеймса Уотсона «Двойная спираль. Воспоминания об открытии структуры ДНК».
И еще масса книг, которые я не вспомнил, от всех этих книг захватывает дух, но к сожалению на полках в книжных магазинах они растворились в бестолковом шуме какой-то сомнительной около научной литературы. И я не очень понимаю что собственно читают сейчас люди интересующиеся наукой.
Я убежден, что не существует популярной науки, есть только популярная ее интерпретация. И это не самый мною любимый жанр, сейчас я практически не читаю научно популярных книг, наука не заслуживает того чтобы скользить вечно по поверхности. Однако какие-то книги я все-таки читал и вам советую, много и восхитительно писали: Бор с Эйнштейном (любой популярный текст, особенно советую их переписку), Паули (переписка), Гейзенберг «Часть и целое» (это уже больше философия в стиле Витгенштейна), сам Витгенштейн, Куайн «Две догмы эмпиризма», Дэвид Дойч «Структура реальности» (с оговорками- совершенно замечательная вещь), по квантовой механике опять же Фейнман «КЭД — удивительное свойство света и вещества», по логике — Хофштадтер GEB (Гедель, Эшер, Бах) — книга моего детства, по биохимии Франк-Каменецкий «Самая главная молекула» — замечательная книга про ДНК, конечно советую Джеймса Уотсона «Двойная спираль. Воспоминания об открытии структуры ДНК».
И еще масса книг, которые я не вспомнил, от всех этих книг захватывает дух, но к сожалению на полках в книжных магазинах они растворились в бестолковом шуме какой-то сомнительной около научной литературы. И я не очень понимаю что собственно читают сейчас люди интересующиеся наукой.
Ричард Фейнман. Характер физических законов. Лекция 1
1 min
8.5KМой хороший друг по собственной инициативе решил сделать перевод популярных лекций известного физика-теоретика, лауреата Нобелевской премии Ричарда Фейнмана, прочитанных им в Корнельском университете в 1964 году.
В настоящий момент предварительно готова одна лекция, которую я с удовольствием представляю Вашему вниманию. Уже готов вариант с субтитрами, по мере готовности версии с озвучкой обновлю пост.
Итак, «Характер физических законов», лекция первая.
http://vimeo.com/14174734
Те, кто интересуется, кто же такой Ричард Фейнман и почему его лекции настолько интересны, для начала могут ознакомиться со статьей в Wiki.
В настоящий момент предварительно готова одна лекция, которую я с удовольствием представляю Вашему вниманию. Уже готов вариант с субтитрами, по мере готовности версии с озвучкой обновлю пост.
Итак, «Характер физических законов», лекция первая.
http://vimeo.com/14174734
Те, кто интересуется, кто же такой Ричард Фейнман и почему его лекции настолько интересны, для начала могут ознакомиться со статьей в Wiki.
Видео докладов с конференции DevConf 2014
2 min
23KЭтим летом в Москве проходила конференция профессиональных веб-разработчиков DevConf 2014. Мы в Badoo поддерживали конференцию, выступали с докладами и сделали видео докладов, которые были интересны нашим разработчикам. Так как спикеры были «за», то мы делимся видео с нашими подписчиками.
1. «StatsCollector, или «Мама! Он и меня посчитал!»».
Старынин Валерий, PHP разработчик отдела BI, Badoo.
Доклад о том, как мы собираем статистику для каждого пользователя, обсчитываем каждое открытие страницы (и не только!), обрабатываем 120000 событий в секунду и планируем расширяться.
1. «StatsCollector, или «Мама! Он и меня посчитал!»».
Старынин Валерий, PHP разработчик отдела BI, Badoo.
Доклад о том, как мы собираем статистику для каждого пользователя, обсчитываем каждое открытие страницы (и не только!), обрабатываем 120000 событий в секунду и планируем расширяться.
Несколько интересных приемов и особенностей работы с MySQL
3 min
88KЯ думаю, что в процессе изучения той или иной СУБД каждый из вас не раз изобретал велосипеды для решения своих задач, не зная о существовании той или иной функции или приема, которые бы могли в разы ускорить выполнение запросов и уменьшить объем кода. В данной статье я хочу поделиться с вами своим опытом работы с очень «добрым» и «отзывчивым» MySQL, часто позволяющему программисту делать вещи, которые другие СУБД переварить бы не смогли. Материал будет полезен скорее тем, кто только решил углубиться в чудесный мир запросов, но возможно и опытные программисты найдут тут что-то интересное.
Information
- Rating
- Does not participate
- Location
- Москва, Москва и Московская обл., Россия
- Works in
- Date of birth
- Registered
- Activity