Search
Write a publication
Pull to refresh
0
@MacInread⁠-⁠only

User

Send message

Из первых уст. Про впечатления от курса  Яндекс Практикума “Разработчик С++”

Reading time8 min
Views35K

Приветствую уважаемое сообщество.

В последнее время стало появляться множество курсов, связанных с IT. Вполне логично, что народ стал делиться своими наблюдениями от их прохождения. Так на Хабре можно найти отзывы об обучении на некоторых факультетах (курсах) от Яндекс Практикума [1-3]. Однако про курс "С++ разработчик" такой информации еще не было, был только рекламный пост о его запуске [4], после которого я туда и вписался, попав в первый поток (когорту).

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

Читать далее

Криптофронт Второй Мировой Войны часть 1

Reading time10 min
Views17K

Автор: Forbidden World

Еще одна статья про взлом Энигмы?! Конечно нет, мы поговорим обо ВСЕХ шифровальных машинах, активно использовавшихся во Второй Мировой Войне, и, конечно же, поговорим о том, как их пытались взломать.

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

Япония, СССР, Великобритания, США и Германия. В этой и следующей статье рассмотрим атаку и защиту каждой страны, ответим и на нестандартные вопросы:

— Почему шифровальщики носили с собой взрывчатку?

— Почему в армии США ценили коренных американцев?

— Как сводки погоды, минные поля и нацистские приветствия помогали союзникам?

— Почему СССР даже не пытался взломать шифровальные машины Германии?

— И почему математически идеальный шифр все равно расшифровывали?

— Интересно? Тогда добро пожаловать под кат!

Читать далее

Онемение после удаления зуба мудрости

Reading time4 min
Views57K
image

Здравствуйте, дорогие друзья! По многочисленным просьбам я решил вернуться к теме зубов мудрости и затронуть самую наболевшую — «онемение после удаления» («парестезия»). Все мы прекрасно помним чувство, когда отлежали руку (а кто-то не только помнит, но и практикует эту уловку в личных целях, если вы понимаете, о чем я). Рука онемела, вы ничего не чувствуете, прикасаясь к ней. Кажется, что она не ваша и её придется ампутировать. Так вот, подобное чувство может возникать не только с конечностями, но и после удаления зуба, в частности, зуба мудрости.
Читать дальше →

Один бинарник, любое окружение. Магия чистого C

Reading time5 min
Views35K


Как мы представляем себе кроссплатформенность? Мы пишем программу на языке, который либо компилируется в исполняемый файл отдельно для каждой поддерживаемой платформы, либо использует разновидность виртуальной машины вместо бинарника (и тогда эта среда должна присутствовать в целевых системах). Есть также и низкоуровневые языки, на которых писать серьёзные программы менее удобно, чем на высокоуровневых монстрах со своими компиляторами или рантаймами, но зато такие программы менее требовательны к предустановленному софту или наличию ОС в принципе, как и менее разборчивы в архитектуре. И всё же, есть возможность писать один и тот же код и собирать один и тот же бинарь под все популярные архитектуры и ОС (и даже bare metal), и эта возможность появилась благодаря гениальной Justine Tunney. Она написала Cosmopolitan, библиотеку на C, позволяющую исполнять один и тот же код на любой машине, подобно Java… но без какого-либо предустановленного интерпретатора или виртуальной машины! Один и тот же скомпилированный файл может исполняться как минимум в любом дистрибутиве Linux, на Mac OS, Windows NT, FreeBSD, OpenBSD, и NetBSD и на bare-metal на x86 и ARM*. Это настоящая магия.

Как воссоздать изображение всего по нескольким пикселям

Reading time7 min
Views21K
Эта статья дает возможность познакомиться с такой методикой получения и восстановления сигнала, как Compressive Sensing.

image
Множество всех возможных изображений 2 на 2 с цветами, закодированными одним битом

Пространство изображений огромно, невероятно огромно, но при этом очень мало. Задумайтесь об этом на минуту. Из сетки размером всего 8 на 8 пикселей можно создать 18 446 744 073 709 551 616 различных чёрно-белых изображений. Однако из этих 18 квинтиллионов изображений очень немногие покажутся осмысленными человеческому взгляду. Большинство изображений, по сути, выглядит как QR-коды. Те, которые покажутся человеку осмысленными, принадлежат к тому множеству, которое я называю естественными изображениями. Они представляют крошечную долю пространства изображений 8 на 8. Если мы рассмотрим мегапиксельные изображения, то доля естественных изображений становится ещё меньше, почти ничтожной, однако содержит любое изображение, которое можно придумать. Так чем же эти естественные изображения так уникальны? И можем ли мы использовать эту фундаментальную разницу в собственных интересах?
Читать дальше →

USB на регистрах: STM32L1 / STM32F1

Reading time18 min
Views24K


Еще более низкий уровень (avr-vusb)
USB на регистрах: bulk endpoint на примере Mass Storage
USB на регистрах: interrupt endpoint на примере HID
USB на регистрах: isochronous endpoint на примере Audio device

С программным USB на примере AVR мы уже познакомились, пришла пора взяться за более тяжелые камни — STM32. Подопытными у нас будут классический STM32F103C8T6 а также представитель малопотребляющей серии STM32L151RCT6. Как и раньше, пользоваться покупными отладочными платами и HAL'ом не будем, отдав предпочтение велосипеду.
Читать дальше →

Заметки фитохимика 2020. Гречка или Повесть о народной крупе

Reading time22 min
Views61K
Недавно решил я в своем телеграм-канале поздравить подписчиков с Рождеством и написать фитозаметку о каком-нибудь растении. Предложил проголосовать читателям. И к моему удивлению, с большим отрывом в этом голосовании победила гречка, обойдя и гранат, и яблоко, и даже авокадо. Пришлось свое слово сдержать и поднять старые черновики. Поэтому, сегодня читаем рассказ про, без сомнения, народную крупу. Про нашу гречку-«крупеничку». Если интересно, за счет чего гречка может лечить диабет II типа, снижать холестерин в крови и тормозить рак молочной железы — добро пожаловать под кат (+ ремарка про глютен).


Греча! Греча!

История программ для удалённого доступа

Reading time8 min
Views17K


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

Мы так и не попали в аптечку МКС, зато начали продавать свой быстрый регенератор тканей

Reading time7 min
Views51K
image

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

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

Продажи были около нуля, но это ожидаемо. Мы были молоды, наивны и хотели показать лучший эффект, стабилизировав в формуле сразу много действующих веществ, которые дополняли друг друга по эффекту. Цена флакона 100 мл к моменту выхода альфа-тестирования на полке получалась около 2 929 рублей, позже за счёт каких-никаких серий удалось снизить до 1 947.

Естественно, ни одна аптека никогда бы такое не взяла продавать без огромной рекламной кампании. Бюджета на рекламу нового средства у нас нет. Есть на Блефарогель-1, потому что его мы делаем тоннами. А Интенсив-регенерации сделали всего два реактора. И не самых больших.

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

Делаем гибкую печатную плату

Reading time7 min
Views19K

Материал по мотивам методики создания магнитопланарных излучателей для наушников и колонок. Подход имеет широкий спектр применения, не только для создания электроакустических систем. Например, для гибких шлейфов взамен порванных, антенн и прочего, на что хватит воображения и терпения. Один из вариантов использования фоторезистивного метода вместо популярного ЛУТ.

Читать далее

Аудит паролей Активной Директории Windows

Reading time7 min
Views19K

Если в вашей компании активно используется домен Windows, рано или поздно перед вами встанет задача повысить безопасность используемых паролей. Штатных средств (кроме тривиальной групповой парольной политики) тут нет, нормальных продуктов тоже нет. Пароли хранятся в виде хэшей, которые ещё и достаточно сложно достать, поэтому прямой анализ безопасности не возможен. Я попытался построить процесс, который, при нужной сноровке, не займет у вас больше нескольких часов и будет прекрасно повторяем. Можно будет напрямую отслеживать, как ваши усилия увеличивают стойкость паролей в компании, а это всегда приятно.

Читать далее

Графика в терминале

Reading time3 min
Views33K
Эта история началась, когда я узнал о существовании bpytop. Меня поразила детализация графиков и я начал разбираться как это сделано. Оказалось, что для вывода графиков использовались символы алфавита Брайля, представляющие из себя комбинацию из 8 точек: 2 точки в ширину и 4 точки в высоту. Поискав готовые решения, использующие этот подход, я нашел на реддите анонс такого проекта. В первом же комментарии анонса я прочитал:
Это конечно круто, но почему люди просто не переоткроют для себя ReGIS (векторную графику в терминале) и sixel (пиксельную графику в терминале).
До этого момента я ничего не знал про sixel. Копнув глубже я выяснил, что в теории sixel должен поддерживаться xterm-ом. Я запустил xterm на своей ubuntu 20.04 в режиме эмуляции vt340

xterm -xrm "XTerm*decTerminalID: vt340" -xrm "XTerm*numColorRegisters: 256"

выполнил вот такую команду (convert это команда из пакета imagemagick)

clear && convert <(curl -s https://upload.wikimedia.org/wikipedia/en/7/7d/Lenna_%28test_image%29.png) sixel:-

и увидел вот это:

image
Вау, работает!
Читать дальше →

Налоговая проверка: 7 правил выживания

Reading time10 min
Views9.4K

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

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

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

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

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

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

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

Читать далее

Забытые корни популярных иконок

Reading time9 min
Views29K


Популярная шутка утверждает, что наши дети воспримут 3,5-дюймовую дискету как распечатанный на 3D-принтере значок сохранения. Действительно, растёт поколение, не знающее объекта, с которого срисовали эту пиктограмму.

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

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

FizzBuzz по-сениорски

Reading time7 min
Views119K

- Добрый день, я на интервью на позицию старшего разработчика.

- Здравствуйте, давайте начнем с небольшого теста, пока я ваше CV смотрю. Напишите программу, которая выводила бы числа от 1 до, скажем, миллиарда, притом если число кратно трем, то вместо числа выводится Fizz, если кратно пяти, то Buzz, а если и трем, и пяти, то FizzBuzz.

Серьезно, FizzBuzz? Задачка для начальной школы, на сениорскую позицию? Ну ладно.

Читать далее

Настраиваем домашний почтовый сервер и уходим с «бесплатной» почты

Reading time15 min
Views368K

С каждым годом рекламы в интернете становится все больше, а подают ее с каждым разом все навязчивее. Дошло уже до почты: реклама в интерфейсе почтового ящика выглядит как первое непрочитанное письмо, которое машинально хочется открыть. Я не против рекламы, особенно когда она в тему и не сбивает с толку. Но маскировать её под непрочитанное письмо ‒ это перебор. Чувствуется, что следующим шагом рекламу начнут вставлять прямо в тело письма.

Читать далее

Трюк с XOR для собеседований и не только

Reading time8 min
Views137K


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

Хоть и непривычно ожидать решения с XOR на собеседованиях, довольно забавно разбираться, как они работают. Оказывается, все они основаны на одном фундаментальном трюке, который я постепенно раскрою в этом посте. Далее мы рассмотрим множество способов применения этого трюка с XOR, например, при решении популярной задачи с собеседований:

Дан массив из n — 1 целых чисел, находящихся в интервале от 1 до n. Все числа встречаются только один раз, за исключением одного числа, которого нет. Найдите отсутствующее число.

Разумеется, существует множество прямолинейных способов решения этой задачи, однако есть и довольно неожиданный, в котором применяется XOR.
Читать дальше →

Flipper Zero — план по производству и доставке

Reading time6 min
Views30K
Видеообзор свежей версии Flipper Zero

Flipper Zero — проект карманного мультитула для хакеров в формфакторе тамагочи, который мы разрабатываем. Предыдущие посты [1],[2],[3],[4],[5],[6],[7],[8],[9],[10]

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

В посте расскажем о текущем статусе проекта, задачах и проблемах, грядущем производстве и доступе в pledge manager.
Читать дальше →

Железячники умирают. Опыт работы в сфере ремонта цифровой техники

Reading time10 min
Views111K

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

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

Погружайся

Баг в NTFS, или как подвесить всю систему

Reading time5 min
Views83K
Не так давно при разработке фильтра файловых систем возникла проблема, которая приводила к подвисанию всей системы. Казалось бы, фильтр выполнял очень простые действия и сам был очень примитивным. Чтобы выяснить причину, пришлось спуститься до отладки и реверс-инжиниринга драйвера NTFS. Анализ выявил очень интересный эффект. Если скомпилировать и выполнить очень простую программу, изображенную на рисунке ниже, то доступ к соответствующему тому подвиснет.


Т.е. в данном примере, если попытаться открыть любой файл относительно файла $mft, доступ ко всему тому «С» повиснет, а так как этот том является системным, подвиснет и вся система. При этом не нужно иметь каких-либо прав. Если же том был не системным, то повиснет только доступ к этому тому, но если выполнить перезагрузку, то система повиснет на ней.
Читать дальше →

Information

Rating
Does not participate
Registered
Activity