0

Инфомат Святого Валентина

Руслан Махмудов
14 февраля 2015 года

История о том, как мы вдохнули жизнь в бездушную забытую железку и заставили её работать во имя любви.

Часть первая: стимул

— …тот получит бутылку качественного… э-э… бухла! — Сергей Смольников закончил фразу, начало которой я не расслышал, погружённый в свои мысли.

Начиналось общее собрание сотрудников ЦВТ. Это такой ежемесячный ритуал, когда отец-основатель компании лично всем рассказывает, как идут дела в его детище. Иногда ему помогает топ-менеджмент, бывает, даже замещает. В данном случае, пока ОВ ещё не подошёл, а все сотрудники ещё не собрались, Сергей взял небольшое вступительное слово и предложил полезную инициативу, вознаграждаемую алкоголем. Смысл заключался в том, чтобы сделать какое-нибудь интересное приложение для инфомата, забытого у нас некоей компанией года полтора назад. Стоя в углу, инфомат покрывался снаружи пылью, зарастал внутри плесенью, вёл себя тихо, но всем своим видом говорил: «Мне скучно, и я умираю. Включите меня уже или пристрелите, наконец!» Из соображений технического гуманизма Сергей решил попробовать вдохнуть жизнь в этого недоробота, но не своими руками.

Сергей хочет приложение для инфомата

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

Часть вторая: идея

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

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

Это — добрый Святослав

Дороги наших со Славой судеб почти каждый рабочий день пересекаются примерно на полчаса примерно после 19:00. Мысль про приложение для инфомата прочно засела у меня в голове, и я поделился ею.

— Интересненько. Можно что-нить придумать, да. — отреагировал Святослав.

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

Это была пятница, 6 февраля.

Часть третья: техзадание

Технически, наш инфомат состоит из системного блока и двух мониторов, один из которых, на самом деле, телевизор и задран высоко. Его задача — постоянно крутить всякий визуальный контент. Второй монитор — с тачскрином, внедрён в металлическое тело инфомата. В него уже можно тыкать пальцем и надеяться на какую-то ответную реакцию. Ещё там есть прибор для печати чеков, ИБП, какой-то неизвестный TV-модуль и бог знает, что ещё.

Раньше при включении инфомата на нём хитро запускались два браузера, каким-то образом разнесённые по двум экранам. Верхний крутил промо-ролики, а на нижнем можно было ходить по некоему промо-сайту. Но идея с браузерами сразу показалась мне неудачной. Вместо этого родилась мысль сделать приложение на WPF (Windows Presentation Foundation). По сути, на выходе будет обычное windows desktop-приложение, но написанное на мощном presentation-движке с помощью языка разметки XAML, да к тому же, с использованием всей силы .NET. Опыта использования WPF у меня не было никакого, но зато есть опыт разработки для Windows Phone и Windows Store, где используется тот же язык разметки XAML. Ну, а с .NET я, разве что, не женат, хотя отношения довольно близкие. Так что, техническое решение лежало на поверхности.

WPF

К понедельнику в голове чётко сформировалось видение инфоматного приложения для рассылки валентинок:

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

Главная фишка была в том, что текст для валентинки должен генерироваться автоматически, потому что на инфомате нет клавиатуры, а рисовать свою (даже с помощью XAML) — это задача не на пять минут. Да и вообще, если пользователя заставить вводить текст на тачскрине — это у многих отобьёт желание пользоваться приложением. В итоге, кроме всех визуальных оформлений следовало написать некий поздравительный бредогенератор. Почти всё это было в моих силах, кроме дизайна — в этой области я абсолютный ноль по шкале Кельвина.

Часть четвёртая: дизайн

— Идите в жопу, я с вами не разговариваю!

Высокие стандарты светских манер тёти Ксюши ничуть не уступают по уровню её высшему художественному образованию. Тётя Ксюша — единственный веб-дизайнер в Ижевске, который умеет рисовать. Её работы выставляются в галереях, добиваются признания критиков, продаются в престижных бутиках и оседают в частных коллекциях (мне посчастливилось стать обладателем одной из них, за которую я когда-нибудь выручу много денег на безбедную старость у моря и парусную яхту). Всякий раз, когда есть необходимость создать композицию с розовыми соплями и мимимишностью в пропорциях по золотому сечению — это сразу к Тёте Ксюше. Её Высокомерие поможет.

Несмотря на малообещающее приветствие, мне удалось добиться пятиминутной аудиенции и нарисовать техзадание карандашом на бумажке. Маленькой проблемой оказалось придумать название для проекта. Всякие «Анонимный инфомат» и «Электронный Валентин» лежали на поверхности, но зато к ним не лежала душа.

— Машина Любви! — внезапно раздался из-за соседнего iMac голос Тёмы, нашего арт-директора. Тем самым был создан редкий прецедент: мало случаев, когда человек вписывал себя в историю, просто сказав два слова и даже не появившись в кадре.

Логотипчик

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

Через полчаса у меня уже был первый образец. Был вторник, 10 февраля.

Часть пятая: старт

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

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

— И чё, это всё? — поинтересовалась вызванная из преисподней для презентации прототипа Тётя Ксюша.

— Пока да… — я почувствовал себя школьником, не выучившим домашнее задание.

— А где список людей? Где поздравлялка? — Ксюша, не отрывая взгляда, смотрела на цифры обратного отсчёта.

— В пятницу запустится, зачем сейчас-то показывать? — отмазывался я, как мог.

— Ну, то есть, там уже всё написано и заработает?

— В общем-то… там нихрена нет… но зато есть ещё пара дней в запасе.

Следующей фразой я ожидал услышать «Родителей завтра ко мне сюда», но Тётя Ксюша меня удивила:

— И как вам антураж борделя?

Только на этом месте я заметил, что дизайн Машины Любви был, действительно, сделан в стиле изысканно утончённого дома свиданий: тёплый розовый бархат, сердечки, интимное затемнение — всё пошло и заманчиво, как полагается. Я никогда не сомневался в высоких стандартах воспитания моего любимого дизайнера.

Рекламка

— Ну что, я могу чем-то помочь? — Внезапно к инфомату подошёл брутальный Слава.

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

Часть шестая: процесс

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

Вот я, например, боролся с XAML и WPF. Некоторые вещи, оказывается, успел позабыть, а некоторые вообще не знал. Разработка велась по принципу 50/40/10: 50 процентов времени уходило на что, чтобы разобраться, как сделать что-то, 40 — на то, чтобы сделать первые Х неудачных попыток и 10 — чтобы сделать одну удачную попытку и новый коммит. А ещё пришлось вручную обрабатывать 90 аватарок сотрудников, потому что в оригинальном виде они по ряду причин не подходили для приложения.

Святослав — тот вообще разрабатывает на iMac и MacBook, .NET для него — инопланетная цивилизация с шестирукими восьмиглазыми зелёными рептилиями-многочленами. Но он как-то умудрился запустить Windows под виртуальной машиной и развернуть среду разработки на MacBook. У него разработка велась по принципу 80/10/10/5: 80 процентов времени — взлететь со всей этой хернёй, 10 — написать на ней что-то работающее, 10 — ругаться, а оставшиеся 5 — вздремнуть хоть немного.

Тётя Ксюша тоже не теряла времени даром: она ходила по офису, тыкала пальцем в произвольного сотрудника и спрашивала его:

— У тебя есть секси-фото? Если есть — вышли мне.

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

К процессу также привлекли Алексея, нашего админа. Лёха — Железный Властелин нашей компании, повелитель периферийных устройств, укротитель проводов, владыка над комплектующими, не отражающийся ни в одном мониторе. Всякий раз, когда он подымается с отвёрткой к нам на седьмой этаж, у всех перехватывает дыхание: кто-то ждёт нового монитора, кто-то новой планки с памятью, кто-то новый жёсткий диск, а кто-то мечтает о новом системнике. Чаще всего Лёха приходит с подарком, но иногда может, наоборот, отобрать что-то.

Лёха

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

Полтора Лёхи

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

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

Часть седьмая: запуск

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

Очередь послать валентинку

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

Дисклеймер

Но даже машине (а тем более, Машине Любви) нужен отдых. Пятничным вечером, когда все уже разошлись по домам, гениальный и востребованный сервис рассылки валентинок прекратил свою работу с чувством выполненного долга. Никто не ушёл с работы непоздравленным.

Любви больше нет

Заключение

Хорошая получилась история. Сотрудники довольны, Святослав стал .NET-разработчиком, Тётя Ксюша получила себе в копилку десятки секси-фото, я прокачался в WPF, инфомат обрёл вторую жизнь. Впереди ещё 8 марта, 1 апреля, 9 мая… И вообще, огромное количество идей по поводу того, что можно ещё запустить на этом инфомате. Потихоньку будем запиливать — вечеров впереди довольно много.

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

Оставить комментарий