Я уже плевался в эту сторону, но плюну еще раз.
Что я очень не люблю в программировании, что знания устаревают со страшной силой.
Эдак лет 15 я программирую (из них 10 — за денюжку).
Результат:
Basic (потрачено года 3) — DEAD
Pascal (года 2) — DEAD
Delphi (года 1.5) — DEAD
DOS (лет 5) — DEAD
PalmOS (лет 6) — DEAD
Не помершее, но очень сильно вытершееся из головы благодаря наслоениям чего-то нового:
ColdFusion, ASP.NET, SQL (пол года), Perl (пол года), Assembler 68K, Assembler ARM, Java
В целом список можно продолжать до тех пор пока не останется языки, технологии и операционки под которые программируется ну скажем последние 3-4 года.
Рекламная вставка: Пейте подсолнечное масло, для уменьшения склероза.
P.S. Видео которое подкинул Sergey Perepechin смотреть ОБЯЗАТЕЛЬНО!!!!!
Да, временами, неловко писать в резюме тот же ColdFusion или, например, PowerBuilder.
Кто их помнит сейчас?
Хотя на них в 2000-м году разрабатывали обалденные вещи для WEB и костылей требовалось гораздо меньше, чем сейчас, порой, для ASP.NET и JSP
Даже, не сравнивая технологии. Даже, если они остались живы. Даже после этого, то что я в 2000 году, что-то делал на ColdFusion, сейчас писать не актуально, так как в памяти осталось только, то, что функциональность вставлялась в виде тегов…
Вот поэтому я не люблю кретинов, ищущих себе на работу специалистов «с отличными знаниями технологии ХХХ».
А вы не парьтесь особо, опыт не пропьешь 🙂
С точки зрения программистов, действительно неприятно когда ищут человека который обязательно должен знать технологию X (которую можно на самом деле за 3 дня выучить).
С точки зрения менеджера и владельца — например на руках проект под Linux на Perl’е c framework Spiffy и все эта радость для какого-нибудь SOA проекта. А приходит гениальный товарищ, который занимался написанием драйверов под Windows на C++.
Вопрос — брать или не брать?
Естественно, даже при всей его гениальности — его вряд ли захотят взять, все таки уйдет достаточно приличное время, до тех пор пока товарищ, разбрется в Linux’е, Perle, Spiffy, SOA… Платить ему за 2-3 месяца, причем когда проект горит — для большинства компаний уж очень накладно.
Стоп, стоп.
Такая ситуация возникать не должна. Даже у незаменимого гения должен быть кто-то, кто хоть как-то, но доделает задачи после его непредвиденного и внезапного ухода… куда-нибудь. И об этом (о подстраховке и дублировании обязанностей) должен заботиться руководитель проекта, а PM считать сроки и риски, как я понимаю.
Или это затеяли лохи 🙂
Наверно, бестолково объяснил.
Никто не уходил. Просто идет проект и на нем нужно пополнение.
Даже проект не супер-пупер спешный, но скажем через пол года релиз.
В такой ситуации не сможет компания позволить нанять совсем неплофильного специалиста и переучивать его.
В такой ситуации, да, даже знающему близкие области чтобы въехать понадобится минимум три месяца, это смысла не имеет.
Но я некоторым образом сомневаюсь, что гипотетические знающие-то-же-самое спецы помогут в данной ситуации.
Им придется въезжать в идеологию конкретного проекта. Те же месяцы.
Я к тому, что полгода — это срок для проекта. Ну, не для всего проекта, а для проекта внутри большого проекта — выпустить прототип, к примеру, или подсистему некую, или адаптировать к другому серваку.
Это значит — еще на берегу догововариваться, планировать и набирать команду. А потом, или доплывет корабль, или потонет. В море команду не пополнить; даже если кто спрыгнет, придется меньшим составом обходиться..
>В такой ситуации, да, даже знающему близкие области чтобы въехать >понадобится минимум три месяца, это смысла не имеет.
Это не так. Если человек знаком с технологиями и использованными framework’ам и проект не размера титаника, то человек освоиться гооораздо быстрее чем за 3 месяца.
В это же время человек незнакомый с конкретными технологиями потратит время на разобраться с технологиями + разобраться с проектом.
>В море команду не пополнить; даже если кто спрыгнет, придется меньшим >составом обходиться
Мне не нравиться сравнение проектов в IT с альпинизмом или морскими путешествиями. То, что я вижу, что бизнес гораздо более мобилен (люди приходят и уходят), чем в том же морском пушествие.
В этом смысле мне нравиться agile. Он гораздо больше расчитан под то,
что что-нибудь пойдет не так как расчитано и что изменения — это нормальная
часть процесса.
>Это не так. Если человек знаком с технологиями и использованными framework’ам и проект не размера титаника, то человек освоиться гооораздо быстрее чем за 3 месяца.
Я же и говорю — если знаком с близкими технологиями 🙂 А не с используемыми.
Время, оно летит быстро. Я, скажем, лет пять как время от времени что-то делаю на J2SE. Прототипы, куски кода, доработка. Ничего не делал на J2EE. И совсем не гарантирую, что за три месяца начну на том же уровне что-то делать на J2EE. Три месяца — это тьфу, ноль.
Вы можете сказать — возраст, проблемы там, не может человек по 15 часов сидеть погруженным в технологии… Молодой сможет, типа.
Не-а. Есть уровень освоения любой технологии, доходя до которого, возникают вопросы, на которые нет ответов ни в книгах, ни в документации, и остается только методом тыка подбирать эффективные решения каких-то задачек (альтернативный вариант — стать участником разработки, например, MySQL — кому это надо? жрать нечего будет).
До этого уровня за три месяца никто не дойдет.
>То, что я вижу, что бизнес гораздо более мобилен (люди приходят и уходят), чем в том же морском пушествие.
Это касается кодеров и тестировщиков. Не более.
Уход/смена кого-то из определяющих идеологию — задница.
Частично я согласен, а частично я не согласен.
То, что вы описываете — имен уход/смена определяющего идеологию и тянущего проект. Это действительно — таки задница и за 3 месяца замена не появиться.
Но, замена и дополнение человека не супер ключевого — вполне потребует меньше 3 месяцев.
Опять же, ведь не обязательно в крайности лезть — либо самый главный программист, которые единственный все знает или все умеет или тупой кодер, набивающий из тетрадки умного программиста код.
В большенстве проектов — есть достаточно большная прослойка людей, которые потихоньку делают свой модуль с уже четко очерченным интерфейсом, подфикшивают не слишком сложные баги и т.п. Для этого вполне требуется интеллект (то бишь уже не кодер), но не обязательна какая-то зведность. И как раз эти вещи без знания технологии — делать просто невозможно, а зная ее — можно начать делать на незнакомом проекте достаточно быстро.
кстати может быть и не все dead, например сейчас зарплаты perl программеров выше чем php. Так как язык прошел свою популярность, но остались системы и проекты которые нужно дальше развивать, а новый перл программеров почти нету.
да и кто знает где это пригодиться, я не программер, зарабатываю на жизнь администрированием цисок, но еще в институте выучил ради интереса дельфи, потом как начал с линуксами разбираться выучил перл. и не считаю, что это зря.
Перл мне офигенно помогает в работе, очень много рутины я автоматизировал именно через перл, криво косо 🙂 но тем не менее это все работает. Сейчас делаю один проект и там нужно настроить около 200 железок, Написал на перле скрипт который парсит экселевский файл с настройками для каждой железки и создает конфиги, а на дельфи написал программу котора позволяе выбрать нужный конфиг и по com порту заливает его на циску. В итоге я теперь пишу конфиги в экселе, отсылаю файл заказчику а его монтажники сами настраивают циски через мою программу.
Сейчас just for fun делаю один стартап, пишу его на php/kohana ( чтобы потом было легче найти человека на поддержку проекта). так изучение php у меня заняло около недели, так как язык очень похож на перл.( может коммерческую разработку я и не потяну по качесву кода, но для моих нужд хватает)
Резюмируя, я хочу сказать, что нельзя говорить что вы убили на дельфи полтора года, вы ведь не только изучали синтаксис языка, а изучили новые алгоритмы, расширили кругозор.
Я разобью на несколько частей вашу мысль
а) Зарплаты по старым технологиям могут быть высокие, так как специалистов владеющих ими мало.
Да, так оно и есть, до тех пор пока технология не становится мертвой. И работать на этой технологии, чтобы получить немного лишних долларов — не самый лучший метод, так как в какой-то момент (достаточно скоро) технология умрет совсем и поэтому это достаточно сомнительное вложение денег.
Кстати, Perl — прекрасно здравствующий язык, просто не на пике своей популярности.
б) Нельзя назвать полностью убийством времени, так как остаются какие-то останочные знания.
Да, они остаються, но откровенно немного. Ну скажем 10%. Получается, что 5 лет работы на мертвой технологии X — эквиваленты 6 месяцам работы с чем-то актуальным.
К тому же, первый извученный язык/технология/операционка — имеет очень большую ценность, так как разбираешься с тем как вообще программировать, алгоритмы, типовые решения. Второй — менее важен, так как добрых 50% перекрывается с первым, десятый — уже фактически не приносит никакой прибыли.
Поэтому когда умирает (в мире или в голове) 5 и 6 изученный язык/технология, то после него сухого остатка остается еще меньше, чем 10%.
Наше время прогресса: одни умирают, другие рождаются. В этом нет ничего страшного. Проблема только в том, что можно не успеть осваивать все знания.
Приходится постоянно учиться чтобы хоть как то успевать за всем новым, что появляется. ТАков нынешний век.
А что тут сделаешь? У меня ситуация почти один в один. Приходиться поспевать. Проблем то не очень. Что главное в нашем деле? Алгоритмическое мышление. А куда оно денеться? Всега при себе. Языки тоже не очень меняються… Какой проблем? За месяц с любой технологией можно разобраться.
Да в целом я согласен. Так оно и есть.
Просто, по сравнению с другими специальностями — эта часть очень ярко выражена.
Ну почему же вы считаете это все умершим?
Да, технологии умерли, однако опыт остался. А опыт — и есть самое ценное.
Опыт = знания технологии + общие знания
Так вот, то что вы называете опыт, который остался — это общие знания. Общих знаний в результате остается достаточно немного.
Точнее даже так, для первой изученной технологии/языка — общих знаний остается много, а вот в каждой последующей технологии — все меньше и меньше.
не зря мне бейсик,паскаль и дельфи не нравились никогда 🙂
Про ДОС вообще отдельная тема. Линуксы рулить начинают в этом отношении.
Например в данном моменте пишу прогу для балансировочного станка на линуксе.
И пусть кто скажет что я не прав.
Нельзя говорить вобще про изучение чего либо что это было зря. Так мозг развивается. Вы зато поняли общие принципы программирования. И теперь зато эти языки как орешки щелкаете.
Согласить, говорить, что было зря — это черезчур.
Скорее я говорю, что объективная и субъективная стоимость изучения многих вещей
а) Быстро падает
б) Может быть мала изначально.
Вот это кент я понимаю. На линуксе он пишет… Толи я от жизни отстал… Толи програмирование так рвануло вперед. Жутко становиться. Так недолго начать на Виндовс ХР писать… И где таких лечат?
Пожизненное самообучение на уровне апдейтов или даже апгрейдов — это не только нормально, но и хорошо. Всему свое время, ни одна работа не должна быть сделана дважды. Ты программист, тебе к этому не привыкать, подсознательно ты приготовился даже к сценарию автоматизации всего программирования в мире с помощью ИИ. И я к этому готов с 18 лет. Вот кому не завидую, так это уволенным детройтским РАБочим. В свои 18 они предполагали совсем другой сценарий и вряд ли представляли себе, что во вторую полусотню лет им необходимо будет начинать вторую карьеру чуть ли не с нуля, при испаряющейся на глазах корпоративной пенсии. Хотя Тоффлер писал о таких вещах еще тридцать лет назад, но мало кто его слушал. Так что наше положение отнюдь не хуже всех, нечего тут жаловаться.
Скажем так, то что я написал — это скорее констатация факта, чем жалоба.
>Ты программист, тебе к этому не привыкать, подсознательно ты приготовился даже к >сценарию автоматизации всего программирования в мире с помощью ИИ.
Мне эта фраза напомнила фильм Джентельмены удачи. Там было что-то типа. «Вы — джентельмены удачи. Украл, выпил — в тюрьму, украл, выпил — в тюрьму. Романтика!»
А если серьезно, то просто я это говорил в сравнении с профессиями не требующих по крайней мере upgrad’ов. Причем не хуже оплачиваемых и не менее интересных.
Кстати, есть уматное видео, на тему того, что все развивается очень быстро и половина информации которую студент учил на 1-ом курсе, будет DEAD уже на 3 курсе обучения: http://www.youtube.com/watch?v=Mmz5qYbKsvM
Отличное видеоо… просто отличное.
Закину в конец статьи.
Вот об этом я как раз и говорил… а то все говоря — ничего не устаревает и база остается.
С той скоростью как все меняется, то все за 10 лет только и остается тооооненькая база от того, что зналось 10 лет назад.
Мне фильм тоже понравился. Есть о чем задуматься.
А насчет профессии… Ты сам такую выбрал. При желании можно поменять и не раз. Главное, есть голова на плечах.