Здравствуйте, Geometros, Вы писали:
G>Работаю в известной фирме. Выпускает известную продукцию со встроенным ПО. G>НО КОД. БОЖЕ мой, такое г.....
G>Собственно свои мысли по поводу кода высказал начальству.
G>Знаете, что они сказали. G>А мы знаем, что г..... Но оно продается и мы не собираемся ничего менять и вкладывать кучу бабла в смену архитектуры.
G>Вот так-то
Мы сперва в отделе (я в ВУЗе работаю) писали все правильно. Работы было валом.
Пришел новый шеф и сказал: "хорошая програ та — которая нравится юзверью".
Переделали все по быстрому и сидим в КС гоняем . Работает ну и хорошо.
Так и начальству. Ему капуста нужна а не сколько у вас там пробелов на отспуп идет и как вы переменные обзываете.
Есть вариант только обосновать, что через Н месяцев/лет, ваша система сдохнет и капуста кочится вот тогда может и почешутся.
А вы хоть раз сталкивались например с такой ситуацей —
Пришел программер, ему дали код и сказали дорабатывай
через некоторое время он всем стал говорить — какая красивая архитектура, какой простой, понятный и красивый код, хочу пожать руку программисту
которые его писал
Обычно я слышал крики — что за г... кто это разрабатывал ???
А все почему, потому что у каждого свой стиль. Свое видение. И часто новому человеку тяжело врубаться
в архитекуру проекта и разбираться в коде компонент, и он это списывает недопонимание на тупость предыдущего разработчика.
На самом деле в 99999 из 100000 случаев вы услыщите ругань чужого кода. (я слышу ругань чьего то кода от коллег, от друзей, по аське, по телефону, под пиво ..и не разу не слышал слов о красоте чужой архитектуры и кода.)
Это нормально.
Нужно обращать внимание все таки на другие вещи.
Например, как долго вы тратите времени на поиск ошибок и на их исправление(инкапсуляция степени ответственности компонент, хорошая архитектура, комментарии и тд). Как долго вам приходиться думать как продукт развивать и степень сложности этого процесса(масштабируемость), как распаралеить работу над развитем продукта в команде и тд и тд. и тд.
Здравствуйте, Geometros, Вы писали:
G>А мы знаем, что г..... Но оно продается и мы не собираемся ничего менять и вкладывать кучу бабла в смену архитектуры.
Были и другие прецеденты — народ приходил, говорил код г.., потом год его переписывал и получал в результате не многим лучший код.
Здравствуйте, Vadimio, Вы писали: V>Совершенно нормальное явление. Видимо вложение в модернизацию ПО просто финансово неоправдано, или сложно просчитать, принесет ли это реальную прибыль.
Кардинально не согласен. См. Мартин Фаулер "Рефакторинг. Улучшение существуешего кода"
Пример:
Я потратил 1 день на дописание новой возможности в проект( быстрее, быстрее, клиент ждет ). Потрать я неделю этот код было бы проще сопровождать дальше. Итого: тратим неделю сейчас, экономим две в течение следущегоо года
Здравствуйте, Geometros, Вы писали:
G>Знаете, что они сказали. G>А мы знаем, что г..... Но оно продается и мы не собираемся ничего менять и вкладывать кучу бабла в смену архитектуры.
G>Вот так-то
Извлечь максимум дохода при минимуме затрат — это цель любого бизнеса. Повышение качества кода стоит дорого. Поэтому от начальства другого ответа не дождешься — продукт-то работает.
Проходили и продолжаем... У меня похожая ситуация, только в другой области. Не успеешь проверить какую-нибудь идею, начальство увидит и тут же всем говорит о том, что есть работающая программа, делающая то-то и то-то. Отсюда и количество незакрытых багов, многие из которых живут в коде годами.
Здравствуйте, Tiamer, Вы писали:
T>А вы хоть раз сталкивались например с такой ситуацей - T>Пришел программер, ему дали код и сказали дорабатывай T>через некоторое время он всем стал говорить — какая красивая архитектура, какой простой, понятный и красивый код, хочу пожать руку программисту T>которые его писал
Конечно. И даже общались с предшественниками, и дорабатывали, и дописывали, и работало. Добавлю, что проект выполнялся на ПЭВМ "Искра-226" на ее версии BASIC (кто сталкивался — тот поймет). Я с тех пор ни такого кода, ни такой документации, ни такого отношения к работе никогда не видел.
T>Обычно я слышал крики — что за г... кто это разрабатывал ???
T>А все почему, потому что у каждого свой стиль. Свое видение. И часто новому человеку тяжело врубаться T>в архитекуру проекта и разбираться в коде компонент, и он это списывает недопонимание на тупость предыдущего разработчика.
T>На самом деле в 99999 из 100000 случаев вы услыщите ругань чужого кода. (я слышу ругань чьего то кода от коллег, от друзей, по аське, по телефону, под пиво ..и не разу не слышал слов о красоте чужой архитектуры и кода.)
Это потому, что хорошая работа относится к вещам, на которые обращают намного меньше внимания, чем на плохую. Часто ли вас хвалят на планерках? А ругают? А часто ли по делу? Лично мне иногда доставалось "для профилактики" (выражение начальника, случайно мною услышанное).
T>Это нормально. T>Нужно обращать внимание все таки на другие вещи. T>Например, как долго вы тратите времени на поиск ошибок и на их исправление(инкапсуляция степени ответственности компонент, хорошая архитектура, комментарии и тд). Как долго вам приходиться думать как продукт развивать и степень сложности этого процесса(масштабируемость), как распаралеить работу над развитем продукта в команде и тд и тд. и тд.
А в проекте, где я сейчас работаю, масса блестящих, почти гениальных, идей, похоронена под кучей процедур по 800-1500 строк, спагетти-кода и прочих маленьких прелестей типа имен констант ONE, TWENTY, FIFTY.
Иногда в хорошо, казалось бы, знакомом коде встречаю совершенно неожиданные вещи, которых до этого год не замечал.
T>Все это мое личное ИМХО на истину не претенд.
Здравствуйте, wraithik, Вы писали:
W>Здравствуйте, LuciferMoscow, Вы писали:
LM>>Здравствуйте, Vadimio, Вы писали: V>>>Совершенно нормальное явление. Видимо вложение в модернизацию ПО просто финансово неоправдано, или сложно просчитать, принесет ли это реальную прибыль. LM>>Кардинально не согласен. См. Мартин Фаулер "Рефакторинг. Улучшение существуешего кода"
LM>>Пример: LM>>Я потратил 1 день на дописание новой возможности в проект( быстрее, быстрее, клиент ждет ). Потрать я неделю этот код было бы проще сопровождать дальше. Итого: тратим неделю сейчас, экономим две в течение следущегоо года
W>Полностью согласен. W>На примере 1С. А еще есть толпа программистов, который слушаются всегда главбухов и решают задачи в лоб. А так делать не надо. И вообще заказчик != проектировщик, и которые говорят что надо сделать именно так, а не мне надо увидеть что-то, обычно у них либо много денег, либо они умнеют, ну когда деньги кончаются. Т.к. программа написаная "в лоб" обычно в сопровождении очень дорогая.
Похоже что товарищам из "известной" конторы не нужно сопроваждать код — "Работает, продается? Ну и ладно, а там видно будет"
W>ЗЫ. Интерфейсы и .NET рулят. Они просто заставят писать читабельный и расширяемый код.
"I love Borland and zheludi" (C) 9600 бот и все, все, все...
Здравствуйте, Geometros, Вы писали: G>Работаю в известной фирме. Выпускает известную продукцию со встроенным ПО. G>НО КОД. БОЖЕ мой, такое г..... G>Собственно свои мысли по поводу кода высказал начальству. G>Знаете, что они сказали. G>А мы знаем, что г..... Но оно продается и мы не собираемся ничего менять и вкладывать кучу бабла в смену архитектуры. G>Вот так-то
Мой знакомый когда приехал as support в компанию, исполльзующую их софт слегка ... "был в шоке". Сидят бобики и набивают в эту прогу. Его мысли:
Я знаю сколько сейчас там незакрытых багов
P.S. У большей части проекта код превращается в гадюшник
ЗЗдравствуйте, Geometros, Вы писали:
G>Работаю в известной фирме. Выпускает известную продукцию со встроенным ПО. G>НО КОД. БОЖЕ мой, такое г.....
G>Собственно свои мысли по поводу кода высказал начальству.
G>Знаете, что они сказали. G>А мы знаем, что г..... Но оно продается и мы не собираемся ничего менять и вкладывать кучу бабла в смену архитектуры.
Совершенно нормальное явление. Видимо вложение в модернизацию ПО просто финансово неоправдано, или сложно просчитать, принесет ли это реальную прибыль.
G>Так значит не так уж хорош капитализм, как его все нахваливают
А ты в школе на пятерки учился?
Или ты стометровку за 9 секунд бегаешь?
Мир не идеален...
Здравствуйте, LuciferMoscow, Вы писали:
LM>Пример: LM>Я потратил 1 день на дописание новой возможности в проект( быстрее, быстрее, клиент ждет ). Потрать я неделю этот код было бы проще сопровождать дальше. Итого: тратим неделю сейчас, экономим две в течение следущегоо года
Это есть не факт (имхо). Все зависит от того, сколько это ПО проживет, сколько народу поменяется за время его сопровождения и т.п. Простой пример — вы сейчас затратили н-ое время на усовершенствование, потом еще одна фича не устроила и поехали...
В итоге — сроки провалены, зато все универсально и красиво...Здесь, как в пивопитии, не надо крайностей .
Здравствуйте, Privalov, Вы писали:
P>Здравствуйте, Geometros, Вы писали:
G>>Знаете, что они сказали. G>>А мы знаем, что г..... Но оно продается и мы не собираемся ничего менять и вкладывать кучу бабла в смену архитектуры.
G>>Вот так-то
P>Извлечь максимум дохода при минимуме затрат — это цель любого бизнеса. Повышение качества кода стоит дорого. Поэтому от начальства другого ответа не дождешься — продукт-то работает.
Придут энергичные конкуренты и вытеснят лентяев с рынка. Если не будешь бежать — останешься на обочине. В краткосрочной перспективе конечно может это и не так заметно, но вот в долгосрочной...
Здравствуйте, Geometros, Вы писали:
G>Работаю в известной фирме. Выпускает известную продукцию со встроенным ПО. G>НО КОД. БОЖЕ мой, такое г.....
G>Собственно свои мысли по поводу кода высказал начальству.
G>Знаете, что они сказали. G>А мы знаем, что г..... Но оно продается и мы не собираемся ничего менять и вкладывать кучу бабла в смену архитектуры.
G>Вот так-то
По молодости я также страдал максимализмом.
С возрастом это проходит.
Что касается темы, то вспомнился анекдот.
Сидит папа программист в глубокой отладке.
Сын его спрашивает: "Папа, а почему солнце каждый день всходит и заходит"
Отец: "А что действительно каждый день всходит и заходит?"
Сын: "Каждый"
Отец: "Ты это проверял?"
Сын: "Проверял"
Отец: "Ничего не трогай!"
Здравствуйте, Geometros, Вы писали:
G>Здравствуйте, Privalov, Вы писали:
G>Так значит не так уж хорош капитализм, как его все нахваливают
гениальное открытие, поздравляю!
Здравствуйте, Geometros, Вы писали:
G>Здравствуйте, MShura, Вы писали:
MS>>По молодости я также страдал максимализмом. MS>>С возрастом это проходит.
G>Ну или то, что вы написали, — старческое опускние рук. Это с какой стороны посмотреть
Скажите пожалуйста много ли раз вы правили чужой код?
Сколько проектов написали в комманде?
Здравствуйте, LuciferMoscow, Вы писали:
LM>Здравствуйте, Vadimio, Вы писали: V>>Совершенно нормальное явление. Видимо вложение в модернизацию ПО просто финансово неоправдано, или сложно просчитать, принесет ли это реальную прибыль. LM>Кардинально не согласен. См. Мартин Фаулер "Рефакторинг. Улучшение существуешего кода"
LM>Пример: LM>Я потратил 1 день на дописание новой возможности в проект( быстрее, быстрее, клиент ждет ). Потрать я неделю этот код было бы проще сопровождать дальше. Итого: тратим неделю сейчас, экономим две в течение следущегоо года
Полностью согласен.
На примере 1С. А еще есть толпа программистов, который слушаются всегда главбухов и решают задачи в лоб. А так делать не надо. И вообще заказчик != проектировщик, и которые говорят что надо сделать именно так, а не мне надо увидеть что-то, обычно у них либо много денег, либо они умнеют, ну когда деньги кончаются. Т.к. программа написаная "в лоб" обычно в сопровождении очень дорогая.
ЗЫ. Интерфейсы и .NET рулят. Они просто заставят писать читабельный и расширяемый код.
Здравствуйте, Tiamer, Вы писали:
T>А вы хоть раз сталкивались например с такой ситуацей - T>Пришел программер, ему дали код и сказали дорабатывай T>через некоторое время он всем стал говорить — какая красивая архитектура, какой простой, понятный и красивый код, хочу пожать руку программисту T>которые его писал
Я сталкавался У меня в конторе идет работа над одним мегапрожектом, некоторые участки кода которого датированы 99 годом и пришли к нам от третей конторы. Не могу конечно сказать что нравится абсолютно все — есть конечно свои косяки. Но чувство благодарности за хороший код — не такое уж редкое явление.
T>Обычно я слышал крики — что за г... кто это разрабатывал ???
T>А все почему, потому что у каждого свой стиль. Свое видение. И часто новому человеку тяжело врубаться T>в архитекуру проекта и разбираться в коде компонент, и он это списывает недопонимание на тупость предыдущего разработчика.
+1
T>На самом деле в 99999 из 100000 случаев вы услыщите ругань чужого кода. (я слышу ругань чьего то кода от коллег, от друзей, по аське, по телефону, под пиво ..и не разу не слышал слов о красоте чужой архитектуры и кода.)
T>Это нормально. T>Нужно обращать внимание все таки на другие вещи. T>Например, как долго вы тратите времени на поиск ошибок и на их исправление(инкапсуляция степени ответственности компонент, хорошая архитектура, комментарии и тд). Как долго вам приходиться думать как продукт развивать и степень сложности этого процесса(масштабируемость), как распаралеить работу над развитем продукта в команде и тд и тд. и тд.
T>Все это мое личное ИМХО на истину не претенд.