Как стать автором
Обновить
4
0

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

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

Linux — лучшая ОС

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

Привет, Хабр!

Здесь я хочу рассказать о том, почему GNU/Linux — это лучшая операционная система на данный момент и почему тебе срочно нужно пересесть с Windows на неё.

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

Читать далее
Всего голосов 101: ↑31 и ↓70-27
Комментарии385

RISC-V — звезда родилась: x86 не у дел, ARM сломала обе ноги

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

Привет, постоянные и не очень читатели :) 

Это снова я — с четвёртой статьей из цикла про архитектуры, процессоры и всё такое. Напомню, как всё было:

Part I: Скандальное разоблачение x86: ARM врывается с двух ног

Part II: Этой индустрии нужен новый герой: ARM врывается с двух ног

Part III: Китайский киднеппинг: похищение дочки

Part IV: RISC-V — звезда родилась: x86 не у дел, ARM сломала две ноги← ВЫ ЗДЕСЬ

Как по мне, сейчас идеальное время для четвёртой статьи из цикла — в процессорах и архитектурах всё скучно (со времён M1 ничего удивительного не было) + вашему покорному слуге нужно было убедиться, что сабж не помрёт, а расцветёт, как стронгилодон крупнокистевой.

Дропдаун
Всего голосов 67: ↑60 и ↓7+66
Комментарии205

Описание быстрого и стабильного Motion blur алгоритма

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

Всем привет, эта статья является краткой выжимкой другой статьи: Guertin, Jean-Philippe & McGuire, M. & Nowrouzezahrai, D.. (2014). A fast and stable feature-aware motion blur filter. High-Performance Graphics 2014, HPG 2014 - Proceedings. 51-60.

В ней описан алгоритм Motion blur эффекта, который был предложен авторами оригинальной статьи.

Посмотреть алгоритм
Всего голосов 4: ↑4 и ↓0+6
Комментарии7

Минцифры дало ответ, что действия ТБанк по получению согласия на обработку биометрии противоречат положениям закона

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

Минцифры дало ответ, что действия ТБанк по получению согласия на обработку биометрии НЕ соответствую (противоречат) положениям закона⁠⁠.

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

Читать далее
Всего голосов 135: ↑133 и ↓2+165
Комментарии98

Сотрудники ВК объединяются против компании на фоне увольнений

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

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

Читать далее
Всего голосов 165: ↑148 и ↓17+175
Комментарии318

Zero-cost Property в С++

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

Расскажу об одном решении которое имеет больше смысла в качестве упражнения а не практической пользы. Постановка задачи звучит так: Хочу получить в C++ семантику property как в C# и без накладных расходов.

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

К слову, компиляторы Microsoft имеют способ описать property но это не является частью стандарта C++.

Сразу отмечу что property получились с значительными ограничениями и больше подходят для имитации Swizzling из GLSL. По этому буду воспроизводить маленький кусочек vec2 а именно property yx которое должно возвращать исходный вектор с свапнутыми полями. Далее vec2 буду иногда называть контейнером, как более общий случай. Когда упоминаю property, буду подразумевать поле внутри контейнера, то есть yx в конкретном примере. Использую стандарт С++11

Желаемое поведение:

Далее примеры кода и все остальное
Всего голосов 10: ↑7 и ↓3+8
Комментарии7

Блеск и нищета WebAssembly

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

Всем привет! Сейчас за окном осенние деньки 2024 года. Вещает Пройдаков Евгений. Сейчас я руковожу группой разработки среды исполнения языка eXtraction and Processing в R&D департаменте Positive Technologies.

Доменно специфичный язык eXtraction and Processing является важной частью движка поведенческого анализа, используемого в таких продуктах Positive Technologies, как MaxPatrol SIEM и PT ISIM. Сегодня хотелось представить вашему вниманию выжимку нашего R&D процесса в экспериментах с WebAssembly. Узнаем, что такое WebAssembly. Поймём, как его можно встроить в программный продукт. Коснёмся инструментов разработки и сред исполнения WebAssembly. А также в рамках одной статьи пройдём путь от постановки задачи до результатов по разработке среды исполнения для доменно специфичного языка программирования. Кроме того, мы разберем некоторые проблемы, которые могут появиться у вас при попытке собрать и отладить большой С++ проект под WebAssembly. Материал может быть особенно полезен тем, кто хочет использовать WebAssembly за пределами веб‑браузера.

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

На старт, внимание, поехали!
Всего голосов 43: ↑42 и ↓1+54
Комментарии15

Мне надоело «казаться». Теперь живу в деревне, зарабатываю 15 000 и счастлив

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

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

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

Читать далее
Всего голосов 175: ↑144 и ↓31+144
Комментарии295

Как починить GoodbyeDPI, если он перестал работать 22.09.24

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

Решение нашел в комментариях оригинального гитхаба от ValdikSS (работает только для самой последней версии 0.2.3rc3-2).

Читать далее
Всего голосов 165: ↑137 и ↓28+126
Комментарии227

Обновлено: Как я обнаружил проблемы у ЮМани (Сбербанк) с безопасностью и не получил денег за найденную уязвимость

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

Как известно, в России почти каждая первая финансовая организация позиционирует себя как софтверную IT‑компанию, а не просто как «банк» или «платежная система». Сегодня речь пойдет о ЮМани — подразделении Сбера, IT‑гиганта всея руси.

До того, как ЮМани стал тем, чем он сейчас является, сервис долгое время существовал как продукт Яндекса под названием Яндекс.Деньги — в те времена у меня был очень приятный опыт взаимодействия с техническим руководством компании, я неоднократно (будучи security researcher'ом) сообщал им об уязвимостях, а они, в свою очередь, оперативно это исправляли, давали обратную связь и вознаграждали за такую работу, аналогично тому, как это делали и зарубежные крупные IT‑компании в рамках взаимодействия с white‑hat хакерами. Такая вот IT‑компания здорового человека. Но с тем, как Сбербанк поглотил Яндекс.Деньги и провёл ребрендинг, проект стал превращаться, скорее, в IT‑компанию курильщика: взаимодействовать с представителями проекта в соц. сетях стало практически невозможно, какие‑либо данные на страницах о Bug Bounty программах были удалены и даже ни одного email‑адреса не оставили в качестве средства связи для сообщения об уязвимостях.

Пару месяцев назад я обнаружил уязвимость в сервисе ЮМани (о ней чуть позже) и сразу же решил сообщить о ней. Однако никаких релевантных этому форм связи, email‑адресов и т. д. я не обнаружил — способов безопасно сообщить о такой уязвимости элементарно не было на официальном сайте сервиса. Я попытался связаться с людьми, работающими в ЮМани, однако, опять же, я не получил никакой обратной связи. На этом моменте я, что называется, «забил», в надежде, что ошибку исправят и без меня, ведь не может же такая дырень оставаться незамеченной долго, правда? Спойлер: может.

Читать далее
Всего голосов 412: ↑403 и ↓9+472
Комментарии305

Обходим замедление Youtube на Android TV без VPN

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

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

Читать далее
Всего голосов 51: ↑48 и ↓3+56
Комментарии85

В Android блокируют установку приложений из сторонних источников. Почему это важно?

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

Источник: androidauthority.com

Сразу скажу, что это не централизованное блокирование со стороны самой корпорации Google. Нет, компания просто разрешила самим разработчикам ПО закрывать возможность загрузки их приложений из сторонних источников. Включая и установку посредством APK-файлов. Вполне может быть, что некоторые разработчики коммерческих приложений, популярных среди пользователей, этой возможностью могут воспользоваться. Что случилось и к чему это может привести?
Читать дальше →
Всего голосов 79: ↑73 и ↓6+92
Комментарии277

Портируем декодер AV1 с С на Rust для повышения быстродействия и безопасности

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

AV1 становится всё более значимым видеоформатом, которому требуется безопасный и производительный декодер. Исходя из этой идеи, мы в тандеме с командой из Immutant создали rav1d, портировав на Rust написанный на С декодер dav1d. Перед вами первая из двух статей, посвящённых решению этой задачи.

— Джош Аас, глава проекта Prossimo организации ISRG
Читать дальше →
Всего голосов 36: ↑34 и ↓2+50
Комментарии92

Настройка GoodByeDPI для разных регионов и провайдеров

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

Всем привет, это моя первая статья на хабре. Многие пользователи GoodbyeDPI столкнулись с проблемой доступа к YouTube. Существующие гайды не всегда решают проблему, поэтому я подготовил универсальную настройку, подходящую для большинства регионов и провайдеров. Приступим.

Читать далее
Всего голосов 96: ↑84 и ↓12+83
Комментарии202

Реверс-инжиниринг  GDB для работы с Pwndbg

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

Функционал GDB существенно сужается, когда приходится иметь дело с файлами, из которых убраны отладочные символы (получаются так называемые «урезанные бинарники»). Функции и имена переменных превращаются в бессмысленные адреса. Для установки контрольных точек приходится отслеживать адреса нужных нам функций из внешнего источника. Также нужно выводить в консоль структурированные значения и после этого корпеть над дампом памяти, пытаясь вычленить, где именно пролегают границы полей.

Вот почему этим летом, работая в Trail of Bits, я расширил Pwndbg — плагин для GDB. Поддерживает его мой наставник Доминик Чарнота. Я добавил в инструмент две фичи, благодаря которым практическая отладка урезанных бинарников сближается с аналогичной работой, знакомой нам из работы с отладчиком в IDE. Теперь в Pwndbg интегрирован инструмент Binary Ninja, позволяющий лучше выяснять специфику GDB+Pwndbg, а также выводить дамп структур Go, чтобы отлаживать бинарники Go стало удобнее.

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

GoodbyeDPI начала массово отваливаться у пользователей РФ. Как починить и разблокировать Youtube

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

В России зафиксировали 12 сентября 2024 года массовые проблемы с GoodByeDPI. У огромного кол-ва пользователей он перестал нормально работать - видео в Ютуб, перестали ускоряться. В статье я собрал все на данный момент актуальные способы починки его.

Но не отчаиваемся, есть способ всё починить:

Первый Способ

Заходим в папку GoodByeDPI2. Открываем файл 1_russia_blacklist.cmd через «изменить в блокноте»3. В строке start "" goodbyedpi.exe меняем значение -9 на -7 -e14. Если не помог прошлый шаг, то пробуем значения от 1 до 9.5. Чтобы не приходилось каждый раз запускать скрипт после перезагрузки меняем ещё одну строку:

sc create "GoodbyeDPI" binPath= ""%CD%%_arch%
\goodbyedpi.exe" -7 -e1

Второй способ

Если не помогло также можно попробовать: 1_russia_blacklist_my_updated.cmd заменить "-9 " на " -1 -e1" вот так:

start "" goodbyedpi.exe -1 -e1 --blacklist ..\russia-blacklist.txt
(если не поможет - попробовать перебирать первую цифру)

Третий Способ

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

Читать далее
Всего голосов 130: ↑115 и ↓15+120
Комментарии690

МС-21: инженерный триумф российского авиастроения

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

Привет, друзья!

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

Давайте рассмотрим, что делает МС-21 таким выдающимся с инженерной точки зрения.

Читать далее
Всего голосов 317: ↑182 и ↓135+84
Комментарии869

Руководство Google по стилю в C++: 2019 — 2024

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

Все мы при написании кода пользуемся правилами оформления кода. Иногда изобретаются свои правила, в других случаях используются готовые стайлгайды. Однако, любой стайлгайд со временем корректируется и дорабатывается: иногда этому способствуют обновление стандартов языка, иногда меняются тенденции.
В статье приведены изменения Руководства Google по стилю в C++ за 5 лет: с 2019 по 2024.
Краткое содержание изменений:
+ C++20
- NULL
+ концепты 
- #pragma
+ constinit
- std:hash
+ consteval
- u8
+ аргументы-ссылки
- ENUM_VALUE_NAME
+ повесточка и "they" в единственном числе
- здравый смысл

Читать дальше →
Всего голосов 18: ↑16 и ↓2+20
Комментарии36

Невероятная история Эда Торпа: как один математик смог обыграть сначала казино, а потом и весь Уолл-стрит

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

Если среди физиков настоящей легендой безумных жизненных историй был Ричард Фейнман, то среди математиков и инвесторов этот титул должен по праву принадлежать Эдварду Торпу. Чувак смог не только обуть казино сразу в двух считавшихся ранее «непобедимыми» играх, но и заработать $800 млн на фондовом рынке благодаря идее, достойной Нобелевки.

Читать далее
Всего голосов 215: ↑211 и ↓4+245
Комментарии77

Ну, пусть будут. Самые абсурдные изобретения

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

Палка-стул из сериала «Теория Большого взрыва». Источник.

Все мы любим технологии. Технологии — это круто, они делают нашу жизнь проще, ярче и комфортнее. Но за каждым успешным изобретением стоят миллионы неудачных попыток, которые порой приводят к появлению бессмысленных или нелепых устройств. О некоторых из них и поговорим в этой статье. Наливайте диетическую воду в умную кружку, присаживайтесь поудобнее, затягивайте умный пояс и начинаем! По мере скролла страницы мы будем все глубже погружаться в мир абсурда. Будет весело.
Читать дальше →
Всего голосов 66: ↑56 и ↓10+67
Комментарии288
1
23 ...

Информация

В рейтинге
6 048-й
Откуда
Россия
Зарегистрирован
Активность