messy programming по-индийски

User avatar
Mic
Уже с Приветом
Posts: 6906
Joined: 20 Apr 1999 09:01
Location: Seattle

Post by Mic »

Вы вообще спрашивайте-спрашивайте, не стесняйтесь. А то надоело за "Жизнь" слушать :)
Я так полагаю, что о specs, UML-class & -sequence diagramms у вас в компании говорить вообще считается дурным тоном?
User avatar
Sabina
Уже с Приветом
Posts: 5669
Joined: 13 Oct 2000 09:01
Location: East Bay, CA

Post by Sabina »

Mic wrote:Вы вообще спрашивайте-спрашивайте, не стесняйтесь. А то надоело за "Жизнь" слушать :)
Я так полагаю, что о specs, UML-class & -sequence diagramms у вас в компании говорить вообще считается дурным тоном?


Ну почему же :) Specs обязятельны.
Базу да, дизайнят все кому не лень. Но нам и денег пока не платят, так что ....
Меня это не сильно волнует, я сюда навык приобретать пришла. Жалко что осваивать процесс приходится через такии тернии.
User avatar
Mic
Уже с Приветом
Posts: 6906
Joined: 20 Apr 1999 09:01
Location: Seattle

Post by Mic »

Sabina wrote:Меня это не сильно волнует, я сюда навык приобретать пришла. Жалко что осваивать процесс приходится через такии тернии.

Вы меня простите за занудство, но еще один совет - старайтесь всегда относиться к работе так, как буд-то только от вас одной все зависит, и вы собираетесь работать там долгие годы. Тут вся сложность в том, чтобы уложиться в рабочий день, ну и на Привет захаживать ;) Поверьте, окупится с той стороны, с которой вы даже и предполагать не будете.

И еще, старайтесь improve вертикально, а не горизонтально. Т.е. у вас есть какая-то область в проекте и вы ее уже досконально знаете, по моему мнению лучше совершенствовать именно эту часть проекта, а не делать ту-же самую работу со всеми остальными. Весь проект знать конечно хорошо, но сильно зависит от его размеров. Поэтому, для начала, возьмите модуль изгоните из него всех криворуких индусов и отшлифуйте как следует, чтобы в нем небыло ни одной ошибки. Потом найдите в нем слабые места и попытайтесь улучшить. Составьте диаграммы именно для этого модуля, необходимую документацию. Потом найдите слабые места и на уровне UML-диаграмм опишите ваше решение. Ну и последний шаг для чего все это затевалось - к менеджеру на 20 минут за закрытой дверью с изложением своих идей и комплектом документации.
Если будут позволять финансовые возможности компании, но вам после этого вам не предложат зарплату, менеджер - идиот и в этой конторе ловить нечего.
User avatar
Dweller
Уже с Приветом
Posts: 12262
Joined: 20 Dec 2000 10:01
Location: Bellevue, WA

Post by Dweller »

обычно времени которое дается на разработку проекта хватает ровно на то чтобы написать все как попало, и не потому что так проще а потому что с самого начала не всегда понятно что собственно нужно написать :wink:

иногда получается выдавать хороший код, но только если удается найти похожую уже отлаженную на других проектах программу и хорошо ее переделать. но это специфика наших проектов, куча мелких похожих программ.
User avatar
Mic
Уже с Приветом
Posts: 6906
Joined: 20 Apr 1999 09:01
Location: Seattle

Post by Mic »

KY Dweller wrote:обычно времени которое дается на разработку проекта хватает ровно на то чтобы написать все как попало, и не потому что так проще а потому что с самого начала не всегда понятно что собственно нужно написать :wink:

Ну во-первых, oбычно времени дается столько, что хватает еще и в Привете сидеть, isn't it? ;)
Во-вторых, разработка проекта подразумевает сбор user requirements, составление specs, разработку flow- и UML-диаграмм. Так, что к началу имплементации практически все вопросы с заказчиком утрясаются. Поэтому "с самого начала не всегда понятно что собственно нужно написать" чаще всего просто еще одна отмаза при написании dirty code.
User avatar
A. Fig Lee
Уже с Приветом
Posts: 12072
Joined: 17 Nov 2002 03:41
Location: английская колония

Post by A. Fig Lee »

KY Dweller wrote:обычно времени которое дается на разработку проекта хватает ровно на то чтобы написать все как попало, и не потому что так проще а потому что с самого начала не всегда понятно что собственно нужно написать :wink:

:radio%:
Mic wrote:Во-вторых, разработка проекта подразумевает ...составление specs, разработку flow- и UML-диаграмм.

На какой ето планете?
Верить нельзя никому - даже себе. Мне - можно!
User avatar
Mic
Уже с Приветом
Posts: 6906
Joined: 20 Apr 1999 09:01
Location: Seattle

Post by Mic »

A. Fig Lee wrote:На какой ето планете?

Это в правильной стране :P
А вообще почитайте посты Бродяги - как запустишь, так и будет работать. До меня тут тоже о UML только слышали ;) Хотя спеки писали классные. А сейчас время на дизай диаграмм закладывается в проект.
8K
Уже с Приветом
Posts: 5552
Joined: 20 Mar 2001 10:01
Location: SFBA

Post by 8K »

Mic wrote:к началу имплементации практически все вопросы с заказчиком утрясаются. Поэтому "с самого начала не всегда понятно что собственно нужно написать" чаще всего просто еще одна отмаза при написании dirty code.

Вас бы посадить WinFS писать, сразу бы все про отмазки поняли. И про заказчика.

Все как в стройбате: бери больше, кидай дальше.
Last edited by 8K on 25 Oct 2003 02:04, edited 1 time in total.
Увидев друга, Портос вскрикнул от радости...
User avatar
Sabina
Уже с Приветом
Posts: 5669
Joined: 13 Oct 2000 09:01
Location: East Bay, CA

Post by Sabina »

Mic wrote:Вы меня простите за занудство, но еще один совет -


Какое уж тут занудство, скорее наоборот.

Mic wrote:И еще, старайтесь improve вертикально, а не горизонтально. Т.е. у вас есть какая-то область в проекте и вы ее уже досконально знаете, по моему мнению лучше совершенствовать именно эту часть проекта, а не делать ту-же самую работу со всеми остальными.


Я еще не определилась что мне больше нравится, вот и пробую всего понемногу пока возможность есть. Да и народу у нас всего 5 человек программистов (на 4 менеджера :). Так что по горизонтали работать тут не такая уж и редкость. А в целом очень правильный совет - принят.

Mic wrote:Поэтому, для начала, возьмите модуль изгоните из него всех криворуких индусов и отшлифуйте как следует, чтобы в нем небыло ни одной ошибки.


Пока мне бы свое успеть сделать по-человечески. Internship кончается 8 декабря, хочу audit успеть дописать, чтобы потом на него в резюме ссылаться.

Mic wrote:Eсли будут позволять финансовые возможности компании, но вам после этого вам не предложат зарплату, менеджер - идиот и в этой конторе ловить нечего.


"Воть именно". (C) Пошла я домой, ПЯТНИЦА однако :wink:
User avatar
Sullen
Уже с Приветом
Posts: 1823
Joined: 28 Sep 1999 09:01
Location: CA, Saratoga, USA

Re: messy programming по-индийски

Post by Sullen »

Sabina wrote:Интересно это массовое явление или только мне так не повезло?

Вторую неделю убиваю массу времени разбираясь в коде, написанном индийскими коллегами: все свалено в кучу, файлы доходят до 4K строк, все лэйауты GridBag, данные гоняют туда-сюда надо/не надо, плодят кучу ненужных рекордс в базе во имя своего удобства.
Назвать это объектно-ориентированным просто язык не поворачивается.

Скажите, что это только у нас такой бардак :( , а вообще индусские программисты они белые и пушистые ....

Сабина

У меня уже вся клавиатура стерлась, писать об этом.
Индусы программисты (не любители), они как зеленые человечки, все о них слышали, но никто не видел.
Politicians prefer unarmed peasants.
lenkin
Новичок
Posts: 54
Joined: 03 Nov 2001 10:01
Location: California

Post by lenkin »

Все знакомо. Не знаю, как с этим бороться, переписывать, вычищать - кто этим заниматься будет? У нас начальник как-то устраивал code review, типа код должен быть читабельным и хорошо организованным. Программист может с проекта и уйти, а кто после него разбираться должен, если что-то переделать надо. Другой случай, когда код в общем-то читабельный, но совершенно не оптимизирован. Мне как-то пришлось переписывать ASP страницу, которая из-за сложной обработки массивов данных на сервере не загружалась, если данных много - script time out. А начальник говорит, да, мы это все вначале на бегу писали, чтоб только заказчику показать, да и в простых случаях ведь все работало. Молодец, теперь работает еще лучше.
Sabina, если вы отвечаете за конкретную часть работы и в этой фирме временно, "расчистите свой участок" и не берите в голову остальное. Особенно если все работает. ;) При поиске следующей работы обращайте внимание на эти моменты. Если же в фирме возможно продержаться долго, неплохо поступить как Mic советует.
User avatar
sergey1234
Уже с Приветом
Posts: 12055
Joined: 13 Oct 2002 21:46

Post by sergey1234 »

Понимаете, чиста с точки зрения прикладной псиxологии, понятия "xороший"/"плоxой" (да и "профессионал"/"любитель") - относительны. Т.е.: "кто-то - xороший программист" - обязательно по сравнению с кем-то. Скажем xороший средний профессионал - xороший по сравнению с неким придурком, но плоxой по сравнению с крутым гуру. При этом тот придурок из фразы выше - xороший программист по сравнению с человеком никогда компьютера не видевшим, и т.д.

Я к чему? Когда кото-то пишет "индус - плоxой программист!" на заборе, с кем вы думаете он индуса сравнивает? Правильно, с самим собой. Т.е. пишите уж открытым текстом: "я лучше программирую, чем сосед индус!" - смысл будет тот же самый у фразы. Никто так прямо в лоб не пишет, естественно (сам себя xвалит ведь только тот кого никто больше не xвалит), вот и переворачивают эту фразу так чтобы это звучало, но не открытым текстом.

Mерило профессионального успеxа одно, зарплата. Сравнивайте не кто лучше пишет код (вы или индус в соседнем кубике), а кто больше получает. А то есть такой американский автор (забыл кто, к сожалению, давно читал) - суть рассказа: два одноклассника уxаживали за одной и той же девушкой. Она вышла замуж за одного из ниx, а другой уеxал в город учиться. Рассказ от лица того, который уеxал учиться.

Встретились они через 50 лет все втроем, случайно, в родном городе. У всеx уже внуки, все на пенсии, жизнь в целом удалась. Вспоминали молодость, вспоминали как вместе играли в "подкову" (игра такая, кидать подкову в мишень). И тот который пишет, говорит: "а тот второй (за которого она вышла замуж) играть-то совсем не умеет! И подкову держит пальцами неправильно, и кинуть ее толком не может.... Но ему всегда везло в жизни, только поэтому он в подкову у меня все время и выигрывал!" Конец рассказа.
User avatar
IA72
Уже с Приветом
Posts: 956
Joined: 04 Mar 2002 10:01

Post by IA72 »

[quote="MicВо-вторых, разработка проекта подразумевает сбор user requirements, составление specs, разработку flow- и UML-диаграмм. Так, что к началу имплементации практически все вопросы с заказчиком утрясаются. [/quote]

Ааа. Мама, хочу в Советский Союз (уходит, плача и капая слезами на распечатку свежеполученного письма от заказчика "ну, э, сделайте, в общем, что бы было красиво, круто, и вообще")
User avatar
Mic
Уже с Приветом
Posts: 6906
Joined: 20 Apr 1999 09:01
Location: Seattle

Post by Mic »

8K wrote:
Mic wrote:...

Вас бы посадить WinFS писать, сразу бы все про отмазки поняли. И про заказчика.
Все как в стройбате: бери больше, кидай дальше.

8К, на сколько я понял по рассказам друзей, работающих в вашей компании, в MS каждый team друг на друга не похож, не нравится текущий и не можете поменять ситуацию - ищите другой.
User avatar
Mic
Уже с Приветом
Posts: 6906
Joined: 20 Apr 1999 09:01
Location: Seattle

Re: messy programming по-индийски

Post by Mic »

Sabina wrote:Вторую неделю убиваю массу времени разбираясь в коде, написанном индийскими коллегами: все свалено в кучу, файлы доходят до 4K строк, все лэйауты GridBag, данные гоняют туда-сюда надо/не надо, плодят кучу ненужных рекордс в базе во имя своего удобства....

Кстати, у нас есть класс в котором 27,000 (двадцать семь тысяч) строк кода :roll:
Это очень хорошо, что вы понимаете на сколько плохо даже 4K

Return to “Вопросы и новости IT”