Пользователь
0,0
рейтинг
24 июля 2015 в 13:00

Разработка → Как я учил английский и программирование одновременно из песочницы

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

В книжном магазине попалась мне на глаза книга «Программирование для iPhone/iPad» и, будучи человеком любознательным, я решил попробовать. Купил книгу, MacBook Air (iPad у меня тогда уже был), установил XCode и начал с примеров из книги. Когда я получил общее представление о том, как что работает, мне захотелось сделать что-то полезное. Так как для программиста очень полезным, или скорее даже необходимым, является знание английского языка, я решил создать такое приложение.

Сразу на ум пришла программа для изучения английского языка еще времен Windows 98 под названием Triple Play Plus. В ней совсем нет перевода и много самых необходимых слов и выражений, которые предлагается запоминать с помощью картинок и простых, увлекательных игр. Мои дети, когда были еще школьниками, очень любили в нее играть и выучили много слов и выражений, которые были нам очень полезны в заграничных поездках.

image

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

Прошло три года


В августе 2012 года мы с женой улетели в Таиланд, решив провести там всю зиму. Чтобы не бездельничать все это время, записались на курсы английского языка, уровень которого у нас в то время был как у большинства наших соотечественников, то есть ноль. Надо отдать должное нашим преподавателям Энжи англичанке и Джону американцу, а также авторам методики Direct Method, за первый же месяц мы запомнили и научились произносить немыслимое количество слов и выражений. Но выходя на улицу, где очень много американцев и британцев пытаясь говорить с ними мы понимали, что ничего не понимали и уж тем более не могли ничего им объяснить.

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

Говорить нужно с устройством


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

Погуглив немножко, обнаружил библиотеку распознавания английской речи для iOS и демонстрационное приложение с открытым кодом. Снова энтузиазм! Достал запылившийся MacBook, скачал пример, поиграл с ним чтобы разобраться в коде что за что отвечает, переименовал в Polyglot Sound и начал переделывать его под голосовой тренажер по Полиглоту.

Примерно в течении недели методом проб, ошибок и художественного тыка, работая по 12—15 часов в сутки, я создал рабочий прототип, который можно было использовать для тренировки. Нужно было лишь заполнить его русскими фразами и звуковыми дорожками и соответствующими им английскими. Фразы я нашел частично в интернете, частично из приложения по Полиглоту, по которому занимался раньше.

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

Такого эффекта я не ожидал и, не обнаружив ничего подобного в App Store, решил подготовить и выложить туда мое первое приложение. Я и не думал тогда, что это потребует от меня больше времени и сил, чем освоение английского языка.

Тернистый путь в App Store для начинающего разработчика


Самое трудное, на что я наткнулся, — это дизайн. Всем известно как внимательно в Apple относятся к дизайну приложений, поэтому певый вариант моего приложения с топорным, остроугольным оформлением тут же был отвергнут цензорами. Впрочем второй и третий и четвертый и пятый… ждала та же участь. Пришлось подойти основательно, освоить фотошоп, купить программку, позволяющую рисовать с помощью кода Objective C, разработать концепцию, выбрать фон, обляпать его полупрозрачными облачками с подсказками. Сами понимаете как это непросто для человека, делающего все это в первый раз. Ушло много времени и сил, приняли мою работу уже когда мы вернулись в Россию, то есть чуть меньше, чем через год. Зато до сих пор я смотрю на мое первое приложение, и оно мне нравится. Спасибо модераторам Apple (как я их материл!) что добились от меня таких результатов.

image

Лаконично, ничего лишнего, полностью голосовое управление и всего одна кнопка — все как я люблю. Получив зеленый свет в App Store, я установил цену в 4 доллара и занялся подготовкой к релизу бесплатной лайт-версии приложения, содержащей только первый урок, резонно полагая, что «кто купит кота в мешке? Нужно дать людям попробовать». Каково же было мое удивление, когда через месяц я увидел на своем счете около 300 долларов. Как выяснилось потом, в то время передача Полиглот имела огромный успех, очень большое количество желающих скачать приложения и малое количество конкурентов в App Store. Сейчас уже все не так радужно: мое приложение скатилось вниз, продаж мало, в App Store очень много приложений по Полиглоту, хотя голосовой тренажер по-прежнему единственный, мой Polyglot Sound.

Direct Method


Если умение не думая выдавать грамотно построенные английские фразы — это заслуга приложения Polyglot Sound, то словарный запас, идиомы, умение читать, писать и глубокое знание грамматики (да, английскую грамматику реально выучить до конца, в отличии от русской) — это заслуга Direct Method, по которому мы занимались в Таиланде. И следующим моим приложением стало Direct English. В нем я постарался максимально имитировать реальный курс с носителем языка. Три книги, около ста уроков, своя картинка почти к каждому слову или фразе, 38 диктантов, год ежедневной работы, просто огромный объем материала, и по-моему мне это удалось.

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

image

Возвращение к заброшенному


Имея уже некоторый опыт, по прошествии четырех лет, я вернулся к идее разработки приложения по программе Triple Play Plus. Открыв заброшенный проект, я ужаснулся, улыбнулся, удалил его и начал новый, назвав его Play English. Я сделал даже больше, чем было в оригинале, добавил прилагательные наречия и глаголы, формы неправильных глаголов в игре Бинго усваивались легко и незаметно, добавил тенажер произношения, диктанты грамматические задания по Полиглоту. Получилось самое объемное из моих приложений, зато оно давало возможность практически с нуля начать изучение английского языка человеку любой национальности и добиться приемлемого уровня для начала языковой практики.

image

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

Заключение


В заключении хотелось бы сказать, что научиться разработке мобильных приложений можно и без специального образования, если есть идея, которая способна вас увлечь. Хотя, оглядываясь назад, я не сказал бы, что это легко. Попутно я выяснил, что учиться нужно исключительно на практике, будь то иностранный язык или создание мобильных приложений. В первом случае нужно просто начать говорить, во втором — начать программировать. Надеюсь, что моя статья будет кому-нибудь полезной. Спасибо.
Евгений Лисин @Elis767
карма
19,0
рейтинг 0,0
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Спецпроект

Самое читаемое Разработка

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

  • +8
    Спасибо за статью, жаль конечно у вас нашлись деньги на Макбук, но не нашлось несколько сотен баксов на хороший дизайн-интерфейс (выполненный на фрилансе например). Программы и задумки более чем достойные, тема всегда будет актуальная. Еще раз спасибо за старания.
    • +2
      Да, с дизайном как-то не сложилось. Обращался на фриланс, кто-то даже соглашался, потом пропал… Я подумал, что не судьба. Для меня функционал был на первом месте. Возможно займусь еще, если позволит время. Спасибо за поддержку.
  • +2
    Рад, что люди развиваются. Не остановились в развитии даже в приличном возрасте. Такие статьи мотивируют.
  • 0
    Идея первой программы (с распознаванием) очень понравилась. На android никто подобного не встречал?
    • 0
      Пока пытаюсь освоить андроид, возможно скоро будет. На сколько мне известно на андроиде тоже нет аналогов. Если кто увидит киньте ссылку пожалуйста, может и не стоит мне начинать.
      • 0
        Полиглот
        Только что-то эта прграмма не очень. Простенько как-то все…
        Но идея очень правильная. Очень нужно качественное ПО, при помощи которого можно прокачивать разговорный навык. Постарайтесь, пожалуйста, сделать свой варинат. С вашим опытом, уверен, программа получиться намного лучше этой.

        Как можно будет узнать если вы сделаете свое приложение под Андроид?

        • 0
          Очень нужно качественное ПО, при помощи которого можно прокачивать разговорный навык.
          Сложно оценивать качественность, но мобильное приложение и первый бесплатный урок выглядят прилично, это один из самых известных производителей ПО для обучения иностранным языкам: www.rosettastone.com/mobile-apps

          P.S. К тому же, обещают money back в течение 30 дней.
        • 0
          Постараюсь. Здесь напишу как будет готово.
      • 0
        duo lingo частично
    • 0
      English for travel есть
  • +1
    Очень мотивирующая статья, Евгений, спасибо!

    А промо-коды вы не раздаете читателям :-)?

  • 0
    Вы идол ) уважаю таких людей которые мотивируют на все возможное
    • +1
      Хоть это слишком, спасибо. Рад если чем-то помог.
  • +1
    Здорово, мотивирует и вызывает уважение
  • +1
    Я буду обновлять комментарии.
    Я буду обновлять комментарии.
    Я буду обновлять комментарии.
  • НЛО прилетело и опубликовало эту надпись здесь
    • –1
      <offtop>Да простят меня взрослые дяди, но, кажется, это общая черта многих мужчин в районе кризиса среднего возраста — писать в комментариях к чему бы то ни было длинные, развернутые, но не совсем по теме, мысли :) </offtop>
      • НЛО прилетело и опубликовало эту надпись здесь
  • +2
    Не раскрыта тема супруги — чем закончился ее флирт с американцами? Мы же переживаем. :)
    • +1
      Флирт был жестко пресечён на корню:) Жена была отправлена на кухню варить Том Ям (тайский аналог борща)
      • 0
        Аналог борща?? Это последнее сравнение, которое могло бы прийти в мою голову)
        • 0
          Аналог не вкусовой, конечно, а в смысле «Иди домой, борщ вари»)))
  • 0
    Я вот сейчас пытаюсь проделать тот же самый трюк, что и вы шесть лет назад. Не подскажете авторов книги, что вам помогла? Хватило ли одной книги для того, чтобы разобраться с программированием под айос или кто-то знающий помогал советом?
    • 0
      Прочитал текст целиком и понял, что вам помогли усидчивость и упорство :) Этого из книг не нахватаешься…
    • НЛО прилетело и опубликовало эту надпись здесь
      • 0
        Спасибо за советы. Буду продолжать копать. Язык не принципиален, думаю. Одинаково легко читаю и на английском и на русском.
    • 0
      Ту книгу я так и не дочитал до конца, хватило нескольких первых глав. Мне было неинтересно создавать банальные калькуляторы или плееры из уроков. Я сразу делал то, что мне было интересно. Когда интересно не нужно себя заставлять. Я брал готовые рабочие куски кода, из примеров и встраивал их в свои проекты, особо не разбираясь в них если они работали. И только в случае возникновения проблем углублялся в детали кода, читал новые уроки и как правило находил решение. Наверное при таком подходе не станешь сразу классным программистом, но цель будет достигнута максимально быстро.

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