Pull to refresh
95
-3
Роман @BosonBeard

Технический писатель / системный аналитик

Send message

«Слово из трёх букв», или Пишем SMS-аналог Wordle с помощью MTС Exolve

Reading time19 min
Views606

Привет, Хабр! Сегодня поговорим об игре «Угадай слово» и её вариациях, например Wordle («Вордли»). Скорее всего, вы с ней сталкивались, а если нет, поясню: она похожа на старую добрую «Виселицу» — есть загаданное слово, и надо за ограниченное количество попыток его угадать. Только отгадываем слово не по буквам, а целиком.

В какой-то момент игра стала так популярна, что некоторые компании интегрировали её в разные маркетинговые акции внутри приложений. Казалось бы, тема закрыта, можно расходиться. Как бы не так! Мне есть чем вас удивить, ведь сегодня займёмся разработкой именно такой игры, геймплей которой базируется на SMS-сообщениях. Подробности — под катом.

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

«16+» или делаем шаблон страницы в XWiki на примере спецификации API

Level of difficultyEasy
Reading time9 min
Views2.2K

Пусть вас не смущает надпись: «16+» в заголовке. В статье не будет ни слова о безудержном кутеже с куртизанками за игрой в блэк-джек.

Просто я решил очередной статьей отпраздновать выпуск в свет 16-й версии XWiki – «open-source аналога Confluence» (по мнению её разработчиков).

Сегодня мы сделаем шаблон спецификации API в XWiki, чтобы в будущем нам было легко и удобно его тиражировать. 

Статья скорее рассчитана на новичков, поэтому в процессе я немного расскажу об XWiki и наиболее простом способе её установки.

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

«Oh no! code» или как создать голосового помощника без единой строчки кода с помощью VoiceBox

Level of difficultyEasy
Reading time10 min
Views2K

В последнее время на меня практически из каждого утюга льется реклама различных курсов по no-code разработке, в которой радостно рассказывают, что программировать скоро сможет каждый и это светлое будущее человечества. Но так получилось, что я хоть и не разработчик, но свой путь к азам программирования начал с учебника по Turbo Pascal 7. Поэтому на no-code я смотрю с некоторым подозрением. 

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

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

Как сделать мини-игру с Кузей с помощью голосового бота. Часть 2: Настройка Godot

Level of difficultyMedium
Reading time14 min
Views1.1K

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

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

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

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

Как сделать мини-игру с Кузей с помощью голосового бота. Часть 1: Управление персонажем

Level of difficultyMedium
Reading time8 min
Views2K

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

И вокруг уже всё изменилось. Трава не такая зеленая, колбаса не по ГОСТу, по 2х2 Сейлор Мун не крутят с утра. Особенно жалко тех, кто и вправду крут, ведь они больше не смогут отведать «супер-батончик Финт». 

Со всем можно смириться, но вот только одно не дает мне покоя. Не смогли мы с сестрой в 90-е дозвонится в передачу «Позвоните Кузе». Шансов поиграть у нас конечно же не было, но мечта осталась.

Но это же Хабр, а не клуб любителей ностальгировать. Поэтому сегодня мы напишем простейший веб сервис, затем вооружимся голосовым ботом VoiceBox. И в результате реализуем функции управления с телефона для простенькой игры на движке Godot.

Даже если вы не знакомы с продуктом от компании MTT, всё равно есть смысл почитать статью, ведь в следующем материале мы вместе с вами напишем нехитрую аркаду про Кузьму и подключим к ней управление с телефона.

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

«Робот — Гобот» или изучаем азы программирования видеоигр в Godot

Level of difficultyEasy
Reading time4 min
Views7.1K

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

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

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

Сегодня героем нашего обзора станет интерактивный учебник с открытым исходным кодом Learn GDScript From Zero, который плавно погрузит абсолютных новичков в основы программирования для игрового движка Godot.

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

«Наташ, вставай!» или как научить GitHub присылать вам SMS

Level of difficultyMedium
Reading time8 min
Views3.5K

Привет, Хабр! В одной из прошлых своих статей я уже писал про API для работы с SMS-сообщениями от компании МТТ (входит в экосистему МТС). На этом можно было бы и остановиться, если бы не одно «но». Не так давно вышла в свет платформа МТС Exolve за авторством всё той же компании МТТ. Методы для работы с SMS у MTT Telecom API и MTC Exolve очень похожи, за исключением одного: чтобы «покрутить в руках» MTC Exolve, не нужно заключать договор.

Cегодня мы  «поймаем двух зайцев»: посмотрим, как работает GitHub Actions и научимся отправлять SMS с помощью МТС Exolve.

Читать далее
Total votes 28: ↑27 and ↓1+26
Comments2

«Таков путь» — или изучаем путь пользователя по диаграмме Сенки в UX Rocket

Level of difficultyEasy
Reading time9 min
Views1K

Временами так хочется отвлечься от рутины технической документации и посмотреть что-то новое.  

К счастью, вселенная меня услышала. Прошлым летом я публиковал обзор на решение для продуктовой аналитики UX Rocket

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

Сегодня мы с вами:

1. Посмотрим, что было доработано за последние месяцы.

2. Установим скрипт сервиса на движок WordPress с плагином интернет-магазина WooCommerce и построим диаграмму Сэнки (Sankey) с помощью UX Rocket.

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

«И швец и жнец» или обзор полезных расширений для XWiki

Reading time4 min
Views4.9K

 

Вот уже второй год, как мы используем XWiki, вместо Confluence. 

За это время я к ней привык и даже в некотором роде полюбил. Поэтому не могу пройти мимо такого важного события как выход новой LTS версии 4.10.X.

Если вы не знакомы с релизным циклом XWiki, то вас может удивить, что LTS версия выходит в конце года и в течение всего следующего года получает обновления. Иногда бывает так, что обновления версии XWiki, что-то правит и одновременно что-то ломает, но в целом как обновление того стоит. Например, в 14 версии неплохо улучшили работу с вложениями, экспортом PDF и диалогом вставки изображений в редакторе.

Сегодня я не буду вдаваться в технические подробности, а просто сделаю беглый обзор функционала, рассчитанный в первую очередь на людей только что узнавших об XWiki. Обозревать мы будем самую последнюю на текущий момент версию 14.10.2 со Standard Flavor, установленную через Docker образ.

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

«Краткость сестра...» или  интеграция SMS API в бизнес процессы

Reading time23 min
Views2K

Иногда так хочется ненадолго вернуться в ранние нулевые. Ах, ностальгия! Сборная еще не взяла бронзу на Евро, сентябрь не сгорел, Бандурин и Вашуков выступают вместе, а SMS — отличное средство для быстрой коммуникации.

И если все остальное похоже не вернуть, то вот на счет SMS я не буду столь категоричен.

Нет, я не забыл принять свои таблетки, просто сегодня мы одним глазом посмотрим на  новый SMS API от компании MTT.

Придерживаясь немного шутливого стиля мы на простых примерах рассмотрим следующее:

- пару примеров для быстрого старта с SMS API. 

- пример скрипта для подсчета голосов, отправленных по SMS.

- пример интеграции SMS API в простой бизнес-процесс Camunda community edition.

Читать далее
Total votes 7: ↑5 and ↓2+3
Comments0

«Человек-паук» или как я учился на системного аналитика в Нетологии

Reading time6 min
Views12K

 

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

Сразу скажу, что я никак не связан с Нетологией, поэтому все в этой статье мое независимое и субъективное мнение.

Сегодня я:

 -поделюсь с вами ощущениями от обучения в целом;

- кратко пробегусь по каждому курсу в специализации;

- отвечу на вопрос: “Что дает обучение?“.

Милости прошу под кат
Total votes 7: ↑6 and ↓1+5
Comments9

«А у нас сиеста!» или как ресторану обрабатывать звонки клиентов с помощью API

Reading time31 min
Views1.5K

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

Хуан готовит прекрасную паэлью, возможно лучшую в Андалусии. Но есть одна проблема - Хуан уважает сиесту, а поэтому с 13:00 до 17:00 совершенно не следит за персоналом ресторана. 
Наша цель: помочь веселому и предприимчивому Хуану успокоить клиентов и мотивировать сотрудников, чтобы они не забывали быстро готовить и доставлять заказы. 

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

Читать далее
Total votes 5: ↑3 and ↓2+1
Comments0

«Позвони мне позвони» или решаем проблему скрытия телефонного номера с помощью callback сервиса

Reading time11 min
Views3.5K

Последнее время в РФ все больше ужесточается законодательство в части подмены номера звонящего. Одним из последних нововведений стали крупные штрафы. И если  раньше операторы связи могли смотреть ”сквозь пальцы” на факт сокрытия реального номера звонящего, то теперь вероятность блокировки подобного звонка становится значительно выше. 

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

Например, что делать если во время звонка мы захотим показать клиенту корпоративный номер его персонального менеджера, даже если менеджер использует свой личный телефон? Ответить на этот вопрос нам поможет Telecom API от компании MTT: компания-клиент МТТ настраивает переадресацию с выделенного оператором связи номера на личный номер менеджера. При этом клиент контролирует все коммуникации, а личный номер менеджера остаётся под защитой при обратном звонке благодаря переадресации на номер компании-клиента МТТ.

Но скучно будет просто написать обзор API, поэтому мы еще сделаем свой собственный “зародыш CRM” с помощью моей любимой XWiki, щепотки кода и Telecom API.  На всё это у нас уйдет буквально 10 минут. 

Сегодня мы с вами: 

- посмотрим как решить проблему защиты номера звонящего с помощью API callback вызова и управления входящим вызовом; 

- сделаем свое расширение для open source вики-движка XWiki и интегрируем в него методы callback вызова, чтобы звонить прямо из XWiki.

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

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

«A/B сидели на...» или обзор инструмента для продуктовой аналитики и A/B тестирования UX Rocket 2.0

Reading time6 min
Views2.2K

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

1. возможность познакомиться с новыми решениями и технологиями раньше, чем они будут доступны широкому кругу пользователей;
2. постоянно приходится “ковырять” вещи, о которых раньше понятия не имел.

В этот раз я приоткрыл для себя завесу удивительного мира продуктовой аналитики и A/B тестирования благодаря UX Rocket 2.0.

Если кратко, то это российская замена популярным на рынке сервисам аналитики, персонализации и A/B тестирования от Google, Amplitude, Appsflyer, AB Tasty, Dynemic yield, Oracle, SAS и другим продуктам от менее известных компаний.

В данном материале мы немного поговорим о важности повышения конверсии для интернет-маркетинга в современных условиях, а также посмотрим на функционал UX Rocket 2.0.

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

«Врубай на Максиму!» или учимся решать математические задания для 6 и 7 классов в WxMaxima

Reading time4 min
Views8.9K

Практически 10 лет и 50 статей назад, я набросал материал о моём знакомстве с замечательной системой компьютерной алгебры Maxima. Время шло, ничто не предвещало беды, но неожиданно я осознал, что дети имеют свойство взрослеть и скоро я не смогу решать школьные задачки в уме.

Пришло время сдуть пыль с "комплюхтера" установить себе Maxima и попутно еще раз напомнить сообществу о ней.

Сегодня мы не будем всё усложнять и бегло рассмотрим простейшие примеры для 6 и 7 классов по следующим темам:

наименьшее общее кратное

наибольший общий делитель

операции с дробями

упрощение выражений с одночленами и многочленами

линейные уравнение

системы линейных уравнений

построение графиков функции

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

«Смартфон и его команда» или скрываем номер звонящего и управляем вызовом с помощью MTT API

Reading time14 min
Views2.2K

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

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

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

Естественно, в рамках нашей статьи мы не будем «выдумывать» целый сервис, но попробуем сделать систему общения с персоналом интернет-магазина удобной и защищенной от кражи персональных данных недобросовестными исполнителями. А поможет нам в этом Telecom API от компании MTT.

Сегодня мы с вами:

- используем API, для умной переадресации вызова;

- скроем номер звонящего, от некоторых сотрудников сервиса;

- разберемся с добавочными номерами;

- сделаем аудио сообщения из строки текста;

- обработаем вызовы REST API на сайте с помощью PHP;

- напишем на Kotlin простенький макет приложения для звонка.

Читать далее
Total votes 4: ↑2 and ↓20
Comments2

«Атака клонов» или пишем макрос для клонирования репозитория GitLab внутрь XWiki

Reading time8 min
Views1.7K

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

После публикации одной из моих статей MaxK82 спросил у меня, можно ли как-то в XWiki подключить документацию из git репозитория, так чтобы наладить её версионирование. К сожалению эта статья не ответит на его вопрос, но возможно укажет направление, в котором стоит "копать".

Поэтому сегодня мы с вами:

- создадим простенький, но зато свой макрос в XWiki;

- клонируем прямо в XWiki репозиторий с GitLab;

- отобразим Readme.md из репозитория внутри страницы XWiki.

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

«А поговорить?» или делаем звонок для подтверждения заказа в интернет магазине с помощью МТТ VoiceBox

Reading time17 min
Views2.6K

Экономическая ситуация нынче нестабильная, лишних денег у людей нет. И вот значится обратились ко мне товарищи со словами: "Ты же когда-то там сайты делал, помоги разобраться". После такой просьбы пришлось мне сдувать пыль вековую с постаревших связей нейронных, да бубен шаманский доставать.

Но не переживайте, эта статья не о том, как я спустя 12 лет снова сел ковырять сайты на PHP. Всё это банально и писать об этом на Хабр я бы не стал.

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

Вы готовы загибать пальцы?

Итак, сегодня мы с вами:

Настроим сценарий голосового бота для подтверждения интернет заказа.

Одним глазом взглянем на API для управления ботом и отправим пару запросов через Postman.

Добавим пару кастомных действий в WooCommerce, чтобы робот вместо оператора разными голосами подтверждал заказ.

Читать далее
Total votes 7: ↑4 and ↓3+1
Comments14

«Kiss the cook» или еще пара рецептов для XWiki

Reading time7 min
Views2.5K

Свободного времени становится всё меньше и меньше, поэтому в этот раз перейду сразу к делу.

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

Лучше поздно чем никогда, поэтому сегодня мы:

починим связку ShowHide macro и аннотаций на странице;
пофиксим проблемы с поиском;
поменяем шаблон для страницы входа;
сделаем оглавление страницы в боковой панели;
установим пакеты, которые не находятся обычным поиском и отобразим Swagger на странице.

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

«Предъявите паспорт» или добавляем поля «должность» и «цветовая схема» в профиль пользователя XWiki

Reading time3 min
Views2.4K

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

В этот раз мы рванем сразу с места в карьер и попробуем расширить профиль пользователя в Xwiki.

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

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

Information

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