Первые 20 часов. Как быстро научиться… чему угодно
Шрифт:
Применение метода
Давайте кратко опишем суть метода, который я использовал для обучения программированию.
Я потратил время на получение общих представлений о программировании и интернет-приложениях, затем разбил эти навыки на более простые элементы, которые проще понять и которым легче научиться.
Я определил целевой уровень мастерства, выбрав два конкретных проекта, а затем описал, как будет выглядеть конечный результат в каждом из них.
Я разбил эти проекты на более мелкие этапы, а затем выделил из них самые значимые.
Я убедился,
Я нашел несколько надежных источников информации о программировании, но не стал читать заранее приобретенные учебные пособия, а решил сразу приступить к решению реальной задачи.
Сначала я работал над самыми важными элементами, например выяснил, как протестировать программу на своем компьютере, как разместить готовое приложение на рабочем сервере и тому подобное.
Я использовал примеры из справочных пособий, чтобы приступить к делу и приобрести некоторую уверенность, затем пробовал разные подходы, выясняя, как запрограммировать нужные мне функции.
Если я что-то делал неправильно, программа прекращала работу, выдавая мне сообщение об ошибке, что обеспечивало быструю обратную связь.
Сделав ошибку, я пробовал несколько способов ее исправления. Если я не мог решить проблему самостоятельно, то обращался за помощью.
Я продолжал придерживаться подхода «кодирование/тестирование/отладка» до тех пор, пока программы не были окончательно готовы.
Общее время составило около 20 часов. 10 часов заняли исследования, а оставшиеся 10 — создание двух приложений, которые в данный момент закончены и используются.
Планы на будущее
Завершив эти два начальных проекта, я продолжил писать интернет-приложения, сосредоточившись на программах, которые могли облегчить мне ведение бизнеса.
Теперь я с гордостью могу заявить: весь мой бизнес использует программное обеспечение, созданное мной самим. Мои приложения способны принимать оплату с кредитных карт, оформлять подписку, отправлять письма по электронной почте и управлять доступом клиентов к интернет-сайту. Научившись программировать, я стал владельцем собственной маленькой армии роботов, выполняющих мои приказы.
Сколько времени у меня ушло на создание всех этих программ? Приблизительно 90 часов, включая те 20, которые подробно описаны в этой главе.
А вот еще дополнительное преимущество: когда я сталкиваюсь с каким-то повторяющимся или скучным аспектом своего бизнеса, то начинаю думать в терминах программирования. Как будет работать программа, решающая эту проблему? В большинстве случаев это помогает систематизировать процесс, что значительно облегчает мне жизнь.
Кроме того, я научился некоторым новым трюкам, например настраивать свой компьютер, чтобы ускорить процесс программирования. Я запомнил комбинации «горячих клавиш» текстового редактора, позволяющие сэкономить время, а также обновил программу Terminal до iTerm2 и Z-Shell, чтобы немного облегчить программирование.
Я все еще учусь, и меня ни в коем случае нельзя назвать специалистом. Мне приходится доходить до всего своим умом, и требуется определенное время, чтобы найти правильный путь и устранить ошибки. Зачастую это вызывает раздражение.
Тем
Я сражался с компьютером и победил.
6
Печать слепым методом
Урок: старые привычки не обязательно живучи
Хорошее дело стоит того, чтобы сначала помучиться.
До сих пор я приобретал новые навыки в тех областях, где практически не имел опыта. Естественно, отсутствие опыта поначалу было препятствием, но мой мозг, по крайней мере, не вмешивался в процесс обучения.
А что происходит, когда вы осваиваете новый навык, а ваш мозг восстает против этого?
Можно привести поистине драматические примеры переучивания. Известно, что знаменитый гольфист Тайгер Вудс трижды менял свой свинг (удар), уже достаточно эффективный [1]. Иногда стоит научиться делать нечто важное по-новому, еще лучше — даже если это приведет к кратковременной неэффективности и раздражению.
Современные технологии меняются так быстро, что переобучение стало привычным делом. Что произойдет, к примеру, если изменится программное обеспечение, которое вы используете для работы, или появится новая программа, позволяющая решать задачу эффективнее? Что если вы устроились на новую работу, требующую нового инструментария? Зачастую быстрое переучивание не менее важно, чем обучение чему-то новому.
Мне интересно: что я буду чувствовать, заново обучаясь делать нечто важное?
Я составил список того, что уже умею делать, а затем выбрал из него навыки, удовлетворяющие двум условиям: 1) я ими достаточно хорошо владею, и 2) они предлагают несколько методов для достижения одного и того же результата. Мне не потребовалось много времени, чтобы найти подходящего «кандидата».
Навык? Печать вслепую.
Жизнь за клавиатурой
По словам Дэвида Аллена, автора бестселлера «Как привести дела в порядок», если ваша работа требует использования компьютера, то обучиться печати вслепую будет самым существенным шагом к повышению собственной производительности.
Критический порог составляет приблизительно 250 знаков в минуту. Если вы не в состоянии печатать вслепую со скоростью хотя бы 200 знаков в минуту при небольшом количестве ошибок, то серьезно снижаете производительность своей работы. Чем меньше усилий вы затрачиваете на набор текста, тем больше времени и энергии у вас остается на более важные задачи.
Я печатаю вслепую уже лет семнадцать, если не больше. В седьмом классе школы нам преподавали курс машинописи, и я помню, как это было скучно. Я уже умел печатать вслепую, поэтому выполнял задания за несколько минут, а остальное время тратил на то, чтобы заставить текстовый редактор отобразить всякие необычные символы, такие как знаки абзаца (¶), параграфа (§) или различные лигатуры.
Печатью вслепую я овладел в основном потому, что в свободное время много сидел за компьютером. Мое обучение было спонтанным, а не намеренным: я не занимался специально, чтобы повысить скорость или уменьшить количество ошибок. Я просто работал на компьютере и в процессе работы научился печатать вслепую.