Низкая квалификация работников
От: alexsoff Россия  
Дата: 13.11.11 09:16
Оценка: 2 (1) -2
Устроился на работу, по функциональным обязанностям должен буду отвечать за разработанные проекты. Но дело в том, что уже до меня был написан проект, разработчик которого, мягко говоря, не был "профи". В коде проекта все слои оказались смешаны, в UI размазана бизнес логика и порой присутствуют такие перлы, что можно только закрыть глаза, например конекшен стринги захардкожены жестко в коде и продублированы по всему приложению — бывает даже случается так, что в одном методе встречается 3-4 места с жестко прописанным конекшен стрингом. я не уже говорю о копипасте Бывали места, где имя функции содержало вперемешку кирилический символы и латиницу. Что делать в таком случае? Переписывать проект заново, но сомневаюсь, что это поддержит начальство (проект на 6 человеко месяцев) или оставить все как есть, но в этом случае будем молиться на этого разработчика и думать как бы он не ушел.
Re: Низкая квалификация работников
От: raydac Эстония http://www.igormaznitsa.com
Дата: 13.11.11 09:21
Оценка:
A>Что делать в таком случае? Переписывать проект заново, но сомневаюсь, что это поддержит начальство (проект на 6 человеко месяцев) или оставить все как есть, но в этом случае будем молиться на этого разработчика и думать как бы он не ушел.

я бы переписал, впрочем я обычно так и поступаю всегда, так как еще мин.обороны сша в 70-х выяснило что внесение изменений в готовую софтину на порядки дороже написания новой, но этот подход сейчас считается непрофессиональным и порицается, так что прежде чем менять посмотрите по сторонам и взвесьте последствия для себя
https://github.com/raydac
Re: Низкая квалификация работников
От: __kot2  
Дата: 13.11.11 09:41
Оценка: 75 (16) +4 :))) :))) :))) :))
Здравствуйте, alexsoff, Вы писали:
A>Устроился на работу, по функциональным обязанностям должен буду отвечать за разработанные проекты. Но дело в том, что уже до меня был написан проект, разработчик которого, мягко говоря, не был "профи". В коде проекта все слои оказались смешаны, в UI размазана бизнес логика и порой присутствуют такие перлы, что можно только закрыть глаза, например конекшен стринги захардкожены жестко в коде и продублированы по всему приложению — бывает даже случается так, что в одном методе встречается 3-4 места с жестко прописанным конекшен стрингом. я не уже говорю о копипасте Бывали места, где имя функции содержало вперемешку кирилический символы и латиницу. Что делать в таком случае? Переписывать проект заново, но сомневаюсь, что это поддержит начальство (проект на 6 человеко месяцев) или оставить все как есть, но в этом случае будем молиться на этого разработчика и думать как бы он не ушел.
ну а цель-то какая в итоге преследуется? "сделать всем хорошо" или какая-то конкретная?
если цель поднять свой уровень — занимайтесь переписыванием
если цель — развитие бизнеса компании, то не трогайте ничего, что уже было оттестировано
если цель поднятие чсв, то публично высмеивайте коллегу за его косяки
если цель стать незаменимым в конторе, чтобы получать больше денег, то разберитесь в его коде и пишите в том же духе
если цель внутренняя гармония, то проситесь на другой проект
если цель изучить новые технологии за чужой счет, обьясните начальству, что все проблему уйдут с переходом на немерле и скалу и дописывайте новый функционал на нем.
Re: Низкая квалификация работников
От: alpha21264 СССР  
Дата: 13.11.11 09:48
Оценка: +3
Здравствуйте, alexsoff, Вы писали:

A>Устроился на работу, по функциональным обязанностям должен буду отвечать за разработанные проекты. Но дело в том, что уже до меня был написан проект, разработчик которого, мягко говоря, не был "профи". В коде проекта все слои оказались смешаны, в UI размазана бизнес логика и порой присутствуют такие перлы, что можно только закрыть глаза, например конекшен стринги захардкожены жестко в коде и продублированы по всему приложению — бывает даже случается так, что в одном методе встречается 3-4 места с жестко прописанным конекшен стрингом. я не уже говорю о копипасте Бывали места, где имя функции содержало вперемешку кирилический символы и латиницу. Что делать в таком случае? Переписывать проект заново, но сомневаюсь, что это поддержит начальство (проект на 6 человеко месяцев) или оставить все как есть, но в этом случае будем молиться на этого разработчика и думать как бы он не ушел.


Советую не считать себя самым умным.
Шесть человекомесяцев — это сколько в строках кода?
И сколько тебе лет? Небось 25?

Течёт вода Кубань-реки куда велят большевики.
Re[2]: Низкая квалификация работников
От: alexsoff Россия  
Дата: 13.11.11 09:49
Оценка:
Здравствуйте, raydac, Вы писали:
R>взвесьте последствия для себя
Как я уже сказал, последствия могут быть одни — если этот разработчик уйдет, то я буду поддерживать данный проект.
Re[3]: Низкая квалификация работников
От: raydac Эстония http://www.igormaznitsa.com
Дата: 13.11.11 09:56
Оценка: -1
A>Как я уже сказал, последствия могут быть одни — если этот разработчик уйдет, то я буду поддерживать данный проект.
срок жизни российского разработчика как у танка на поле боя, в топку код
p.s.
пример из жизни, работали с легаси кодом, я оценил в 7 месяцев переписывание целиком, сказали нельзя, четыре месяца писали к нему фичу, через 4 месяца выяснилось что неправильно поняли как что устроено и пришлось все выбросить, а кода то всего 75 000 строк
https://github.com/raydac
Re[2]: Низкая квалификация работников
От: alexsoff Россия  
Дата: 13.11.11 09:56
Оценка:
Здравствуйте, __kot2, Вы писали:
__>ну а цель-то какая в итоге преследуется? "сделать всем хорошо" или какая-то конкретная?
Цель одна: выбрать нужное (переписать все нафиг или надеяться, что разработчик не уйдет)
__>если цель поднять свой уровень — занимайтесь переписыванием
Данный проект не относится к rocket science, да и к тому же я участвовал в создании подобных проектов
__>если цель — развитие бизнеса компании, то не трогайте ничего, что уже было оттестировано
Да склоняюсь к этому мнению, но боюсь наступление времини Ч, когда что-то будет нужно сделать, а уже поздно (приложение ориентировано на российское законодательство)
__>если цель поднятие чсв, то публично высмеивайте коллегу за его косяки
Это подло
__>если цель стать незаменимым в конторе, чтобы получать больше денег, то разберитесь в его коде и пишите в том же духе
Больше денег, к сожалению не светит, не при каких обстоятельствах.
__>если цель внутренняя гармония, то проситесь на другой проект
В свободное время пишу свои.
__>если цель изучить новые технологии за чужой счет, обьясните начальству, что все проблему уйдут с переходом на немерле и скалу и дописывайте новый функционал на нем.
Это почти тот же самый вариант, что и полное переписывание кода.
Re[2]: Низкая квалификация работников
От: alexsoff Россия  
Дата: 13.11.11 10:01
Оценка: :))) :)
Здравствуйте, alpha21264, Вы писали:

A>Советую не считать себя самым умным.

Где я писал про чсв? Напротив, спросил совета.
A>Шесть человекомесяцев — это сколько в строках кода?
Данный период был затрачен этим разработчиком на написание кода с нуля. В этом проекте много копипаста — строчки не считал.
A>И сколько тебе лет? Небось 25?
Да 25, а как это к делу относится?
Re[3]: Низкая квалификация работников
От: Klatu  
Дата: 13.11.11 10:03
Оценка: 2 (2) +4 -2
Здравствуйте, alexsoff, Вы писали:

A>Да 25, а как это к делу относится?


Некоторые дураки думают, что возраст автоматически делает их умнее
Re: Низкая квалификация работников
От: Klatu  
Дата: 13.11.11 10:04
Оценка: 1 (1) -1
Здравствуйте, alexsoff, Вы писали:

A>Устроился на работу, по функциональным обязанностям должен буду отвечать за разработанные проекты. Но дело в том, что уже до меня был написан проект, разработчик которого, мягко говоря, не был "профи". В коде проекта все слои оказались смешаны, в UI размазана бизнес логика и порой присутствуют такие перлы, что можно только закрыть глаза, например конекшен стринги захардкожены жестко в коде и продублированы по всему приложению — бывает даже случается так, что в одном методе встречается 3-4 места с жестко прописанным конекшен стрингом. я не уже говорю о копипасте Бывали места, где имя функции содержало вперемешку кирилический символы и латиницу. Что делать в таком случае? Переписывать проект заново, но сомневаюсь, что это поддержит начальство (проект на 6 человеко месяцев) или оставить все как есть, но в этом случае будем молиться на этого разработчика и думать как бы он не ушел.


Рефакторить или отказаться с этим работать, других вариантов для уважающего себя профи просто нет
Re[3]: Низкая квалификация работников
От: __kot2  
Дата: 13.11.11 10:06
Оценка: +9
Здравствуйте, alexsoff, Вы писали:
A>Здравствуйте, __kot2, Вы писали:
__>>ну а цель-то какая в итоге преследуется? "сделать всем хорошо" или какая-то конкретная?
A>Цель одна: выбрать нужное (переписать все нафиг или надеяться, что разработчик не уйдет)
это не цель. это средство. вы не понимаете, какую цель преследуете. значит, вы неопытный разработчик. значит, от вашего переписывания ни холодно станет, ни жарко. на качество продукта это не повлияет, только займет время, ваше и тестеров и даст новые баги. так бы я размышлял, если бы был вашим начальством

__>>если цель — развитие бизнеса компании, то не трогайте ничего, что уже было оттестировано

A>Да склоняюсь к этому мнению, но боюсь наступление времини Ч, когда что-то будет нужно сделать, а уже поздно (приложение ориентировано на российское законодательство)
не понял

__>>если цель стать незаменимым в конторе, чтобы получать больше денег, то разберитесь в его коде и пишите в том же духе

A>Больше денег, к сожалению не светит, не при каких обстоятельствах.
а чего тогда мозг греете? переживание о судьбе продукта это хорошо, но она не в ваших руках, а в руках начальства.
Re[2]: Низкая квалификация работников
От: MxMsk Португалия  
Дата: 13.11.11 10:17
Оценка:
Здравствуйте, alpha21264, Вы писали:

A>Советую не считать себя самым умным.

Что, вообще нельзя критиковать? Уровень у всех программистов одинаковый?
Re[4]: Низкая квалификация работников
От: alexsoff Россия  
Дата: 13.11.11 10:18
Оценка:
Здравствуйте, __kot2, Вы писали:

__>это не цель. это средство. вы не понимаете, какую цель преследуете. значит, вы неопытный разработчик. значит, от вашего переписывания ни холодно станет, ни жарко. на качество продукта это не повлияет, только займет время, ваше и тестеров и даст новые баги. так бы я размышлял, если бы был вашим начальством

Почему именно разработчик, руководитель да "не опытный"? Я знаю как это все переписать нормально. Моей задача — вынести свое мнение начальству.

A>>Да склоняюсь к этому мнению, но боюсь наступление времени Ч, когда что-то будет нужно сделать, а уже поздно (приложение ориентировано на российское законодательство)

__>не понял
Разве не очевидно, что стоимость внесение изменений в код без архитектуры дороже, чем в организованный?

A>>Больше денег, к сожалению не светит, не при каких обстоятельствах.

__>а чего тогда мозг греете? переживание о судьбе продукта это хорошо, но она не в ваших руках, а в руках начальства.
Я должен выявить риски использования проекта в том виде, в котором он сейчас есть.
Re[5]: Низкая квалификация работников
От: __kot2  
Дата: 13.11.11 10:24
Оценка: 1 (1) +2 -1
Здравствуйте, alexsoff, Вы писали:
__>>это не цель. это средство. вы не понимаете, какую цель преследуете. значит, вы неопытный разработчик. значит, от вашего переписывания ни холодно станет, ни жарко. на качество продукта это не повлияет, только займет время, ваше и тестеров и даст новые баги. так бы я размышлял, если бы был вашим начальством
A>Почему именно разработчик, руководитель да "не опытный"? Я знаю как это все переписать нормально. Моей задача — вынести свое мнение начальству.
да потому что идея дурацкая, ничем хорошим не закончится, не говоря уж про незнание того как пишется "не" с прилагательными.

A>>>Да склоняюсь к этому мнению, но боюсь наступление времени Ч, когда что-то будет нужно сделать, а уже поздно (приложение ориентировано на российское законодательство)

__>>не понял
A>Разве не очевидно, что стоимость внесение изменений в код без архитектуры дороже, чем в организованный?
это для тебя она станет организованной. а придет новый человек, для него твой код будет свалкой гавна. любому человеку именно его стиль кажется самым правильным среди всех.
ты понимаешь, что все, что ты наменяешь, нужно будет заново перетестировать? стоимость этого учитываешь? или ты собрался сразу идеальный код писать? ты уверен, что знаешь как сделать лучше? а насколько лучше? а оно того стоит?

A>>>Больше денег, к сожалению не светит, не при каких обстоятельствах.

__>>а чего тогда мозг греете? переживание о судьбе продукта это хорошо, но она не в ваших руках, а в руках начальства.
A>Я должен выявить риски использования проекта в том виде, в котором он сейчас есть.
правильно. выявил, сообщил. занимаешься текущими делами.
Re[3]: Низкая квалификация работников
От: alpha21264 СССР  
Дата: 13.11.11 10:25
Оценка: 1 (1) -2
Здравствуйте, alexsoff, Вы писали:

A>Здравствуйте, alpha21264, Вы писали:


A>>Советую не считать себя самым умным.

A>Где я писал про чсв? Напротив, спросил совета.

Ну я тебе сказал, что НЕ надо делать.
По моему мнению.

A>>Шесть человекомесяцев — это сколько в строках кода?

A>Данный период был затрачен этим разработчиком на написание кода с нуля. В этом проекте много копипаста — строчки не считал.

Понимаешь... Если программа достаточно маленькая (один мегабайт кода) — то все равно в каком стиле она написана.
Её можно заставить работать просто грубой силой.

A>>И сколько тебе лет? Небось 25?

A>Да 25, а как это к делу относится?

Во первых тащись от того, какой я умный. Ведь я тебя не видел и сразу угадал.

В этом возрасте все (и я в том числе) считают себя самыми умными.
Потом это проходит. А еще потом (если не бросить учиться) действительно становишься умным.

Программы можно писать в разных стилях.
Упорядочивать их вдоль или поперек. Экономить или на одном или на другом.
Если твой предшественник писал в другом стиле — это не значит что его стиль хуже.
Более того — у тебя есть шанс посмотреть в чем его стиль лучше.
А когда поймешь — использовать плюсы и его и своего стиля.

Например.
Во всех учебниках написано, что в программе не должно быть глобальных переменных.
А я использую голбальные переменные в программах меньше мегабайта.
А почему? А потому, что до мегабайта — это маленькая программа.
И мне удается её держать целиком в голове. Экономия такая.
А большую программу уже пишу по другому.
Ну да, имена переменных должны быть такие, чтобы было понятно зачем они.

Ну и вообще — умение понимать чужие исходники — отдельный скилл.
Имея его ты становишься могуч как титан.
Берешь чужие исходники, немного допиливаешь, может быть слегка перекомпоновываешь
и микроскопическими усилиями получаешь новый продукт.
А совсем умные умеют писать так, чтобы читать легко было

И вообще — марксизм не догма, а руководство к действию (с) Ленин.

Течёт вода Кубань-реки куда велят большевики.
Re[6]: Низкая квалификация работников
От: __kot2  
Дата: 13.11.11 10:28
Оценка: 6 (1) +1 -1 :)
Здравствуйте, __kot2, Вы писали:
__>это для тебя она станет организованной. а придет новый человек, для него твой код будет свалкой гавна.
я, например, еще не видел ни одного даже суперопытного разработчика, который бы систематически не писал херни по моему мнению. например, один знакомый недавно отколол — memsetом классы инициализировал. и все работало, пока он виртуальные методы не ввел. и че-то сламалася
Re[6]: Низкая квалификация работников
От: alexsoff Россия  
Дата: 13.11.11 10:39
Оценка: 15 (1) -2
Здравствуйте, __kot2, Вы писали:

__>да потому что идея дурацкая, ничем хорошим не закончится

Какая идея? переписать или оставить все как есть?

__>это для тебя она станет организованной. а придет новый человек, для него твой код будет свалкой гавна. любому человеку именно его стиль кажется самым правильным среди всех.

__>ты понимаешь, что все, что ты наменяешь, нужно будет заново перетестировать? стоимость этого учитываешь? или ты собрался сразу идеальный код писать? ты уверен, что знаешь как сделать лучше? а насколько лучше? а оно того стоит?
Разве применение паттернов, может превратить мешанину кода в еще большее гОвно, неужели ты ставишь мнение таких метров программирования как Фаулер, Эванс,Бэк по структурированию и паттерированию программ в грош?

__>правильно. выявил, сообщил. занимаешься текущими делами.

От того, что я сообщу будет зависеть чем я буду заниматься далее или клепать новый проект или переписывать существующий.
Re: Низкая квалификация работников
От: AnrySpb  
Дата: 13.11.11 10:41
Оценка: +1
Здравствуйте, alexsoff, Вы писали:

A>Устроился на работу, по функциональным обязанностям должен буду отвечать за разработанные проекты. Но дело в том, что уже до меня был написан проект, разработчик которого, мягко говоря, не был "профи".

Для российских программистов любой, написанный не ими код, обладает фатальным недостатком — код написан не ими
Если серьезно, код уж сильно не нравится, но аффтор рядом, займитесь потихоньку рефакторингом, делов-то.
Re[7]: Низкая квалификация работников
От: __kot2  
Дата: 13.11.11 10:44
Оценка: 18 (3)
Здравствуйте, alexsoff, Вы писали:
__>>да потому что идея дурацкая, ничем хорошим не закончится
A>Какая идея? переписать или оставить все как есть?
переписать

__>>это для тебя она станет организованной. а придет новый человек, для него твой код будет свалкой гавна. любому человеку именно его стиль кажется самым правильным среди всех.

__>>ты понимаешь, что все, что ты наменяешь, нужно будет заново перетестировать? стоимость этого учитываешь? или ты собрался сразу идеальный код писать? ты уверен, что знаешь как сделать лучше? а насколько лучше? а оно того стоит?
A>Разве применение паттернов, может превратить мешанину кода в еще большее гОвно, неужели ты ставишь мнение таких метров программирования как Фаулер, Эванс,Бэк по структурированию и паттерированию программ в грош?
может. самое важное для меня открытие, постигшее меня где-то после 8 лет разработки это то, что от человеческих усилий проекты часто становятся хуже. люди работают, стараются, улучшают, а они все хуже, хуже и хуже. каждая новая версия — геморрой, новые глюки и тормоза. есть одна известная тут всем компания, которая делают одну sdk, которую мы используем в проектам. так вот эта sdk где-то год назад стала только портиться версия от версии нифига нового нужного, зато стабильно изменения поведения, новые косяки, старые нифига не правятся, приходится только больше воркэраундов писать. то есть компания просто портит ее. и есть множество продуктов, которые компания просто портит своей деятельностью. и ты с больше долей вероятности хочешь этим заняться

__>>правильно. выявил, сообщил. занимаешься текущими делами.

A>От того, что я сообщу будет зависеть чем я буду заниматься далее или клепать новый проект или переписывать существующий.
а цель писать проект или переписывать существующий? между целью и средством разница есть.
Re: Низкая квалификация работников
От: Pzz Россия https://github.com/alexpevzner
Дата: 13.11.11 10:47
Оценка: 1 (1) +3
Здравствуйте, alexsoff, Вы писали:

A>Устроился на работу, по функциональным обязанностям должен буду отвечать за разработанные проекты. Но дело в том, что уже до меня был написан проект, разработчик которого, мягко говоря, не был "профи".


Пара-тройка советов:

1. Не говорите сходу начальнику, что ваш предшественник — козел. Либо начальник сам про это знает, но не имеет выбора, либо начальник тоже козел. В любом случае, вас не услышат.
2. Начальство лучше всего понимает, когда ему говорят о проблемах, понятных на его уровне. "Этот код вызывает у меня эстетическую неприязнь" началсьтво не поймет. "Этот код написан так, что любое изменение в нем займет в 10 раз больше времени, чем если бы код был приведен в порядок" звучит гораздо понятмее. Будьте готовы аргументировать свою позицию ("Поскольку в этом коде все связано со всем, любое изменение может сломать все, что угодно. Поэтому каждый раз приходится прогонять все тесты, даже та, которые тестируют области, которые я не трогал. А поскольку система тестирования не автоматизированна, то получается, что я трачу час на, собственно, полезную работу, а потом еще 2 дня на тестирование — поэтому работа идет так медленно".)
3. Подумайте о том, как можно довести до ума этот код эволюционно, а не революционно. Это меньше пугает народ. Хотя бывают программы, которые эволюционно не исправишь, их надо либо принимать, как есть, либо в топку
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.