Философия в IT
Данилевский Кирилл
Приветствую читателей Мегамозга. Решил я сегодня затронуть одну интересную проблему. А именно, немного пофилософствовать на тему, является ли IT область какой-то точной алгоритмической наукой, или все же это может быть нечто большее, чем просто математическая модель.
И для того, чтобы моя мысль была более понятна, я буду проводить разные параллели и сравнения с разными аспектами нашей жизни.
На сегодняшний день существует достаточно большое количество разработчиков. И с каждым днем их становиться все больше. Кто-то проходит профильное обучение в университетах (достаточно малое количество), кто-то просто занимается самообучением (подавляющее большинство), а также есть просто громаднейшее количество разработчиков, которые ими стали путем перепрофилирования из другой специальности, порой такой далекой от IT, что это не укладывается в голове.
И тут я начинаю задумываться, а зачем люди идут в программисты? Для себя я вывел три категории людей.
1) Те, которые с самого детства фанатели от создания чего-либо. Решали всякие ребусы и головоломки. Разбирали старую и поломанную электронику, чтобы узнать, что там внутри. Ходили на всякие кружки по радиоэлектронике, часами ковырялись во всяких приложениях и программах, желая узнать, как они работают и почему именно так. Думаю, суть ясна. В итоге, стать разработчиком — это был их сознательный путь с самого детства. Как правило, они поступают на профильный факультет и проходят обучение связанное с IT сектором.
2) Это способные специалисты, как правило, закончившие обучение на смежных специальностях. Эти люди обладают необходимым набором базовых знаний, легко обучаются всему новому. Но не являются фанатами. Для них разработка — это просто хорошая работа. Но не более того. Они очень качественно могут ее выполнять, но не получают никакого от этого удовольствия.
3) Разные люди из всевозможных областей и профессий. Подавляющее большинство таких людей не обладает, даже базовыми знаниями, и занялись программированием с одной единой целью. А цель проста, как угол дома. Ведь в этом секторе бизнеса крутятся миллионы и миллиарды долларов, а сами разработчики получают приличные зарплаты. Поэтому, такой человек принимает правильное, с его взгляда, решение — стать программистом, для того, чтобы решить свои финансовые трудности.
Все о чем я буду рассуждать далее, это только мое личное субъективное мнение, которое совсем не обязано совпадать с мнением большинства.
Те категории, о которых я сказал выше, я бы мог сравнить с музыкой. К примеру:
1) Учатся играть на фортепиано с детства. Им это очень нравиться и приносит реальное удовольствие.
2) Родители из заставляют играть на фортепиано. Они отлично владеют инструментом, но никакого душевного кайфа от этого не испытывают.
3) Не умеют играть вообще и им это совсем и не нравится.
Итак, я бы разделил каждую категорию на еще некоторые под категории.
1) С большой долей вероятности станут композиторами. Им не достаточно кого-то копировать, они хотят творить сами.
2) Становятся отличными музыкантами. Но вероятность, что они станут композиторами, стремится к нулю.
3) Если жизнь сильно прижмет, и эти люди вдруг подумают, что именно тут зарыта золотая жила, то со скрипом могут освоить балалайку.
Теперь, понимая немного суть, какое будущее ждет каждого.
1) Как правило, такие люди не задерживаются на долго на одном месте. Им быстро надоедает рутинная работа. Они, где-то внутри понимают, что созданы для большего, чем просто работать в крупной компании изо дня в день. Очень часто начинают свои проекты. Набивают шишки, но идут вперед. Для них этот путь очень труден и тернист, так как они принципиально не хотят идти по протоптанной дорожке, и ищут свою дорогу. Что-то придумывают, что-то изобретают, часто свои велосипеды. Но некоторых из них, все же ждет в финале успех и признание.
2) Это матерые специалисты, которые, в подавляющем большинстве случаев, абсолютно не желают, даже слышать о своем проекте. Их все устраивает. Часто, такие люди работают в одной и той же компании многие годы. Получают стабильно высокую зарплату, и абсолютно не понимают всей той бесполезной «глупости», которой чудит первая категория.
3) Освоив азы игры на балалайке, им остается только играть в кабаках для тех, у кого нет денег сходить в нормальное заведение. Получить правдивый ответ о том, стоило ли менять свою специализацию ради этого, скорее всего не удастся.
Немного изложив свои соображения, теперь я подойду к сути, к чему это я все клоню.
Если бы не было первой категории людей, то сам IT сектор развивался бы очень слабо, если бы вообще развивался. Из десяти идей таких людей, выстреливает одна или две. Но руки все равно эти специалисты не опускают. И именно таким специалистам обязан весь IT сегмент. Именно они создают свои новые «велосипеды», которые становятся востребованными и популярными. Именно такие люди становятся примером для многих, именно о них пишут статьи и публикации о больших успехах и горьких провалах. Именно такие разработчики становятся источниками информации, по которой учатся другие специалисты.
Вторая же категория, намного пассивней и пессимистичней настроена. Они отличные исполнители, но не более. Они не воспринимают всерьез первую категорию, если это уже не устоявшиеся и давно известные авторитеты. И начинает их наивно путать с третей категорией. Или специально опускать туда, под влиянием своих неких человеческих факторов. Чаще всего, конечно, происходит второе. Часто это выражается в неконструктивной критике или в неоправданной агрессии. Но что самое парадоксальное, что без первой категории, второй бы не существовало. И вот этот вот парадокс, у них в голове и не умещается. Проекты, которые специалисты из второй группы разрабатывают, это клоны уже успешных решений людей из первой категории. Они идут протоптанным путем, и осуждают всех тех, кто поступает иначе.
Третей категории, мы «благодарны» за такое качество большого количества всевозможных ресурсов, сделанных под одну копирку на коленке. А также появлению большого количества мошенников, обещающих сделать из вас программиста за десять уроков.
Таким образом, я лично вижу, что сам процесс разработки — это нечто большее, чем просто алгоритм. Вернее, это нечто большее для первой категории специалистов. Это полет мысли, иногда, просто безумный, это полный переворот в представлении и подходах к созданию чего-либо. Это целое философское течение, которое способно, в случае успеха, перевернуть весь мир. А знание языков программирования и паттернов — это не более, чем инструмент (фортепиано).
Вторая группа специалистов же считает, что всякие идеи и полеты мысли — это глупость, и не стоит ничего. Они гордятся только тем, чем в совершенстве владеют программированием (игрой на фортепиано). Но нередко начинают завидовать первым, когда у тех все получается.
В финале получается некий философский и противоречивый кругооборот:
Вторые завидуют первым и всячески пытаются их приземлить, хотя все знания, что у них есть — они имеют именно от первых.
Третьи равняются на первых, хотя у них элементарно не хватает знаний вторых.
А первые, не благодаря, а вопреки, пытаются проложить новую дорогу, при этом все время встречая на своем пути всевозможные препятствия, вместо помощи. И руки порой опускаются.
В итоге, первых с каждым днем все меньше, а вторых и третьих, все больше. Возможно, поэтому IT область и не смогла сохранить своих темпов в технологических, да и культурных тоже, прорывах.
Вот такая философская каша у меня вышла.
© Megamozg