Как стать программистом

  • 22 сент. 2010 г.
  • 6632 Слова
Как стать программистом: часть первая, нравоучительная
Я не знаю почему, но где-то в среднем пару раз в месяц ко мне обращаются с подобным вопросом --- как стать программистом? Конечно, его иначе формулируют, но в общем смысл именно такой. Что я могу ответить на этот вопрос? Если коротко, то ответ будет "не знаю". А вот если развернуто, то получается эта статья, которую я и опубликую (раз ужесть к ней интерес.)
Предупреждение
Тема располагает к нравоучениям, пространным рассуждениям и отвлечениям. Везде я пытался как-то держаться в русле основной темы, но... слишком уж все сложно и взаимосвязано. Статья получилась большая, даже, наверное, огромная (поэтому мне пришлось разделить ее на несколько частей) и читать ее людям, не заинтересованным, конечно же сложно да и не нужно. Тем не менее,в статье есть и конструктивные моменты, тем кто не желает читать мой "поток сознания" следует сразу же отправиться к следующей части, которая будет опубликована завтра или послезавтра.
В остальном же надо воспринимать статью как ответ в дружеской беседе на подобный вопрос; то есть, это не рецепт счастья, это просто слова человека, которому платят деньги за программирование. Прошу учитывать, чтодругие подобные люди могут иметь свои мысли, быть может, в корне различные с моими.
Целевая аудитория этой статьи это школьники последних классов и студенты первых курсов; люди постарше уже имеют свою точку зрения на образование, программирование и обучение программированию.
А ты кто такой?
Вообще, к постановке вопроса, вынесенного в заголовок статьи, можно придираться --- кто такой программист?Лично я, правильно или нет, но определяю этого человека как создателя программ, то есть человека, который "заставляет" компьютер работать... и со мной сразу же найдутся несогласные. Дело в том, что если придерживаться распространенной терминологии построения программных продуктов, то программист это что-то из разряда чернорабочих: занимается исключительно тем, что претворяет в программный код красивыедиаграммки от архитекторов программного обеспечения, при этом шаг влево и вправо карается увольнением и т.д. Деятельность таких специалистов обычно определяется ограничениями, а не обязанностями или правами.
Так вот, я действительно не знаю, как стать программистом. При этом сам себя программистом считаю только потому, что как-то вдруг окружающие меня люди начали им считать; вообще же, мне, конечноже, без разницы как называется моя профессия. Мне она попросту нравится.
Однако, в свое время, я хотел стать именно программистом. Смысла никакого в это слово не вкладывал, про иерархию должностей при разработке программного продукта даже не слышал и не знал, что все так сложно. Тем не менее, из меня получилось именно то, что я хотел, когда собрался "стать программистом". И, конечно же, сейчас я ужехочу несколько иного, но более ранние мечты были очень похожими.
Оказалось, что программист, это прежде всего математик, знающий множество математических методов изучения и анализа окружающего мира. Именно математическое знание, причем практически во всех его проявлениях, позволяет получить то мышление и умение учиться по книгам, которые попросту необходимы программисту. Если хотите, то это можноназвать научным подходом, который применяется не только в математике.
Ведь программист, на самом деле, состоит всего-лишь из двух компонент: во-первых, умения рассуждать (тут как раз будут полезными математические методы) и, во-вторых, опыта. Больше, по сути, программисту не нужно нечего. Поэтому для того чтобы стать программистом, надо научиться правильно и обоснованно рассуждать, а так жеполучить как можно больший опыт. Правда умение рассуждать тоже складывается из опыта, только несколько непрофессионального (для программиста).
Я намеренно упустил еще одну компоненту, но тут, как показывает опыт, она либо есть, либо ее нет, либо ее отсутствие по каким-либо причинам не мешает --- коммуникабельность. Редки случаи, когда программист что-то делает в одиночку. Обычно он...
tracking img