Стадия номер раз: Млять, чо за нах!?
Одна из двух самых опасных стадий! Стадия — убийца программистов! Это самая первая стадия, когда «простой смертный» счастливый, или недовольный жизнью человек, наслушавшись таких как я, прочитав статьи таких как я, увидев как, такие как я живут, поняв что это классно, решает стать программистом. И вот он идет в магазин, закупается неверными книжками, ибо никто из более опытных ничего не подсказал, и начинает их читать. Хуже того, пробует применять на практике! Далее обычно следующая картина: «Мля, мля, мля, мля, примеры из книжки не работают, этот оператор нигде не описан, из десяти строк первого листинга, я понял только две, и не факт что правильно! Какие мануалы!? Что такое мануалы!? Зачем их курить!? Что это!? Седой волос!? Откуда у меня седой волос!?» Ну а дальше, хорошая, или не очень книжка, отправляется в туалет, и служит вместо туалетной бумаги, в целях экономии…
Проблема в том, что на этой стадии, многие начинают зубрить тот или иной язык, когда на самом деле нужно разбираться в основах программирования, учиться составлять алгоритмы, и запастись терпением. Именно поэтому для начала, выбирают языки попроще, типа QBasik, или Pascal, но надо помнить, что привыкать к этим языкам не стоит, и написать на них бесплатную альтернативу photoshop’у не получиться. Для начала пойдут простые, совершенно бесполезные, программы, просто для того, что бы понять, что такое переменная, что такое массивы, циклы, условные операторы, как и где они применяются. Проще говоря, нужно научиться мыслить как программист, и тогда эта стадия будет пройдена.
Стадия номер два: Ааа, вот оно что…
И если первая стадия пройдена, то скорее всего «простой смертный» встал на путь истинный… Самое трудное позади, и можно начинать писать несложные, но полезные программы, на которые через 2-3 года без смеха смотреть будет сложно… Это стадия разочарований, стадия поиска стиля, и обретения мастерства. Стадия, когда вы показываете свой код знакомым программерам, а они над вами смеются, вместо того, что бы указать на ошибки, когда комп вешается каждые пол часа от бесконечных циклов, а вы не можете понять в чем проблема, когда программа вроде работает, но как-то не так, когда вы смотрите чужие листинги, и не понимаете ровным счетом ничего! На этой стадии, кроме продумывания алгоритма программы, встает так же вопрос его реализации, и уже не на qbasik’е или паскале, а на чем-то вроде delphi, c++ или php (perl, python). К черту языки 80-тых годов, на этой стадии пишутся полезные программы, которые работают не в черном ДОСовском окошке, но вы то не знали, что это будет на порядок сложнее… Если раньше вы говорили культурно, то теперь начинаете материться, ибо с этим компилятором по другому нельзя! Какая ошибка? Какой тип данных? Что ему не нравится? Зачем он меня мучает? Что плохого я сделал в жизни? Если попаду в ад, что угодно, любые муки, только не программировать на visual studio (Само собой только пример… надеюсь майкрософт меня не читает…)
Часто бывает такое, что наслушавшись про только что вышедшую, мега крутую игру, вы покупаете ее, проходите первый уровень, а во втором, при первом серьезном испытании, которое, в общем-то, проходимо, но требует времени, сил и сноровки, вы бросаете игру? Думаю что часто! Так же и с программированием. Тут все зависит от желания. Зачем вы начали программировать, и насколько вы хотите стать программистом. Что бы пройти этот этап, нужны не столько мозги (хотя куда ж без них) сколько усидчивость, и изучение нюансов языка программирования. Вот тут то и придется курить мануалы, сканить инет на предмет похожих ошибок и методов их решения, более внимательно изучать книжки, а в минуты отчаяния — молиться! Но как я уже сказал, этап проходим, все, что для этого надо – это запастись терпением и, не в коем случае, не зацикливаться на мысли: «Это невозможно!», т.к. ЭТО ВОЗМОЖНО! И вы знаете что это возможно!
Стадия номер три: Кажется я программист!
Обычно, эта стадия начинается следующим образом: «А не написать ли мне…» Выбирается довольно сложная и большая программа, дни сменяют ночи, время летит, девушка вас бросает, все деньги уходят на новые книги, в асе появляется новая группа «Программисты», в закладках браузера в основном программистские форумы – вы пишите большую, сложную программу. Возникают новые трудности: вы знакомитесь с базами данных, с инсталляторами, с ООП, и знакомство это не всегда проходит гладко. Однако у вас есть два помощника, которые всегда рядом с программистом на этой стадии: опыт предыдущей стадии, и вдохновение! А вдохновение — штука мощная… На этой стадии вам интересно писать! Вы довольно далеко зашли, и едва ли все бросите. Однако… Многие сходят именно тут, это в основном связанно с полным разочарованием в программировании. Как интересно было писать мини программки на первых двух стадиях, да, были сложности, но с высоты третьего уровня, они не кажуться такими уж непреодолимыми. А вот тут все скучнее! ООП? Зачем он? Все твердят про это ООП, я и без него обходился! А еще эти БД, целые книги выпускают только по проектированию базы данных! Отношения, связи, ключи… Чот мне разонравилось программирование!!!
Тут главное не падать духом! Не так уж все и сложно! Да, важно правильно спроектировать базу данных, но это ведь ваша первая серьезная программа! Да, ООП это вещь, и дальше без нее никак, но если вы пока не понимаете что за там классы, методы, зачем нужно наследование и т.д. оставьте это, пишите так, как вам нравиться, вы пока не профессионал, и получайте удовольствие от программирования. Полюбите программирование! Настанет день, и вы поймете все нюансы ООП, и сможете на ходу составлять sql запросы, не заглядывая в справочник, но пока, пишите как хотите, влюбитесь в программирование.
Стадия номер четыре: Мания величия.
Самая ужасная, самая опасная и самая долгая стадия! Многие программисты остаются в этой стадии годами, и не факт что пройдут вообще! Это когда «Я крутой программер, я написал уже несколько больших программ, я знаю все о программировании!!! » В этой стадии развитие программиста останавливается. Он забивает на новые технологии, он считает себя лучшим, он считает лучшими свои методы, он смотрит на других с ехидной улыбкой. Других программистов он не любит. Всегда пытается доказать другим что лучший именно он! Часто критикует общих знакомых программистов. Он много пишет, ибо надо доказывать себе, что ты лучший. Пишет много, но не развивается, ибо считает что методы, которыми он пользуется – лучшие! Зачем что-то менять, я пишу программы, некоторыми даже пользуются люди. Меня взяли на работу. Я профи и со мной никто не сравниться! Стадия очень сложная, сложная тем, что вы не поймете что все еще на ней! Вы думаете что уже в конце игры, вы думайте что познали все секреты профессии, что дальше развиваться просто некуда. Вы думаете что вы один из лучших, а может и лучший, и не знаете, что это только начало вашего развития и что надо двигаться далее. Как пройти стадию, если даже не знаешь что находишься на ней!? Очень просто! Надо общаться с другими программистами, и смотреть на них не как на соперника, а как на источник опыта. Надо посещать программерские форумы, сайты, надо узнавать что то новое, и пытаться это использовать! Надо понять, что программирование – это такая вещь, постичь которую полностью – невозможно!
Стадия номер пять: Не так уж я и крут…
Не все программисты доходят до этой стадии… На этой стадии программист переосмысляет само понятия «программирование». Он начинает прислушиваться к другим программистам, обращать внимание на готовые решения, не изобретая велосипед по-новой, на первый план выходят скорость и качества реализации проекта, просматривая чужие листинги, он ищет не ошибки, а интересные идеи. Его разум открывается для нового, он не критикует, а наставляет. Когда критикуют его, он не доказывает свою правоту, а прислушивается, и если критика конструктивна и справедлива – исправляет свои ошибки. В асе появляется новая вкладка «Начинающие программисты», и если кому то из них нужна его помощь – он помогает, ибо как сказал один мудрый, но давно умерший человек: «Уча других, мы учимся сами».
|