Udostępnij za pośrednictwem


Как стать хорошим программистом? (часть 1 из 3)

?? ????? ???? ? ??? ????? ?? ????. ??? ?????, ??? ??? ????? ??????, ??? ?????. ?? ??????? ????? ?????? ???????? ?????????? ??????????: «????????, ? ???????? ????????, ?? ?????? ?????? ????? ?????????????. ???????????, ??? ??? ???????? ??, ??, ???????? ?????? ?? eldar.com» ???, ?????? ???? ??????????? ??????? ? ?????????, ? ? ????? ???? ??????? ?? ??????????? ???, ????????? «??? – ??????». ??-?-?... ??, ?? ???????? ? ??????, ?????? ?? ???????? ? ??? ??? ?? ????????, ??...

? ?????, ??? ??? ??????,
???? ? ???????????? ?????...

??-??????, ????????? ????? ????????.

?????? – ?? ??????. ?????? – ????? ?????. ??????? ?????, ??? ?? ?????, ? ?????????? ?????? ? ???, ??? ??? ??? ??????. 90% ????????? ????? ??????? (??????????, ??? ?? ????? ???? ???-?? ????? 98%) ?? ????? ?? ?????????? ??. ??, ??? ?????? ???, ?? ???????? ?? ????????????. ???, ??????, ???????????? ?? ???????????. ??? ???, ?????? ????? – ????????? ?????? ??????????. ? ????? ??????, ???? ?? ??????????? ????? ??? ???????? ????? – ??? ?????????, ? ???????????????? ???????????? ???????????? ? ???? ??????????? ??????? ???????? ???????????????? ????? ???????. ???? ???????????? – ????????? ????: ?? ???? ?? ????? ??????? ??? ???? ?? ???????.

??-??????....

???, ??? ????? ??????? ?????????????. ????????? ?????? ???? ? ???????, ??? ???????, ?????????? ????????????. ???????????? ????????? ????? ????????? ?????????? IT, ? ???????? ? ???? ??? ? ?????????????, ? ????????????????.

????, ?? – ???????? ????????. ???????????? ???? ????? ??? ????????? ?????????, ?? – ???. ??, ??, ??, ?? "???", ? ???, ???, ????? ???????, ????????????? ?????? ?????. ??, ??? ???, ???????? ???? ????. ????? ????? ???????? ?? ????? ???????????, ??????????? ???? ???????, ????????? ??? ????????? ??????? ?????? ??????????, ? ????? ?? ????????, ??? ?? ?? ???????, ????? ?????????????, ???? ?????? ?? ??????????... ??, ??, ???? ???? ????? ???????, ?? CIO – ??? ???, ? ?? ???? ?? ??? ??????. ??-????????, ???? ??????? ???????? ? ?????? ??? ??? ??? ???????? ??????? ????????? ??? ??????, ??? ?????? ????????, ? ??? ?? ??????.

??, ??, ??, ? ??????????... ?? ???-????! ???? ?????????? ?? ???????? ????????????? ????????? 21 ????, ??? ?? ?????? ACM, ??? ?????????????? ?????? ????? «???????» ??? «????????», ??? ?????? ?? ????????????? ?????? ????? MarketWatch, ??? – ????. ??, ?????? ? ??????????? ? ????? ????????????? ?????????, ?? ??????? ??????.

??? ????? ???? ??????? ???????. ????????? ?? ?????????? ?????????? ????????. ??????? ????? ?????????????, ????? ??? ???????? ??, ??????, ???. ?? ????, ??? ????????????? ?? ??????. ? ??? ??????? ????? ?????????? ???????. ??????? ????? ??? ???????? ?? ????? ?? ????????? ?????. ??, ????? ????, ?? ????????. ?????? ???? ??? ??????? ?????? ???? ??? ???????????, ?????? ????? ?? ??? ?? ?????????. ? ?????, ??????? ?????? ????? ?????? ??? ?????????????, ????? ???????????? ?? ????? ?????. ??????? ?????? ????????

?? ????, ?? ?????? ??????? ?????????, ??? ??? ??? ????????? ? ?????? ??????? ??????? ????????, ? ??? ??????, ?? ?????? ?????? ???????? «?????? ?? ...», ??, ??? ?????, ??? ?????????? ??????? ????? ?????? ?????, ? ?? ?????? ????? ???????????????? ?? ????, ???, ?? ???? ??? ????????? ????? ?????, ???? ??? ?? ????

??, ??????. ???? ????? ??????? ?????????: «?? ????? ????? ?? ????.» ??? ?? ??? ??? ?? ???????? ?????? ?????????? ???-???, ? ?? ?????, ????? ? ??? ? ???? ??????? ??????? ??? ?????. ? ?????? ????? ???????? ??? ??????? ??????????, ? ???? ?? ???, ??? ???????? ??? ??? ?????? ????? ? ???? ?????

??, ? ?? ? ???????????????? – ??? ????????? ???? ????? ???? ????. ?? ??????, ???? ????? ??????? ? ??? ???-???? ????.

Comments

  • Anonymous
    January 01, 2003
    Erlinn, надеюсь вам ответят, а пока проскользнувшая мысль... "программер, застрявший в одной из учетных систем российского производства" Если вы застряли в учетной системе российского производства, то значит у вас и эксплуатация вашей системы тут же под боком. А кто лучше может помочь с проблемами с эксплуатации, чем программер, который эту систему делал? То есть, не знаю как это у вас реально обстоит на месте, тут уж вы сами осторожненько примерьтесь со своим пассажирским самолетом, но выглядит так что при проблемах на живой системе можно вызываться "помогать" - и должно быть безопасно для текущей работы, посколькольку руководству это обычно нравится, и навык в администрировании, особенно "пожарном" А там глядишь, часто не у вас окажется что не так, а там в системе что неправильно подкрутили или в базе данных. Вот и опыт админа потихоньку.

  • Anonymous
    January 01, 2003
    Во! Письмо не мальчика, но мужа. И на фиг эти дампы!

  • Anonymous
    January 01, 2003
    Erlinn: ну, и вопросики у вас. Что бы тут ни говорил КоматоЗо, а я в спорах админ против программиста никогда не участвовал. Знаю, что ребятам хорошо и радуюсь за них. Мне вот тоже неплохо, тьфу-тьфу-тьфу... В общем, готового ответа на это у меня как-то нету. То есть, для каких-то конкретных видов админов, я могу дать советы, а вот полную картинку всех возможных админов - тут как-то трудно. Никогда не задумывался в этом ключе. Но вчерне, вы правы. Основные разновидности:

  • универсал на все руки (обычно для малых фирм)
  • специализированный (скажем, только  Exchange Server, или пачка машин с SQL Server, или еще более популярно - Web farm с вебсерверами)
  • админ-служба поддержки фирмы (не уверен, насколько его можно называть админом, но иногда называют)
  • админ по безопасности (тоже специализированный, но очень особая специальность) Насчет админа-пожарника, не думаю. Любая нормальная фирма постарается найти админа-непожарника, чтобы пожарник не требовался. Наверное, есть и другие, просто с ходу в голову не лезет...
  • Anonymous
    January 01, 2003
    Как-то так. Только админ-пожарный это не свойство админа, насколько мне это видится. Это свойство ИТ подразделения фирмы обычно. А вообще, Эльдар, про споры это не к тебе было. Я вижу, что тематика твоей серии совсем другая. Тут чего спорить - хочешь быть программистом - будь им. Лишь бы счастье было =)

  • Anonymous
    January 01, 2003
    The comment has been removed

  • Anonymous
    January 01, 2003
    Почему нафик дампы? Нифига не нафиг. =) И интересно и, подозреваю, в процесс изучения как что работает смогу лучше понимать/предсказывать поведение ПО.

  • Anonymous
    January 01, 2003
    To sure: САПеры базисники получают обычно больше АБАПеров. А консультанты-многостаночники и того, больше. Не имея, в идеале, никакой потребности АБАПить. =) Админом мне быть несколько интереснее, потому что другой взгляд на проблему - "перспектива издалека", типа. =) To Eldar: не стану программистом. Наверное. Не интересно делать кирпичи, когда можно построить город. Шучу, конечно. =) Но правда не очень интересно - просто психология и склад ума такой.

  • Anonymous
    January 01, 2003
    Кто сказал, что не нравится? =) Мне вот например, очень нравится. И программистом я стать не хочу. Хотя, чую, придется что-нибудь такое-этакое изучить просто для того, чтобы хоть базово научиться читать дампы для первичного траблшутинга, пока поддержка еще не проснулась ;)

  • Anonymous
    January 01, 2003
    Sure: В точку! Как раз об этом будут части 2, 3 и дополнительная еще не написанная 4, если соберусь. Коматозо: Ну, можно и не на фиг. Но имей в виду, ты так быстро программистом станешь. Что в чем-то и неплохо, но см. будущую часть 3 к этому посту (а также 4, опять же, если соберусь)

  • Anonymous
    January 01, 2003
    To Иван Михайлов: человек, который читает настолько выборочно вряд ли когда-то изменит мир =) Я же написал недвусмысленно: "шутка". =) А интересно было не делать первый кирпич, а думать из чего его можно сделать. ИМХО.

  • Anonymous
    January 01, 2003
    BTW, всегда умиляли споры Админ vs. Программер. То, что напишет программер никогда не обретет жизни, если не будет админа. Админу будет не из чего строить систему. Если не будет Архитектора, то и Программер с Админом такого наворотят, что Пользователю это буджет нафиг не нужно. Ну и так далее. Вопрос может быть только в том, какая часть процесса и кому интересна. =)

  • Anonymous
    December 01, 2008
    Вопрос очень непрост. Кроме денег ("САПёры"-программисты получают неплохо и их нужно), есть еще жесткое различие в психологии. Программист - он ТВОРЭЦЪ. Он создаёт мир (его кусочек) и считает, что волен его перекраивать как хочется. Особенно если он самоучка, еще мало работал в больших коллективах или просто в жестких условиях. Он пропитан сознанием, что может написать что угодно и сделает это ЛУЧШЕ, чем N его предшественников. "Программист - это специалист по составлению красивых конструкций из граблей." (с) Alexander 'sure' Podkopaev Админ (правильный админ, как я его понимаю) - он не имеет права на фантазии. Он не имеет права на рассуждения "по логике, оно должно работать так" - он обязан ЗНАТЬ, как это сделано. Даже если оно работает поперек его_личной_логики - понять, КАК и помнить. "Админ - это специалист по использованию красивых конструкций из граблей для дела так, чтобы минимизировать количество болезненных попаданий" (с) Alexander 'sure' Podkopaev Сильно разная психология.

  • Anonymous
    December 01, 2008
    Заинтриговал. Жду с нетерпением.

  • Anonymous
    December 01, 2008
    Когда-то слышал великолепный анекдот о том, чем отличается админ от программиста: Когда у админа что-то не получается, он говорит "странно...", а программист - "логично..."

  • Anonymous
    December 01, 2008
    Пост прямо в тему. Тоже работаю сисадмином. До этого работал пол-года программистом на пол ставки и делал диплом. Так вот, работа сисадмина мне и нравится и не нравится. Нравится работать с телекоммуникационным оборудованием, Linux-серверами, нравится именно процесс настройки. Не нравится тем, что эта работа по минимуму связана с компьютерами (всё отлажено и работает), а больше связана с людьми. 90% всех обращений бывают тривиальны: письмо не отправляется потому что адресата нет, или потому что превышен лимит на размер письма, нет связи потому что завис модем, интернета нет потому что проблемы у провайдера и т.п. Часто приходится выполнять тривиальные действия практически не поддающиеся автоматизации и т.п. Сейчас разрываюсь между двумя направлениями: получить образование по телекоммуникациям и стать инженером по связи - телефоны, маршрутизаторы, голосовые шлюзы, или найти работу программистом (возможно с понижением з.п., пока не набрался достаточно опыта) web-приложений с дальнейшей попыткой уйти в область embedded-систем (запускать на них Linux или NetBSD, программировать на C и Forth). В web-программировании меня пугает зоопарк браузеров, в embedded-системах - редкость рабочих мест. В телекоммуникациях - командировки (ирония судьбы: тем кто создаёт людям возможность не поднимать попу со стула, часто самим приходится ездить).

  • Anonymous
    December 02, 2008
    Subj, собственно. Ну если автор говорит о преимуществах админской судьбы, то логично попросить его осветить и этот вопрос: что должен сделать программер, чтобы попасть в этот мир. И заодно, чем различаются разные роли админов - не только и не столько по набору знаний, сколько по тому, как проходит их повседневная жизнь. Какие там вообще бывают категории? Видимо, админ-одиночка в малой фирме, строевой админ - в большой и хорошо организованной, админ-пожарник - в большой с бардаком, что-нибудь особо ответственное, вроде телефонной компании... Но это все из головы, а как на самом деле? С уважением :)

  • Anonymous
    December 02, 2008
    "не стану программистом. Наверное. Не интересно делать кирпичи, когда можно построить город." Не стану админом. Неинтересно строить город, когда можно изменить цивилизацию. Админ не может создать википедию или freebase.com, да даже и фитюльку вроде smeet.de P.S. первый кирпич делать было, наверное, очень интересно.

  • Anonymous
    December 02, 2008
    "Ну если автор говорит о преимуществах админской судьбы, то логично попросить его осветить и этот вопрос: что должен сделать программер, чтобы попасть в этот мир." Потерять работу, к примеру ;)

  • Anonymous
    December 03, 2008
    The comment has been removed

  • Anonymous
    December 03, 2008
    Эльдар, прошу прощения за оффтоп. Ну а вопрос не совсем праздный, поскольку у меня как раз момент выбора, и я включил локатор в поисках вокруг себя вариантов и информации. Что есть: программер, застрявший в одной из учетных систем российского производства. Потому как семью кормит, и резкие движения будут подобны пилотажным приемам на пассажирском самолете. Один из реальных вариантов - как раз освоение администрирования. Вот кстати, еще наивный вопрос вдогонку: видимо, админу эмиграция будет даваться сложнее, чем программисту? Больше упор на работу с людьми, и больше требований к языку и прочей культурной совместимости. Кто из присутствующих админов (снова извинения перед хозяином блога) поделится своей историей успеха?

  • Anonymous
    December 14, 2008
    Интересная тема. Жаль, что я пропустил все обсуждение, не сразу руки дошли. Я тоже сисадмин. Сначала был программистом, потом (так получилось) перекинулся в админы. А сейчас с удовольвием бы поработал чем-ибудь вроде системного архитектора. Тем более что и задачи уже почти аналогичные, правда с другой стороны, с админской. Может, конечно, архитектором и не получилось бы, но почему и нет.

  • Anonymous
    February 23, 2009
    Подумайте вот о чём. Нет програмистов, нет сисадминов, есть люди. Люди обычно работают лучше, когда знают что они делают, как оно работает в реале, и как должно в идеале. Никто не мешает быть "ТВОРЭЦЪ" админу. Насчет сказаного - "Многое говорить и многое сказать не одно и то же" ВотЪ. я сказал. Думайте.