Обновить
1
0

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

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

Решаем проблему «деградации» YouTube с помощью NoDPI

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

Салют, Хабр! Я думаю, каждый из вас знаком или, по крайней мере, слышал о такой прекрасной утилите как GoodbyeDPI (большое спасибо @ValdikSS!). Сегодня я хочу представить вам (почти) свою разработку - аналог GoodbyeDPI.

Около полугода назад в своей статье Обвиваем YouTube змеем, или как смотреть и скачивать видео с YouTube без VPN на чистом Python-е. Часть 1 (заблокирована по требованию РКН) я рассказывал о том, как скачивать видео с YouTube на Python, а так как YouTube у нас "деградировал", я поделился инструментом, с помощью которого можно исправить этот вопиющий недостаток. Инструмент тогда выглядел достаточно сыро, и несмотря на то, что он выполнял свою задачу, требовал серьезных улучшений. Увидев интерес общественности, я решил допилить его, и вот, спустя полгода, после немалой работы, я рад представить вам NoDPI - проект, который явно не понравится РКН (и он опять меня заблокирует).

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

Читать далее

Launcher для GoodbyeDPI – понятный способ обойти все блокировки и восстановить YouTube в России

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

Сейчас опишу интуитивно понятный способ восстановления работоспособности YouTube и обхождения любых блокировок провайдера на Windows компьютере. Уверен, что статью по указке РКН быстро удалят, так что если тема вам интересна, дочитайте до конца, сразу скачайте себе программу, даже если планируете использовать после. Заносить в закладки особого смысла нет. Ну и ставьте лайк. Отдельно также следует повысить карму ValdikSS - Пользователь / Хабр (habr.com) автору уникального решения GoodbyeDPI, который публиковал статью с описанием своего решения пару недель назад тут: Автономный способ обхода DPI и эффективный способ обхода блокировок сайтов по IP-адресу, теперь там банер РКН и слова «Эта интернет-страница удалена из публичного доступа по юридическим причинам».

Я не буду заново описывать техническое решение GoodbyeDPI, кратко это программа (или служба ОС Windows) позволяющая обнаруживать «заглушки» созданные провайдерами по указанию РКН для блокировки небогоугодных сайтов. Программа бесплатно распространяется на GitHub, является консольной утилитой мало понятной рядовому пользователю. Полное описание и ссылки есть на NNMClub ⚡ Автономный способ обхода DPI и эффективный способ обхода блокировок сайтов по IP-адресу. GoodbyeDPI и ReQrypt + Blockcheck – ресурс, конечно же, заблокирован у вас, если еще не установлен какой-либо способ обхода блокировок.

Сейчас появилось решение в виде графической оболочки для GoodbyeDPI, которое на русском языке позволяет в пару кликов решить проблемы медленного YouTube и не работающих сайтов. Решение Launcher for GoodbyeDPI, это простое окошко настройки к GoodbyeDPI, который также идёт в комплекте. Скачивайте с сайта автора, или с моего зеркала.

Восстановите YouTube и запрещенные сайты

ByeDPI для Android, SpoofDPI для Mac и Linux – чиним YouTube и не работающие в России сайты на Андроид, Линукс и Мак

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

Вчера писал о графической оболочке Launcher for GoodbyeDPI, позволяющей интуитивно-понятно воспользоваться решением GoodbyeDPI от ValdikSS для решения проблемы замедления YouTube и недоступности в России ряда сайтов. Все хорошо, но это были решения лишь под Windows. В комментариях основные вопросы были о том, как быть с Android, Linux и Mac, и почему не в исходниках. Увы, репрессии РКН заставляют администрацию Хабра цензурировать статьи, во вчерашнюю статью внесение изменений мне запрещено, и сама ссылка доступна лишь вне России, потому объясняю про Андроид, Линукс и Мак здесь, со ссылками на исходники.

Итак, для Android есть масса проектов, мне подошел Release ByeDPI 1.0.0 · dovecoteescapee/ByeDPIAndroid · GitHub. Для Mac и Linux я бы ставил https://github.com/xvzc/SpoofDPI/releases. Все в исходных кодах.

ByeDPI for Android, это приложение, которое запускает локальный VPN-сервис для обхода DPI (Deep Packet Inspection) и цензуры. На вашем устройстве локально запускается SOCKS5-прокси ByeDPI и весь трафик перенаправляется через него.

Снятие блокировок на Android/Mac/Linux

Самый простой способ обхода блокировок доступа к сайтам любых стран

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

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

Я понимаю (программисты, сисадмины, DevOps'ы и т.д.) данный способ нельзя назвать уникальным, оптимальным и вообще, так лучше не делать, но согласитесь - это достаточно простой способ туннелирования трафика, который позволяет обойти (если не все), то огромное количество разнообразных сетевых блокировок.

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

Так же, этот способ - достаточно дешевый (меньше чашки кофе в день) и очень быстрый с точки зрения реализации (буквально 5 минут).

Интересно?

Читать далее

Скрытые возможности элемента <input>

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели29K

Элемент <input> в HTML самый интересный.

Большинство его собратьев вне зависимости от своих атрибутов ведут себя одинаково. При этом атрибут type элемента <input> может принимать 22 разных значения, которые не только меняют его поведение, но и влияют на внешний вид (зачастую в ущерб стилистике).

Элемент <input> отвечает за всё, начиная с текстового ввода и чекбоксов, заканчивая переключателями и кнопкой для сброса всех полей в форме. В этой статье я опишу не только различные типы <input>, но и сопутствующие атрибуты, о которых вы могли не знать, и которые делают этот элемент более удобным и применимым в различных ситуациях. Приступим!
Читать дальше →

Это база: нюансы работы с Redis. Часть 1

Уровень сложностиСредний
Время на прочтение15 мин
Охват и читатели75K

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

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

Читать далее

Деплой приложения с nginx как по нодам

Время на прочтение10 мин
Охват и читатели38K

Привет, Хабр! В этом материале мы разберем деплой приложения на React, арендуем облачный сервер и настроим nginx. Здесь будет необходимый минимум для фронтенд-разработчика:

  • Заливка проекта на GitHub.
  • Аренда и настройка облачного сервера по SSH.
  • Настройка nginx для раздачи статических файлов.
  • Сжатие бандла.
  • Подключение домена.
  • Настройка HTTPS.
  • Настройка Docker.

Для этого материала также доступна видеоверсия.
Читать дальше →

Go scheduler. Простыми словами

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

В данной статье расскажу о планировщике Go. Основу материала взял из книги Уильяма Кеннеди Ultimate Go. Вначале поговорим о планировщике OS, после перейдем к планировщику Go и сравним их.

Читать далее

Шпаргалка по SQL (postgres), которая выручает меня на собесах

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели273K

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

Я решил посвятить свою первую статью SQL. Вопросы, рассмотренные ниже мне задавали на собеседованиях на позицию python-разработчика. Естественно отвечать правильно получалось не всегда, а если точнее то чаще не правильно, однако проведя N часов в рефлексии я составил перечень ответов, которыми пользуюсь до сих пор.

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

Читать далее

Чем различаются Kafka и RabbitMQ: простыми словами

Время на прочтение8 мин
Охват и читатели158K

Программные брокеры сообщения уже стали стандартом при построении больших и сложных систем. Однако до сих пор не все ИТ-специалисты понимают, как работают эти инструменты. Главный системный аналитик «Иннотех» Павел Малыгин помогает разобраться в брокерах сообщениях и их работе.

Читать далее

Вопросы и ответы для собеседования Go-разработчика

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

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


Я постарался копнуть в каждый вопрос чуть глубже чем, возможно, надо бы — что бы у читателя был не только короткий ответ на вопрос, но и некоторое понимание "а почему именно так устроена та или иная штука". Более того, крайне рекомендую ознакомиться и с ссылками на источники, что будут под ответами — там вы найдете более развернутые ответы.


Да, это очень объемный пост, и вряд ли его можно вдумчиво осилить за один подход, но поместив его в закладки он, возможно, когда-то сослужит вам добрую службу (читать его можно по частям, находясь в метро или между вечными совещаниями; да и Ctrl + F никто не отменял). Ещё ему очень не хватает оглавления для удобной навигации между вопросами, но у хабраредактора нет возможности генерировать TOC (если будут запросы об этом в комментариях — сделаю его руками). Об очепятках, пожалуйста, пишите в личку.

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

Vulkan. Руководство разработчика. Загрузка данных через промежуточный буфер

Время на прочтение7 мин
Охват и читатели4K


Всем привет! Для тех, кто со мной не знаком, я переводчик в IT-компании CG Tribe в Ижевске. Здесь я делюсь переводами Vulkan Tutorial на русский язык.

Сегодняшняя публикация посвящена переводу статьи из раздела Vertex buffers, которая называется Staging buffer.

Содержание
Читать дальше →

Звук в геймдеве: чем занимается саунд-дизайнер

Время на прочтение12 мин
Охват и читатели24K

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

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

Читать далее

Сборка собственного RPM-пакета, содержащего простую Go-программу

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

А именно, в мире Linux уже довольно давно существуют менеджеры пакетов. Например — это RPM и YUM. Они упрощают установку, обновление и удаление программ в Linux-системах. Собственно говоря, в этой статье я хочу рассказать о том, как создать собственный простой RPM-пакет, хочу показать, что это совсем несложно.



Надо отметить, что во многих организациях менеджеры пакетов используются лишь для установки программ, предлагаемых разработчиком используемого этими организациями дистрибутива Linux. Для управления развёртываниями собственных программ менеджеры пакетов не применяются. Тому, кто попытается собрать свой первый RPM-пакет, может показаться, что это не так уж и просто. Но обычно тот, кто учится создавать такие пакеты, тратит время с пользой. Дело в том, что соответствующие знания способны помочь ему в деле оптимизации его рабочих процессов. Здесь мы рассмотрим процесс создания RPM-пакета, содержащего простую программу, написанную на Go.
Читать дальше →

Как в восемь раз уменьшить количество DNS-запросов в Go

Время на прочтение6 мин
Охват и читатели16K

Привет, Хабр. Меня зовут Рустам. Я работаю в Ozon: админю Kubernetes и пишу на Go.

У нас очень много сервисов на Go — их количество исчисляется тысячами. Запускаются они внутри кластеров Kubernetes. А я плотно работаю с Kubernetes и заметил, что при запуске кода внутри Kubernetes для резолва одного адреса делается до десяти DNS-запросов. Это, конечно, влияет на производительность.

Я решил разобраться, как Go делает DNS-запросы. В результате мне удалось уменьшить их количество в наших проектах до одного-двух. Как у меня это получилось и можно ли использовать мой опыт в вашем проекте, я расскажу в статье.

Узнать больше про Go+DNS

Руководство по FFmpeg libav

Время на прочтение24 мин
Охват и читатели117K

Долго искал книгу, в которой было бы разжёвано, как использовать FFmpeg-подобную библиотеку, известную как libav (название расшифровывается как library audio video). Обнаружил учебник «Как написать видеоплеер и уложиться в менее чем тысячу строк». К сожалению, информация там устаревшая, так что пришлось создавать мануал своими силами.

Большая часть кода будет на C, однако не волнуйтесь: Вы легко всё поймёте и сможете применить на любимом языке. У FFmpeg libav уйма привязок ко многим языкам (в том числе и к Python и к Go). Но даже если Ваш язык прямой совместимости не имеет, всё равно можно привязаться через ffi (вот пример с Lua).

Начнём с краткого экскурса о том, что такое видео, аудио, кодеки и контейнеры. Затем перейдем к ускоренному курсу, посвященному использованию командной строки FFmpeg, и, наконец, напишем код. Не стесняйтесь переходить сразу в раздел «Тернистый путь изучения FFmpeg libav».

Есть мнение (и не только моё), что потоковое интернет-видео уже приняло эстафету от традиционного телевидения. Как бы то ни было, FFmpeg libav точно достоин изучения.

Оглавление


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

<img>. Доклад Яндекса

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

— Всем привет. У меня доклад с интригующим названием в виде одного тега.

Программа для physics-based анимации персонажей Cascadeur вышла в ранний доступ

Время на прочтение1 мин
Охват и читатели8.5K


Спустя 10 лет разработки и 2 года бета-тестирования Cascadeur, программа для создания физически корректной персонажной анимации, вышел в ранний доступ! Пользователям доступны 4 варианта подписки, один из которых — совершенно бесплатный.

Что тимлиду спросить о компании на собеседовании

Время на прочтение5 мин
Охват и читатели23K

По мотивам своих собеседований, а также собеседований коллег и mentee, составил список вопросов от тимлида к компании, что стоит прояснить на собеседовании — что спросить собеседующего.

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

Каковы финансовые показатели компании?

Является ли компания прибыльной или тратит деньги инвесторов? Или даже до инвесторов ещё не дошло, и основатели пока платят из своего кармана? Как выглядит бизнесовый план развития?

Если компания имеет представительство в РФ, официальное ли (по ТК РФ) трудоустройство и полностью ли "белая" зарплата?

Даже сейчас некоторые компании порой используют "серые" схемы выплат зарплат. Также иногда бывают сотрудники, сознательно просящие "серую" схему.

Расскажите про ваше понимание «хорошего тимлида»

У собеседника должно быть четкое и непротиворечивое понимание, что он вкладывает в понятие «тимлид» и какие критерии используются для оценки работы тимлида.

Возможно, это понимание даже прописано в должностных инструкциях.

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

Читать далее

История 4го места на Russian AI Cup 2020

Время на прочтение34 мин
Охват и читатели13K

В этом году поучавствовал в соревновании по написанию игровых ботов Russian AI Cup. И хоть не удалось взять 1е место, как в 2017, но все равно это было увлекательное и невероятно азартное приклюение длинной в месяц, полное напряженного кодинга, недосыпания, творческих озарений и интриг в финале. Сразу оговорюсь, что в стратегии не использовался AI в современном понимании, с нейронными сетями и прочим - только алгоритмы и структуры данных. Мыслей накопилось много, поэтому приготовьтесь к длинному чтению..

Много текста с картинками
1
23 ...

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность