Navigation

Мои проекты

Ниже перечислены некоторые проекты, в которых я выступал как идеолог, менеджер, разработчик и эксплуататор :-)
Отдельно — проекты, в которых я принимал участие только как менеджер проекта.

  • Игра Wordrive, для iPhone 3, iPhone 4, iPhone 5, iPad 1, Android, Bada.
  • Календарь пресейлов. Инструмент для управления микро-проектами по оценке проектов по разработке ПО, разработанный мною для автоматизации собственной деятельности во время работы в РБК СОФТ;
  • НаДиске.ру. Интернет-магазин по продаже CD-версий сайтов;
  • CD Навигатор. Информационно-поисковая система для ОС Windows, не требующая инсталляции (запуск с CD), для которой также организовывалась разработка контента (комментарии к законодательным актам) и разработка собственного поискового «движка»;
  • Конструктор воздуховодов. Программа категории САПР, позволяющая конструировать в 3D воздуховоды из готовых компонентов.
  • Язык программирования ArtPublishing. Разработка языка программирования, специально предназначенного для разработки под Web и системы управления контентом ContentRIGHT.
  • Старчат.ру. Интернет-конференции со «звездами». Новая концепция чата.
  • Прочие проекты. Разные небольшие проекты.


Календарь пресейлов

Инструмент для управления микро-проектами по оценке проектов по разработке ПО, разработанный мною для автоматизации собственной деятельности во время работы в РБК СОФТ.

В отдел управления проектами РБК СОФТ от менеджеров по продажам направлялись заявки в свободном виде от менеджеров по продажам, в которых было необходимо разобраться, встретиться с клиентом, подготовить техническое предложение и выполнить первоначальную оценку. В зависимости от заказчика, компания была готова инвестировать больше или меньше времени в этот процесс, называемый «пресейлом» — предваряющую подписание договора работу, выполняемую за средства разработчика в надежде получить более крупный проект. На каждый из таких «пресейлов» выделялся ответственный менеджер из числа сотрудников отдела. Каждая обработанная заявка могла иметь продолжение (например, заказчик уточнял требования или нужна была дополнительная встреча). В результате, за всеми менеджерами отдела в каждый момент времени тянулся «хвост» таких микропроектов. Система управления пресейлами наводила порядок в задачах и отвечала на вопросы «Кто занимается какой задачей», «Кто может скоро освободиться и взять еще один «пресейл», «какова средняя длительность пресейлов» и др. Также система была ценна тем, что автоматически отправляла статусы заявок при их изменении всем заинтересованным лицам.



НаДиске.ру

Интернет-магазин по продаже CD-версий сайтов.

Этот личный проект создавался в партнерстве с Моттлем Дмитрием — на тот момент великолепным системным администратором, а ныне — руководителем небольшой компании по разработке ПО на основе веб-интерфейса и веб-сайтов. «Товаром» в интернет-магазине являлся информационный продукт — специальным образом организованный контент с сайтов-партнеров, полученный с разрешения владельцев этих сайтов. Каждый такой диск создавался вручную: специальный «робот-паук» скачивал тексты с сайта-источника, второй «робот-обработчик» убирал оттуда баннеры и оформление, а третий «робот» исправлял ссылки, добавлял постоянные блоки. В результате, получался CD со всем содержанием сайта. Для каждого партнера был выделен поддомен, в котором в один клик можно было заказать диск, а также «для кучи» набрать дисков других партнеров. Доставку мы производили наложенным платежом. Из интересных технических решений — полный отказ от бэкофиса на сервере. Интернет-магазин скидывал заказы на компьютер менеджера, а далее этот заказ обрабатывался с помощью Microsoft Access и здесь же помещался в базу Access. В результате, обработка заказов была значительно «дешевле», т.к. разработка на Access разнообразных выборок, фильтров и диалогов значительно дешевле, чем на PHP.
Адрес: www.nadiske.ru (сайт уже закрыт)



CD «Навигатор»

Информационно-поисковая система для ОС Windows, не требующая инсталляции (запуск с CD), для которой также организовывалась разработка контента (комментарии к законодательным актам) и разработка собственного поискового «движка»
Система разрабатывалась для частных инвесторов как обособленный продукт, распространяющийся на клубной основе. Система разрабатывалась на языке Delphi, я выступал главным программистом, также для реализации отдельных компонентов были привлечены два других программиста. Разработка текстов осуществлялась десятью юристами, координацию и контроль качества текстов осуществлял один из юристов, показавший себя как хороший организатор и редактор. Программа включала в себя систему поиска, основанную на предварительной индексации текстов. Поисковая система была разработана «с нуля». В качестве хранилища данных была выбрана встраиваемая СУБД, не требующая предварительной инсталляции. Весь проект был жестко ограничен по времени и договор предполагал существенные пени за просрочку. В конечном итоге, система была сдана точно в срок.



Конструктор воздуховодов

программа категории САПР, позволяющая конструировать в 3D воздуховоды из готовых компонентов
Система разрабатывалась в 1999 году в интересах НПЦ «Эковент» г. Рязани, производителя модульных вентиляционных систем. Система предполагала два крупных компонента — конструктор воздуховодов и расчет параметров по готовой схеме из конструктора. Первая задача была решена на достаточном для заказчика уровне, ко второй было принято решение не переходить, т.к. требования к финальному результату со стороны заказчика возросли настолько, что были непоставимы с первоначально выставленной сметой. Увеличивать бюджет заказчик не хотел и в результате было принято решение об остановке разработки. Все исходные коды проекта были переданы заказчику. Этот проект научил меня тщательно документировать постановку задачи и условия до того, как начинать производство. Конструктор был реализован на Delphi и включал две подсистемы — собственно сам интерактивный конструктор и визуализацию с тенями и текстурами. Визуализация была реализована на DirectX, отрендеренный 3D-воздухопровод можно было крутить по трем осям и менять масштаб.



Язык программирования ArtPublishing и CMS ContentRIGHT

Разработка языка программирования, специально предназначенного для разработки под Web и системы управления контентом
В компании ArtStyle по состоянию на 2001 год в качестве фреймворка для разработчиков использовалась система на Perl с аналогичным названием — ArtPublishing. На ней до сих пор, например, работает Колобок.ру. Была поставлена задача — переработать движок, дабы увеличить скорость и гибкость решений. Мы выбрали смелое решение — переписать «движок» на С/C++ и максимально отказаться от Perl. В результате, через два месяца силами трех программистов — Шклярова Сергея, Прокофьева Александра и Алиева Рауфа была разработана первая версия «движка» — полноценный язык программирования, с наследованием, переменными, функциями, процедурами (см. документацию)... К этому времени на старом «движке» был уже почти готов сайт chernobil.ru. Структуры данных были полностью различны — HTML-шаблоны, например, в версии для Perl хранились в базе данных, а в нашей новой версии они размещались в файловой системе. В результате, мы создали интересное решение — FTP-сервер, отражающий данные из БД старого «движка» в файловую систему. Это позволило перевести верстальщиков на время разработки нового движка на более удобный способ работы с шаблонами — через FTP. С помощью этого же решения был за считанные дни перенесен «Чернобыль.ру» на новый движок. Одновременно была разработана первая версия системы управления контентом ContentRIGHT, полностью написанная на нашем новом языке программирования.
Адрес: официальный сайт ArtPublishing | официальный сайт ContentRIGHT (оба, к сожалению, заброшены)



СтарЧат.ру

Интернет-конференции со «звездами». Новая концепция чата.
С этим проектом я пришел к руководству Артстайла спустя несколько месяцев, как поступил к ним на работу. Набросал прототип, чтобы была понятнее идея. Пилотному проекту был дан зеленый свет. Чат решили разрабатывать на Java: на флэше в 2001 году такие вещи еще не делали. Мой принцип состоял в разделении интервью и общего чата на разные окна, одновременно демонстрируемые участникам чата. Интервью формируется из ответов на адресно задаваемые «звезде» вопросы пользователей. «Звезда» при этом общий чат не видит, но зато имеет возможность произвольно выбирать вопросы для ответов. В схеме также имеется модератор, одобряющий или удаляющий вопросы. Одобренные вопросы направляются «звезде» именно от него. Вот такая нехитрая схема позволила провести уже больше 340 конференций. На этой технологии были проведены и более серьезные конференции, чем интервьюирование популярных звезд.
Адрес: starchat.ru



Прочие проекты


Workout

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

Amail

Система управления почтовой подсистемой и почтовыми рассылками в частности. Интегрирована с почтовым сервером, позволяла через веб-интерфейс создавать списки рассылки. С одной стороны, были продублирован функционал уже готовых систем управления рассылками, с другой — добавлены механизмы интеграции с интранет, упрощающие администрирование, плюс использовались некоторые функции, не свойственные классическим системам. Адреса для рассылок делились на «просто рассылки» и на «дискуссии». Последние отличались тем, что ответ на письма шел не адресату, а обратно в рассылку. Также система была примечательна тем, что создавался архив рассылки в онлайне в виде форума, по которому можно было искать. Архивы некоторых рассылок были публично открытые (для сотрудников компании).
Также было введено правило: все письма в заголовке сообщения начинать с темы: специального слова, написанного заглавными латинскими буквами, закрепленного за проектом, после которого стояло два двоеточия, а дальше — собственно конкретика. Это позволяло получателю письма сразу ориентироваться, о чем будет идти речь в самом письме, но, что важнее, это позволяло Amail понять, к какой теме отнести переписку и автоматически положить данное сообщение в нужный публичный форум. В результате, личные письма, написанные «по работе» попадали в публичную часть — об этом знали все. Важнее, конечно, что можно было в одном месте посмотреть всю переписку по проекту между десятком людей. Если не хочешь, чтобы письмо стало достоянием общественности — не пиши его в формате, принятом для корпоративной переписки.
Также мною придуман и разработан сервис, mail2web, входящий в amail, позволяющий по письму на определенный ящик инициировать веб-запрос к указанному ресурсу в интернет, вместе с которым передаются данные из письма. Проще всего это проиллюстрировать на примерах: отправка письма на news@iway.ru приводила к обращению к скрипту на ArtPublishing, добавляющему новость в базу данных, причем тему новости система брала из темы сообщения, содержание новости — из текста сообщения, а приложенные картинки аплоадила на сервер и включала как иллюстрацию к новости. Важно, что сам этот скрипт был предельно прост — с «его» точки зрения, данные к нему попали через обычную форму с полями «Заголовок», «Текст новости» и иллюстрацию, закаченную через кнопку «Обзор». Суть сервиса и заключалась в том, что всю работу по разбору письма и формированию правильного запроса к нужному скрипту в сети, он брал на себя. Особо стоит отметить, что система умела авторизовываться в системе управления содержанием сайта (практически любой системе, не только ContentRIGHT) и сохранять авторизацию, прежде чем обращаться к скрипту добавления новости. Сама система amail была универсальной — например, можно было также через веб-интерфейс расширить возможность добавлять новости через почтовое сообщение возможностью отвечать на сообщения в форуме прямо из почты. Ответ на сообщение из почты приводил к появлению ответа на сообщение в веб-форуме. Через почтовые сообщения можно было даже давать системные команды некоторым из наших проектов, например, перегружать java-движок чата, отправляя sms-ку (в то время «Билайн» давал возможность, указав в начале sms-сообщения адрес электронной почты, редиректить sms на этот адрес бесплатно, а дальше он подхватывался amail и вызывал обращение к скрипту перегрузки сервера).

Контент-управлятор для сайта Минатома

В ходе проекта по разработке сайта Минатома было создано специальное ПО, облегчающее работу с контентом моей команды. Исходная ситуация была следующей: тысячи текстов на старом сайте Минатома, и все — в ужасающем состоянии: с цветовыми выделениями, с «прыгающими» размерами шрифтов, с криво внедренными фотографиями, а во многих местах — «битыми ссылками» и фото. При этом большая часть материалов требовала косметической правки, а меньшая — серьезной. Но как разбить тысячи материалов на эти категории?
В результате был придуман и реализован следующий подход: все материалы собираются в единый список, помечаются параметром «дальность от первой страницы». В результате, 80% контента оказалось либо старыми новостями, статьями, загнанными куда-то в дальний угол сайта. Оставшиеся 20% были также разбиты на три группы. В результате, получился план обработки контента, от самого важного к самому неважному. Для того, чтобы составить список всех материалов и их «дальности» от главной страницы, разрабатывалось специальное ПО, сканирующее сайт и базу данных.
Поскольку все материалы были сведены в единый список, было несложно поделить их по исполнителям, но обработка каждого материала занимала минуты — для такого объема это было непозволительно много. Поэтому для обработки статей было разработано специальное ПО, интегрированное в страницу. Контентная зона была разделена на две половинки, верхняя была заполнена оригинальным текстом, нижняя — обработанным, а между был интерфейс для выбора способа обработки. Фактически, выбирались скрипты на Perl, выполняющие переработку текста. Например, один из таких скриптов был скрипт-типограф, другой выполнял распознавание внешних картинок, скачивал их и заменял ссылки на локальные. Каждый текст требовал разной обработки и это решал уже «оператор», выбирая инструменты и последовательность их применения. Обработка статей таким образом сводилась к 2-3 нажатиям на нужные в конкретном случае экранные кнопки и небольшого подредактирования текста «от руки».