В книжном магазине попалась мне на глаза книга «Программирование для iPhone/iPad» и, будучи человеком любознательным, я решил попробовать. Купил книгу, MacBook Air (iPad у меня тогда уже был), установил XCode и начал с примеров из книги. Когда я получил общее представление о том, как что работает, мне захотелось сделать что-то полезное. Так как для программиста очень полезным, или скорее даже необходимым, является знание английского языка, я решил создать такое приложение.
Сразу на ум пришла программа для изучения английского языка еще времен Windows 98 под названием Triple Play Plus. В ней совсем нет перевода и много самых необходимых слов и выражений, которые предлагается запоминать с помощью картинок и простых, увлекательных игр. Мои дети, когда были еще школьниками, очень любили в нее играть и выучили много слов и выражений, которые были нам очень полезны в заграничных поездках.
Программа так и просилась на планшет, и я с энтузиазмом приступил к ее созданию. Но столкнувшись с суровой реальностью, я понял, насколько мало еще у меня знаний и опыта, а также какой чудовищный объем работы меня ждет. Это было просто нереально, и я, сделав всего один экран, оставил эту идею. Создавать разные калькуляторы или плееры из уроков программирования было совсем неинтересно и я забросил это дело надолго.
Прошло три года
В августе 2012 года мы с женой улетели в Таиланд, решив провести там всю зиму. Чтобы не бездельничать все это время, записались на курсы английского языка, уровень которого у нас в то время был как у большинства наших соотечественников, то есть ноль. Надо отдать должное нашим преподавателям Энжи англичанке и Джону американцу, а также авторам методики Direct Method, за первый же месяц мы запомнили и научились произносить немыслимое количество слов и выражений. Но выходя на улицу, где очень много американцев и британцев пытаясь говорить с ними мы понимали, что ничего не понимали и уж тем более не могли ничего им объяснить.
Копилось стеснение, скованность, неуверенность. С этим нужно было что-то делать. Одна знакомая посоветовала посмотреть передачу «Полиглот» Дмитрия Петрова и скачать приложение-тренажер. Посмотрели, скачали, потренировались — выходим на улицу — не можем говорить, язык во рту как каменный. Чувствую, что нужно тренировать речь, разрабатывать язык, но с кем? Кто сможет долго слушать мои невнятные мычания, и как я пойму понятно я сказал или нет? Решение очевидно:
Говорить нужно с устройством
Во первых, нет стеснения и боязни говорить. Во вторых, можно мучить его сколько угодно, пока не надоест. И самое главное — уверенность, что говоришь понятно. Если тебя понимает устройство с распознаванием речи, то уж люди тем более поймут.
Погуглив немножко, обнаружил библиотеку распознавания английской речи для iOS и демонстрационное приложение с открытым кодом. Снова энтузиазм! Достал запылившийся MacBook, скачал пример, поиграл с ним чтобы разобраться в коде что за что отвечает, переименовал в Polyglot Sound и начал переделывать его под голосовой тренажер по Полиглоту.
Примерно в течении недели методом проб, ошибок и художественного тыка, работая по 12—15 часов в сутки, я создал рабочий прототип, который можно было использовать для тренировки. Нужно было лишь заполнить его русскими фразами и звуковыми дорожками и соответствующими им английскими. Фразы я нашел частично в интернете, частично из приложения по Полиглоту, по которому занимался раньше.
Примерно в течение месяца — двух я заполнял приложение фразами урок за уроком и одновременно тестировал-тренировался. Тренировалась и жена. За это время мы с ней так разработали мышцы языка и связанные с ним, что на курсах вышли в лидеры, а на улице моя доселе более чем скромная супруга, которая даже стеснялась спросить что-нибудь в магазине, вовсю болтала и по-моему флиртовала с американцами.
Такого эффекта я не ожидал и, не обнаружив ничего подобного в App Store, решил подготовить и выложить туда мое первое приложение. Я и не думал тогда, что это потребует от меня больше времени и сил, чем освоение английского языка.
Тернистый путь в App Store для начинающего разработчика
Самое трудное, на что я наткнулся, — это дизайн. Всем известно как внимательно в Apple относятся к дизайну приложений, поэтому певый вариант моего приложения с топорным, остроугольным оформлением тут же был отвергнут цензорами. Впрочем второй и третий и четвертый и пятый… ждала та же участь. Пришлось подойти основательно, освоить фотошоп, купить программку, позволяющую рисовать с помощью кода Objective C, разработать концепцию, выбрать фон, обляпать его полупрозрачными облачками с подсказками. Сами понимаете как это непросто для человека, делающего все это в первый раз. Ушло много времени и сил, приняли мою работу уже когда мы вернулись в Россию, то есть чуть меньше, чем через год. Зато до сих пор я смотрю на мое первое приложение, и оно мне нравится. Спасибо модераторам Apple (как я их материл!) что добились от меня таких результатов.
Лаконично, ничего лишнего, полностью голосовое управление и всего одна кнопка — все как я люблю. Получив зеленый свет в App Store, я установил цену в 4 доллара и занялся подготовкой к релизу бесплатной лайт-версии приложения, содержащей только первый урок, резонно полагая, что «кто купит кота в мешке? Нужно дать людям попробовать». Каково же было мое удивление, когда через месяц я увидел на своем счете около 300 долларов. Как выяснилось потом, в то время передача Полиглот имела огромный успех, очень большое количество желающих скачать приложения и малое количество конкурентов в App Store. Сейчас уже все не так радужно: мое приложение скатилось вниз, продаж мало, в App Store очень много приложений по Полиглоту, хотя голосовой тренажер по-прежнему единственный, мой Polyglot Sound.
Direct Method
Если умение не думая выдавать грамотно построенные английские фразы — это заслуга приложения Polyglot Sound, то словарный запас, идиомы, умение читать, писать и глубокое знание грамматики (да, английскую грамматику реально выучить до конца, в отличии от русской) — это заслуга Direct Method, по которому мы занимались в Таиланде. И следующим моим приложением стало Direct English. В нем я постарался максимально имитировать реальный курс с носителем языка. Три книги, около ста уроков, своя картинка почти к каждому слову или фразе, 38 диктантов, год ежедневной работы, просто огромный объем материала, и по-моему мне это удалось.
Приложение очень простое в использовании, оно не дает пользователю никакого выбора: читать — значит читать, диктант — значит диктант. Все как на курсах. Единственное, что может выбрать пользователь, это голос (американский, британский или австралийский) и темп речи.
Возвращение к заброшенному
Имея уже некоторый опыт, по прошествии четырех лет, я вернулся к идее разработки приложения по программе Triple Play Plus. Открыв заброшенный проект, я ужаснулся, улыбнулся, удалил его и начал новый, назвав его Play English. Я сделал даже больше, чем было в оригинале, добавил прилагательные наречия и глаголы, формы неправильных глаголов в игре Бинго усваивались легко и незаметно, добавил тенажер произношения, диктанты грамматические задания по Полиглоту. Получилось самое объемное из моих приложений, зато оно давало возможность практически с нуля начать изучение английского языка человеку любой национальности и добиться приемлемого уровня для начала языковой практики.
Заключение
В заключении хотелось бы сказать, что научиться разработке мобильных приложений можно и без специального образования, если есть идея, которая способна вас увлечь. Хотя, оглядываясь назад, я не сказал бы, что это легко. Попутно я выяснил, что учиться нужно исключительно на практике, будь то иностранный язык или создание мобильных приложений. В первом случае нужно просто начать говорить, во втором — начать программировать. Надеюсь, что моя статья будет кому-нибудь полезной. Спасибо.
Комментарии (28)
OlegTar
24.07.2015 14:57+2Рад, что люди развиваются. Не остановились в развитии даже в приличном возрасте. Такие статьи мотивируют.
cashby
24.07.2015 15:06Идея первой программы (с распознаванием) очень понравилась. На android никто подобного не встречал?
Elis767 Автор
24.07.2015 16:33Пока пытаюсь освоить андроид, возможно скоро будет. На сколько мне известно на андроиде тоже нет аналогов. Если кто увидит киньте ссылку пожалуйста, может и не стоит мне начинать.
cepro
24.07.2015 23:51Полиглот
Только что-то эта прграмма не очень. Простенько как-то все…
Но идея очень правильная. Очень нужно качественное ПО, при помощи которого можно прокачивать разговорный навык. Постарайтесь, пожалуйста, сделать свой варинат. С вашим опытом, уверен, программа получиться намного лучше этой.
Как можно будет узнать если вы сделаете свое приложение под Андроид?
Goodkat
25.07.2015 03:34Очень нужно качественное ПО, при помощи которого можно прокачивать разговорный навык.
Сложно оценивать качественность, но мобильное приложение и первый бесплатный урок выглядят прилично, это один из самых известных производителей ПО для обучения иностранным языкам: www.rosettastone.com/mobile-apps
P.S. К тому же, обещают money back в течение 30 дней.
KirillOnline
24.07.2015 16:42+1Очень мотивирующая статья, Евгений, спасибо!
А промо-коды вы не раздаете читателям :-)?
dimanonim
25.07.2015 10:10+1Я буду обновлять комментарии.
Я буду обновлять комментарии.
Я буду обновлять комментарии.
InstaRobot
25.07.2015 14:41+2Аплодирую стоя! Хоть мне и не особо требуется английский, технического варианта вполне достаточно, чтобы читать документацию по языку, но когда то давно я оставлял коммент, порог входа по возрасту для программирования… Люди спрашивали в каком возрасте можно начать заниматься программированием. Я ответил, что главное цель и правильно подобранная планка достижения результата. Мне самому 36 лет, занимаюсь кодингом достаточно активно и постоянно развиваюсь (на данном этапе: node.js)! Знаю: Pascal, Objective-C, MQL, SQL, Unix, AppleScript, немного PHP ну и по мелочи достаточно много навыков!
Так вот, я не обучался программированию, я кодер, который просто просто любит код и что то создавать… А Вы — лишь утвердили мое предположение, что кодингу все возрасты покорны!
Единственное, что мозг уже не так быстро усваивает новое, но если его тренировать, то все нормально!
Успехов Вам! Сейчас попробую связаться с Вами лично).Bringoff
27.07.2015 18:44-1<offtop>
Да простят меня взрослые дяди, но, кажется, это общая черта многих мужчин в районе кризиса среднего возраста — писать в комментариях к чему бы то ни было длинные, развернутые, но не совсем по теме, мысли :)</offtop>
InstaRobot
27.07.2015 19:24Когда кажется, люди крестятся или что там по текущей вере…
А не по теме? Ну так попробуйте внимательно прочесть эту самую тему, может все уложится с определенный смысл. Я комментировал возраст и достижение результата, насчет же кризиса среднего возраста — он меня миновал. Желаю Вам, когда Вам будет как этому «дяде» 49 лет, также активно кодить и добиваться поставленных целей. ) Ну или как мне 36! Содержание данной статьи Вы вряд ли конечно помнить будете, но уж точно поймете, что я имел ввиду в своем комментарии! Там вдруг окажется, что и скорость мысли уже не та и дети отвлекают, ну или еще что. А пока Вам — 18 лет от роду и все только начинается.
dyadyaSerezha
27.07.2015 17:43+2Не раскрыта тема супруги — чем закончился ее флирт с американцами? Мы же переживаем. :)
Elis767 Автор
27.07.2015 19:48+1Флирт был жестко пресечён на корню:) Жена была отправлена на кухню варить Том Ям (тайский аналог борща)
dyadyaSerezha
28.07.2015 02:47Аналог борща?? Это последнее сравнение, которое могло бы прийти в мою голову)
owod
30.07.2015 17:53Я вот сейчас пытаюсь проделать тот же самый трюк, что и вы шесть лет назад. Не подскажете авторов книги, что вам помогла? Хватило ли одной книги для того, чтобы разобраться с программированием под айос или кто-то знающий помогал советом?
owod
30.07.2015 17:59Прочитал текст целиком и понял, что вам помогли усидчивость и упорство :) Этого из книг не нахватаешься…
InstaRobot
01.08.2015 13:03-1А книги Вам нужны на русском или английском? А то на русском мало нормального, но на английском их достаточно много. И кроме книг, есть куча толковых ресурсов.
Из авторов: Аарон Хиллеганс, Стивен Кочан, Скотт Кнастер, Вакар Малик, Марк Далримпл, Джек Наттинг, Метт Нойбург, Вандад Навахандипур.
Из онлайн обучения можно пошукать на ИНТУИТ, у них была пара толковых курсов по Объектному С, особенно легко и полезно будет с Глебом Тарасовым. Можно посмотреть в СПЕЦИАЛИСТ онлайн-обчучение, смотрите курсы Виктора Щербакова. В Контакте есть группа Алексея Скутеренко, многие через нее проходили.owod
01.08.2015 13:48Спасибо за советы. Буду продолжать копать. Язык не принципиален, думаю. Одинаково легко читаю и на английском и на русском.
Elis767 Автор
05.08.2015 08:28Ту книгу я так и не дочитал до конца, хватило нескольких первых глав. Мне было неинтересно создавать банальные калькуляторы или плееры из уроков. Я сразу делал то, что мне было интересно. Когда интересно не нужно себя заставлять. Я брал готовые рабочие куски кода, из примеров и встраивал их в свои проекты, особо не разбираясь в них если они работали. И только в случае возникновения проблем углублялся в детали кода, читал новые уроки и как правило находил решение. Наверное при таком подходе не станешь сразу классным программистом, но цель будет достигнута максимально быстро.
chuikoffru
Спасибо за статью, жаль конечно у вас нашлись деньги на Макбук, но не нашлось несколько сотен баксов на хороший дизайн-интерфейс (выполненный на фрилансе например). Программы и задумки более чем достойные, тема всегда будет актуальная. Еще раз спасибо за старания.
Elis767 Автор
Да, с дизайном как-то не сложилось. Обращался на фриланс, кто-то даже соглашался, потом пропал… Я подумал, что не судьба. Для меня функционал был на первом месте. Возможно займусь еще, если позволит время. Спасибо за поддержку.