CFA LogoCFA Logo Computer
Новости Статьи Магазин Драйвера Контакты
Новости
RSS канал новостей
В конце марта компания ASRock анонсировала фирменную линейку графических ускорителей Phantom Gaming. ...
Компания Huawei продолжает заниматься расширением фирменной линейки смартфонов Y Series. Очередное ...
Компания Antec в своем очередном пресс-релизе анонсировала поставки фирменной серии блоков питания ...
Компания Thermalright отчиталась о готовности нового высокопроизводительного процессорного кулера ...
Компания Biostar сообщает в официальном пресс-релизе о готовности флагманской материнской платы ...
Самое интересное
Программаторы 25 SPI FLASH Адаптеры Optibay HDD Caddy Драйвера nVidia GeForce Драйвера AMD Radeon HD Игры на DVD Сравнение видеокарт Сравнение процессоров

АРХИВ СТАТЕЙ ЖУРНАЛА «МОЙ КОМПЬЮТЕР» ЗА 2003 ГОД

Программа: от рассвета до заката

(c) Петр 'Roxton' СЕМИЛЕТОВ tea@list.ru

Предположим, вы ощущаете в себе желание и силы сотворить некий программный продукт и подарить либо продать его людям. Эта статья расскажет о том, какие подводные камни ждут вас на пути к воплощению своего замысла и как оптимально организовать все это дело.

Рождение

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

Сайт. Вам понадобится сайт. Без сайта продукт кажется бомжом, у которого нет своего дома. Нечто шаткое, зыбкое. Поэтому должен быть сайт. И неважно, хороший или плохой, лишь бы там лежал дистрибутив, была пара-другая скриншотов и описание. Форум или гостевая книга — потом. Ибо, опять же, о бета-версии могут посыпаться нелестные отзывы. А к чему вам такие на публике? Вот пройдет какое-то время, продукт стабилизируется, тогда и заведете себе разные виртуальные «салоны».

Прежде чем регистрировать свою программу на software-серверах, дайте ее протестировать друзьям и знакомым. Не факт, что если у вас все работает нормально, то у других тоже будет ОК. Пару недель назад я дал нескольким друзьям для тестирования движок своей игры. Оказалось, что на звуковой карте Vortex движок вылетает с синим экраном, а вот на AC97 звука вообще нет, хотя у меня на Live! играет нормально. Вывод — без обратной связи от пользователей, что на международном языке именуется feedback'ом, добиться стабильной работы продукта очень сложно. Обязательно заведите отдельный почтовый ящик для этих целей.

К любому публичному дистрибутиву приложите свою лицензию. Лучше всего показывать ее в процессе инсталляции и запросить у пользователя, согласен он с условиями лицензии или нет. Ежели нет, то инсталляция должна прерываться. Напишите в лицензии, что вы не несете ответственности за последствия использования продукта и так далее — образцы подобных текстов вам хорошо известны.

Жизнь

Настоящая жизнь программы начинается после того как продукт начинают скачивать и пользоваться им. Насколько удачен продукт, можно будет судить по статистике скачиваний. Например, я зарегистрировал на softbox.ru свою иерархичную записную книжку XLAM и уже на следующий день обнаружил, что ее скачало тридцать человек. Впрочем, «пики» скачиваний приходятся на несколько дней сразу после выхода новой версии программы, когда информация об этом помещается редакторами сервера на главную страницу, просачивается во всевозможные рассылки и тому подобное.

Где лучше регистрировать программы? Мне больше всего нравятся три сервера — уже упомянутый выше softbox.ru, а также www.freesoft.ru и soft.mail.ru. С последним работать более приятно — там лучше реализован интерфейс управления вашей учетной записью. Быстрее версии обновлять :-). Перед регистрацией напишите себе текстовый файл с:

1. Описанием программы, два варианта — короткий и расширенный. Почти стопроцентная вероятность, что при регистрации понадобятся оба.

2. Прямые ссылки на сайт продукта, дистрибутив и скриншот.

3. Имя разработчика и адрес электронной почты.

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

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

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

Начинается feedback. Чем больше пользователей, тем больше поток писем. Они шлют письма и SMS'ки через почтовый шлюз. Лично я на SMS'ки от пользователей принципиально не отвечаю. Потому что считаю, что если у человека есть компьютер и e-mail, то он может послать обычное письмо, а не напрягать меня расшифровкой SMS'ки в транслите. Если пользователь вас не уважает — игнорируйте такого пользователя.

В процессе feedback'а вы столкнетесь с массой юзеров, которые очень четко делятся на категории. Я попытаюсь описать некоторые из них.

«Старая школа» — обычно это ученые и преподаватели. Если область их профессиональных знаний неким образом затрагивает программирование, то они могут достаточно внятно и подробно описать вам проблемы, с которыми столкнулись. Что, как, почему и после чего. С такими пользователями приятно общаться, если они не переходят на поучительный тон (чем выше ранг, тем больше проявляются эти нотки). Кроме того, «старая школа» всегда очень вежлива, и от них вы не получите записку, начинающуюся с фразы «здрасьте!»

«Профессионал-всезнайка». Сходу начинает давать советы по улучшению продукта, мало разбираясь в его специфике и, как оказывается впоследствии, в программировании вообще. Для всезнайки нет проблемы портирования программы из Delphi в Kylix. Всезнайка может посоветовать вам пользоваться другим компилятором — например, Visual C++ вместо FreePascal.

«Полный чайник». Похоже, впервые сел за компьютер. Непонятно, зачем ему ваша программа. Это непонятно ни вам, ни ему. Тем не менее он написал для вас целое послание. Вот чайник ассоциировал запуск вашего текстового редактора с bat-файлами. Теперь они не запускаются, а открываются в редакторе. Как изменить ассоциации файлов, чтобы все стало как было? Он в панике, пишет, что ему некого больше спросить! Кстати, такие «беды» происходят потому, что люди привыкли сначала делать, а потом думать, хотя разумнее бывает наоборот.

«Программист» — вот это кладезь идей и советов. Он правильно излагает суть проблемы, может дать вам полезные ссылки на какие-нибудь библиотеки, или сам поделится кодом или советом. Кстати, важно поддерживать связь с разработчиками конкурирующих продуктов. Что? У вас нет конкурентов? Приглянитесь внимательнее...

«Психопат» — увы, подобные люди в Сети не редкость. Лучше вообще игнорировать их послания. Впрочем, это может не помочь. Если психопат зациклится на вашей программе, он начнет выпускать к ней патчи, по его мнению, исправляющие продукт (например, назовет иначе пункты меню), или примется в крупных масштабах ругать вас и вашу программу на форумах тех же софтварных сайтов. Более того, после выхода каждой новой версии продукта вы можете получать от такого человека громадное письмо с желчными остротами по поводу новинок в программе. Выпустив текстовый редактор TEA, у которого несколько десятков тысяч постоянных юзеров, я впоследствии не раз (и не два) сталкивался с такими людьми.

«Студент». Обычно ему нужен совет по программированию или веб-дизайну. Ваш продукт — лишь повод для того, чтобы спросить вас, как делается подсветка синтаксиса, динамически создаются кнопки на тулбарах и тому подобное. Хотите — отвечайте, только не пишите за студентов курсовые. Пользователь может начать с вопроса помочь разобраться ему с таблицей в HTML, а затем попробует нагрузить вас предложением сделать ему главную страницу сайта. Это, кстати, случай из жизни. Вас могут еще, при этом рассыпаясь в хвалебных речах, попросить высылать по «мылу» новые версии вашей программы. Дескать, у пользователя что-то с Интернетом. Может, еще газетку свежую доставлять на дом? Пиво с орешками? Цианистый калий?

Наконец, последний тип — «Благодарный пользователь». Он искренне благодарит вас и часто рассказывает о том, как использует вашу программу. Иногда эти рассказы интересны, и вы можете спросить у юзера, не против ли он, если вы выложите его отзыв в соответствующей рубрике на своей сайте. Только не делайте это без его согласия и не публикуйте его e-mail. Последнее чревато тем, что адрес засветится и попадет в спамерские базы данных. А за это вам скажут спасибо разве что сами спамеры, но уж никак не пользователь.

Как следует реагировать на сообщения о глюках? Во-первых, узнать, к какой версии продукта относится сообщение. Может быть, вы уже исправили эту ошибку. Еще сделайте доступным список ошибок (баглист), чтобы пользователь мог прочесть его и не писать вам о том, что вы уже знаете. Впрочем, как показывает практика, пользователи сначала спрашивают вас, а потом уже читают документацию и F.A.Q. Второе — не отвечайте пользователю на манер «а у меня все работает нормально». Этот аргумент не абсолютен. Пользователь ведь не придумал глюк. Он его реально наблюдал. Значит, в его условиях, в его конфигурации системы такой глюк может проявляться. Попытайтесь выяснить подробнее обстоятельства возникновения глюка. Скажите пользователю, что попытаетесь разобраться и уведомите его об успехе. Надо же вселять надежду :-). Некоторые пользователи предлагают свою помощь — создание иконок, редактирование документации и так далее. К этому надо отнестись обдуманно. Поразмыслить над тем, захотите ли вы в будущем принимать эту помощь и насколько удобно будет попросить человека уйти из проекта, когда ваши взгляды на его развитие разойдутся.

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

Смерть

На самом деле программы не умирают. Они как книги — живут до тех пор, пока существует хоть один экземпляр. Учитывая факт, что прогу скопировать куда легче, чем бумажную книгу, можете быть уверены, что так просто убить свое детище вам не удастся. Во-первых, даже если вы удалите сайт проекта и свои аккаунты на software-серверах, всегда останутся «левые» ресурсы с дистрибутивами вашей программы. Сайты, CD-приложения к толстым журналам, винчестеры системных администраторов — да мало ли? После вашего отказа от развития продукта пользователи не перестанут писать письма еще год, как минимум.

Есть еще такой вариант — передать проект другому. Или другим. Сделать его open source, выложить на sourceforge.net, пусть кто-нибудь другой всем этим занимается. Если программа хорошая, то желающие найдутся. Можно «заморозить» проект, но это не избавит вас от хлопот. В случае самых радикальных мер, «замочить» проект надо с особой тщательностью. Удалить сайт, почтовый ящик, аккаунты на софтварных серверах. При этом может оказаться, что почтовый ящик вы использовали также и для других целей, не только для общения с юзерами, поэтому так быстро вам от него не избавиться. Видите, уже одна проблема. Вторая — на сервере может по какой-то причине не работать функция удаления аккаунта, а тамошний админ по случаю зимы впал в спячку и на вопросы не отвечает. Вот и будет ваша программа висеть на сайте еще неопределенное время. От одного часа до тысячи лет.

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

Рекомендуем ещё прочитать:






Данную страницу никто не комментировал. Вы можете стать первым.

Ваше имя:
Ваша почта:

RSS
Комментарий:
Введите символы или вычислите пример: *
captcha
Обновить





Хостинг на серверах в Украине, США и Германии. © sector.biz.ua 2006-2015 design by Vadim Popov