Pull to refresh
-2
0
Рита Ибрагимова @Xao

developer

Send message

Обход блокировок с помощью Double…

Reading time8 min
Views47K

В статье будут рассмотрены три независимых варианта прохождения трафика транзитом с помощью:

1) Double openVPN

2) openVPN + vtun

3) openVPN + tun2proxy через socks5 прокси

Читать далее
Total votes 33: ↑31 and ↓2+42
Comments96

«Голая Java» или разработка без всего

Level of difficultyHard
Reading time33 min
Views17K

Рассказываю что можно сделать на одном только голом JDK. Это старое и ныне почти забытое искусство разработки без внешних библиотек и фреймворков. Работать будем «как в былинные времена» — киркой и лопатой голыми руками и немного мозгом.

Читать далее
Total votes 69: ↑64 and ↓5+76
Comments106

Чем опасен чистый RSA? Разбираем подводные камни

Level of difficultyHard
Reading time9 min
Views13K

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

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

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

Читать далее
Total votes 43: ↑43 and ↓0+59
Comments7

Как Яндекс создавал новую end2end-модель генерации коротких видео

Level of difficultyHard
Reading time25 min
Views4.5K

Приложение Шедеврум начало использовать новую end2end-модель YandexART (Vi). Она позволяет создавать видео по текстовому запросу и учитывает взаимосвязь между кадрами, делая видео более связными, плавными и реалистичными, чем при использовании предыдущей модели. Предыдущее решение было основано на использовании эвристик для добавления движения камеры, где видео создавалось кадр за кадром с применением модели генерации изображений, что приводило к значительным изменениям в содержании каждого кадра. 

В этой статье поделимся нашим опытом разработки первых версий end2end-модели YandexART (Vi): 

— расскажем, почему изначально выбрали работу в пиксельном пространстве;

— опишем методы инженерных оптимизаций, которые помогли в обучении моделей;

— обсудим проблемы, с которыми столкнулись в процессе разработки, и как их решали;

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

И так как на Хабре не принято вставлять гифки и видео до ката, примеры новой модели вас ждут под ним. 

Посмотреть примеры
Total votes 42: ↑41 and ↓1+55
Comments3

Ортогональный дизайн — один из важнейших принципов геймдизайна

Level of difficultyEasy
Reading time8 min
Views13K

Привет, Хабр! В данной статье мы поговорим о концепции ортогонального дизайна игр и его влиянии на игровой опыт. Ортогональный дизайн является ключевым принципом в геймдизайне и левелдизайне, благодаря ему удается создавать более глубокий, разнообразный и интересный игровой опыт, а также упрощается процесс разработки. Мы рассмотрим как ортогональность проявляется в дизайне противников, способностей, механик и миссий на примере таких легендарных игр, как Doom 1993, Halo: Combat Evolved, Dishonored и Red Dead Redemption 2.

Читать далее
Total votes 19: ↑16 and ↓3+18
Comments28

Файтинги: cложности и особенности при разработке или почему инди-файтинги редкость?

Level of difficultyMedium
Reading time3 min
Views3.7K

С детства и начиная с PS1 я любил файтинги, и так уж вышло, что я стал разработчиком игр. Частенько, для обкатки технологий или просто ради удовольствия, я веду разработку пет-проектов. Естественно, такой жанр, как файтинги, я не смог обойти стороной. Тут на dtf я писал о разработке.

Жанр файтинг игр специфичен и сложен в разработке. К примеру, на ПК одна или две файтинг игры в реалистичном сеттинге, одна из них - это Undisputed на Unity. Игра выглядит красиво, но, к сожалению, из-за плохого сетевого кода не дает насладиться процессом. Нередко игрок пропускает "фантомные" удары, когда он уже отошел от противника. С аркадными файтингами дела обстоят лучше, нишу крепко заняли MK, SF, Tekken и несколько других менее популярных игр. Так в чем же причина того, что при относительно небольшой конкуренции мелкие студии или инди не выпускают файтинги? Почему, помимо крупных студий и команд разработчиков (Capcom, Namco, Arc System Works, Team Ninja), файтингов практически нет? Попробуем ответить на этот вопрос и раскрыть тему подробнее.

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

Обычно для файтингов используют p2p соединения и обмениваются только вводом между игроками. Все остальное просчитывается локально и синхронизируется за счет детерминизма.

Читать далее
Total votes 8: ↑8 and ↓0+10
Comments14

Стек с поиском максимума

Level of difficultyEasy
Reading time9 min
Views1.3K

Несколько раз мне попадалась задача из разряда «собеседование в Google»:
нужно реализовать стек, хранящий целые числа, в котором дополнительно должна существовать операция max(), возвращающая максимальный элемент за O(1) времени и с использованием O(1) дополнительной памяти (в сравнении со стеком без этой операции).

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

Читать далее
Total votes 13: ↑11 and ↓2+16
Comments35

Как зелёная сова отхватила себе место на мировой арене: история успеха Duolingo

Reading time5 min
Views6.8K

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

Читать далее
Total votes 9: ↑6 and ↓3+8
Comments18

3D-печать для чайников. Часть 3: постобработка

Level of difficultyMedium
Reading time15 min
Views4.1K


Доброго времени суток, уважаемые хабражители!


Сим завершаем трилогию постов о 3D-печати для начинающих. Мы уже кратко ознакомились с принципами работы 3D-принтеров, подготовкой и адаптацией моделей, настройками печати и распространенными ошибками. На очереди самое интересное — постобработка.
Читать дальше →
Total votes 24: ↑23 and ↓1+29
Comments10

Делаем нагрузочные тесты за 5 минут (ну почти)

Level of difficultyEasy
Reading time5 min
Views4.2K

Всем привет! Нагрузочные тесты за 5 минут (ну почти).

Не так давно делился историей о том, как решали проблему E2E автотестов в маленьком проекте. Продолжим историю).

Читать далее
Total votes 12: ↑12 and ↓0+14
Comments1

Что должен знать каждый разработчик о вычислениях на GPU

Level of difficultyMedium
Reading time13 min
Views12K

Большинство программистов отлично разбираются в работе процессоров и последовательном программировании, поскольку с самого начала пишут код для CPU. Однако многие из них меньше знают о том, как устроены графические процессоры (GPU) и в чем заключается их уникальность. За последнее десятилетие GPU стали чрезвычайно важны благодаря широкому применению в глубоком обучении, и сегодня каждому разработчику необходимо обладать базовыми знаниями о том, как они работают. Цель этой статьи — дать вам это понимание. 

Читать далее
Total votes 35: ↑33 and ↓2+41
Comments6

Изобретаю свой сложный способ поиска координат точки пересечения двух линий

Level of difficultyHard
Reading time21 min
Views4.7K

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

И да, я его придумал потому что не смог нагуглить, может он где-то и без меня описан был, может за эти 7 лет кто-то написал что-то похожее, а может я придумал какую-то фигню, которую умные люди изобретать не станут...

Да что там сложного?!
Total votes 9: ↑8 and ↓1+8
Comments42

Алгоритм сравнения отпечатков пальцев: комбинация классических алгоритмов

Level of difficultyHard
Reading time18 min
Views3.4K

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

Читать далее
Total votes 17: ↑17 and ↓0+20
Comments3

Оптимизация, которая невозможна в Rust

Level of difficultyHard
Reading time15 min
Views16K

В этой статье я опишу, как я реализовывал German string и с какими трудностями столкнулся в Rust. В особенности я рассмотрю, как добавить общее владение для подобной структуры данных.

Читать далее
Total votes 36: ↑35 and ↓1+42
Comments4

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

Level of difficultyMedium
Reading time3 min
Views185K

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

Читать далее
Total votes 48: ↑46 and ↓2+55
Comments79

Решаем проблему блокировок (и YouTube) за 5 минут на роутере с OpenWRT

Level of difficultyEasy
Reading time5 min
Views114K

Будем возвращать доступ к YouTube (а заодно и к другим заблокированным ресурсам) с помощью роутера на OpenWRT и Shadowsocks (Outline) и клиента bird2 (сервиса Antifilter.download)

Читать далее
Total votes 45: ↑40 and ↓5+41
Comments113

Какой роутер для OpenWrt купить в 2025 году?

Level of difficultyEasy
Reading time21 min
Views80K

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

Роутер, как и любой другой девайс, нужно покупать под запрос. Например, линуксоиды привыкли покупать ноутбуки именно под Linux, а не первый попавшийся. Также и тут: если нужен OpenWrt, то роутер тоже надо выбирать с умом, а не надеяться на то, что кастомная прошивка сделает конфетку из роутера за 700 р.

В 2023 и 2024 появились интересные роутеры, которые уже поддерживаются проектом OpenWrt. Эти роутеры сделаны на базе ARM-процессоров. Такие роутеры появились у нескольких компаний, и дальше их количество будет только увеличиваться.

Читать далее
Total votes 233: ↑233 and ↓0+258
Comments234

Особенности Effector, которые почему-то никто не обсуждает: опыт ВКонтакте спустя год использования

Level of difficultyMedium
Reading time31 min
Views12K

Upd: Поиском по "Upd" можно найти все корректировки, внесенные в статью после публикации в результате жаркой дискуссии в чате Effector.

Меня зовут Андрес, я руководитель команды разработки внутреннего UI-кита ВКонтакте. А это ещё одна статья про инструменты управления состоянием. Сегодня мы не будем изобретать ничего нового, а поговорим про библиотеку Effector.

TL;DR

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

В сети мало альтернативной информации про Effector, а действительно полезную трудно найти. Надеюсь, эта статья поможет немного исправить ситуацию.

(Внимание, под катом много картинок.)

Что там за особенности?
Total votes 58: ↑56 and ↓2+66
Comments97

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

Level of difficultyEasy
Reading time12 min
Views23K

В фантастическом фильме Стивена Спилберга «Особое мнение» 2002 года представлен футуристический и концептуальный компьютерный интерфейс. Здесь отрывок, в котором Том Круз использует его.

Все согласятся, что интерфейс этого будущего невероятен и желанен. Если призадуматься, что является его самым удивительным аспектом? Много лет назад можно было бы сказать, что это тонкие экраны. Или невероятная сенсорная технология. Сегодня у нас есть и то, и другое! На самом деле, то, что у нас есть сегодня, даже лучше; мы можем отображать на экране более двух цветов, намного лучше, что есть в антиутопическом будущем Филипа К. Дика.

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

В настоящее время помимо терминалов командной строки и нескольких других дополнительных технологий, современные пользовательские интерфейсы даже близко не приближаются к такому фантастическому будущему.
Читать дальше →
Total votes 37: ↑27 and ↓10+36
Comments84

Как я создал систему поиска недооцененных американских акций, используя данные Яху Финанс: мой путь к разумному выбору

Level of difficultyHard
Reading time8 min
Views6.1K

Хочу рассказать о своем опыте поиска ценных бумаг на американском рынке, которые торгуются на NYSE, NASDAQ и AMEX.

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

Обычно я покупаю индексные фонды, но иногда хочется купить конкретные акции. Акции какой конкретной компании выбрать, ведь на американском рынке на август 2024 года их торгуется 10'522 штуки? Ответ на вопрос сложен и зависит от многих факторов. Правда, часто не хочется тратить много времени на анализ, но и совсем случайную акцию покупать не хочется.

Существует популярный ресурс Яху Финанс, который предоставляет различные данные по акциям, включая фундаментальные данные, а ещё сводные рекомендации аналитиков различных инвестиционных компаний: прогнозируемую цену бумаги и рекомендацию: покупать / продавать / держать. Все эти данные представлены на Яху в структурированном виде. По одной компании может быть дано множество прогнозов, например для Apple Inc. (AAPL) в августе 2024 таких прогнозов было дано 38 от различных инвестиционных компаний.

Мне пришла идея - а почему бы не собрать эти данные по каждой бумаге, отфильтровать по потенциалу роста - проценту между текущей и прогнозируемой по мнению этих аналитиков ценой, а ещё учесть сколько компаний-аналитиков проводило анализ за два последних месяца. Обязательно фильтровать и учитывать текущую дивидендную доходностью. При практических исследованиях оказалось, что не все акции имеют такие данные о прогнозной цене, а только 4'250 из 10'522 бумаг. Оставшиеся 6'272 акции не имеют данных о прогнозируемой цене.

Акции с прогнозными ценами - можно перебирать каждую из 4'250 бумаг и если она отвечает требованиям - включать в выборку. Ну а с выборкой уже работать самому, когда механический отбор произведён.

Ищем варианты инвестиций в💲
Total votes 18: ↑15 and ↓3+19
Comments25
1
23 ...

Information

Rating
Does not participate
Location
Уфа, Башкортостан(Башкирия), Россия
Date of birth
Registered
Activity