Интервью с разработчиком клиента MDC

08 июля 2010
В новом интервью генеральный директор компании NetStream, Евгений Россинский, рассказывает читателям портала ase4ka.su о том, как появился клиент MDC, почему он стал именно таким и как компания зарабатывает на мессенджере.

Мы продолжаем цикл интервью с разработчиками ICQ-клиентов. В первом интервью цикла мы обсуждали проблемы разработки клиента QutIM. Теперь наступила очередь MDC, также набирающего популярность клиента, выпускаемого компанией NetStream. Если вы не знакомы с MDC, рекомендуем вам предварительно прочитать наш обзор.

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

В качестве разработчика MDC выступает генеральный директор ООО «Нетстрим», Евгений Россинский. Евгений закончил факультет «Информатика и системы управления» МГТУ им. Н. Э. Баумана и с 2006 года руководит компанией NetStream. Помимо руководства компанией, он также ведет авторский курс «Технологии командной разработки программного обеспечения» в родном МГТУ им. Баумана.

gendir.png

Добрый день, Евгений. Почему вы приняли решение о выпуске собственного мессенджера? Ведь данный рынок и так достаточно насыщен...
Изначально проект создавался для крупного заказчика, который должен был вступить в игру после того, как мы наберем небольшое ядро аудитории, и, фактически, взять на себя маркетинговое направление. Однако экономическая ситуация в сентябре 2008 года заставила нашего партнера отказаться от своих инвестиционных проектов.
В тот нелегкий для нашей компании момент я принял решение не закрывать проект, а немного перепрофилировать его, и мы превратили MDC в полигон для наших опытов в области разработки ПО. Мы заимствовали современные концепции из других языков и реализовывали их на С++, тренировались в написании асинхронных серверов на Python. И это принесло свои плоды, и позволило через полгода на базе созданного программного кода приступить к реализации коммерческого проекта в области отличной от MDC.

Имеется ли какой-нибудь популярный клиент, на какой вы ориентируетесь при создании своего? Иначе говоря, какой популярный клиент почти устраивает?
Не могу сказать, что мы на что-то ориентируемся, у каждого из нас свои вкусы: кому-то нравится Kopete, кому-то - QIP, кому-то - Adium. Мы спорим и, как правило, находим общий язык.

Какими еще проектами занимается ваша компания? Сколько человек в ней трудятся? К чему вы стремитесь?
Мы специализируемся на высоконагруженных веб-проектах, самым известным из которых является smotri.com. Список всех наших проектов можно найти вот по этой ссылке: http://netstream.ru/ru/solutions/. Наш коллектив насчитывает 15 человек. Мы психи, которые влюблены в свою профессию. К чему мы стремимся? Хороший вопрос. Есть такое мнение, что работа на 90% состоит из рутины и на 10% из удовольствия. Мы стараемся отыграть у рутины как можно больше и боремся за каждый процент.

Читайте также: Как отполировать старую мебель

Как вы планируете зарабатывать на MDC? И планируете ли вообще?
Сейчас мы зарабатываем не на MDC, а с помощью MDC. У нас есть сплоченный коллектив преданных фанатов, которые многое нам прощают и активно помогают в тестировании. Библиотеки, которые мы разрабатываем в рамках MDC, мы с успехом применяем в других проектах. А это в свою очередь приносит уже материальные блага.

Открытие исходных кодов - это что: привлечение новых разработчиков и создание сообщества или всё же требования лицензионной политики Qt?
Лицензионная политика Qt тут не причем, мы пошли на этот шаг, чтобы увеличить сообщество. Конечно же, мы ждем новых разработчиков, которых в случае удачного симбиоза пригласим работать к себе.

Почему именно Qt, а не, скажем GTK? И почему на несколько операционных систем?
Потому что MDC изначально планировался как кроссплатформенный продукт, ну а Qt - это самый подходящий инструмент для подобной разработки.

Планируется ли появление клиента на мобильных платформах? Если да, то на каких?
В планах есть, но в довольно далеких. Сейчас мы будем концентрироваться на приложении для desktop'a. Первой мобильной платформой конечно же будут Maemo и MeeGo.

Что разработчики думают о рядовых пользователях? Кто они для них: движущая сила, обуза или вынужденная необходимость?
Пользователи - это голос совести. Сидишь в выходные, а тут в трекер пишет пользователь о каком-то страшном баге и так замечательно пишет, что профессиональному тестировщику у него поучиться надо. Ну раз человек так старался, идешь и правишь, ну или редиректишь этот баг его автору.

Кто придумывает названия релизов? Коллективный разум?
Все вместе придумываем.

Как насчет расширения списка поддерживаемых протоколов? Если все-таки будет расширяться, то что первым будет поддерживаться?
Расширятся планируем, но пока еще политика партии не проработана.

Есть кто-то конкретный, кто отвечает за выпуск клиента? Планируется ли как-нибудь упорядочить периодичность выпуска клиента, или он будет выходить от случая к случаю?
Вообще у нас все по максимуму автоматизированно, поэтому, после отделения стабильной ветки проекта, достаточно нажать на большую оранжевую кнопку, и несколько специальных машин у нас в офисе соберут MDC под разные архитектуры и прогонят unit тесты. Потом мы прогоняем gui тесты. Потом Кирилл (@bigrucom) пишет сообщение в блоге, я нажимаю вторую оранжевую кнопку, и релиз выкладывается для скачивания пользователям.

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

Планируется ли реализация импорта истории разговоров из других клиентов? Если да, то когда?
Пока не планируется, может кто-то из сторонних разработчиков поможет нам с этим.

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

А можно ли как-то самим собрать свой сервер синхронизации, если исходные коды открыли? или такая функция не будет доступна?
Пока нельзя: мы еще не успели открыть код сервера. Также есть очень тонкий момент при смене сервера и синхронизации данных в этом случае.

Ну и последний вопрос. Когда пользователям ждать новой версии MDC?
К сожалению, я пока не готов ответить на данный вопрос. Дата релиза пока точно неизвестна. Как только это станет известным, мы сразу же сообщим. Обещаю, что нашим пользователям не придется долго ждать.

Спасибо вам за интересные ответы на вопросы.

Редакция портала ase4ka.su напоминает своим читателям, что цикл интервью будет продолжен. Вскоре мы снова пригласим на разговор разработчика ICQ-клиента. Какого? Пока не скажем. Следите на новостями.

Скопируйте этот код и вставьте его в свой сайт или блог (HTML)
Скопируйте этот код и вставьте его на форум (BBcode)
Кликните, если это возможно

Комментарии (16)

А ведь если шифрование отулючить, то историю читай кто хочет, получается...

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

А что? Работа была практически сделана, заказчик отказался. Поэтому вполне нормальный расклад получился. Главное, чтобы заказчик не опомнился Smile

Поезд ушел. Тем более заказчик сам отказался, его никто не принуждал.

Заказчик может и опомниться. У нас иногда такое бывает с раскрученными проектами. Типа находится дырка в договоре, о которой все забыли Smile

Как зачастую необходимы навыки командного программирования некоторым нашим российским разработчикам.... Это не к разработчикам MDC, это наболело просто...

Забыли про веб версию MDC. А ведь есть такой.

GTK вроде тоже как кроссплатформенный. Ответ не убедил Sad Похоже просто на обычную любовь к одному дизайнеру

GTK я пока на мобильной платформе не встречал. А QT уже есть. Так что тут скорее прагматичный расчет на будущее развитие был заложен.

С синхронизацией вообще непонятно. Что клиент отправляет в первый момент после регистрации? Мои личные данные?