Pull to refresh
10
0
Кирилл Лайонов 34g234 g24g 24g @JetMaster

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

Send message

Ищем месторождения золота по общедоступным спутниковым снимкам

Level of difficultyEasy
Reading time5 min
Views6.3K

Удобная дата - первое апреля. Именно в этот день можно браться за любую ерунду. Не выйдет - можно свести всё к шутке. А если выйдет... то получится любопытная статья.

Вы когда-нибудь думали, можно ли найти месторождение золота (или ещё какого-нибудь полезного ископаемого) по спутниковым снимкам Гугла, Яндекса или по другим подобным сайтам? Кажется, это малоперспективное занятие. Но давайте попробуем.

Пойти искать золото
Total votes 32: ↑30 and ↓2+28
Comments8

Сначала войдите через Телеграм

Reading time5 min
Views37K

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

Читать далее
Total votes 67: ↑64 and ↓3+61
Comments51

Перехват трафика мобильных приложений

Level of difficultyMedium
Reading time7 min
Views17K

Часто случается так что на необходимом сайте установлена защита от ботов. Например: QRATOR, Cloudflare, Akamai Bot Manager и пр. Можно потратить множество ресурсов на обход этих систем, но если у вашего ресурса есть мобильное приложение, то можно пойти другим путём. В подавляющем большинстве случаев мобильное приложение остается без защиты т.к. методы актуальные в браузерной разработке в мобильной не актуальны. В этой статье мы совершим атаку MITM на приложение [скрыто], узнаем эндпоинты по которым приложение получает данные и получим данные сами.

Читать далее
Total votes 19: ↑19 and ↓0+19
Comments12

Разработка высоконагруженного игрового WebSocket сервера на Kotlin, Webflux с поддержкой BattleRoyale/Matchmaking

Level of difficultyHard
Reading time20 min
Views5.9K

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

Читать далее
Total votes 6: ↑4 and ↓2+2
Comments1

Сколько можно заработать на ошейнике от блох на маркетплейсах: выводим неизвестный товар в бестселлеры

Level of difficultyEasy
Reading time9 min
Views2.8K

Производитель ошейников от блох BioDoctor разработал свою рецептуру из эфирных масел, придумал дизайн и напечатал упаковку. Но все эти замечательные ошейники томились на складе, а продажи были, как кот наплакал: Ozon - 10 000 р. в месяц. Wildberries - 65 000 р. в месяц. Летний сезон был в самом разгаре, а кошки и собаки России все ещё гуляли без ошейников BioDoctor. 

Рассказываем, как помогли производителю правильно позиционировать свой моно-продукт на маркетплейсах; поднять рейтинг карточки до 4,7 ⭐ и заработать 631 отзыв; выгодно управлять ценой; продвинуть товар в топ-2 по выдаче и увеличить оборот с 75 000 р до 1 500 000 р. в месяц.

Читать кейс
Total votes 23: ↑17 and ↓6+11
Comments20

Подборка лучших внешних аккумуляторов с USB-C PD для ноутбуков

Level of difficultyEasy
Reading time11 min
Views8.4K

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

Поэтому мы собрали подборку пауэрбанков с высокоскоростным портом USB-C PD. С его помощью ноутбуки будут заряжаться так же быстро, как при использовании оригинальных блоков питания.

Читать далее
Total votes 11: ↑10 and ↓1+9
Comments40

Как я чтение всего контента на RSS переводил

Level of difficultyEasy
Reading time13 min
Views5.5K

TL;DR В статье рассказывается о том, как мне удалось перевести чтение лент в ВКонтакте**, Telegram, Facebook*, Instagram**, Reddit и почтовых рассылок в единый сервис InoReader. Причем почти без написания своих велосипедов.

Подписаться на RSS
Total votes 41: ↑40.5 and ↓0.5+40
Comments32

Как сайты обнаруживают ботов по TLS

Level of difficultyMedium
Reading time3 min
Views5.9K

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

Читать далее
Total votes 23: ↑22 and ↓1+21
Comments6

Кластеризация в ML: от теоретических основ популярных алгоритмов к их реализации с нуля на Python

Level of difficultyHard
Reading time34 min
Views12K

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

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

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

Почтовый сервер с нуля. Часть первая

Level of difficultyMedium
Reading time17 min
Views24K

Очень часто на этапе стажировки новых сотрудников мы в нашей компании сталкиваемся с типичными простыми ошибками, непониманием работы DNS и почты. При этом обучение новых сотрудников по этой теме — достаточно длительный и сложный процесс, так как сами вопросы требуют построения сложных логических цепочек в голове у начинающего инженера. В один момент мы составили свою вики и схемы для обучения и решили поделиться этим опытом на Хабре в виде серии статей, чтобы людям, которые решили связать свою жизнь с IT вообще и администрированием в частности, стало проще. Материалы этой серии предназначены для начинающих администраторов.

В этом материале будет представлена связка полноценного почтового сервера в виде Exim4+Dovecot+PostfixAdmin+RainLoop.

Читать далее
Total votes 20: ↑19 and ↓1+18
Comments26

Руководство по веб-скрейпингу на Python

Level of difficultyMedium
Reading time17 min
Views20K

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

Вы получите навыки для скрейпинга сложных сайтов и решения проблем, которые касаются ограничений частоты запросов, блокировок и генерируемых при помощи JavaScript страниц.
Читать дальше →
Total votes 61: ↑58 and ↓3+55
Comments18

Telegram Mini Apps с мгновенной оплатой

Level of difficultyMedium
Reading time6 min
Views6.1K

Инструкция, посвящённая созданию Telegram Mini Apps с вызовом окна оплаты без создания дополнительной кнопки для этого.

Telegram Mini Apps c мгновенным вызовом окна оплаты.

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

Уведомления через Telegram-бота при помощи почтового триггера Yandex Cloud Functions

Level of difficultyEasy
Reading time4 min
Views2.1K

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

Возможно, многие сталкивались с задачей: есть сервер с некими cronjob-ами, результат выполнения которых хотелось бы мониторить определенному числу лиц, но при этом сервер находится в каком-нибудь intranet и не имеет доступа к сети интернет. Вот и у нас однажды возникла подобная проблема. Единственным доступным средством коммуникации с внешним миром у сервера был почтовый шлюз, через который можно было отправить электронную почту. До некоторого времени задача решалась отправкой нескольких копий письма, но со временем стало понятно, что гораздо  удобнее читать уведомления в Telegram. Такую настройку мы произвели с помощью Yandex Cloud Functions.

Читать далее
Total votes 6: ↑5 and ↓1+4
Comments4

Гудбай Pusher, привет Laravel Websockets

Level of difficultyEasy
Reading time2 min
Views3.6K

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

Проект делается на Laravel 10 на стартере Breeze Inertia + Vue.js.

Историю как я придумывал саму логику уведомлений я оставлю как-нибудь на потом, а вот о том как я распрощался с Pusher я расскажу сейчас. Вообще Pusher, конечно, сервис хороший, но если брать бесплатные лимиты, то там всё достаточно грустно, поэтому я решил использовать что‑то другое в качестве альтернативы. Выбор пал на Laravel Websockets.

Для справки, Laravel Websockets — это такая надстройка над Laravel, которая на бэке использует Ratchet, но никаких особых настроек делать не нужно, всё работает практически «из коробки». Правда есть несколько подводных камней, о которых я тоже расскажу.

Читать далее
Total votes 9: ↑9 and ↓0+9
Comments5

Как создать простой LoRa мессенджер: обмен зашифрованными текстовыми сообщениями между устройствами без интернета

Level of difficultyMedium
Reading time30 min
Views12K

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

В этой статье мы рассмотрим, как создать простой LoRa мессенджер с использованием своего протокола обмена и готовых модулей, работающих в режиме P2P (peer-to-peer) – не идеального, но интересного решения для обмена текстовыми сообщениями в условиях ограниченной инфраструктуры.

Для упрощения и автоматизации процесса обмена сообщениями мы воспользуемся Node-RED. Этот инструмент, помимо реализации основной логики обмена сообщениями, также предоставит графический интерфейс для мессенджера, что сделает процесс более доступным и интуитивно понятным. 

Выглядеть будет просто, потому что воспользуемся всем готовым :)

Свистать всех наверх!
Total votes 31: ↑29 and ↓2+27
Comments36

Обучение на веб-тестировщика | Как и с помощью чего обучаю я

Level of difficultyEasy
Reading time3 min
Views3.6K

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

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

Читать далее
Total votes 9: ↑5 and ↓4+1
Comments2

DIY клавиатура из фанеры

Level of difficultyEasy
Reading time8 min
Views14K

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

Читать далее
Total votes 72: ↑71 and ↓1+70
Comments33

Как перестать «ходить на дырку» на даче и не надышаться миазмами

Level of difficultyEasy
Reading time5 min
Views73K

Эта статья адресована тем, кто сам занимается строительством канализации на даче.

Миллионы дач в России ранее были оборудованы туалетами типа "сортир с выгребной ямой". С этого многие начинали и многие этим и закончили. Но по мере продвижения ИИ в массы и вообще развития технологий, многие задумались о том, что душ доме на даче это хорошо. А также нормальный тубзик. В котором можно нормально гнездится и почитать газету в интернете, Хабр или что-то еще полезное, а не напряженно ждать вцепится ли в тебя рой мух или нет. Опять же эстетика сортира уже устарела.

Читать далее
Total votes 147: ↑114 and ↓33+81
Comments225
1
23 ...

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity