Данная заметка является вольным переводом статьи All the Apps Have Been Written на тему страхов, с которыми сталкиваются начинающие разработчики программного обеспечения.

Все сколько-нибудь продаваемые приложения уже давно написаны.

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

Само собой, все эти вопросы я задавал себе в 1982 году, когда занимался контрактной разработкой приложений для Apple II, CP/M, и набиравших популярность PC на основе DOS. На рынке в то время уже было несколько приложений для работы с текстами, электронными таблицами и базами данных. Люди редко покупали компьютеры для развлечения, им всегда нужно было обосновывать такие большие затраты.

Я убедил себя, что я не смогу зарабатывать достаточно денег на рынке коробочных приложений1 из-за отсутствия достаточного количества покупателей. Я был обречен заниматься контрактной разработкой до конца своей жизни. Если бы только я начал работу на два года раньше, до того, как все хорошие программы были написаны.

Оглядываясь назад, я понимаю, как я был глуп. Я позволил своему страху затуманить мой разум. В то время было достаточно места для множества идей новых приложений, а существующие приложения были недостаточно хороши, чтобы не бояться конкуренции. В то время dBase был самым популярным инструментом для работы с базами данных и я неплохо зарабатывал написанием приложений для него. По правде говоря это был тот еще кусок гуано и я написал свое собственное приложение для работы с базами данных с помощью Aztec - надежного компилятора Си, и мое приложение было во многих отношениях лучше. Мне даже и в голову не приходило, что я могу его продавать. Я был просто парнем, которой не мог себе позволить собственный компьютер до выхода Mac в 1984 году.

В начале 80-х существовало не больше сотни популярных приложений. Безусловном, дистрибуция приложений тогда была гораздо сложнее, чем сейчас, однако, не это останавливало меня. Больше всего я боялся быть отвергнутым пользователями. Что если я потрачу время на написание программы - так это называлось до прихода слова “приложение”, - которую никто не будет покупать? Сможет ли мое чувствительное эго это пережить? И как быть со зря потраченным временем? Мне нужно было зарабатывать деньги и быть ответственным взрослым человеком.

Хотел бы я отправиться назад в прошлое, в момент, когда мне было 20 лет, и дать себе хорошего подзатыльника2.

Возвращаясь к сегодняшнему дню, я часто слышу подобные комментарии от других разработчиков. Они видят App Store’ы с сотнями и тысячами приложений и беспомощно разводят руками. Довольно сложно уследить за растущими цифрами. Приложению ничего не стоит затеряться в бесчисленном множестве других приложений в Apple App Store.

Не обращайте внимание на все это. Игнорируйте страх. Игнорируйте препятствия. Игнорируйте скептиков. Найдите свою страсть.

Что общего у страсти с успехом? Все. Наиболее успешные люди всегда были страстно увлечены. Они были противоречивы, ошибались, за ними тянулся след из неудач, но их страсть заставляла их двигаться дальше.

Недавно во время интервью для App Camp For Girls я дал совет: “Найдите в своей жизни что-то, что сломано, и напишите приложение, чтобы починить это”. Лучшее приложение персонально. Это что-то, что нужно именно Вам. Оно решает Вашу проблему и делает Вас счастливее.

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

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

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

Но если разработка приложения - это нечто личное, то Ваша мотивация растет изнутри. Зарабатывание денег становится вторичной целью. Когда я начинал No Thirst Software в 2006 году, я начал с разработки Debt Quencher - приложения для снижения долгов по кредитным картам. Почему? Потому что на тот момент мой долг по кредиткам составляет порядка 80 000 долларов, а разработчик приложения, которым я пользовался, исчез в неизвестном направлении вместе со своим приложением.

Это было очень личным делом. Я страдал, и я знал, что должны быть люди, которые тоже страдают. Я не мог быть единственным парнем с Маком, который пытается расплатиться по долгам по кредиткам.

После выпуска Debt Quencher, я спросил себя, какие еще приложения мне хотелось бы иметь, какие приложения заставляли меня страдать? Quicken. Сперва я пытался заменить его другими существовавшими на тот момент приложениями для Мака, но ни одно из них мне не подошло. В каждом из них было что-то раздражающее. Кроме того, большая часть из них управляла бюджетом так, что в конечном итоге я оказывался в долгах на суммы в десятки тысяч долларов. Все они мне не нравились.

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

После проведенного мною исследования, я был уверен, что я не единственный, кто недоволен положением дел с приложениями по учету персональных финансов для Мака. Сколько людей страдало так же, как я? Если я могу избавить себя от этих страданий, почему бы не избавить и всех остальных?

Потребовалось десять месяцев для того, чтобы спроектировать, получить финансирование и выпустить версию 1.0. За эти месяцы я десятки раз чувствовал себя дураком, а также страдал от недостатка знаний в Cocoa для того, чтобы завершить MoneyWell. Я уверен, что моя жена исчерпала все свои силы, поддерживая меня все это время. Чертовски хорошо, что я сделал это личным делом.

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

За семь лет с начала этого путешествия, мне пришлось бороться с разными невероятными препятствиями. Технологии не стоят на месте, что означает, что мне нужно переосмысливать и переписывать мои приложения. За эти годы я сделал столько ошибок и столько раз должен был быть до конца честен с собой, что, к моему удивлению, потерял всяческое эго. Моим самым сильным мотиватором была моя связь с моими приложениями. Поскольку они были неотъемлемой частью моей жизни, я мог продолжать работу над их кодом. Если бы моим мотиватором было что-то внешнее, я бы уже давно забросил все это.

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

Что Вас беспокоит? Какие приложения, используемые Вами сегодня, раздражают Вас? Каким приложениями чего-то не хватает, каких приложений нет для Вашего любимого устройства (например, для iPad)? Сделайте список. Выберите самые личные проблемы и загрузите Xcode. Поверьте мне, тысячи приложений все еще ждут своего часа, чтобы быть написанными.

Разработчик, помоги себе сам.

Удачи.

1 До появления App Store’ов программное обеспечение продавалось запакованным в коробки и выставленным на полки компьютерных магазинов.

2 Фанатам сериала “Морская полиция: Спецотдел” сюда.