Первые 20 часов. Как быстро научиться… чему угодно
Шрифт:
Но тут есть одна трудность: польза возможна только при регулярных занятиях. Главное — выделить время для утренних или вечерних занятий. Я изменю свой распорядок дня и теперь по утрам не буду первым делом проверять электронную почту или приступать к работе, а займусь йогой, прежде чем приниматься за дела.
Забота о своем теле перейдет в разряд наивысших приоритетов. Йога будет поддерживать мою физическую форму на протяжении следующих десятилетий.
Мне не нужно становиться монахом или акробатом, чтобы насладиться пользой от йоги. Мне не нужно знать
Более того — я освоил все, что мне было нужно, всего за три часа, что гораздо меньше, чем я ожидал. Я приступил к этому проекту в убеждении, что придется изучать длинные комплексы сложных поз, но выяснилось, что в этом нет никакой необходимости. Я мог достичь желаемого при помощи упрощения, что позволило получить нужный результат за более короткое время.
Когда речь идет об усвоении чего-то нового, нет никакого смысла без необходимости усложнять себе задачу.
5
Программирование
Урок: сложные вещи становятся простыми, если их разбить на части
Если отладка — процесс удаления ошибок, то программирование должно быть процессом их внесения.
Я зарабатываю в интернете с 2007 года, с тех пор как оставил работу на полную ставку в качестве менеджера по маркетингу и основал собственную компанию, специализирующуюся на издательских и консультационных услугах.
Мой первый сайт, PersonalMBA.com, дает мне средства к существованию: в сущности, я обучаю науке бизнеса, хоть и не преподаю в университете. Каждый год я пополняю список написанных мною книг, которые посвящены законам бизнеса и предназначены для читателей, желающих овладеть его основами [1].
С момента первой публикации в 2005 году список рекомендуемой литературы из книги «Сам себе MBA» оставался одним из самых популярных, а дополнения к этому списку делают посетители сайта со всего мира. С 2005 года сайт PersonalMBA.com посетили более 2 миллионов читателей.
Моя первая книга «Сам себе MBA» была естественным развитием сайта PersonalMBA.com и стала международным бестселлером. Издание книги предполагает также и ее распространение, и поэтому я на протяжении нескольких лет изо всех сил старался привлечь новых читателей.
О книге «Сам себе MBA» упоминалось в New York Times, Wall Street Journal, Fortune, Forbes, FastCompany, на многих популярных сайтах, в блогах. И после каждого такого упоминания на PersonalMBA.com приходили тысячи новых посетителей.
Цена прогресса
Тысячи посетителей вашего сайта — это здорово, но при условии, если все они имеют возможность одновременно на него попасть. Моя проблема состоит именно в этом: каждый раз, когда трафик сайта значительно увеличивается и достигает определенного порога, сайт рушится
Вот типичный пример: популярный блог Lifehacker.com, посвященный программному обеспечению и компьютерам, за последние семь лет три раза помещал список литературы «Сам себе MBA». И каждый раз тысячи людей одновременно пытались зайти на сайт PersonalMBA.com, перегружая мой веб-сервер (компьютер, предоставляющий веб-страницу по запросу пользователя). Вместо запрашиваемой информации сервер выдавал сообщение «Ошибка установки связи с базой данных» или «Ошибка 503», что эквивалентно просьбе о пощаде в цифровой форме.
И каждый раз, когда сервер падал из-за перегрузки, вместе с ним умирала частичка моей души. Время, потраченное на маркетинг моего сайта, оказывалось израсходованным впустую. В конечном итоге мне удавалось заинтересовать своим предложением тысячи любознательных людей, но из-за рухнувшего сервера они уходили разочарованными, с пустыми руками. Маркетинг оказывался слишком хорош, и система не справлялась с внезапно возросшими требованиями.
Изучение проблемы
Моя первая реакция — усилить сервер, добавив вычислительной мощности и памяти. Это помогло, но лишь до некоторой степени. При превышении определенной нагрузки мой сайт снова рушился, что совпадало с каждым серьезным успехом в маркетинге.
В то время PersonalMBA.com использовал популярную систему управления сайтами под названием WordPress [2]. Эта система оптимизирована под легкость установки и использования, а не под работу с большими нагрузками. В стандартной конфигурации WordPress каждый запрос веб-страницы запускает цепочку действий сервера, генерируя сотни внутренних запросов, чтобы предоставить каждую страницу пользователю.
Такой процесс делает каждый отдельный запрос веб-страницы «затратным». То есть выполнение каждого запроса требует выделения существенного объема памяти и вычислительной мощности. Если один посетитель сайта просматривает пять страниц, то он генерирует пять затратных запросов. Если тысяча посетителей сайта одновременно обращаются к одной и той же странице, то сервер попытается запустить тысячу идентичных затратных процессов одновременно.
Система зависла
В такой ситуации бедный осаждаемый запросами сервер попытается ответить на все запросы, но поскольку каждый из них требует значительных ресурсов, память сервера будет исчерпана раньше, чем он справится со всеми ими. В этот момент сервер выбрасывает белый флаг — и посетители сайта остаются ни с чем.
В попытке решить эту проблему я пять раз менял компании, предоставляющие услуги веб-хостинга, и потратил сотни часов, обучаясь конфигурировать серверы WordPress таким образом, чтобы они не отключались при большой нагрузке. Каждая новая конфигурация усложняла сервер, и каждая новая инсталляция требовала все больше времени на ее поддержку.