Я написал эту статейку в 11 классе. Как это ни странно, она до сих пор не утратила своей актуальности. Тут много тавтологии, но я решил ничего не менять. Выкладываю свой опус в первоначальном виде, в котором он увидел свет в 2005 году.
***Я бы очень хотел рассказать вам о том, что является моим любимым занятием в свободное время. Речь пойдёт, конечно же, о программировании. Я расскажу вам об этом искусстве рассуждая исключительно "со своей колокольни". Не буду утомлять вас терминами и пространными объяснениями, это ни к чему. Я попытаюсь донести до вас все прекрасные черты этого рода человеческой деятельности и всю его очаровательную красоту простым понятным языком.
Итак, поехали.
Я полагаю, что из-за исключительной популярности профессии программиста большинство из посетителей этого сайта лишь высокомерно усмехнулось, прочитав название этой статьи. Но, как показывает практика, даже у высокообразованных людей складывается немного неверное понятие о таком ремесле, как программирование. Большинство воспринимает программирование либо как исключительно сложную профессию, требующую нечеловеческих знаний архитектуры ЭВМ, многих современных языков программирования, сред проектирования, операционных систем и т. п. В общем, программист в понимании этой категории людей - это компьютерный гений и таких гениев очень мало, это очень престижно и почётно, хотя и чрезвычайно сложно. Другая половина общества воспринимает программирование, как обычную профессию. Они считают: ты оканчиваешь школу, поступаешь в вуз на факультет, так или иначе связанный с программированием, там дают все необходимые знания, и ты, являясь прилежным студентом, после окончания института без проблем устраиваешься на работу.
Как это ни странно, ошибаются и те, и другие. Хотя, надо признать, что первая категория ближе к истине.
Трудность понимания обусловлена тем, что сложно провести аналогию с другими профессиями. Чтобы понять, что такое программирование, нужно быть как минимум начинающим, но продвинутым кодером. У начинающих программистов тоже весьма отдалённое представление о том, чем они занимаются. Как ни странно это звучит, но чтобы понять суть вопроса надо перерости категорию начинающих и новичков.
На самом деле, понятие настолько объёмно, что невозможно уловить его смысл через краткие формулировки, которые, как правило, являются просто набором красивых слов для непосвящённых людей.
Программировать может каждый. Мы каждый день невольно программируем будильники, видеомагнитофоны, стиральные машины, микроволновые печи, задавая им определённую последовательность действий.
Запрограммировать прибор - значит задать последовательность действий, которые он дожен выполнить и описать как сами действия, так и условия их выполнения.
Примерно так дело обстоит и с программированием для ЭВМ. Думаю, все согласятся, что компьютер - прибор значительно более сложный по строению и более богатый возможностями, чем вышеперечисленные бытовые устройства. Следовательно, его программировать сложнее.
В дальнейшем будем подразумевать под понятием "программирование" написание программ только для ЭВМ.
Итак, программирование - это искусство написания программ для ЭВМ. Ключевое слово здесь - именно "искусство". Учитывая огромное количество разнообразных технологий и подходов, небывалые объёмы и связанные с этим конструктивные сложности программного обеспечения и его поистине неограниченные возможности; беря во внимание то, что истинное программирование - это всегда творческий процесс создания чего-то нового, этот род деятельности из ранга профессии давно перешёл в ранг искусства. Программисты высокого класса из категории кодеров перешли в категорию мастеров этого благородного искусства. Сами же программные продукты перестали быть просто набором команд для работы с данными, а стали произведениями искусства, наиболее удачные стали шедеврами.
Почему же компьютерщикам нравится программировать?
Потому что программирование - это творческий, созидательный процесс, направленный в конечном результате на облегчение жизни людей. Таким оно должно быть и только за это его стоит любить.
Если вы уверены в своих знаниях и возможностях, умееете программировать, то сможете заставить компьютер делать ВСЁ, что вам угодно. Вы испытаете чувства вседозволенности, безграничности, почувствуете, что для вас нет преград и ничто не помешает вам добиться цели. В процессе же решения поставленных программистских задач вы приобретёте огромный опыт и получите полное удовлетворение. Но не искушайте судьбу и не переходите рамки дозволенного, иначе жестоко поплатитесь.
Упорство, которое вы приобретёте в процессе решения проблем и трудностей, которые будут непременно возникать у вас на пути, будет просто фантастичным и поможет вам в вашей жизни. Вы научитесь не отчаиваться и верить в удачу.
Зная, что продукты вашего труда приносят пользу другим людям, вы сможете с гордостью сказать, что изменили мир к лучшему.
Программистский тип мышления, который со временем вырабатывается, будет служить вам всю оставшуюся жизнь. Вы научитесь думать чётко, быстро, последовательно, как структурировано, так и абстрактно, оперируя конкретными фактами и смутными предположениями.
Программирование, беспорно, поможет вам в овладении всеми остальными областями компьютерной деятельности. Вы в кратчайшие сроки сможете осваивать любые компьютерные направления, как только в этом появится нужда.
Если вы потрудитесь на славу, вложите душу в свои творения, то к вам придут мировая известность и признание. Даже если вы не сможете достичь такого высокого уровня, то вас всё равно будут знать и уважать в узком кругу ваших друзей-компьютерщиков. А уважение и поддержка со стороны нескольких единомышленников, да и просто родственных душ дорого стоят.
Если вы займётесь программированием, то сможете, как минимум, оценить всё то прекрасное, что таит в себе это ремесло, по достоинству. И уверяю вас, вы не пожалеете о том, что решили этим заняться.
Но всё, описанное выше, не означает, что у вас всё и сразу будет получаться. Даже у высококлассных программистов ничего с первого раза не получается, а у новичков так тем более. Большинство как раз и бросает затею познать искусство программирования из-за значительных трудностях на начальном этапе. Будут и бессоные ночи, и "битьё головой об стену" в надежде решить очередную проблему, и растраченные на ненужную работу месяцы, и горы лишнего кода, несущего в себе плоды титанического труда, и отчаяние, и разочарование... Без этого не обойтись. Но сложности в жизни встречаются сплошь и рядом, поэтому нужно уметь преодолевать трудности. И вы научитесь это делать. А чем больше у вас будет опыта, тем меньше трудностей. Игра стоит свеч.
На этой ноте я заканчиваю свой вводный рассказ об искусстве программирования. Надеюсь, я вас хоть немного тронул или заинтриговал. Всё, изложенное выше - лишь мои мысли и впечатления. Вы можете не соглашаться, но всё равно попробуйте себя в этом деле. Докажите себе, что способны на многое и отправляйтесь в плавание по этому бесконечному океану миллиардов нулей и единиц...




