Преимущества самообучения программированию

18 Июн
2012

Вот уже полтора года как я активно изучаю веб-программирование. Натолкнули меня на эту неблагородную затею, как наверно ни странно, разработки Google Inc. Первым моим вступлением в «веберы» было посещение в 2011 году Google Code Day, которое проходило в Москве в головном офисе Google.
На тот момент я не понимал ничего кроме HTML-тегов
<!DOCTYPE html ...>


чуть-чуть CSS и каких-то супер-общих понятий.
Например, я думал что чтобы сделать динамический сайт, нужно знать как минимум математику (с которой почему-то в школе не сложилось сильно), понимать что такое компиляция, в чем разница между C++ и С# (уже и не помню почему), а так же понять что такое CGI чтобы писать приложения на PHP, и так далее.

Сейчас поняв (может быть и нет), в принципе, суть программирования, я понимаю насколько это логично и достаточно просто, если захотеть.
Мое мнение по поводу новичков в этом деле, которые смотрят вебинары Specialist.ru скачанные с торрента, в большинстве своем не понимают зачем они это делают, есть случаи из жизни и о них не стоит говорить.
Люди научились писать
<?php echo 'hello world!'; ?>
и думают что они стали программистами. Конечно это несколько утрированно, но сколько я при разработке хожу по форумам, документациями, очень часто вижу вопрос из серии: «Как разбить слово по буквам? В php нету такой функции((». Банально подумать головой люди не хотят, а данный метод выглядит банально циклом for(){} и использовании функции str_len() — для подсчета символов в строке. Ну в общем лирическое отступление закончилось.
Мое мнение будет IMHO.
По опыту великих людей, взять к примеру Альберта Эйнштейна, чем характеризуются их открытия? Правильно! Нестандартным мышлением. А нестандартное мышление как появляется? Пораждается оно примитивными характеристиками человека — чаще всего ленью. Лень толкает (точнее даже наверно отталкивает) человека идти например зарабатывать денег специально чтобы учиться в престижном университете, ведь например лучше купить iPad 3 или iPhone 5, которые есть у всех, и быть крутым или просто держать стиль. И человек думает что это поможет ему жить лучше, решит все его проблемы. Ну это тоже может быть довольно утрированно. Но если человек понимает, что все-таки iPhone не решил его проблемы, думает чтобы сделать такого, чтобы iPhone мог делать то что не умеет, например варить кофе, или проигрывать VHS кассеты, он начинает кидаться из стороны в сторону в раздумьях. И тут он понимает что, он уже работает, менеджером к примеру, отучился 5 лет в экономическом институте и ничего ему не светит кроме как продавать те же iPhone’ы. От модели к модели.
Начинает самостоятельно изучать какой-нибудь язык программирования, потому что знает что программирование даст ему какие-то плюсы в понимании того как работают те же приложения в iPhone, почему Apple скрывает файловую систему от прямого доступа. Приходит мысль в голову, как все-таки сделать из iPhone кофеварку. Делает-делает, и вот, iНедоКипятильник готов! А всего-то надо было написать приложение, которое грузит процессор так, что телефон нагревается до 90° С и его можно класть прямо в чашку. Правда работает эта кофеварка всего-лишь один раз. И делать так нельзя, потому что это ломает телефон, зато один теплый кофе от зарплаты до зарплаты гарантирован 🙂
Именно так рождаются по-моему мнению какие-то идеи, по реализации того или иного проекта, функции или программы. Понятное дело, что кидать iPhone в чашку с кофе нельзя, и человек решается сделать свой xPhone (пример с YouTube выше), который не просто работает как одноразовый «недокипятильник», а как нормальная модульная кофеварка. Что человек сделал? А всего лишь изменил исходную структуру, которую можно теперь показать людям, и те будут использовать в своих целях, модифицировать, улучшать. Или просто продать патент.
К чему я все это говорю?! К тому что если к примеру если не знаешь как реализовать тот или иной функционал, нужно родить его с нуля, на основе того что уже понимаешь. Даже если оказывается что такой метод или функция уже существует и кто-то её написал, но например не рассказал.
А в институте (я сам учусь на звукорежиссера кино и тв в ГИТРе), тебя учат делать так, как это правильно! И я понимаю что есть просто стандарты которых нужно придерживаться, потому что их тоже не глупые люди придумали и модифицировали десятилетиями, но ничто не мешает придумать свой стандарт, на основе уже существующего или абсолютно новый.
Вывод: нужно лениться, чтобы что-то сделать, чтобы дальше ленится и опять что-то сделать. Яркий тому пример, мне кажется это разработка «Google Очки».
По материалам Хабрахабр.



загрузка...

Комментарии:

Наверх