Pull to refresh

Comments 23

Посмотрев какие вопросы появляются на форумах по программированию, пообщавшись с другими программистами, стало понятно: так везде. Хороший код интересен только тебе.

Вот не надо обобщать. То что вы не смогли попасть в такую компанию, не значит, что их нет. Я вот например работаю в одной из них)
Согласен и поправлю текст.
Правда до сих пор не могу назвать такой компании, которая такой была в 2005:(
Да, и как хорошо, что это не так. Я вот тоже из такой же и знаю еще несколько. А «мутные» компании нужно либо изменять помаленьку, либо уходить оттуда.
чем крупнее компания, тем она более неповоротлива. На это есть как объективные, так и субъективные причины. Понятно, что крупной компании объективно сложнее сохранять гибкость в силу определенных условий организации труда. Но, на мой взгляд, куда большую проблему несут люди на хороших должностях, с хорошими окладами и не участвующие в получении процента от прибыли компании. Они заинтересованы в том, чтобы их положение сохранялось бесконечно долго. И в вашем примере про картинки все достаточно просто — есть отлаженная технология и какая бы кривизна у нее не была, она устраивает, например, учредителей. А тут вы со своей оптимизацией. Вы даете 146% гарантии, что в процессе оптимизации-перехода чего-нибудь не случится? Ведь ваше предложение не санкционировано «сверху», а это порождает две проблемы:
1. если что, великие боссы заметят и могут надавать по голове
2. если все ок, великие боссы заметят и… надают по голове «какого хрена до было все криво?»

В итоге вы можете стать проблемой. Оно надо кому? Смотрите на вещи не с точки зрения оптимизации и красоты, а субъективного удобства и все встанет на свои места.
Получается что субъективно удобно ничего не менять и не вносить предложений по развитию/оптимизации?
Конечно. В бизнесе оптимизация — не самоцель.
Благодарю. С этой стороны на производство я ещё не смотрел.
Можно сменить профессию. Пойти учиться, начать всё с нуля.
Можно реализовать для начала какую-нибудь из старых идей и открыть своё дело.
Размеры финансовых подушек, покрывающие риски для обоих вариантов примерно одинаковы.
Осталось решить чем стоит заниматься, перестать АйТи и начать жить.
Не поможет. Проблема не внешняя, она внутренняя.
Откроете Вы свое дело — и перфекционизм сыграет против Вас, будете писать оптимальный сайт вечно, делать оптимальный ремонт в офисе вечно, подбирать идеальных работников вечно.
Найметесь грузчиком — вместо таскания грузов будете вносить рац.предложения по ускорению переноски грузов на 10%.

Чем бы Вы не занимались — первое что Вам надо сделать до того как чем-то заниматься — осознать несовершенство мира. Совершенный мир несовершенен. На дороге безопаснее всего ехать со скоростью потока, а не со скоростью пдд. Нейросети с нечернобелыми ответами решают задачи недоступные обычным алгоритмам.
Premature optimization is the root of all evil — и это, на минуточку, Дональд Кнут сказал.
Именно так. К сожалению. Подрабатывая грузчиком сделал тележку с верёвкой для более быстрого спуска ящиков из вагона.
Контролируемый перфекционизм — это залог успеха в жизни.
Оба слова важны.
Перфекционизм на самом деле тоже является проявлением лени и недостаточного количества опыта. Слишком долго думать нельзя, нужно работать итерациями, чтобы видеть результат на каждой. Но и бросаться на задачу без обдумывания также нельзя. А еще нужно не бояться выкидывать старое полностью, если есть осознание того, к чему нужно стремиться и если время позволяет.
Ленивый перфекционист — это оксюморон. Стыд, неуверенность, страх — да. Провалить сроки из за того что переделывал одну мелочь десять раз — еще раз да! Не обижайте котиков перфекционистов.
>Хороший код интересен только тебе.

А чем интересен интересный код сам по себе?
Интересным должна быть функциональность продукта, его производительность, его расширяемость, и т.д., и т.п. И себестоимость продукта также входит в понятие «интересности».
Код не должен быть интересным. Он должен быть хорошим. В целом, по моему мнению, код это продукт программиста. И приведённые Вами описания для уже готового продукта аналогичны и для участка кода, которым занимается программист.
Себестоимость интересна и экономия важна, но не доходящая до того, чтобы клиент ждал десятки минут загрузки миниатюр, или программа падала при переключении языка с клавиатуры, а не через выбор языка в трее.
Читая это, смахнула скупую ностальгичную слезу. Пересмотрела свои же старые посты, вспомнила, как это было и каково себя так ощущать. Улыбнулась. И даже вспомнила по такому случаю давно заброшенный пароль.

Если вкратце: автор, не знаю, может, это тебя разочарует, может, нет — но _программистом_ ты пока ещё не был. Судя по приведённым тобой расценкам за труд и за жильё — речь идёт о каком-то достаточно небольшом городке, где IT как такового мало. Вообще, есть огромная разница между “IT обслуживающим”, когда основной бизнес организации далёк от высоких технологий, а IT-отдел там разве что поддерживает необходимую для деятельности инфраструктуру, и “IT производительным”, когда компания производит некоторый высокотехнологичный программный продукт силами своих ударников интеллектуального труда. Это совершенно разные мировосприятия и, до кучи, совершенно разное отношение к работнику. Но что в провинции преобладает первое, и что за этим можно просто не знать, что есть второе — понимаю прекрасно, сама такая была.

И, да, я понимаю, что «критикуя — предлагай». Рецепт, вытащивший из подобной задницы меня лично:
1) сначала удалёнка, а потом переезд в те места, где есть проекты более высокого уровня, чем фотогалерея продажных женщин, и где (ох, я порой сама этому не рада!) ой как смотрят на каждую строчку в code review, внутреннему перфекционисту будет где развернуться
2) на Курсере сидеть. Без шуток. Прочищает мозги, расширяет кругозор и, главное — даёт мотивацию вникнуть в интересные предметные области, в которых оплата труда на порядок (и это не фигуральное выражение) отличается от приведённых тобой сумм.

Ну и в качестве совсем уж живительного, смешного, но местами болезненного — вот этот былинный тред рекомендую, простите за возможный оффтоп: www.sql.ru/forum/actualthread.aspx?bid=16&tid=466654. Опять же, можно смеяться — но меня сильно отрезвило в своё время. Совершать ошибки — это ОК. Но не видеть ничего другого — это зря.
О да, именно после прочтения этого треда курсе так на втором университета, я начал периодически посматривать по сторонам — то Haskell потрогаю, то на Kotlin взгляну, то курс по ФП от Одерски на Курсере пройду и все задачки прорешаю. Сейчас вот подписался на курс по дискретной математике, упоминавшийся как-то на Хабре.
Серьёзно, тред очень стоящий, и его стоит просмотреть хотя бы до середины.
Да, курс по Scala и следующий за ним Reactive Programming — очень хороши. Но что куда ближе к былинному треду на Sql.ru и прочищает мозг вообще на отличненько (я бы сказала, что это нужно знать каждому, называющему себя программистом) — так это Programming Languages от University of Washington. Вот там как раз можно и DSLчики на одном из диалектов Лиспа поколбасить, и в строго-функциональной среде попрограммировать, и с ООП всё это научиться увязывать. После этого становится понятно, почему X. в том треде столь эмоционально реагировал :)
>Несколько лет назад я начал знакомиться с компьютерами. DOS,…
>Мало какому заказчику интересно что его программа может использовать не все 512МБ ОЗУ
>Хостинг… Хостингу отдал больше четырёх лет

Чета как то рассинхрон что ли…
Несколько, в данном случае, это больше 10, но меньше 20. Стоит уточнить в тексте?
Жак Фреско на эту тему хорошо высказался. Цитата не точная: «если вы ждете от мира каким ему нужно быть, то переживете много разочарований». Когда все клиенты, все работодатели или покупатели «не такие», стоит внимательно присмотреться к себе:
1) Возможно вы требуете от мира нереальные вещи.
2) Возможно ваша способность находить нормальных людей не сильно развита и раз за разом вы попадаете в мутные конторы.
«Хороший код интересен только тебе. Работодателя/заказчика интересует лишь результат, а не то каким путём он достигнут. Не удивительно что при таком подходе пользуются более быстрыми решениями вместо максимально подходящих.»

Я конечно огорчу многих, но… Лучший специалист — это тот, который приносит компании больше всего денег. Программист — это не человек, который пишет код. Код — это всего лишь способ решения задачи. А задачи бизнеса, в конечном итоге, сводятся к увеличению чистой прибыли. А ваша, как работника — к увеличению собственной зарплаты. В результате — вполне логичная синергия: помоги компании зарабатывать больше, и компания поможет зарабатывать больше тебе. Твои действия должны приносить кому-то пользу, вполне реальную и ощутимую, иметь ценность для людей, а не просто экономить лишние пару мегабайт в памяти.

Те программисты, которые внутренне целиком и полностью согласны с предыдущим абзацем — зарабатывают 150-200 килорублей, или давно уже «доросли» до тимлидов и руководителей (если конечно хотели), живут припеваючи и в целом вполне довольны своей профессией и жизнью.

Те программисты, которые программируют ради программирования — получают в разы меньше, жалуются на судьбу, профессию, правительство и всемирный заговор.

Вывод: причина не в профессии, а в голове у самого человека.
И в реальном бизнесе всегда можно заняться оптимизацией, но искать проблему надо не изнутри, а снаружи. Т.е. если гулять от проблемы «вот этот метод написан неоптимально и жрёт много памяти», далеко не уйдёшь (и, скорее всего, тебя рано или поздно уволят), а вот если пойти по пути «очень тормозит функция, которой все пользуются 15 раз в день», то вполне можно подвести обоснование под оптимизацию даже при самом тупоголовом начальстве. Проще говоря, надо стремиться улучшать не путь, которым достигнут результат, а сам результат. Это очень тяжело, поскольку внутренний перфекционист не любит вылезать в настоящий мир и смотреть на реальность, а предпочитает докапываться до строчек. Но если удастся его переключить от делания по выдуманному феншую на делание по реальным потребностям, это преобразит жизнь к лучшему.

В крайнем же случае можно удовлетворять манию перфекционизма, программируя ради программирования на опенсорс-проектах в свободное время. Там как раз такие люди и собираются.
Sign up to leave a comment.

Articles