Как стать автором
Обновить
137
-0.8
Андрей Дмитриев @AndreyDmitriev

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

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

Как за один pet-проект получить два диплома

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

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

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

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

Инструменты Дата-сайнтиста. Универсальная база

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

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

Какие инструменты нужны для анализа данных
Всего голосов 14: ↑12 и ↓2 +10
Комментарии 2

10 полезных команд Git

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


В этой статье мы рассмотрим набор команд, которые немного облегчат вам жизнь и повысят продуктивность.
Читать дальше →
Всего голосов 36: ↑25 и ↓11 +14
Комментарии 9

Полезные модули PowerShell. Переводчик в консоли, SpeedTest, Syslog и другие

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

Всем привет! Порой, написать графическую форму для консольного приложения может оказаться очень удобным решением, тем самым не нужно запоминать все ключи программы, особенно, если пользоваться им приходится изредка, тем самым автоматизируя работу с данным приложением в дальнейшем. Но, ситуация может быть обратной, когда приложение имеет только графический интерфейс, а вам нужно получить вывод его работы в консоли, например, для возможности передачи метрик в систему мониторинга. С тех пор как начал проводить все больше времени в консоли, заметил, что становится менее удобно переключаться на ранее привычные инструменты, лишний раз использовать мышь, держать открытыми излишние приложения или вкладки в браузере, особенно, если работаешь на удаленной машине без прямого доступа к графическому интерфейсу. У меня накопилась небольшая коллекция полезных модулей, большинство из которых написаны совсем недавно, успел привыкнуть при регулярном использовании и хотелось бы ими поделиться. Осознавая, что тенденция ухода Windows систем на территории РФ растет, тем не менее думаю еще очень много людей, кто так же как и я продолжают использовать данную систему и автоматизировать свою работу, возможно, представленные модули так же смогут пригодятся. Все модули опубликованы в репозитории на GitHub и менеджере пакетов Nuget, откуда их можно установить одной командой.

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

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

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

Источник: CBL

Сейчас что в российском, что в зарубежном сегментах интернета появилось много жалоб на проблемные флешки. Некоторые вообще не работают, часть — функционируют, но с проблемами. Одна из причин сложившейся ситуации — низкокачественные чипы памяти, которые устанавливают разные производители. Причем большинство чипов — вовсе не ноунейм. Подробности — под катом.
Читать дальше →
Всего голосов 45: ↑39 и ↓6 +33
Комментарии 33

Сохраняем простоту кода и ускоряем разработку за счет отказа от оверинжиринга

Время на прочтение 8 мин
Количество просмотров 8.8K
В процессе программирования я всегда стараюсь сделать программу, минимально удовлетворяющую требованиям с максимально аккуратной архитектурой. Почему? Потому что хочу выдать продукт как можно скорее – у меня нет лишнего времени, нет лишнего внимания и хочется как можно скорее получить фидбек. Быстрое продвижение – это распространенная мотивация, но целенаправленность также имеет большое значение. Под давлением очень просто перескочить через этап планирования, но, когда цикл разработки запускается в спешке, это часто приводит к тому, что разработчик снижает требования к качеству и при этом, сам того не сознавая, уходит в оверинжиниринг.

Мой совет: если хотите ускориться, пишите код как можно проще и как можно чище.
Читать дальше →
Всего голосов 18: ↑16 и ↓2 +14
Комментарии 10

Perfect DLL Hijacking. Разбор техники

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

Привет, Хабр, на связи лаборатория кибербезопасности компании AP Security!  В статье речь пойдет о такой технике, как DLL Hijacking, а именно как это работает от А до Я.

DLL Hijacking - это техника, позволяющая внедрять сторонний код в легитимный процесс (EXE), обманывая его загрузкой неправильной библиотеки (DLL). Чаще всего это происходит путем размещения похожей DLL выше в порядке поиска, чем предполагаемая, в результате чего ваша DLL выбирается загрузчиком библиотек Windows первой.

Несмотря на то, что в основном DLL-хакинг является решающей техникой, у нее всегда был один существенный недостаток, заключающийся в том, что после загрузки в процесс он выполняет наш сторонний код. Это называется Loader Lock, и при запуске нашего стороннего кода на него накладываются все жесткие ограничения. Это и создание процессов, и сетевой ввод/вывод, и вызов функций реестра, и создание графических окон, и загрузка дополнительных библиотек, и многое другое. Попытка выполнить любое из этих действий под Loader Lock приведет к аварийному завершению или зависанию приложения.

До сих пор существовали только довольно грубые или быстро становящиеся бесполезными техники. Поэтому сегодня мы проводим 100% оригинальное исследование загрузчика библиотек Windows, чтобы не просто обойти Loader Lock, но и, в конечном итоге, полностью его отключить. Кроме того, мы разработали несколько стабильных механизмов защиты и обнаружения, которые могут быть использованы защитниками.

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

Об отображении 10-бит цвета с использованием OpenGL (GLFW)

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

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

Читать далее про тысячу оттенков серого
Всего голосов 25: ↑25 и ↓0 +25
Комментарии 85

Из пушек по воробьям. Генерация и решение лабиринта не самым обычным способом

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

На уходящей неделе мне попалась симпатичная, хоть и не новая мини‑серия статей на Дзен‑канале @zdgzdgzdg про процедурную генерацию лабиринта методом «коллапса волновой функции». Пока я читал эти статьи и знакомился с кодом, меня осенило: ведь это же вычисления в комонаде, погружённые в монаду! Я не издеваюсь, действительно, речь идёт о композиции двух паттернов функционального программирования: комонады Zipper, превращающей локальные правила в глобальное состояние, и монады Random, позволяющей генерировать случайные объекты.

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

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

Книги, о которых редко говорят

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

Дал ему подборку книг, он приходит месяца через два, и с порога такой сразу:
— Я с друзьями не могу разговаривать.
— Ну да есть такой, недостаточек.
интервью Жака Фреско

Читать далее
Всего голосов 91: ↑89 и ↓2 +87
Комментарии 26

Старый софт: как мы обошли запрос пароля в Shadow Defender и зачем пользоваться приложением, которое не обновляется

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

Привет, Хабр! Меня зовут Илья Буймистров, я занимаюсь исследованиями в области инфобеза для сервиса централизованного управления уязвимостями CICADA8. Это один из проектов  блока инноваций FC компании МТС RED.

Чтобы защищать пользователей, надо понимать, где слабые места в их ИТ-системах. Сегодня я расскажу, как можно обойти ввод пароля в достаточно известной программе Shadow Defender. Если вы росли в 2000-х, наверняка сталкивались с ней в компьютерных клубах и других местах, где ПК доступен большому количеству людей. Иногда её называют антивирусом, но не совсем точное определение. Обо всём по порядку.

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

Best free software: какой софт мы использовали 15 лет назад (часть 1)

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

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

Тогда компьютерные журналы составляли подборки лучшего ПО на разные случаи жизни. Давайте вспомним, что было популярным лет 15 назад. Осторожно: от скриншотов может свести олдскулы (мы вас предупредили).

Читать далее
Всего голосов 45: ↑42 и ↓3 +39
Комментарии 94

Что нужно знать о gRPC системному аналитику

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

Всем привет! Я Ирина Матевосян, системный аналитик в направлении продуктового и системного анализа в отделе Tinkoff Mobile Core. Мы разрабатываем общие библиотеки, которые используют все мобильные приложения экосистемы Тинькофф. 

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

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

Как собрать Си программу в OS Windows

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

Иногда возникает ситуация, когда надо что-то посчитать согласно сложному алгоритму прямо на LapTop PC. При этом сам алгоритм написан на Си.

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

Да всё, что угодно! То есть Вы хотите использовать язык Си как гибкий и быстрый калькулятор в Windows.

В этом тексте представлено минимальное окружение для сборки Си кода в Windows.

Читать далее
Всего голосов 21: ↑8 и ↓13 -5
Комментарии 56

Obsidian: Мой опыт с LYT/Ideaverse и его русификация

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

В этой статье я расскажу о том, как организовал себе единое место для заметок, документов и проектной документации с помощью Obsidian и шаблона LYT, а также дам ссылку на русифицированный шаблон для создания своей такой системы.

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

Мозговые имплантаты помогли пяти людям восстановиться после серьёзных травм

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

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

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

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

«Это первое доказательство того, что можно сдвинуть с мёртвой точки решение этой проблемы», — сказал доктор Николас Шифф, невролог из нью-йоркского медицинского центра Weill Cornell, возглавлявший исследование.

Читать далее
Всего голосов 14: ↑9 и ↓5 +4
Комментарии 2

Вкатываемся в Machine Learning с нуля за ноль рублей: что, где, в какой последовательности изучить

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

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

Читать далее
Всего голосов 159: ↑157 и ↓2 +155
Комментарии 44

О хранении изображений в памяти с выравниванием

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

В разговорах с коллегами, а также по отдельным постам на форумах я заметил, что даже относительно опытные разработчики порой не достаточно глубоко понимают особенности хранения изображений в памяти. Если вы знаете, что такое выравнивание на границу 64-x байт, а также термины типа «длина или шаг строки (LineWidth/StepWidth, Stride)», «зазоры выравнивания (Alignment Gaps)», кроме того в курсе размеров линий кэша и страниц памяти на вашем компьютере, то вам, вероятно, не будет интересно, а остальные, особенно те, кто интересуется обработкой изображений — могут ознакомиться с предлагаемым материалом, и, возможно найдут для себя что-то новое и полезное. Под катом будет немножко кода на Си и ассемблере, пара LabVIEW скриншотов, предполагается также, что у читателя есть базовые знания OpenCV. Для экспериментов понадобится компьютер с камушком, поддерживающим AVX2.

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

Семь приемов в Excel, которые делают диаграммы профессиональными

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

Хотя сейчас я работаю в ИТ-отрасли, много лет назад я верстал рекламную газету, и с тех пор дизайн – мой профессиональный навык и увлечение за пределами профессии.

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

Из тридцатилетнего опыта и десятков прочитанных книг я выбрал семь полезных приемов. Их мы и разберем в этой статье в блоге ЛАНИТ.

Читать далее
Всего голосов 88: ↑87 и ↓1 +86
Комментарии 37

Что нового в .NET 8?

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

.NET 8 вышел в релиз, значит можно начинать переносить свои проекты на новую версию. В этой статье мы рассмотрим новые улучшения и фишки: C# 12, производительность, Native AOT, GC, новые типы, направленные на повышение производительности, NuGet Audit и прочее.

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

Информация

В рейтинге
Не участвует
Откуда
Ahrensburg, Schleswig-Holstein, Германия
Дата рождения
Зарегистрирован
Активность