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

Backend Developer

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

Как поднять личный Прокси в Европе за 15 минут

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

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

Читать далее
Всего голосов 27: ↑14 и ↓13+7
Комментарии86

Анализ задачи с собеседования в Google: конь и телефонные кнопки

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

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

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

  • Её легко сформулировать и понять.
  • У неё есть множество решений, каждое из которых требует разной степени знаний алгоритмов и структур данных. Кроме того, здесь важны логические рассуждения.
  • Каждое решение можно реализовать в относительно малом объёме кода, поэтому она идеальна для ограниченных по времени собеседований.

Если вы студент или ищете работу в технологической сфере, то, надеюсь, после прочтения статьи вы будете лучше понимать, чего ожидать от задач на собеседованиях. Если же вы проводите собеседования, то мне бы хотелось поделиться своим мыслительным процессом и стилистическим подходом к собеседованиям.
Читать дальше →
Всего голосов 40: ↑39 и ↓1+59
Комментарии40

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

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

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

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

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

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

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

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

Собираем бюджетный домашний NAS на 14 ТБ

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


Начав заниматься фотографией, я быстро ощутил нехватку места на компьютере. Фотографии в RAW имеют большой вес, а про видео говорить ещё страшнее. Решение проблемы очень простое — собрать NAS.

О моём опыте сборки бюджетного NAS на 14 ТБ я напишу далее в статье.
Читать дальше →
Всего голосов 140: ↑139 и ↓1+171
Комментарии264

Как завернуть трафик Wireguard через shadowsocks на роутере

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

Так как есть риск блокировки Wireguard протокола, то рассказываю, как сделать, что бы трафик туннеля шел через shadowsocks.

Пример будет для сервера на Ubuntu 22.04 и роутера кинетик, с установленным на нем Entware. Предполагается, что WG уже поднят и настроен. А так же на роутер установлен Entware.

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

Как сменить технологию и не закопаться в рефакторинге: опыт внедрения DDD в проект на FastAPI — Часть 2

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

Привет, хабравчане!

В первой части были рассмотрены паттерны проектирования Repository и Unit of Work.

Это вторая часть цикла о DDD. В ней расскажу, как добавить к проекту событийно-ориентированную архитектуру.

Код подопытного приложения ищите в репозитории по ссылке. Подробнее о DDD и паттернах Repository и Unit of Work читайте в первой части по ссылке...

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

Зачем в iPhone чип, который убивает FaceID

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

Разбирался я в низкоуровневой работе камер iPhone, и дошёл до FaceID — системы распознавания лиц, используемой Apple для разблокировки смартфона. И наткнулся внутри на интересную вещь: чип, единственное предназначение которого в том, чтобы вывести из строя FaceID. Навсегда.

О том, как в iPhone вообще работает FaceID, где там этот чип стоит, что именно он делает, зачем его сделали таким злым, и как в ремонте справляются с этой напастью — под катом!

Читать далее
Всего голосов 641: ↑640 и ↓1+758
Комментарии178

Освоение gRPC на Python: Продвинутые техники. Часть III

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

Глубокое погружение в возможности gRPC на Python: перехватчики, трассировка, рефлексия и потоки данных.

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

5 способов преобразования PDF в Word в Python: Сравнительное руководство

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

Преобразование PDF-документов в редактируемые файлы Microsoft Word позволяет вносить изменения, добавлять аннотации и более эффективно работать с PDF-контентом.

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

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

Парсинг Амазона на easy без мам, пап и ипотек

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

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

Я сломал себе голову в поисках того, как спарсить карточки товаров в Амазоне. Проблема в том, что у Амазона используется разные варианты дизайна под различную выдачу, в частности – если необходимо спарсить карточки по поисковому запросу «bags» - карточки будут расположены вертикально, как мне и нужно, а вот если взять, к примеру «t-shirts» - тут уже карточки расположены горизонтально, и с таким расположение скрипт выпадает в ошибку, он отрабатывает открытие страницы, но не хочет скроллить.

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

Видеонаблюдение на базе NanoPi R4S, rclone и mediamtx

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

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

1. Умеет транслировать видео на любые устройства, где есть браузер с поддержкой h264, причем без использования китайских серверов.
2. Вести циклическую запись в формате mp4 и сохранять её удалённо.
3. Стоит меньше 100$.

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

Давайте сделаем крупное приложение на Flask (язык Python)

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

На Хабре я часто вижу статьи о реализации тех или иных фич на Python-фреймворках. Я объединил все эти фичи в реальный проект с открытым исходным кодом, чтобы у вас сложилась целостная картина. Мы с вами создадим UX/UI на Figma, напишем фронтенд на HTML, CSS, SASS, Bootstrap и JavaScript, создадим ER-диаграмму в MySQL Workbench, напишем бекэнд на Flask, создадим регистрацию через социальные сети OAuth 2.0 в один клик, используем брокер сообщений и асинхронную очередь Celery для отправки писем на электронную почту, сделаем WYSIWYG-редактор, реализуем полнотекстовый поиск Elasticsearch, закешируем Redis, покроем тестами pytest и запустим в Docker-контейнерах, поговорим о многопроцессности для WSGI-шлюза Gunicorn.

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

Telegram Боты на Aiogram 3.x: Отправка и обработка медиа сообщений

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

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

Сегодня мы вновь погрузимся в мир Telegram ботов на Aiogram 3.x и рассмотрим отправку и обработку медиа сообщений.

Если вы ещё не ознакомились с моей предыдущей статьей, где я подробно раскрывал основы работы с Message хендлером, настоятельно рекомендую это сделать. В той статье я рассмотрел такие важные аспекты, как:

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

Scrum — рак, убивающий индустрию

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

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

Какой?
Всего голосов 191: ↑165 и ↓26+166
Комментарии289

Самый полный стартовый гайд по ботам Telegram (python)

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

QQ Хабр! В этом гайде мы пройдемся по каждому шагу создания ботов в Telegram - от регистрации бота до публикации репозитория на GitHub. Некоторым может показаться, что все разжевано и слишком много элементарной информации, но этот гайд создан для новичков, хотя будет интересен и для тех, кто уже занимался разработкой в Telegram. Сегодня мы будем делать бота, который отвечает на заданные вопросы.

Читать далее
Всего голосов 29: ↑16 и ↓13+8
Комментарии23

Как подружить Llama-3.1 и YouTube имея всего 40 строк кода

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

Сделаем Телеграм бота которому можно кинуть ссылку на YouTube видео и поговорить с ним о содержимом этого видео.

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

ODRS: Комплексный открытый фреймворк для формирования рекомендаций по выбору моделей обнаружения объектов

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

Привет, коллеги! Если вы хотите упростить свою жизнь при разработке систем распознавания объектов, то стоит взглянуть на ODRS — это открытый фреймворк, который реально может сэкономить вам кучу времени и нервов.

Что такое ODRS?

ODRS, или Open Detection Recommendation System, — это проект от команды разработчиков из университета ИТМО и не только, который помогает выбирать и тренировать модели для обнаружения объектов. Этот фреймворк особенно полезен для разработчиков и исследователей, независимо от их опыта. ODRS анализирует ваши данные и предлагает оптимальные модели для конкретных задач. Поддерживаются такие популярные модели, как Faster R-CNN, Mask R-CNN, SSD и различные версии YOLO (5, 7 и 8).

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

Префиксы is, has, can, should… в нейминге переменных и функций

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

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

Читать далее
Всего голосов 70: ↑66 и ↓4+71
Комментарии56

Как улучшить английский в документации

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

Я работаю техническим писателем в компании documentat.io. Мы занимаемся заказной разработкой технической документации, в том числе на английском языке. Иногда я дорабатываю уже существующие документы или спецификации к API на английском. Как правило, такие документы написаны русскоязычными разработчиками, которые неплохо владеют английским. И всё же они часто допускают характерные грамматические, пунктуационные и стилистические ошибки.

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

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

Читать далее
Всего голосов 81: ↑80 и ↓1+97
Комментарии27
1
23 ...

Информация

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