Как стать автором
Поиск
Написать публикацию
Обновить
0
@c_devread⁠-⁠only

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

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

Жизнь за столом

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров16K

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

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

Все восемь важных аспектов рабочего места схематично изображены на картинке. Детали, нюансы и объяснения - далее.

Читать далее

Квантовые компьютеры. С точки зрения традиционного программиста-математика. Часть 1

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

Квантовые компьютеры. С точки зрения традиционного программиста-математика.
Часть 1. Основы. Квантовый регистр.

О чем эта публикация

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

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

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

Читать далее

«Port Knocking» на устройствах MikroTik

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

Port Knocking - это метод, который позволяет скрыть открытые порты на сервере, а также скрыть сам факт существования сервера в сети. Он основывается на использовании последовательности подключений к определенным портам, которые заранее определены администратором. Если эта последовательность верна, то система открывает доступ к нужному порту.

Читать далее

Tinder ушёл… да здравствует $hyoo_match

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

Здравствуйте, меня зовут Дмитрий Карловский и недавно у меня случился тиндергейт. Но вот беда, Match Group уходит из России, забирая с собой Tinder. С чего же нам теперь кринжевать? Но, как известно, свято место пусто не бывает, так что я запилил свой дейтинг без геймификации и монетизации:

? Tinder ушёл... встречай  match.hyoo.ru - сервис знакомств, которому выгодно, чтобы ты нашёл себе пару и свалил в закат.
Никаких фейков, мёртвых душ, рекламы и вымогательства денег. Поделись с друзьями - пусть тоже найдут свою половинку ?

Далее будет небольшой обзор индустрии дейтинга и рассказ о том, чем $hyoo_match принципиально отличается от всего этого дерьма.

Найти, наконец, свою половинку

Добавляем SPDIF в легендарный Roland MT-32

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

Этот проект можно считать частью №2 по цифровизации старых синтезаторов. В первой части я рассказал, как при помощи AK4103A можно добавить цифровой выход в практически любой синтезатор, где схема ЦАП подразумевает стереопоток, комбинированный в одну I2S DATA линию.

Roland MT-32, очень редкий и знакомый в 90е старичкам-геймерам разве что по слухам - еще более старое устройство, в котором применена достаточно распространенная в D-серии Roland схема использования параллельного DAC, который занимается не просто поточным преобразованием финального стерео, но и попутно выполняет услуги ЦАП для чипа реверберации.

Читать далее

Автономный LTE роутер своими руками | Часть 1 — От идеи до схемы

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

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

Да-да, это именно разработка собственного роутера, не простой допил уже имеющегося и переупаковка в другой корпус. Отнюдь! Схема, печатная плата, пайка – всё сделаем сами и защитим диплом. Заинтересовал?

Тогда добро пожаловать под кат

Автономный LTE роутер своими руками | Часть 4 — Финал

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

С наступающим Хабровчане! Есть мнение что, устройство без корпуса нельзя считать законченным и без него оно будет лежать в разобранном виде, собирая пыль. Поэтому в этой финальной части смоделируем и напечатаем на 3D принтере свой корпус.

И наконец – подведём итоги по проекту, сколько было затрачено финансов, допущено ошибок, а также поделюсь с вами своими планами на Хабр и не только

Приятного прочтения

Система увлажнения воздуха для дома или квартиры

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

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

Читать далее

Сколько стоит умный дом? Рассказываю, как строил свой и что получилось за 1000 руб./м²

Уровень сложностиПростой
Время на прочтение25 мин
Количество просмотров107K

Подробный рассказ о том, как я свой дом и сад сделал умными. С фото, техническими деталями, стоимостями и выводами на будущее.

Читать

STM32MP1: U-Boot, Buildroot, Arch Linux и немного Debian

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

Некоторое время назад компания STMicroelectronics выпустила интересные процессоры серии STM32MP1. Когда у меня наконец-то дошли руки до отладочной платы на основе этого процессора, я с некоторым удивлением обнаружил, что для нее отсутствуют какие-либо сборки на основе популярных дистрибутивов (Debian, Arch Linux и др). Оставалось только попробовать самому адаптировать какой-нибудь дистрибутив под данную плату. По результатам этого и появилась данная статья.


Читать дальше →

Драйвер виртуальных GPIO с контроллером прерываний на базе QEMU ivshmem для Linux

Время на прочтение21 мин
Количество просмотров17K
Природа прерываний

Трудно недооценить роль GPIO, особенно в мире встраиваемых систем ARM. Помимо того, что это крайне популярный материал для всех руководств для начинающих, GPIO обеспечивают способ для управления многими периферийными устройствами, выступают в качестве источника ценных прерываний, или даже могут быть единственным доступным способом общения с миром для SOC.

Основываясь на собственном скромном опыте, могу сказать, что прерывания далеко не самая освященная тема в сообществе Linux. Из-за своих особенностей, а так же сильной привязки к аппаратной части, все обучающие материалы посвященные прерываниям лишены реального и легко воспроизводимого примера. Данный факт мешает пониманию того, что очень часто прерывания и GPIO неразделимы, особенно в области встраиваемого Linux. Многие начинают верить, что GPIO это очень простая и скучная вещь (которая кстати и стала таковой благодаря подсистеме sysfs).
Читать дальше →

Что такое Linux? Статья-шпаргалка для новичков

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

Что такое Linux?


Салют! Это статья — попытка систематизировать некие базовые знания об Linux’ах, которая может быть полезна для продвинутых пользователей, разработчиков и админов Windows, которые еще не имели (или имели крайне небольшой и отрывочный) опыт работы с Linux системами и не знают, с чего начать, однако хотят попробовать — сами, или по причине производственной необходимости. Каждый пункт содержит не исчёрпывающие сведения, а лишь отправные пункты для дальнейшего изучения (гуглежа) материала.

Содержание:

  1. Linux Kernel aka Ядро
  2. GNU Core Utilities (coreutils)
  3. Bash — интерпретатор командной строки
  4. Системы управления пакетами и пакетные менеджеры
  5. Init systems — системы инициализации
  6. systemd
  7. Ваш первый вход на сервер
  8. Управляем пользователями
  9. Сети
  10. FHS — Filesystem Hierarchy Standard — навигация в файловых системах Linux
  11. Window system / display server — сервер экранов
  12. Полезные ссылки и список литературы для изучения


Если интересно — прыгайте под кат
one root to rule them all

Работаем с модулями ядра в Linux

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

Ядро — это та часть операционной системы, работа которой полностью скрыта от пользователя, т. к. пользователь с ним не работает напрямую: пользователь работает с программами. Но, тем не менее, без ядра невозможна работа ни одной программы, т.е. они без ядра бесполезны. Этот механизм чем-то напоминает отношения официанта и клиента: работа хорошего официанта должна быть практически незаметна для клиента, но без официанта клиент не сможет передать заказ повару, и этот заказ не будет доставлен.
В Linux ядро монолитное, т.е. все его драйвера и подсистемы работают в своем адресном пространстве, отделенном от пользовательского. Сам термин «монолит» говорит о том, что в ядре сконцентрировано всё, и, по логике, ничего не может в него добавляться или удаляться. В случае с ядром Linux — это правда лишь отчасти: ядро Linux может работать в таком режиме, однако, в подавляющем большинстве сборок возможна модификация части кода ядра без его перекомпиляции, и даже без его выгрузки. Это достигается путем загрузки и выгрузки некоторых частей ядра, которые называются модулями. Чаще всего в процессе работы необходимо подключать модули драйверов устройств, поддержки криптографических алгоритмов, сетевых средств, и, чтобы уметь это правильно делать, нужно разбираться в строении ядра и уметь правильно работать с его модулями. Об этом и пойдет речь в этой статье.
Читать дальше →

Хотите проектировать устройство, которое использует миллиард человек — решайте микроархитектурные задачки

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

Длинный извилистый путь Школы Синтеза Цифровых Схем приближается к годовой кульминации. 21-23 пройдет хакатон по процессорам в зеленоградском МИЭТ, после чего 150 слушателей из дюжины российских городов оправятся готовится к майским праздникам, приближающимся сессиям и лету.

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

Для экзамена мы выбрали три темы в четырех упражнениях:

Читать далее

Атаки на RDP и способы защиты от них

Уровень сложностиПростой
Время на прочтение15 мин
Количество просмотров46K

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

В 2020 году увеличилось использование сторонних сервисов для обмена данными, работа сотрудников на домашних компьютерах в потенциально незащищенных сетях Wi-Fi. Увеличилось количество людей, использующих инструменты удаленного доступа. Это стало одной из главных проблем для сотрудников ИБ.

Одним из наиболее популярных протоколов прикладного уровня, позволяющим получать удаленный доступ к рабочей станции или серверу под управлением ОС Windows, является проприетарный протокол Microsoft — RDP (англ. Remote Desktop Protocol - Протокол удаленного рабочего стола). Во время карантина в сети Интернет появилось большое количество компьютеров и серверов, к которым можно подключиться удаленно. Наблюдался рост активности злоумышленников, которые хотели воспользоваться текущим положением вещей и атаковать корпоративные ресурсы, доступные для сотрудников, отправленных на удаленную работу. На рисунке 1 представлена статистика атак на RDP. По графику видно, что количество атак на RDP значительно увеличилось с начала пандемии.

Читать далее

SSH для новичков

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров348K

Программистов, сисадминов, devops'ов, тестировщиков часто объединяет использование некоторых общих технологий. Например, возможность иметь удалённый доступ к серверу пригодилось бы любому из указанной выше анекдотичной компании. Поэтому в этой статье мы рассмотрим основы работы с протоколом SSH на базовом уровня (без генерации ключей, подписей, мам, пап и кредитов). "Продвинутое" использование посмотрим уже отдельно, в следующий раз. Материал подготовил Макс, автор YouTube-канала PyLounge. Поехали!

Читать далее

Почему ChatGPT не найдет за тебя работу за границей?

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

Последнее время только ленивый не хайпанул на теме ChatGPT. Все, как один, бросились к ИИ решать все свои проблемы, от бытовых и философских вопросов до серьезных задач вроде “найди мне работу” или “помоги релоцироваться”.

Читать далее

Как стать Python-разработчиком с нуля — личный опыт

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров58K

Это мой первый пост, прошу сильно не пинать. Для начала немного расскажу, кто такой тестировщик. Это специалист, который отлавливает ошибки на всех этапах разработки проекта. Работа рутинная, но ответственная. Получают тестировщики на 20-30% меньше, чем программисты: от 30 000 руб. и выше, всё зависит от опыта.

Становление тестировщиком – самый простой путь старта в IT, есть куда расти (тест-менеджмент, веб-дизайн, чистая разработка).

Эту информацию я почерпнул из открытых источников и подумал, что вот, я не умею программировать, а получать астрономическую зарплату работать в IT – хочется. Думал, что начну с ручного тестирования, устроюсь на работу – а дальше, как пойдёт.

Но на практике оказалось не всё так просто. Кругом полно таких же людей, который думают точно также же, и такие специалисты маловостребованы. Для чего вообще берут на работу стажёров? Работодатель ожидает, что в ближайшем будущем навыки стажёра охрененно вырастут и он будет приносить огромную пользу фирме с дальнейшим повышением зарплаты (но не всегда таким, какую ожидает стажёр). Поэтому чаще всего стажёры, получив опыт, либо настаивают на значительном повышении з/п или уходят к конкурентам.

Несмотря на грустные мысли, я поставил цель – изучить навыки тестирования на Python хотя бы на уровне продвинутого стажёра.

Открыть гайд

Программирование контроллера сервоприводов MC50. Введение

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

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

Читать далее

Как смотреть «Ютубчик» на старых телевизорах без рекламы, управляя «родным» ИК пультом ДУ

Время на прочтение7 мин
Количество просмотров39K
В далеком 2014 в разгаре появления Smart телевизоров я, как и большинство наивных обывателей, поддался маркетинговой уловке, и казалось бы вполне практической идеи объединить функции компьютера и телевизора в одном флаконе.
Читать дальше →

Информация

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