Pull to refresh
319
93.1
Владимир @Firemoon

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

Send message

«По вертикали и по горизонтали»: как перенести бумажные сканворды в онлайн, чтобы решать с друзьями на удаленке

Reading time9 min
Views11K

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

Как оцифровать сканворд по фотографии? Насколько сложно сделать систему общего доступа? Действительно ли интересно разгадывать бумажные сканворды на электронном устройстве? Ответы на эти и другие вопросы — под катом.
Читать дальше →
Total votes 70: ↑70 and ↓0+88
Comments9

Как написать мод для TrackMania 2020 и не запутаться

Reading time12 min
Views2.6K

Привет, Хабр! Меня зовут Вова, я разработчик в Selectel. В прошлом году серии TrackMania исполнилось 20 лет. Это игра моего детства и мне захотелось «размять свои юные олдскулы», посмотреть, что изменилось, и применить новые навыки.

В этой статье кратко расскажу запутанную историю серии, придумаю себе проблему в игре и героически решу самописным модом. Материал будет также интересен мододелам других игр — инструментарий здесь прекрасен.
Читать дальше →
Total votes 26: ↑26 and ↓0+38
Comments1

Как быстро растут нейросети: прогресс Stable Diffusion за все время

Reading time6 min
Views9.6K

В феврале 2024 года StabilityAI анонсировали третье поколение генеративной нейронной сети Stable Diffusion. Спустя четыре месяца, 12 июня, вышла «Сommunity-версия» Stable Diffusion 3 Medium. Нам обещают хорошую оптимизацию для домашних компьютеров, улучшенное восприятие запросов и бонусом новую лицензию.

Привет, Хабр! Меня зовут Вова Туров, я разработчик в Selectel. В этой статье на примере множества картинок сравним локальные «чистые» модели SD и «закрытые» сервисы с Stable Diffusion 3, а также выясним, стоит ли платить за новую модель. Под катом вас ждет множество изображений!
Читать дальше →
Total votes 30: ↑29 and ↓1+38
Comments16

Пайплайны в GitLab для микросервисов

Reading time10 min
Views17K

Какие два самых любимых дела у программистов? Автоматизировать и переписывать на микросервисы. Так сложилось, что в нашу команду выделенных серверов тоже постучались микросервисы. Но в этой статье не будет плюсов и минусов архитектурных подходов. Вместо этого я расскажу про организацию CI для автоматизации сборки, тестирования и деплоя приложений.

Начнем с основ на примере монолитного приложения, а потом усложним их микросервисами и постараемся избавиться от однотипного кода. А еще…
Читать дальше →
Total votes 57: ↑57 and ↓0+74
Comments4

Как передать информацию в ICMP-пакетах и не привлечь внимания санитаров

Reading time8 min
Views27K

Источник: polymerh.

На Хабре достаточно статей про передачу данных через протокол ICMP. Чего говорить, шесть лет назад я сам писал про стеганографию в IP-пакетах и «пингах». Но кажется, самое время вернуться к этой теме и предложить неочевидные методы.

Если вам кажется, что тема передачи данных в ICMP уже исчерпана и я не смогу вас удивить, то предлагаю извлечь данные из дампа сетевого трафика до прочтения статьи. То, что будет дальше, может ввести в недоумение.
Читать дальше →
Total votes 98: ↑97 and ↓1+126
Comments28

Фабрика должна расти: настраиваем игровой кластер Factorio

Reading time7 min
Views13K

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

Привет, Хабр! В этой статье покажу, как поднять выделенный игровой сервер Factorio. А также также поведаю о проекте, который соединяет отдельные серверы в один большой мир. Подробности под катом!
Читать дальше →
Total votes 37: ↑35 and ↓2+46
Comments33

Нарушаем ограничения файловых систем *NIX

Reading time11 min
Views13K

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

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

Под катом вас ждет небольшой экскурс в особенности работы файловых систем и набор экспериментов.
Читать дальше →
Total votes 58: ↑54 and ↓4+66
Comments48

Midjourney до сих пор не умеет рисовать пальцы, но научилась писать тексты: обзор шестой версии модели

Reading time5 min
Views7.8K

Перед началом зимних каникул, 21 декабря 2023 года, Midjourney открыли «ранний доступ» к шестой версии. Спустя почти два месяца, 15 февраля 2024, она стала стала моделью по умолчанию, несмотря на сохранившийся статус альфа-тестирования.

Привет, Хабр! Меня зовут Вова Туров, я разработчик в Selectel. В этой статье расскажу, что нового в Midjourney v6 и почему она лучше предшественников. Разберем примеры генераций и протестируем новые функции.
Читать дальше →
Total votes 44: ↑43 and ↓1+55
Comments3

Что будет, если переименовать суперпользователя? Экспериментируем, удивляемся и расстраиваемся…

Reading time15 min
Views22K

В интернете много желающих перебирать пароли к SSH, чтобы получить мощности вашего сервера безвозмездно. Как это можно предотвратить? Отключить вход по паролю? Лениво. Использовать нестандартный порт? Не поможет. Поставить fail2ban? Скучно. Переименовать root? Вот это хорошая идея!

На профильных площадках можно встретить вопрос о том, как переименовать суперпользователя, и теоретические ответы с предупреждением о потенциальной деструктивности этого действа. В этой статье я расскажу, что может сломаться в теории и на практике.
Читать дальше →
Total votes 86: ↑86 and ↓0+86
Comments42

Как приручить нейросеть и создать новогоднего Telegram-бота, который умеет «предсказывать» будущее

Reading time10 min
Views5.3K

Мне нравится создавать Telegram-ботов и экспериментировать с нейросетями, поэтому часто объединяю их в своих проектах. Коллеги заметили мое хобби и предложили разработать новогоднего гида Selectel, который будет генерировать персональные предсказания и советы на 2024 год для наших читателей.

Во время реализации спецпроекта я впервые столкнулся с ограничениями по маркетинговой части проекта. Как заставить ChatGPT придумывать разнообразные, но только положительные предсказания? Как не выйти за лимиты текстовой модели и Telegram? В этой статье делюсь ответами на вопросы и реакцией пользователей на проект.
Читать дальше →
Total votes 30: ↑30 and ↓0+30
Comments3

Вестник Midjourney: новая документация, генерация фрагментов и тюнер стилей

Reading time6 min
Views6.5K

В начале 2023 года я рассказывал о четвертой версии Midjourney, а затем — о альфа-доступе к пятой. Сейчас актуальная версия — 5.2, а недавно вышла альфа шестой.

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

Под катом рассказываю о нововведениях и различиях между релиз- и альфа-версией. Конечно, с иллюстрациями. Если формат окажется интересным, протестирую шестую Midjourney и напишу о ней в Академии Selectel. Подробности под катом!
Читать дальше →
Total votes 38: ↑37 and ↓1+53
Comments8

Decky Notifications: как переизобрести KDE Connect и перенести уведомления в Steam Deck

Reading time12 min
Views3.6K

Недавно в мои руки попала портативная игровая консоль Steam Deck. Замечательное устройство, которое полностью поглощает внимание. В этом я вскоре нашел минус: телефон генерирует уведомления и приходится откладывать приставку, чтобы посмотреть сообщение.

Хочу играть и не проверять телефон, но при этом боюсь пропустить что-то важное. И я нашел способ решение этой задачи. В этой статье расскажу, как мне пришлось полностью перебрать протокол KDE Connect, чтобы написать плагин, который переносит уведомления в Steam Deck. Подробности под катом!
Читать дальше →
Total votes 44: ↑44 and ↓0+44
Comments10

It's a mod, mod world: как моддинг произвел революцию в разработке игр

Reading time7 min
Views7.1K

Для некоторых ПК-геймеров игровые модификации — решающее преимущество перед консольными игроками. Хотя разработчики — например, компания Capcom — иногда рассматривают моддинг как проблему, которая может негативно сказаться на репутации игр.

Ранее мы об этом не задумывались и даже создавали свои моды. Однако вопрос дискуссионный. Чего моды приносят больше: пользы или вреда? Давайте разбираться.
Читать дальше →
Total votes 33: ↑30 and ↓3+40
Comments38

«Клиентов нужно не искать, а создавать»: погружение в Telegram API через TDLib

Reading time9 min
Views14K

Сперва я рассказывал простые вещи о Telegram Bot API и делал интересных ботов — виртуальную подругу и друга для заказа шавермы. Затем коснулся тестовых серверов и юзерботов. И наконец, пришла пора заглянуть глубже — узнать, как сделать свой клиент для Telegram. Что такое TL-схема и TDLib? Об этом мы сегодня и узнаем.

Данная статья не только поможет тем, кто решил написать свой клиент для Telegram, но и немного расширит кругозор остальным: MTProto — это не приевшийся JSON API. Добро пожаловать под кат!

Готовы показать свои знания в IT? Примите участие в IT-кроссворде Selectel, выиграйте 10 000 рублей на аренду серверов и эксклюзивный мерч Selectel.

Читать дальше →
Total votes 48: ↑48 and ↓0+48
Comments9

Тестовые серверы Telegram: инструкция по эксплуатации

Reading time11 min
Views18K

Про разработку ботов в Telegram написано много текстов, а про «тестовый дата-центр» практически ничего. Ранее Pavelgram освещал этот вопрос: он кратко рассказал, что такое тестовые серверы и как с ними работать. Я продолжу это начинание.

Эта статья — сборник разбросанной документации и результатов экспериментов. Под катом расскажу о технических особенностях тестового окружения для разработки, покажу примеры ботов и юзерботов. В качестве бонуса — история «о жизни в тестовом контуре».
Читать дальше →
Total votes 64: ↑64 and ↓0+64
Comments6

Let me teach you the ancient method of Fu Thai! Гнев и ненависть брутфорсеров в 2023 году

Reading time17 min
Views15K

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

Задавшись этим вопросом, я решил повторить эксперимент, сделав из выделенного сервера «ловушку» для всяких плохих ребят. В статье рассказываю, какие интерфейсы привлекают взломщиков, можно ли спрятаться на нестандартном порту и что будет, если оставить пароль по умолчанию. Под кат стоит провалиться хотя бы ради собранной статистики.
Читать дальше →
Total votes 88: ↑88 and ↓0+88
Comments16

NFC-крокодил: продвинутая разработка под Flipper Zero

Reading time25 min
Views9.5K

Мое желание делать игры с использованием различных неподходящих для этого технологий только прогрессирует. Мне показалась забавной идея реализовать игру «крокодил», где нужно объяснять слова через пантомиму, с использованием технологии NFC. При считывании метки выбирает случайное слово из памяти и отдает его телефону. Игрок видит слово на своем телефоне и начинает его показывать. К сожалению, существующие и легкодоступные NFC-метки не умеют существенно изменять содержимое без команды перезаписи.

Недавно коллеги из Selectel одолжили мне Flipper Zero, который может прикидываться NFC-меткой с любым содержимым. В интернете множество материалов о Flipper Zero. Обзор, еще один обзор, инструкция, как настроить IDE для разработки приложений, обзор внутренностей, быстрый старт и первое приложение…

В этой статье я расскажу про подход к организации GUI-приложений на Flipper Zero, про работу с NFC и NDEF, а также о том, как не бояться отсутствия документации в активно развивающемся проекте.
Читать дальше →
Total votes 60: ↑58 and ↓2+71
Comments23

Как создать свой мод для Cyberpunk 2077? Шерстим исходники, Lua, C++ и Python

Reading time16 min
Views7.8K

Недавно мой коллега @Doctor_IT попросил помочь с его проектом — VR-жилетом, который «проецирует» ощущения урона, которые получает персонаж, на тело игрока. С моей стороны — мод, который будет отправлять данные из Cyberpunk 2077 на сам жилет.

Информации по теме моддинга мало, на русском языке материалов практически нет, а существующие статьи местами устарели — пора это исправить. Если вам интересно, как разработать свой мод для Cyberpunk 2077 и собрать VR-жилет, добро пожаловать под кат.
Читать дальше →
Total votes 50: ↑50 and ↓0+50
Comments10

Shawarma as a service: как создать бота для заказа шавермы и оставить голодными лишь 1,1% коллег

Reading time12 min
Views22K

Полтора года назад в Selectel появилась традиция кушать шаверму по четвергам. Акция, названная Шавадеем, быстро обрела популярность. С увеличением количества адептов ее организационные моменты — в частности, сбор и отправка заказов — становились все сложнее. На помощь позвали программиста — меня.

В этой статье я расскажу, как мы автоматизировали организацию шавадея, написав бота, как Telegram вставлял палки в колеса, как я с этим боролся и что в итоге получилось. В конце вас ждет статистика, которая покажет вкусовые предпочтения разработчиков и «охваты» традиции. А еще ответит на вопрос, сколько людей остались без еды из-за бэкэндера, который до этого никогда не занимался проектированием пользовательских интерфейсов.
Читать дальше →
Total votes 77: ↑77 and ↓0+77
Comments13

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

Reading time10 min
Views8.2K

Удобство процесса разработки напрямую влияет на скорость работы и на количество ошибок при написании кода. Что делать, если среда разработки почему-то отказывается использовать автодополнение во всю силу? Правильно, искать обходные пути и изобретать велосипеды.

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

Текст будет интересен тем, кто хочет узнать новые стороны Python, и кому любопытно, с какими проблемами можно столкнуться, если использовать все модные фичи языка.
Читать дальше →
Total votes 57: ↑57 and ↓0+57
Comments0

Information

Rating
49-th
Location
Челябинск, Челябинская обл., Россия
Works in
Date of birth
Registered
Activity

Specialization

Backend Developer
Middle
Python
Flask
SQLalchemy
Bash
C