В этой статье я расскажу о том, как создавать и продавать shareware-программы
для мобильных аппаратов на базе Symbian. Все написанное основано на моем личном
опыте в построении малого бизнеса по разработке и продаже ПО для смартфонов, так
что, есть вероятность, что и у тебя все это получится :).

 

Что такое Shareware в разрезе мобильных технологий

Shareware – это прикладное программное обеспечение, которое создается группой
(или одним) разработчиком с целью извлечения прибыли от продажи лицензий
конечным пользователям (елы-палы, ну и определение. Прямо "нанес удар тупым
предметом с целью…" 🙂 – прим. ред.).

Не секрет, что большинство программистов пишут программы в той или иной
степени на заказ. Будь то заказ прямого работодателя, либо разовые заказы в
случае фриланса – все это работа по чужому ТЗ (если повезет), либо вообще по
чужому описанию, построенному по принципу "хочу кнопочку, которая всем делает
хорошо". В 99,99% случаев начинающие программисты вполне комфортно себя
чувствуют в таких условиях (особенно фрилансеры), но по прошествии времени
некоторые из них теряют интерес к разработке ПО, придуманного другими людьми и
концентрируются на воплощении своих собственных идей, надеясь при этом еще и
заработать. Можно писать целую книгу о том, как люди становятся производителями
Shareware, но, если обобщить, то к этому разработчиков подталкивают следующие
причины:

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

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

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

Может показаться, что процесс вывода продукта, скажем, для телефонов Nokia на
рынок сводится к схеме "Придумал-Реализовал-Начал продавать". Но на самом деле
все несколько сложнее. Далее я буду описывать процесс организации продажи своего
ПО с точки зрения разработчика под ОС Symbian. Повторюсь, предполагается, что ты
хочешь начать зарабатывать, продавая собственное ПО. Сразу могу сказать, что
заниматься этим в свободное от работы время не получится. Слишком много усилий
требуется приложить, чтобы добиться осязаемого результата. Если тебя это не
пугает, едем дальше.

 

Почему Symbian?

Выбор данной ОС в качестве target-платформы обуславливается исключительно
прагматическими соображениями. Как программист-одиночка ты не сможешь покрыть
все имеющиеся на данный момент на рынке платформы. Есть смысл сосредоточиться на
одной операционной системе. Symbian занимает лидирующее положение на рынке
смартфонов (более 50%), соответственно обеспечивает доступ к большей аудитории,
а, соответственно, к потенциально бОльшим доходам. Кроме того, из всех
существующих мобильных платформ только Symbian позволяет получить относительно
низкоуровневый доступ к функциям ОС и реализовать серьезный функционал,
использующий функции телефонии (отправка/прием SMS, перехват звонков, и так
далее). Если прибавить к этому огромное количество пользователей, то выбор и
вовсе очевиден. Тут стоит отметить, тем не менее, что писать под Symbian вначале
непросто, поскольку наработанные практики и парадигмы программирования,
применяющиеся при разработке под Windows, используются здесь в меньшей степени,
чем при разработке под Windows Mobile, например. Поэтому, даже если ты опытный
разработчик под Windows, Linux или Mac OS, тебе все равно придется потратить
довольно много времени на адаптацию к Symbian.

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

 

Процесс создания конкурентоспособного продукта

Если ты в совершенстве овладел технологиями разработки программного
обеспечения, то у меня есть плохие новости – это только начало. Из личного опыта
могу сказать, что непосредственно на разработку уходит максимум 30% времени.
Остальные 70% – это маркетинг, продумывание концепций продуктов, налаживание
связей с партнерами, работа со своим сайтом и сайтами-партнерами и так далее.
Важно хорошенько уяснить, что без качественно написанного кода и хорошо
продуманной архитектуры ПО, твой продукт не будет успешным. Но и выполнение этих
двух условий также не гарантирует, что он будет успешным, поскольку любой
продукт нужно продвигать. Так что тебе предстоит изучить на практике особенности
работы с клиентами, освоить маркетинговые приемы, а также научиться
договариваться с партнерами.

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

Итак, процесс вывода продукта на рынок в общем и целом соответствует схеме
"разработка – продвижение". Рассмотрим теперь более подробно эти этапы с точки
зрения Symbian-разработчика, занимающегося созданием прикладных утилит или игр.

 

Разработка ПО под Symbian

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

Данная ОС целиком и полностью построена на объектно-ориентированной
парадигме. Поэтому если ты слаб в ООП, то у тебя будут сложности с разбором
банального Hello World. Вывод – придется потратить время на прочтение
какой-нибудь хорошей книжки по с++, это сэкономит массу времени в будущем.

В процессе разработки тебе понадобится постоянный доступ к структурированной
информации. Несмотря на то, что крупнейший ресурс для разработчиков –
forum.nokia.com, позволяет
найти ответ на практически любой вопрос, я настоятельно рекомендую книгу "Developing
Series 60 Applications. A guide for Symbian OS C++ Developers", а также – все
книги издательства Symbian Press. Они написаны на понятном английском и по
ценности информации мало с чем сравнимы. Указанная книга, например, окупилась
мне десятикратно уже на следующий день после покупки. Не советую тратить время
на книги, доступные на русском языке – там дикий ад :). Вот и еще один аргумент
в пользу того, что с английским придется подружиться так же хорошо, как и с с++.

Тебе потребуется доступ к многочисленным устройствам на базе Symbian. Не
рассчитывай отделаться эмулятором и одним Nokia N97, например. В частности, у
каждого из семейств платформы S60 есть свои особенности, которые проявляются при
разработке программ, использующих функции телефонии, и которые невозможно
выявить без непосредственного тестирования на реальном аппарате. У меня,
например, около двадцати телефонов на базе S60, каждый из которых постоянно
используется при тестировании.

Специфическая среда разработки. Могу прямо сказать, что IDE, более убогую,
чем Carbide.C++ я не встречал никогда. По какой-то причине Nokia перестала
поддерживать Microsoft Visual Studio.NET. Кроме того, установка и настройка всех
необходимых SDK и утилит уже давно вошла в историю как один из самых болезненных
процессов во вселенной. Эмулятор же по-прежнему бесполезен в случае разработки
серьезных утилит, задействующих, собственно, функции телефона.

Symbian – специфическая система, поначалу она кажется чем-то очень
непривычным и неудобным, но это проходит по мере накопления опыта. Придется
изучить несколько ключевых концепций Symbian, которые будут для тебя совершенно
новыми, но избежать этого невозможно. Тем не менее, стремление к
мультиплатформенности начинает затрагивать и Symbian, что выражается в переносе
стандартных библиотек с/с++ (которые непонятно зачем там вообще нужны), а также
в популяризации технологии Qt. Qt – это очень хорошая инициатива, но важно
понимать, что она затрагивает исключительно UI. Поэтому разработчику системных
утилит все равно придется вернуться к Symbian с++.

Теперь представим, что ты планируешь написать программу, предназначенную для
фильтрации входящих звонков и сообщений. Такие программы, к слову, самые
востребованные пользователями – "черных списков" реализовано довольно много, и
тем не менее, их покупают. Так вот, функционал в подобную программу хочется
добавить самый разнообразный – это и блокирование звонков от контактов,
выбранных из заданной книги, и блокирование sms/mms, и возможность не
сбрасывать, а глушить вызовы, отклонение неизвестных или скрытых номеров,
переадресация, массу различных фильтров и так далее. Поскольку мы условились
считать, что ты делаешь все самостоятельно, то реализация всего этого
функционала в одном приложении займет много времени. Не стремись в первый же
релиз включить все желаемые функции, это приведет лишь к нестабильной работе
приложения, что может лишить тебя большой части потенциальных пользователей.
Лучше выбрать некоторые базовые функции и довести их до разумного совершенства,
после чего выпускать продукт на рынок. А потом уже по мере реализации добавлять
новые функции – это избавит тебя от массы проблем и привлечет лояльных
пользователей, видящих, что программа развивается, а не стоит на месте. Именно
по такой схеме я начинал продавать свой продукт Blacklist Mobile. Как результат
– это одно из наиболее популярных приложений, реализующих функционал черного
списка для Symbian.

 

Продажа ПО

Теперь самое интересное. Предположим, ты написал программу или игру, которая
готова к продаже. Назревают вопросы – а как пользователи будут ее оплачивать и
как защитить приложение от использования без оплаты? Схема покупки программы
через онлайн-магазины софта все еще возможна, но крайне неэффективна. Проблема в
том, что мобильный телефон независим от компьютера, поэтому попытка заставить
пользователя покупать программу для телефона через ПК приведет к резкому
уменьшению числа продаж. Следовательно необходимо предоставить клиентам
возможность покупки софта непосредственно с помощью мобильного телефона. Мне
повезло: я рано усвоил эту истину, и поэтому в первых релизах я реализовал
систему оплаты софта посредством отправки платных SMS на специально
зарегистрированный для этих целей короткий номер. Также был реализован механизм
триала – программой можно было пользоваться не более 30 дней, либо блокировать
не более 10 входящих событий. Причем пользователю не надо было самостоятельно
набирать текст регистрационного сообщения, программа все делала самостоятельно
при активации функции "Оплатить". Недостатком данного подхода являлась привязка
к конкретным операторам (МТС, Билайн и Мегафон), а соответственно, и к географии
распространения ПО.

Вполне логичным следующим шагом была бы реализация механизма ввода в
приложении данных кредитной карты, что позволяло бы оплачивать программу
пользователям кредиток по всему миру. Но мне удалось наткнуться на разработку от
финской компании Openbit, являющейся тем самым менеджером лицензий, который я
собирался реализовывать самостоятельно. Openbit License Manager позволяет не
только защитить программу от несанкционированного использования, но и оплачивать
приложение по всему миру как с помощью кредитных карт, так и с помощью premium
sms (у них заключены договора со 100 операторами), что сильно экономит время
разработчика. Единственный недостаток данного менеджера лицензий – дороговизна.
Его использование стоит 2500 евро в месяц плюс 10% от продаж. Поэтому окупаться
он будет, только если у тебя есть более одного успешного продукта. Впрочем, как
я уже писал, создание собственного менеджера лицензий также возможно.

В любом случае очень важно иметь функционал оплаты приложения непосредственно
из самого приложения – 95% пользователей отказываются от покупки программы, если
им необходимо для этого использовать компьютер. Не забывай об этом.

 

Продвижение ПО

Итак, у нас готов продукт, в него интегрирован механизм оплаты, дальше что?
Дальше нужно каким-то образом донести продукт до потребителя. Начать стоит,
понятно дело, с собственного сайта, который должен быть как минимум на двух
языках – русском и английском. Помимо описания программ и ссылок на закачку
неплохо бы там же сделать форум и регулярно проводить всякие акции вроде "В
честь новогодних праздников скидка 50% на все продукты!", это поможет привлечь
лояльную аудиторию.

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

Среди публичных сервисов по продаже мобильного ПО выделяется Ovi Store от
Nokia. Несомненным плюсом его для разработчика является то, что он
предустановлен во все современные смартфоны Nokia. Пользователь может загрузить
необходимый ему софт через встроенный в телефон каталог. Данный канал продаж
является обязательным для использования любым Symbian-разработчиком.

Среди отечественных интернет-магазинов ПО хотелось бы отдельно отметить
Softkey. Это, пожалуй, единственный отечественный интернет-магазин, реально
озабоченный повышением продаж, включая продажи софта для мобильных устройств. В
частности, примечательна совместная акция Softkey и Nokia: теперь в фирменных
салонах Nokia по всей РФ потребители могут купить не только телефон, но и сразу
установить в него мобильное ПО. На момент написания статьи в салонах Nokia
представлены и мои продукты, уровень продаж сопоставим с зарплатой выпускника
института в Москве. Согласись, неплохой бонус к основным продажам.

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

Описанные выше каналы распространения можно назвать традиционными. Как и все
традиционное, они обеспечивают прогнозируемый результат, который сложно назвать
выдающимся. Продажа ПО через интернет-магазины – это обязательный элемент
продвижения продукции, но что действительно приносит доход, так это
предустановка программ в большие партии мобильных устройств (так называемый
pre-loading). Делается это по договоренности с дистрибьютором телефонов или,
если очень повезет, с производителем. В крупную партию телефонов
предустанавливаются триальные версии твоих продуктов, что обеспечивает
внушительный денежный поток. С дистрибьюторами договариваться сложно и обычно
приходится работать через посредника. В моем случае мне удалось через Openbit
попасть в 50000 мобильных аппаратов в Великобритании. Повторюсь еще раз – все
зависит от твоих способностей и желания договариваться с партнерами. Как я уже
писал ранее, именно это – самая ответственная часть работы, отнимающая бОльшую
часть времени.

 

Стоит ли оно того?

Все зависит от того, чего ты ожидаешь. Разрабатывая и продавая свой софт
самостоятельно миллионером стать вряд ли возможно. А вот обеспечить себе
адекватный доход и получить при этом возможность реализовывать свои собственные
идеи и самостоятельно распоряжаться своим временем – да. Я, например, очень
комфортно себя чувствую в качестве независимого разработчика и с ужасом
вспоминаю те времена, когда сидел в офисе и выполнял задачи, поставленные мне
офисным планктоном более высокого ранга.

Другое дело, что многим программистам интересно заниматься исключительно
программированием, а весь этот маркетинг и продвижение им чуждо. Мне повезло,
что как раз последнее вызывает у меня много больший интерес, чем разработка, так
что проблем нет. А вот если тебе интересна только разработка, то есть смысл уйти
под крыло компании, которая профессионально занимается продвижением ПО, забирая
себе определенный процент от прибыли. Обычно у таких компаний уже выстроены все
цепочки продаж и имеется внушительная база клиентов. В частности этим занимается
SBSH Software. Они берут продукт и
продают его через свои каналы, забирая 30% от прибыли. При этом ты по-прежнему
сам занимаешься разработкой и формированием концепции продукта, не заботясь ни о
чем кроме этого. Тем не менее, у этой и у других аналогичных компаний есть
проблемы, сужающие круг потенциальных пользователей. Я имел опыт работы с ними,
но в итоге от сотрудничества отказался, поскольку после перевода одного из
продуктов к ним уровень его продаж не изменился.

 

Что насчет остальных платформ?

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

Windows Mobile – под эту платформу написано больше всего софта,
поскольку принципы и методы разработки под нее мало чем отличаются от разработки
под настольную Windows. Поэтому разработчики накинулись на WM, применяя
накопленные знания. Данная ОС с каждым годом теряет позиции на рынке и, я
надеюсь, скоро окончательно исчезнет (по-моему, очень зря надеешься – прим.
ред.). Поэтому я бы не советовал тратить на нее время.

iPhone – после Symbian вторая, на мой взгляд, по перспективности
платформа, отличающаяся очень четко определенной схемой дистрибьюции ПО – это
возможно только через AppStore (не надо мне говорить про jailbreak – этим
занимаются только студенты 1-3 курсов в РФ), которая является как плюсом, так и
минусом данной платформы с точки зрения разработчика. Минус в том, что уровень
продаж софта через него сложно прогнозируем и сильно зависит от обстоятельств.

Android – потенциал этой платформы на мой взгляд очень сильно,
переоценен. Да, смотрится красиво, но это единственное, чем данная платформа на
данный момент выигрывает у Symbian. После выхода Symbian^4 различия в интерфейсе
будут минимизированы, а вот функциональная мощь Symbian останется. Да и среда,
базирующаяся на Java, тоже не вызывает энтузиазма у серьезных разработчиков.

Blackberry – относительно узкий рынок и, опять же, Java. То есть,
писать игры получится, а системные утилиты – нет.

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

Java2ME – идеальный вариант для разработчика простых игр. Для всех
остальных – бесполезная технология.

Любая более-менее крупная софтверная компания, занимающаяся разработкой ПО
для мобильных устройств, обязана стараться освоить как минимум три из этих
платформ. Если же ты одиночка, то выбери одну и не распыляй свои силы.

 

Заключение

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

Оставить мнение

Check Also

Используй, свободно! Как работает уязвимость use-after-free в почтовике Exim

В самом популярном на сегодняшний день почтовом сервере Exim был обнаружен опасный баг: ес…