Как стать автором
Обновить
-4
0
Павел Чистов @HenryPootle

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

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

OAuth 2.0 простым и понятным языком

Время на прочтение7 мин
Количество просмотров787K
Логотип OAuth 2.0

На хабре уже писали про OAuth 1.0, но понятного объяснения того, что такое OAuth 2.0 не было. Ниже я расскажу, в чем отличия и преимущества OAuth 2.0 и, как его лучше использовать на сайтах, в мобильных и desktop-приложениях.

Что такое OAuth 2.0


OAuth 2.0 — протокол авторизации, позволяющий выдать одному сервису (приложению) права на доступ к ресурсам пользователя на другом сервисе. Протокол избавляет от необходимости доверять приложению логин и пароль, а также позволяет выдавать ограниченный набор прав, а не все сразу.

Читать дальше →
Всего голосов 168: ↑153 и ↓15+138
Комментарии44

FinRL: Библиотека глубокого обучения с подкреплением для автоматизированной торговли акциями

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

Глубокое обучение с подкреплением (Deep Reinforcement Learning - DRL) является эффективным подходом в количественных финансах. Однако обучение торгового агента DRL, который бы решал, где торговать, по какой цене и в каком количестве, сопряжено с ошибками, а так же со сложной разработкой и отладкой.

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

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

Как я начал заниматься спортом по 2-3 часа в день

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

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

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

Читать далее
Всего голосов 86: ↑81 и ↓5+76
Комментарии132

Настройка CI/CD для самых маленьких разработчиков

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

Считается, что построение CI/CD - задача для DevOps. Глобально это действительно так, особенно если речь идет о первоначальной настройке. Но часто с докручиванием отдельных этапов процесса сталкиваются и разработчики. Умение поправить что-то незначительное своими силами позволяет не тратить время на поход к коллегам (и ожидание их реакции), т.е. в целом повышает комфорт работы и дает понимание, почему все происходит именно так.

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

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

Где изучать Golang в 2024

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

2024 году изучение языка программирования Go (Golang) остается одним из наиболее перспективных и востребованных направлений для разработчиков. 

Одним из главных преимуществ изучения Golang в 2024 году является его широкое применение в различных областях разработки программного обеспечения. Он идеально подходит для создания масштабируемых и высокопроизводительных веб-серверов, микросервисов и распределенных систем. Благодаря своей простоте и эффективности, Golang также находит применение в области разработки сетевых приложений, обработки данных, а также в сфере искусственного интеллекта и машинного обучения.

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

Ежедневно в наш чат приходят новички и задают один и тот же вопрос, посоветуйте ресурсы для начинающего, сегодня вышла новая версия версия Go 1.22.0в честь этого мы собрали список бесплатных курсов и полезных источников. Мы уже писали про многие из них в нашем канале для Golang разработчиков – залетайте, там много всего полезного. 

Надеюсь, этот список будет вам полезен)

Давайте начнем!

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

Одноранговые сети (для самых маленьких) часть 1

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

Шёл 2023 год. Windows ушел из страны и вернуться не обещал, а потребность в сетевой инфраструктуре никуда не делась.

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

Решением сей задачи, мне виделось создание обычной сети между вышеуказанными 9-ю специалистами. А слова товарища о том, что какие-либо доп. настройки системы и управление ПК пользователей не требуются, подтвердили моё предположение о том, что сервер здесь не нужен.  

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

Клонирование голоса, замена лица по фото, удаления объектов в видео и все в одном open-source проекте Wunjo AI

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

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

Важно отметить, что Wunjo AI с открытым исходным кодом доступен для установки локально на операционных системах Windows, Ubuntu и MacOS, и это абсолютно бесплатно, без ограничений.

Готовы? Погнали!
Всего голосов 34: ↑33 и ↓1+32
Комментарии37

Как продлить время автономной работы телефона (VPN+DNS)

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

Надо было мне разобраться получше с iptables и ansible, а для этого нужна задачка. Задачка была выбрана такая: поднять свой VPN сервер с возможностью резки рекламы и прочего spyware.

Суть происходящего при резке рекламы с помощью DNS сервера состоит в том, что когда клиент спрашивает сервер какой IP адрес сопоставлен имени хоста, то DNS сервер отвечает ему 0.0.0.0 В итоге клиент ходит сам к себе и быстро получает отказ, так что не пользуется для этого модемом связи в случае с телефоном. Что экономит батарейку не просто на процент, а при моем режиме использования телефона время автономной работы выросло с 8-10 часов до 23.5. Специально засекал и был мягко говоря удивлен. Как показала практика 85% запросов от телефона это spyware.

Ansible был выбран потому, что для настройки всего даже на настраиваемый сервер заходить не надо, просто нужен доступ по ssh к нему. После настройки конфиги для подключения к VPN будут лежать в папке с плейбуком. Да и сам запуск это одна команда. Не люблю я запоминать, что я там пять лет назад настроил и Ansible для того что бы этого не делать идеален, не говоря уже о прочих его достоинствах. Запустил у себя на ноуте плейбук, он все тебе на сервере настроил, потом отсканил QR код на телефоне, работает.

В качестве DNS сервера с возможностью резать телеметрию и прочую гадость был выбран Pi-hole DNS. Просто потому, что он очень не требователен к ресурсам и мне хватает на амазоне t3.nano ноды, которую мне дали бесплатно на год. При этом я видел на DigitalOcean готовый дрополет Pi-hole VPN, но он прибит к этому провадйеру, а мой плейбук я пробовал уже на двух разных и он просто пашет, плюс там видно все, что он делает. Плюс ко всему при установке он закачивает более 5млн бан записей в DNS что бы не искать их потом.

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

Монолог про отказоустойчивость микросервисных приложений, или Что может пойти не так?

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

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

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

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

Bleeding-edge обход блокировок с полной маскировкой: настраиваем сервер и клиент XRay с XTLS-Reality быстро и просто

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

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

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

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

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

Заметки об основах программной архитектуры

Время на прочтение9 мин
Количество просмотров18K
Это вводное руководство для архитекторов программного обеспечения. В настоящее время звание «архитектор» очень популярно во всем мире, но не существует настоящего руководства, как стать архитектором программного обеспечения.

1. Общая концепция архитектуры программного обеспечения
2. Архитектурные стили
3. Технология
4. Софт скиллз (принятие архитектурных решений, методы анализа рисков, навыки подачи материала, отношения с командой менеджеров, ведение переговоров, планирование карьеры архитектора)
5. Принципы проектирования
Читать дальше →
Всего голосов 11: ↑11 и ↓0+11
Комментарии3

Как я читаю сейчас, путешествие по ридерам

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

Совсем недавно открыл для себя всю мощь Zotero. Опыт чтения с помощью этой программы ничем не уступает аналогичному с iBooks, Readwise, Alreader и любого другого ридера, с одним лишь исключением. Zotero предоставляет чтецу все то же самое, только на стероидах. Однако, прежде чем перейти к описанию, почему так происходит, и сценариям использования, расскажу про свой читательский опыт.

В 2002 году, студентом третьекурсником, на глаза попался карманный персональный компьютер (КПК), а вместе с ним и зуд прикупить себе такую штучку. Выбрал не самую дешевую модельку Toshiba e740:

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

Полное руководство по проектированию систем в виде схемы

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

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

Читать далее
Всего голосов 41: ↑37 и ↓4+33
Комментарии5

Приложение Getcontact светит вашими персональными данными, даже если вы им никогда не пользовались

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

Getcontact — мобильное приложение, позиционирующее себя как менеджер звонков и блокировщик спама. Появилось в конце 2017-го и стремительно взлетело на первые места магазинов приложений. Создатели сервиса оценивают свою аудиторию в 400+ миллионов пользователей.

Приложение декларирует, казалось бы, благие намерения: предотвращение нежелательных звонков от спамеров и телефонных мошенников — услуга в современном мире необходимая и востребованная. Однако свою популярность Getcontact приобрёл совсем по другой причине…

Читать далее
Всего голосов 172: ↑167 и ↓5+162
Комментарии277

«Процедурное рисование» в ComfyUI

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

Кто интересуется темой рисующих нейросетей знают, что сейчас самый продвинутый и часто используемый интерфейс для Stable Diffusion (далее SD) это Automatic1111. Он позволяет использовать, вероятно, все существующие возможности SD на сегодня. Множество расширений, регулярные обновления и поддержка сообщества делают его мощным и удобным инструментом для генерации изображений. Но есть и альтернативные решения, одно из которых я сегодня рассмотрю.

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

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

Сколько стоит умный дом? Рассказываю, как строил свой и что получилось за 1000 руб./м²

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

Подробный рассказ о том, как я свой дом и сад сделал умными. С фото, техническими деталями, стоимостями и выводами на будущее.

Читать
Всего голосов 300: ↑298 и ↓2+296
Комментарии296

5 классных сервисов на основе ИИ (с примерами)

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

За последний год появилось огромное число новых сервисов, которые работают на нейронных сетях. Кажется, что уже не осталось людей, кто бы не слышал о том, что chatGPT пишет новости, а Midjorney во всю создает шедевры.

Сегодня я бы хотел показать 5 сервисов на основе нейронных сетей, которые не связаны с chatGPT, Midjorney или Stable Diffusion. Эти сервисы помогают обрабатывать аудио, преобразовывать текст в речь и удалять ненужные вещи с картинок.

Ознакомиться
Всего голосов 72: ↑70 и ↓2+68
Комментарии25

Бот для телеграмма, использующий Яндекс.Диск (Python)

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

Всем привет!

О том как я делал бота, который файлы с Яндекс.Диска показывает, для лично-производственных целей.

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

SEO Выводы из утечки кода поисковика Яндекс

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

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

Читать далее
Всего голосов 212: ↑197 и ↓15+182
Комментарии130

TCP и UDP, или Два столпа Интернета

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

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

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

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

Но и рассказывать про то, как браузер загружает страницы, тоже не будем. HTTP-запросы, сжатие, языки программирования, рендеринг страниц – всё мимо.

Что нам интересно, так это то, как данные находят путь от одного компьютера до другого.

И как же?
Всего голосов 21: ↑20 и ↓1+19
Комментарии3
1
23 ...

Информация

В рейтинге
5 094-й
Откуда
Дмитров, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность

Специализация

Корпоративный архитектор
Lead
Negotiation
Information Technology
Optimization of business processes
People management
IT service management
Development of tech specifications
Business process management
Planning
Organization of business processes
Automation of processes