Search
Write a publication
Pull to refresh
19
0
Vladimir @mvs

Creator, founder, developer

Send message

Я не придумал, куда сходить — и скодил своего бота, который решает эту проблему за меня

Reading time5 min
Views12K

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

Рождение идеи

Примерно за неделю до нового 2022 года, сидя в гостях у друга и покуривая кальян, мы сидели и думали “чоб такого придумать-замутить, чтобы было интересно”. Начали накидывать идеи, но все были так себе. Сначала приходили на ум всякие сложные идеи, типа убийцу %PopularService%, но было решено начать с чего-то попроще, например, какого-нибудь бота для Телеграм... начали обсуждать, чего не хватает конкретно нам и что могло бы быть удобно для большого числа людей.

Потом кто-то сказал: “Мы почему-то дома часто сидим, не ходим никуда. На ** (одном из многих сайтов-агрегаторов мероприятий) всякий шлак, а что-то интересного нет”. И возникла идея - а что если сделать бота в Телеграме, которому ты просто однажды поставил, о каких мероприятиях хочешь получать уведомления, и после этого про него забываешь? А он тебе рассказывает только о тех событиях, которые тебе действительно интересны. Да еще впереди и праздники новогодние - идея должна стрельнуть.

Мы быстро раскидали зоны ответственности за бота - кто собирает мероприятия, кто пишет бота, кто думает о том, как продвигать. И забили нафиг.

Читать далее

SRE или DevOps — чувствуем разницу

Reading time4 min
Views12K
image

Разработка программного обеспечения прошла долгий путь развития — от непересекающейся модели разработки (водопадной модели) до модели итеративной разработки, такой как Agile и DevOps. Интересно отметить, что SRE появилась в Google для обеспечения надёжности и отказоустойчивости всей инфраструктуры в 2003 г., то есть раньше появления DevOps (примерно 2007–2008 гг.). Google в своей книге об SRE описали, насколько совместные усилия инженеров DevOps, SRE и других инженеров, таких как инженеры по безопасности приложений, жизненно важны для поддержки такого продукта, как, например, Gmail.

Глядя на приведённый выше пример, можно с уверенностью сказать, что наша растущая зависимость от приложений активно способствовала широкому внедрению DevOps и SRE. Нам постоянно нужны надёжные и масштабируемые системы, будь то оптимизация бизнес-функций или запуск приложения, упрощающего нам жизнь.
Читать дальше →

Создание сервера для онлайн ММО игр на PHP ч. 1 — Введение

Level of difficultyEasy
Reading time3 min
Views14K

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

Читать далее

Создание сервера для онлайн ММО игр на PHP ч. 2 — Масштабируемость и асинхронность

Level of difficultyEasy
Reading time4 min
Views4.4K

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

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

Статья устарела - читайте актуальную статью про масштабирование и открытый мир

Читать далее

Всё что нужно знать про ECS

Reading time30 min
Views120K

Привет, Хабр! В этой статье я расскажу всё, что знаю про Entity-Component-System и попытаюсь развеять различные предубеждения об этом подходе. Здесь вы найдете много слов о преимуществах и недостатках ECS, об особенностях этого подхода, о том как с ним подружиться, о потенциальных граблях, о полезных практиках, а также в отдельном разделе коротко посмотрим на ECS фреймворки для Unity/C#.

Окунуться в мир ECS

Android Studio. Kotlin. Подключение Google календаря через Content Provider

Reading time18 min
Views7.3K

Подробно с демонстрацией своего кода рассказываю о том, как я реализовал в своем приложении на Kotlin добавление, редактирование, удаление и чтение событий из Google календаря при помощи Content Provider. Описываю "грабли", на которые наступал, не найдя в сети помощи и поддержки в тяжелое для себя время...

Читать далее

Как правильно (не) использовать тестировщиков

Reading time30 min
Views13K


Как быть, когда вокруг вроде бы девопсы, аджайлы и скрамы, но разработка и тестирование по-прежнему не живут в одном пайплайне душа в душу?


Из-за того, что необходимо преодолевать эту стену и находить общий язык, мы даже создали конференцию Heisenbug, предназначенную одновременно для тестировщиков и разработчиков. А ещё мы проводим Java-конференции, и осенью Артём Ерошенко выступил там с докладом «Как правильно (не) использовать тестировщиков». На примере Java-проекта он поделился своей болью и рассказал, что считает нужным делать.


И теперь, в преддверии нового Heisenbug и нового JPoint (обе конференции пройдут в формате «офлайн + онлайн»), мы решили сделать хабрапост на основе его доклада. Дальше повествование от имени Артёма.

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

Билайн пытается принудительно сменить тариф и повысить его на 20%. Законно ли?

Reading time5 min
Views85K

История о том, как Билайн пытается принудительно перевести клиента на более дорогой тариф (+20% к текущей цене). Законно ли это и почему Билайн нарушает действующий договор. Разбираемся, как абоненту защитить свои права перед оператором.

Материал размещен по согласованию с редакциейTelecomtimes.ru и является авторским.

Читать далее

Экстремальная настройка производительности HTTP: 1,2M API RPS на инстансе EC2 с 4 виртуальными процессорами (vCPU)

Reading time54 min
Views19K

Прим. перев.: автор данного исследования — Marc Richards, Solutions Architect и DevOps-инженер — продемонстрировал потрясающую настойчивость и тщательность в тотальной оптимизации производительности веб-приложения. Получившийся материал — кладезь полезных знаний для расширения своего кругозора в области оптимизации, особенностей сетевого стека в Linux и не только, даже вне зависимости от практической заинтересованности в конечном результате автора. Приготовьтесь к по-настоящему длинному техническому путешествию с обилием терминологии, увлекательных графиков и полезных ссылок.

Читать далее

Как мы ускорили выполнение запросов PostgreSQL в 100 раз

Reading time10 min
Views47K

Существует великое множество статей об оптимизации PostgreSQL — эта «кроличья нора» весьма глубока. Когда несколько лет назад я начал разрабатывать бэкэнд аналитического сервиса, у меня уже был опыт работы с другими СУБД, такими как MySQL и SQL Server. Тем не менее, раньше мне не приходилось так фокусироваться на производительности. В прошлых проектах, над которыми я работал, либо не было жестких требований к времени обработки (DS/ML), либо не требовалось обрабатывать много строк одновременно (обыкновенные веб-приложения). Однако в этот раз мои запросы:

состояли из 3-10 JOIN-ов по коррелирующим запросам;

уielded от 10 до 1,000,000 строк;

должны были выполняться в течение времени, определенного UX-ом;

не могли быть hinted — пока Cloud SQL, управляемый PostgreSQL в Google Cloud, не стал поддерживать pg_hint_plan в конце 2021 года;

запрещали прямой доступ к серверному процессу, чтобы, например, хакнуть некоторые perf — потому что PostgreSQL был managed.

Получение целого миллиона строк в одном API endpoint сигнализирует о проблеме в алгоритме или архитектуре. Конечно, все можно переписать и перепроектировать, но за это нужно платить.

У нас не нашлось «заклинания», которое решило бы все проблемы с производительностью SQL. Тем не менее, я упомяну здесь несколько дельных предложений, которые помогли нам и, надеюсь, смогут помочь читателю. Разумеется, это не какие-то сакральные знания. Но когда мы начинали оптимизацию, я был бы рад их прочитать или услышать.

Читать далее

Как я делал сайт визитку на Angular

Reading time26 min
Views21K

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

Читать далее

Кто нанимает в русскоязычные команды вне РФ и Беларуси? (апрель 2022)

Reading time3 min
Views59K

После 24-го февраля появились десятки каналов в Телеграме, постов на VC, Хабре, страничек в Notion, которые собирают компании с удаленкой и релокацией. Но я не нашел ресурсов или каналов, которые концентрируются на одном аспекте: русском языке общения в командах.

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

Для этих людей я собрал в этом посте какие-то компании с русскоязычными командами разработки, которые релоцируют из РФ и Беларуси сейчас (то есть это не компании в Прибалтике, Польше и Чехии), либо позволяют удаленку из-за границ РФ с зарплатой в долларах или евро.

Пост не претендует на полноту или оригинальность. Хочется сделать русско-эмигрантский аналог постов Who is hiring? на Hacker News, где участники сообщества рекламируют вакансии в своих фирмах в комментариях.

На мой взгляд, это важный аспект, потому для ИТ-специалиста с хорошим английским, у которого главная цель - уехать из РФ или Беларуси, найти работу - вообще не проблема даже без всяких чатов и каналов. Английский - единственный профессиональных язык общения в огромном количестве компаний в Англии, Германии, Швеции, ОАЭ, Юго-Восточной Азии, куда довольно легко попасть (потому что сейчас везде острая нехватка специалистов), а релоцируют быстро и без особых проблем.

Читать далее

Angular без CLI Туториал

Reading time12 min
Views8.1K

Фреймворк Angular используется при создании SPA и предлагает большое количество инструментов как для создания, непосредственно, элементов интерфейса, так и CLI для создания и управления структурой файлов, относящихся к приложению.

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

Я задался таким вопросом, и, после изучения этого вопроса я собрал это в туториал.

Читать далее

Voximplant Avatar: голосовой и чат-робот с искусственным интеллектом для вас

Reading time9 min
Views5.8K

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

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

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

А что если объединить такого AI-компаньона и голосового робота? На выходе можно получить голосового помощника, с которым можно вести естественный диалог, как с реальным человеком. А если обучить этого помощника всему, что он должен знать, добавить сверху реалистичный синтез речи, неотличимый от настоящего голоса, на выходе получаем аватара от компании Voximplant.

Как сделать аватара

Россия 2022: как хранить криптовалюту в условиях санкций?

Reading time10 min
Views76K


Peace, Хабр!


Последние дни много разговоров, что криптовалюта — способ: a) сберечь свои рублевые сбережения от обесценивания, b) вывести из под риска национализации валютные сбережения.


И действительно (хорошая новость): на текущий момент ограничений по покупке и хранению криптовалют для резидентов РФ нет. Ну почти нет. По сравнению с фиатными биржами — нет.


Но (плохие новости):


  • Американские сенаторы уже обсуждают меры по ограничению использованию криптовалют для обхода санкций со стороны России [1],
  • Евросоюз занят тем же самым [2],
  • ФБР появилось подразделение по контролю за оборотом криптовалюты ([3], анонс от 17 февраля 2022, хотя межгосударственные финансовые дела вряд ли в их юрисдикции).

Еще хорошая новость (последняя):
Хрустальный шар/магический кристалл Гарри Поттер еще не подвез, поэтому сценарий с обходом санкций через криптовалютные переводы и с противостоянием этому обходу — это потенциальное будущее.


Снова плохая новость (не последняя):
Если Вам кажется, что риски в этом потенциальном будущем для Вас, как для частного инвестора, высокие, то Вам не кажется.


И что с этим делать?
Правильно — разобраться что, где, как (и надо ли) хранить условиях санкций.

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

Чем Linux HugePages важны для серверов баз данных?

Reading time7 min
Views20K

Часто пользователи рассказывают о сбое базы данных по вине Out Of Memory Killer. Он завершает процессы PostgreSQL и остается причиной большинства отказов этой БД. Память на хост-компьютере может закончиться по нескольким причинам. Наиболее распространены из них четыре. Во-первых, может быть плохо настроена память на хост-компьютере. Во-вторых, могут быть ограничения глобальной переменной work_mem. Например, если у вас 32Гб RAM и work_mem=1Гб, то больше 32 соединений вы никогда не запустите. Каждое соединение PostgreSQL будет выделять этот размер памяти.

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

Представляем вам перевод статьи от Jobin Augustine, который работает в Percona старшим инженером службы поддержки. Более 20-лет он был консультантом, архитектором, администратором и инструктором по PostgreSQL, Oracle и другим технологиям баз данных. Сегодня поговорим о том, как можно защититься от OOM с помощью HugePages и разберем насколько они важны и почему нужны.

Читать далее

Инфраструктура + тестирование = любовь

Reading time4 min
Views6K

Задачи стали проходить тестирование быстрее. Я просто добавил на сервер...

Здравствуйте! Под катом, опыт небольшой команды из Челябинска, которая делала релизы не вовремя, а потом изобрела велосипед. Если вы только строите процессы или вас мучает совесть из-за отложенных релизов, возможно этот опыт пригодиться. Также буду рад критике. Добро пожаловать!

Читать далее

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

Reading time7 min
Views25K

Марина, ты уже два года занимаешься помощью в релокации разработчиков и IT-специалистов. Расскажи, что поменялось за последнее время? 

Первое, что поменялось, — это общественное мнение о русских. Сейчас в некоторых странах Европы начали происходить не очень приятные процессы. Мы все читали новости о притеснении наших студентов в Чехии, Польше и так далее. Но вместе с этим в Европе есть культура принятия происходящего: здесь пытаются отделять политику от людей, которые родились в определённом месте. Человека стараются судить по поступкам, а не по тому, какой страны его паспорт.

Действительно, ребята из украинского лобби, из бизнеса, очень раздражены. Например, Namecheap и MacPaw отключили сейчас всех своих русских подписчиков от своих сервисов. Украинские рекрутёры ведут себя тоже очень агрессивно и говорят о том, что русских разработчиков больше нигде не возьмут на работу. Я понимаю, что они очень взбудоражены, но нужно оставаться людьми и не перекладывать политические решения коллективно на весь социум. Особенно учитывая, что люди из IT и около IT-сферы — образованные, понимающие, что происходит, и не поддерживающие, в большинстве своём, происходящее. Паника нагнетается, в Линкедине много дискуссий на эту тему, ребята из России расстроены и напуганы.

А как ты видишь ситуацию именно в Амстердаме? 

Изнутри я вижу, что в Амстердаме у нас есть поддержка со всех сторон. Я родилась под Киевом, муж родился в Москве. Когда распался СССР, мои родители работали на территории России, и мне досталось российское гражданство. Так получилось, что у меня украинское свидетельство о рождении и русский паспорт. И огромное количество друзей и в Украине, и в России. Мы жили на две страны и, на самом деле, у многих похожая история. 

Читать далее

Гексагональная архитектура и Domain Driven Design на примере Front-end приложения

Reading time7 min
Views23K

Преимущества данного метода:

Независимость: возможность не зацикливаться на бизнес логике.
Можно задекларировать, описать схему работы нашего приложения до создания внешних сервисов, использовать замоканные данные в реализации адаптеров.

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

Легкая изменчивость: изменения в одной области нашего приложения не влияют на другие области.

Читать далее

Information

Rating
Does not participate
Date of birth
Registered
Activity