среда, 20 октября 2010 г.

[prog.flame] Проведу параллель между увлечением дартсом и новыми языками программирования

На RSDN развивается небольшой (пока?) флейм под названием “Scala / F# / Nemerle и мейнстрим”. Может из-за того, что я редко читаю RSDN в последнее время, но мне кажется, что в мою бытность RSDN-ером такие флеймы случались почаще :) Впрочем, и тогда они проходили по аналогичному сценарию. Набегало несколько фанатичных Nemerle-истов и приверженцев других маргинальных (по сравнению с мейнстримом) направлений и начинали доказывать, что самые умные и продвинутые сейчас будут использовать Nemerle (Scala, Lisp, OCaml, Erlang, you name it…), получат от этого невообразимые бенефиты и снимут все сливки. А остальные (т.е. либо заросшие мхом старперы, либо настолько тупые, что не могут оценить то, что наиболее по-(про)двинутым уже давно понятно) будут продолжать плакать, но жрать мейнстримовый кактус. Как миллионы мух, которые… ну и далее по тексту.

Сегодня вдруг поймал себя на том, что все это сильно напоминает мне мое увлечение дартсом. Точнее одну его сторону – страсть менять дротики раз в месяц.

Есть у меня такая проблема. Не успеют придти очередной комплект, как я начинаю выбирать себе другой. Пока спасает только ограничение на размер беспошлинных посылок из-за рубежа. А то бы я себе закупал сразу по 4-5 разных :)

И вот в чем фокус. Когда приходят новые дротики, результаты сразу же повышаются. Прямо на глазах.

Что тут же вселяет уверенность в том, что решение их купить было не просто правильным, а архиправильным. И остается только сожалеть, что ты не сделал этого раньше, и о том, что посылка по почте идет так долго.

Однако, этот положительный эффект крайне кратковременен. По-моему, он длится 3-4 дня. После чего результаты ухудшаются и становятся даже хуже, чем до смены дротиков. И требуется неделя (а то и больше), чтобы хотя бы выйти на прежний уровень.

Для себя сделал такой вывод: мне нужны не столько сами дротики, сколько те эмоции, которые я испытываю при выборе новой модели, при ожидании их прибытия, при первой пробе, при первых (пусть и временных) успехах. Т.е. я ловлю кайф от самого процесса смены дротиков.

Аналогичная штука, мне кажется, происходит и в программировании. Только там вместо дротиков языки программирования. И во времени все намного сильнее растянуто. Новый язык нужно освоить, где-то применить, получить первые результаты. На это нужно намного больше времени, чем дождаться посылки из Англии и подойти к мишени.

Но когда первые результаты получены, происходит все тоже самое. Первые успехи, которые сменяются обычной рутиной. Скучной, неинтересной, часто разочаровывающей, до жути однообразной. Нет уже адреналина. Есть повседневные обязанности. Так не интересно.

То ли дело взять вместо наскучившего C++ новый C#… А потом вместо наскучившего C# новый Nemerle… Или Scala вместо Java… Адреналин-то возвращается. Рутина исчезает (на время, но кого это волнует). Жизнь становится лучше, жизнь становится веселее.

Однако, частая смена языков (как и частая смена дротиков) – это всего лишь бег на месте. Потом становится понятно, что для достижения значимого результата нужно остановиться на чем-то одном. По-возможности, максимально для тебя комфортном. И долбить, долбить, долбить. Превозмогая скуку, разочарования, однообразие. Да, медленно, да без адреналина.

Конечно, прогресс не стоит на месте. И Java с C# вытесняют C с C++ом, как в свое время C вытеснял ассемблер. Так же, как вольфрам и полимеры стали мейнстримом в дартсе, вытеснив в прошлое деревянные дротики с натуральными перьями. Только времени на это потребовалось очень и очень не мало. Так что мейнстрим меняется, никуда от этого не спрятаться. Но при любом мейнстриме секрет успеха будет заключаться в том, чтобы долбить, долбить и долбить… А не в ловле кайфа от процесса смены инструмента.

Отправить комментарий