Как стать автором
Обновить
1
0
Commander Хэлл @cxell

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

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

KC868-A128: заявка на Книгу рекордов Гиннеса

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


Сегодня мы поговорим о решении, достойном помещения в Книгу рекордов Гиннеса — это контроллер Kincony KC868-A128, имеющий на борту аж 128 цифровых входов и 128 транзисторных (MOSFET) выходов. Как говорится, «раззудись плечо, размахнись рука» — с такими ТТХ KC868-A128 может стать основой весьма нетривиальных проектов.

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

Но управляется KC868-A128 при помощи нашего любимого ESP32, что делает его доступным для самостоятельного программирования и включения в ваши DIY проекты по автоматизации. Далее мы подробно рассмотрим устройство KC868-A128 и создадим скетчи для управления всеми его 256-ю входами/выходами.
Читать дальше →
Всего голосов 13: ↑12 и ↓1+11
Комментарии32

Безопасный HTTPS-прокси менее чем за 10 минут

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

Это руководство описывает развёртывание HTTPS-прокси с помощью dumbproxy на практически любом Linux-сервере. Потребуется только curl и рутовый доступ.

Читать далее
Всего голосов 54: ↑53 и ↓1+52
Комментарии85

Регламент обслуживания любых серверов

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

Джейкоб Акерман, технический директор ЦОДа SkyLink, утверждает: “Серверы, расположенные в правильно обслуживаемом дата-центре, никогда не должны открываться для очистки даже после 5-7 лет использования”. 

Но далеко не все серверы работают в ЦОДах. Иногда они располагаются в обычных бытовых помещениях, иногда в импровизированных серверных, где чистоту и влажность воздуха сложно поддерживать в идеальных диапазонах. По той же причине мы периодически чистим свои ПК, а иногда и ноутбуки.

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

Умный malloc для С

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

Экспериментировал на С и повторил операторы new и delete средствами языка. В этой статье расскажу как я к этому пришёл, зачем это нужно, и как оно работает.

Читать далее
Всего голосов 21: ↑7 и ↓14-7
Комментарии19

Почему мы испортили индикаторные светодиоды и что нужно менять

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


Ах, этот скромный индикаторный светодиод. Он есть практически у всей домашней электроники, у всех интегральных модулей, и вообще у всего, что потребляет электричество. В стародавние времена скромный индикатор неярко светился с задней части панели, и всё было нормально. Но потом настали 1990-е, и всё полетело к чертям.

Дело не в технологиях, а в том, как вы их используете.


С большой яркостью приходит и большая ответственность.

В 90-х было много хорошего: Nirvana, Linux, и, конечно же, голубой светодиод. Как и Teen Spirit, последним слишком быстро начали злоупотреблять: технология быстро стало символом всего нового и крутого, вплоть до боли в глазах покупающей публики.
Читать дальше →
Всего голосов 136: ↑133 и ↓3+130
Комментарии390

Обновите RouterOS на вашем MikroTik

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

Вечером 10 марта служба поддержки Mail.ru начала получать жалобы от пользователей на невозможность подключения к IMAP/SMTP серверам Mail.ru через почтовые программы. При этом часть коннектов не проходила, а часть показывают ошибку сертификата. Ошибка вызвана тем, что «сервер» отдает самоподписаный сертификат TLS.
Читать дальше →
Всего голосов 60: ↑58 и ↓2+56
Комментарии73

Product very first. Выгорание

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

Когда-то я работал в медицинском Калифорнийском стартапе. Там было 20 человек, но ни одного доктора.

Даже медсестры не было. Зато было 10 программистов. Я сам гуглил бывает ли рак груди у мужчин, про то, что у женщин бывает, я знаю, благодаря Анджелине Джоли. Фиг его знает, сколько американцев лечилось на основе моих ценных рекомендаций американским докторам :)

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

У нас с женой договоренность, перед тем как покупать лекарство, она гуглит его, и если там не написано БАД или гомеопатия, то покупает.

Спасибо Яндекс.Медицина, ты торчишь мне 460 рублей за купленный женой Эргоферон. Я считал Я.Медицину адекватной, извините.
Читать дальше →
Всего голосов 149: ↑118 и ↓31+87
Комментарии164

Собеседование здорового человека

Время на прочтение4 мин
Количество просмотров98K
Эта статья написана как ответ на статью «Собеседование в Додо Пиццу» со стороны разработчика с опытом синьора. Я не претендую на истинность суждений, мне хотелось бы выразить довольно популярное среди моих знакомых мнение о процессе найма в частности и жизни разработчика в целом.
Читать дальше →
Всего голосов 355: ↑341 и ↓14+327
Комментарии473

Обходим запрет messages API Вконтакте через Python

Время на прочтение6 мин
Количество просмотров13K
Привет, Хабр. В своей предыдущей статье я рассказал о возможности доступа к методам раздела messages через документацию, для чего достаточно было лишь авторизоваться на сайте ВК. Многие тогда заявили, что это не является угрозой личным данным пользователей, а невозможность выкачать свои сообщения — недостаток платформы. Также в комментариях мне оставили ссылку на node.js библиотеку, которая может авторизовываться по логину/паролю и предоставлять доступ к API сообщений, притворяясь официальным приложением.

Дисклеймер:


Статья и весь написанный код создавались только в образовательных и исследовательских целях и никогда не использовались для незаконной деятельности. Автор не призывает вас повторять какие либо описанные здесь действия и не несёт за них никакой ответственности.


Но не все люди знакомы c javascript и node.js, поэтому я и решил написать свою библиотеку на python, которым сейчас пользуются многие, позволяющую через «тестовые запросы» документации предоставить полный функционал messages API. Сразу прошу не злиться на меня в местах, где я буду повторять аспекты прошлого «выступления», потому что я хочу оформить эту статью в виде независимой документации.
Читать дальше →
Всего голосов 10: ↑9 и ↓1+8
Комментарии12

PostgreSQL Antipatterns: сказ об итеративной доработке поиска по названию, или «Оптимизация туда и обратно»

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

Поэтому неудивительно, что, разбирая в очередной раз «тяжелые» запросы на одной из самых нагруженных баз — нашего собственного корпоративного аккаунта СБИС, я обнаружил «в топе» запрос для «быстрого» поиска по названию для карточек организаций.

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

0: чего же хотел пользователь


[КДПВ отсюда]

Что вообще обычно подразумевает пользователь, когда говорит про «быстрый» поиск по названию? Почти никогда это не оказывается «честный» поиск по подстроке типа ... LIKE '%роза%' — ведь тогда в результат попадают не только 'Розалия' и 'Магазин Роза', но и роза' и даже 'Дом Деда Мороза'.

Пользователь же подразумевает на бытовом уровне, что вы ему обеспечите поиск по началу слова в названии и покажете более релевантным то, что начинается на введенное. И сделаете это практически мгновенно — при подстрочном вводе.
Читать дальше →
Всего голосов 17: ↑17 и ↓0+17
Комментарии15

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

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


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

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

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

Zip-файлы: история, объяснение и реализация

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


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

В статье очень подробно объясняется, как работают Zip-файлы и схема сжатия: LZ77-сжатие, алгоритм Хаффмана, алгоритм Deflate и прочее. Вы узнаете историю развития технологии и посмотрите довольно эффективные примеры реализации, написанные с нуля на С. Исходный код лежит тут: hwzip-1.0.zip.
Читать дальше →
Всего голосов 176: ↑175 и ↓1+174
Комментарии45

Гонки космических шпионов

Время на прочтение6 мин
Количество просмотров41K
Любопытная история разыгрывается сейчас на околоземной орбите: российский спутник-инспектор подбирается к американскому спутнику-шпиону, тот пытается своими маневрами затруднить сближение, а астрономы-любители наблюдают за происходящим и рассказывают нам.


Вид на телескоп «Хаббл» с шаттла. Примерно так может выглядеть конструктивно близкий USA 245 с “Космоса-2542”. Фото NASA
Читать дальше →
Всего голосов 100: ↑100 и ↓0+100
Комментарии121

Ошибки при работе с датой и временем в SQL Server

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

Перевод статьи подготовлен специально для студентов курса "MS SQL Server разработчик".





Содержание


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

Подборка @pythonetc, январь 2020

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


Новая подборка советов про Python и программирование из моего авторского канала @pythonetc.

Предыдущие публикации


Порядок блоков except имеет значение: если исключение может быть поймано несколькими блоками, то его поймает верхний блок. Этот код не будет работать так, как задумано:
Читать дальше →
Всего голосов 36: ↑36 и ↓0+36
Комментарии0

Аппаратный ключ шифрования за 3$ — возможно ли это?

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

Итоговый результат — ключ размером с флешку

Повсеместное шифрование и, как следствие, обилие ключей заставляет задуматься об их надежном хранении. Хранение ключей на внешних устройствах, откуда они не могут быть скопированы, уже давно считается хорошей практикой. Я расскажу о том, как за 3$ и 2 часа сделать такой девайс.
Читать дальше →
Всего голосов 151: ↑151 и ↓0+151
Комментарии151

Чтобы пацанам было не стыдно показать

Время на прочтение3 мин
Количество просмотров106K
Я стар и уже глуп, а у вас всё впереди, уважаемый программист. Но позвольте дать вам один совет, который наверняка поможет в вашей карьере – если, конечно, вы планируете остаться программистом.

Советы типа «писать красивый код», «хорошо комментировать свои доработки», «изучать современные фреймворки» — очень полезные, но, увы, второстепенные. Они идут прицепом к главному качеству программиста, которое надо в себе развивать.

Вот это главное качество: пытливый ум.
Читать дальше →
Всего голосов 315: ↑291 и ↓24+267
Комментарии172

Пишем драйвер для ноутбука for fun and profit, или как закоммитить в ядро даже если ты дурак

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

С чего всё началось


Начнём с постановки проблемы. Дано: один ноутбук. Новый ноутбук, геймерский. С RGB-подсветкой. Вот такой примерно ноутбук:

image
Картинка взята с lenovo.com

Есть ещё программа к этому ноутбуку. Программа как раз этой подсветкой и управляет.

Одна только проблема – программа под Windows, а хочется чтоб в любимом линуксе всё работало. И лампочки чтоб светились, и чтоб цвета красивые мелькали. Да вот только как это сделать, чтоб без реверс-инжиниринга и без написания своих драйверов? Простой ответ пришёл быстро – никак. Ну что ж, пошли писать драйвер.
Читать дальше →
Всего голосов 133: ↑132 и ↓1+131
Комментарии20

Всё, что вы хотели знать о МАС адресе

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

Всем известно, что это шесть байт, обычно отображаемых в шестнадцатеричном формате, присвоены сетевой карте на заводе, и на первый взгляд случайны. Некоторые знают, что первые три байта адреса – это идентификатор производителя, а остальные три байта им назначаются. Известно также, что можно поставить себе произвольный адрес. Многие слышали и про "рандомные адреса" в Wi-Fi.


Разберемся, что это такое.


МАС адрес (media access control address) – уникальный идентификатор, назначенный сетевому адаптеру, применяется в сетях стандартов IEEE 802, в основном Ethernet, Wi-Fi и Bluetooth. Официально он называется «идентификатором типа EUI-48». Из названия очевидно, что адрес имеет длину в 48 бит, т.е. 6 байт. Общепринятого стандарта на написание адреса нет (в противоположность IPv4 адресу, где октеты всегда разделяют точками).Обычно он записывается как шесть шестнадцатеричных чисел, разделенных двоеточием: 00:AB:CD:EF:11:22, хотя некоторые производители оборудования предпочитают запись вида 00-AB-CD-EF-11-22 и даже 00ab.cdef.1122.

Читать дальше →
Всего голосов 111: ↑110 и ↓1+109
Комментарии74

О работе ПК на примере Windows 10 и клавиатуры ч. 1

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

Меня зовут Андрей Артемьев, я работаю в Microsoft над ядром ОС Windows 10, ранее я работал над Windows 10x (WCOS), XBox, Windows Phone и Microsoft Edge. Я хочу популярно в образовательных целях рассказать о том как работает компьютер на примере клавиатурного ввода и Windows 10. Данный цикл статей рассчитан в первую очередь на студентов технических специальностей. Мы рассмотрим какой путь проходит информация о нажатой клавише от клавиатуры до отображения в Notepad.exe. В виду обширности и междисциплинарности темы в статьях могут быть неточности, о которых сообщайте в комментариях. Какая-то информация может быть устаревшей в виду скорости с которой развивается Windows.
Читать дальше →
Всего голосов 85: ↑78 и ↓7+71
Комментарии412
1
23 ...

Информация

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