Re[14]: оффтоп
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 11.03.09 12:30
Оценка:
Здравствуйте, 4058, Вы писали:

E>>Я конечно понимаю, что тебе обидно, когда твою пипиську не считают заслуживающей внимания. Ну да, мелкая, бывает. Сам показал, никто тебя не тянул. Теперь не обижайся.


4>По поводу "не считают" говори только за себя (или ты о себе во множественном числе привык отзываться?).


А то! Мы, Сальваторе Еао Первый, Великий и Единственный...

4>Твое заявление, что бывший разработчик игрушек PS2/GC на данный момент занимающийся

4>распред. системками на 10.000 юзеров с поддержкой систем написанных еще в середине 80-х,
4>занимается ерудной не заслуживающей внимания, да при этом поддерживая статейно формочко-кодера (под Java/.NET),

Я заявлял, что твой опыт, в который входит ZX-80, гейм-дев и распределенные "системки", не является чем-то выдающимся и заслуживающим внимания.

Занимаешься ли ты ерундой или нет -- пусть твой работодатель судит.


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[13]: Программирование — отстой
От: 4058  
Дата: 11.03.09 12:30
Оценка:
Здравствуйте, BokiyIS, Вы писали:

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


BIS>Ну вот про это же вам и eao и jazzer говорят — давай здесь и сейчас, а качество вторично. В итоге все мы видим, кто оказался на коне.

BIS>И пусть им потом пришлось переписывать, ведь когда они переписывали им уже было пофигу.

Я о том и говорю, что одни пишут фуфло ради наполеоновских целей (под шумок занять свою низшу),
а потом приходят другие люди, которые делают тот-же самый функционал,
но уже качественно (и при чем не обязательно дороже, т.к. как ни крути поддерживать фуфло очень дорого).

BIS>Вы когда говорите "качественное ПО", вы что имеете в виду?


1. Решать задачу пользователя максимально понятным (и удобным) ему способом.
2. Оптимальный расход ресурсов.
3. Безболезненная версионность.

(Список можно долго продолжать, но это первое что мне приходит на ум)
Например OS/2 перед Win3.x, кроме метафизического для рядового пользователя ядра собственно ничего и не имеет.
Качество ПО — это не качество кода, о котором как раз можно спорить бесконечно.

BIS>Всегда удивлялся, почему многие взрослые люди так любят это занятие


В борьбе есть такое понятие как силовой тест, таким образом борцы определяют,
какое перечень приемов они смогут проводить друг на друге.
Поэтому когда представляют человека, то как минимум указывают сферу его деятельности.
Re[13]: Программирование — отстой
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 11.03.09 12:36
Оценка: +2
Здравствуйте, BokiyIS, Вы писали:

BIS>Товарищи, я за продуктивный спор.


В качестве конструктива цитата из "Peopleware" ДеМарко и Листера:

Утверждение, что продукт, не доведённый до идеала, "достаточно хорош", — это похоронный звон для кристаллизующейся команды. Невозможно найти импульс для объединения ваших людей в общем удовлетворении от сдачи продукта среднего качества. Противоположный подход — "лишь идеал для нас достаточно приемлем" — даёт команде настоящий шанс. Этот культ качества является сильнейшим катализатором для формирования команды.

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

Наш друг Лу Мацукелли (Lou Mazzucchelli), президент Cadre Technologies, собрался купить бумагорезательную машину. Он пригласил представителя фирмы, чтобы посмотреть на её работу. Аппарат оказался ужасным. Гигантских размеров и очень шумный (он грохотал даже тогда, когда не был занят уничтожением бумаг). Наш друг поинтересовался машиной производства Германии, о которой слышал. Коммивояжёр высокомерно заявил, что тот аппарат стоит в полтора раза дороже и у него нет ни одной дополнительной возможности. "За эти лишние деньги, — добавил он, — вы получите только лучшее качество".

Ваш рынок, ваши покупатели, ваши клиенты и руководители высшего звена никогда не встанут стеной за высокое качество. Выдающееся качество в контексте экономических расчётов ближнего прицела мало кому интересно. Когда участники команды живут культом качества, они всегда сдают продукт более высокого качества, чем требует рынок. Они могут делать это, лишь будучи защищёнными от экономики ближнего прицела. И в долгосрочной перспективе это всегда оказывается выгодно. Людей пьянит качество, и они соревнуются сами с собой, чтобы сохранить его.


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

Но ирония еще и в том, что даже когда декларируется приоритет качества, все равно shit случается. Взять к примеру, катастрофы космических кораблей (Ариан 5 на старте или одного из марсианских спутников, в котором единицы измерения не совпадали в разных системах).


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[2]: Автор - унылый балбес
От: mrTwister Россия  
Дата: 11.03.09 13:29
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

ГВ>Хотя если разобрться, то сам себе противоречит. Посмотрите на этот код повнимательней:


ГВ>
txtFirstName.DisplayWidth = 30;
ГВ>txtFirstName.MaxCharLength = 50;
ГВ>SetTextBoxValidator(txtFirstName, Validations.LettersOnly);
ГВ>txtFirstName.Enabled = securityContext.CanEdit;
ГВ>txtFirstName.Value = customerRecord.FirstName;


ГВ>Я выделил действительно прикладной код жирным шрифтом. Остальное — это никакая не бизнес-логика, а инфраструктурный код. Это очень легко проверить, подменив инфраструктуру:


ГВ>
MyForm.assignData(txtFirstName, 30, 50, Validations.LettersOnly, securityContext.CanEdit, customerRecord.FirstName);


ГВ>Вуаля. Код стал в три(!) раза короче, сохранив то же содержание. Конечно, зачастую таким простым приёмом в реальном проекте не отделаешься, но оцените коллизию!


Ты бы еще для полноты картины код MyForm.assignData привел. А вот потом мы и посчитаем, что короче
лэт ми спик фром май харт
Re[8]: Программирование — отстой
От: mrTwister Россия  
Дата: 11.03.09 13:55
Оценка: +1
Здравствуйте, 4058, Вы писали:


4>Еще раз повторяю, некачественный софт бывает очень дорог в долгосрочной перспективе,


Бывает дорог, а бывает и дешевле. Смотря что надо делать. Одно дело исправить "something = anything" на "something = anything + 1", а другое — разобраться с супер-мега абстрактным универсальным фреймворком, и выяснить в конце-концов, что "something=anything" в этом фреймворке автоматически вычисляется на основе схемы базы данных. В итоге плевая для говнокода задача превращается в геморрой.
лэт ми спик фром май харт
Re[10]: Программирование — отстой
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 11.03.09 13:59
Оценка: +2
Здравствуйте, 4058, Вы писали:

4>Мне (и моей команде) не раз приходилось переписывать творения (готовых работыть за еду),

4>т.к. в конечном счете получалось что кушать хотят приблизительно ровно столько,
4>сколько будет существовать заказчик, а заказчику это постоянное вымогалово порядком надоедало.
4>В результате вмество обещанных 1.5 года работы заказчик получал сплошной глюк за это время,
4>а оставшиеся 5-6 лет они его пытались заставить работать.
4>Потом проиходят другие люди, которые делают тот же самый функционал за 4 месяца и прощаются с заказчиком.
4>Получается дешевле на порядок (поверь даже смету сравнивали).

Знакомо, только чему тут удивляться? За прошедшие 5-7 лет заказчик, поди, уже понял, что ему нужно. Кроме того, когда есть готовый, пусть и глючной прототип, то это сильно упрощает кое-какие моменты. И наконец, откуда ты знаешь, что там у них происходило на протяжении этих 5-6 лет? Сам заказчик рассказал? В деталях? А другая сторона отчиталась?

4>Дешево != качественно, дешево сегодня = очень дорого завтра. Это мой опыт, я так понял у тебя другой.


Не оскорбления ради, а справедливости для: где гарантия, что через 5-7 лет кто-то ещё не придёт и не скажет, что творение тебя и твоей команды — это "глюкалово дико дорогих болтунов, которые пришли, склепали и удрали"?
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[3]: Автор - унылый балбес
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 11.03.09 14:18
Оценка:
Здравствуйте, mrTwister, Вы писали:

ГВ>>Вуаля. Код стал в три(!) раза короче, сохранив то же содержание. Конечно, зачастую таким простым приёмом в реальном проекте не отделаешься, но оцените коллизию!


T>Ты бы еще для полноты картины код MyForm.assignData привел. А вот потом мы и посчитаем, что короче


О-о-о... Понеслась... Не, дружище. Развенчивать иллюстрации — это к любителям громить Гради Буча, у них лучше получится.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[12]: Программирование — отстой
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 11.03.09 14:48
Оценка:
Здравствуйте, 4058, Вы писали:

E>>Мне неоднократо приходилось наблюдать, как у пользователей, запускавших WinWord и MathCad под Windows винда выпадала в синий экран или намертво зависала при попытке перемещения графика из MathCad в Word. И как на 486 c 8Mb памяти невозможно было работать в WinWord-е, запустив на фоне arj для пару-мегабайтных каталогов. Ничего подобного под OS/2 пользователь не видел. Хотя даже WinWord 6, если не ошибаюсь, под OS/2 работал. Так что речь не о программистах.


4>Рядовой пользователь (который как раз составляет наверно 95% от общей массы пользователей),

4>не работали с MathCad тем более не перетаскивали через глючный OLE графики в Word и тем более не запускали на фоне arj.

Откуда дровишки? Прекрасно всё таскали — таблицы из Excel вполне себе совали в Word-овские документы.

4>MS съиграла на том, что давала простым смертным, то что им было нужно, здесь и сейчас,

4>а не заниматся нетрадиционном сексом, чтобы настроить тот-же локальный принтер.

Это тоже, мягко говоря, далековато от действительности. Способ лечения Windows по имени "переинсталляция" появился как раз во времена Win 3.x.

4>Код ядра у Win3.x не качественный по сравнению с OS/2,

4>но потом им таки пришлось все переписывать (ядро NT как раз частями произросло от OS/2).

Ничего им не пришлось переписывать. Просто линейка NT (AFAIK, это действительно частично потомок OS/2) плавно заменила линейку 3.x/9x/Me. Качественный же код, судя по всему, был и в Win 3.x, и даже в DOS. Проблема в том, что требования к этим системам выставлялись разные, и почти никто в начале 90-х не думал о том, что через каких-то 15 лет у каждой секретарши на столе будет стоять машина с многоядерным процессором и гигагерцовыми тактовыми частотами. Так что, не надо спекулировать на знакомых словах.

4>Еще OS/2 был безбожно тормозной поэтому сказки про, то как все было круто,

4>и что "гений" остался не признаным рассказывать не надо.

Ерунда. OS/2 лишь требовала довольно много дорогой по тем временам памяти. Не то 12, не то 16 Мбайт для нормальной работы, тогда как Win 3.1 прекрасно жила и на 4 Мб. Да и вообще, провал OS/2 по отношению к Win 3.x/9x это, скорее, заслуга специфического IBM-овского маркетинга, а не каких-то там мифических "качеств" этих систем. И уж тем более, к "качеству кода" эта история не имеет никакого отношения.

E>>Ну так почему ты делаешь акцент на качестве ПО? Даже на примере OS/2 видно, что пользователя качество мало интересует, ему рюшечки важнее. Даже когда грохается Word и теряется несколько последних набранных страниц.


4>Я же объяснил, если делать пользователю удобно и без финтов, то пользователь будет твой.


Именно — пользователю. Каким именно кодом ты удовлетворишь пользователя — вопрос 110-й.

4>>>Ты меня сможешь учить, если бы ты (достаю пипискомер):


E>>Эх ё. Достижения прямо-таки выдающиеся, ни у кого таких нет. Прям как тут:


4>Опять феерверк невежества.

4>Ты знаешь на этом форуме очень много персонажей, которые имея за плечами сомнительный опыт,
4>пытаются с кем-то спорить или еще хуже кого-то "учить" (еще и с переходом на личности).

Поясню для особо искушённых и опытных: апелляция к персональному опыту (пипискомерство) — суть некорректный аргумент.

4>Я конечно понимаю, сидит такое горе-философ, который несколько лет занимается своей библиотечкой "для души",

4>и целыми днями постит сообщения на форуме, при этом затрагивая такие душетрепещущие темы ФП/МП,
4>при этом не имея практического опыта в этих областях (на реальных проектах),
4>потом приходит к этому философу прозрение, что занимается он вовсе не тем, что нужно
4>конечному пользователю, и начиная депрессовать по этому поводу, соглашается с ламеришной,
4>по поводу того как все скучно в индустрии.

Знаешь, тыкать пальцем в небо очень удобно: никогда не промахиваешься.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[11]: Программирование — отстой
От: 4058  
Дата: 11.03.09 15:05
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

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


ГВ>Знакомо, только чему тут удивляться? За прошедшие 5-7 лет заказчик, поди, уже понял, что ему нужно. Кроме того, когда есть готовый, пусть и глючной прототип, то это сильно упрощает кое-какие моменты. И наконец, откуда ты знаешь, что там у них происходило на протяжении этих 5-6 лет? Сам заказчик рассказал? В деталях? А другая сторона отчиталась?


1. Заказчик по прежнему объяснял "на пальцах" чего ему нужно, т.н. прототип и соп. документы особо не помогли.
2. Рассказывал действительно тим-лидер, которые пыйтался мне внушить, насколько это все невозможно
сделать по человечески, и сколько их коллектив угробил времени и нервов.

ГВ>Не оскорбления ради, а справедливости для: где гарантия, что через 5-7 лет кто-то ещё не придёт и не скажет, что творение тебя и твоей команды — это "глюкалово дико дорогих болтунов, которые пришли, склепали и удрали"?


Текущее решение устраивает пользователей, некоторые неленятся благодарственные письма писать
(а уж как руководство довольно, что их сервера не падают с OOM 3 раза на день,
ведь действительно объемы перевариваемых данных и задачи громоздкие),
чего нельзя сказать о "пред. версии".

P.S. Какую вы ищете справидливость мне не совсем понятно.
Re[2]: Автор - унылый балбес
От: Flem1234  
Дата: 11.03.09 15:17
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

ГВ>А здесь начинается каша в голове. Если инструменты "великолепны и мощны", то очевидно, они необходимы и бизнесу тоже. В противном случае они не мощны и не великолепны. И следовательно, пресловутому ремесленнику даром не нужны.


По-моему, автор хочет сказать, что для бизнеса часто важнее не великолепность и мощьность а еще и чтоб это работало. Причем дешево, быстро и качественно. Как конкретно, решает бизнесмен)

ГВ>

3. Учитесь вне работы.


ГВ>Допустим. Хотя на самом деле процесс обучения очень тесно переплетён с работой. Такова уж наша специфика: если проблема хорошо знакома, то она уже закодирована, а если проблема не знакома, то что-то предварительно следует изучить.


По-моему он говорил скорее про риск. Рискуйте вне работы. А на работе подчиняйтесь интересам бизнеса.

ГВ>Я выделил действительно прикладной код жирным шрифтом. Остальное — это никакая не бизнес-логика, а инфраструктурный код. Это очень легко проверить, подменив инфраструктуру:


ГВ>
MyForm.assignData(txtFirstName, 30, 50, Validations.LettersOnly, securityContext.CanEdit, customerRecord.FirstName);


Эээээ... А если у вас одна форма в проекте. Например, утилита какая-нибудь?

ГВ>

5. От скуки не уйти. Никакие O/R-мапперы или генераторы кода не смогут избавить вас от факта, что записи, поля, валидаторы и т.п. должны быть прописаны вручную, по крайней мере, в двух местах (фронт-энд и бэк-энд). И UI, генерируемая из базы — это также плохо, как база, генерируемая из UI.


ГВ>Определённо, автор ничему не учился ни на работе, ни вне работы. Во всяком случае, своей головой он дошёл только до того, что "от скуки не уйти". Собственно, сужение пространства доступных решений заметно вот тут: "UI, генерируемая из базы — это также плохо, как база, генерируемая из UI". Фокус в том, что между UI и "базой" можно поставить ещё очень много всего интересного, из чего уже впоследствии "отобразить" и базу, и UI.


Поставить можно все, что угодно, но с точки зрения бизнеса иногда выгоднее поставить скучную подолбень. С точки зрения программиста.

ГВ>

6. Ищите удовлетворение повсюду.


Вот это, по моему главное должно быть для программиста. Ведь с точки зрения бизнеса может быть вполне разумным решением давать тебе такую работу, которая тебе не нравится. Но интересы бизнесса и интересы программиста иногда расходятся.
Re[12]: Программирование — отстой
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 11.03.09 15:21
Оценка:
Здравствуйте, 4058, Вы писали:

ГВ>>Знакомо, только чему тут удивляться? За прошедшие 5-7 лет заказчик, поди, уже понял, что ему нужно. Кроме того, когда есть готовый, пусть и глючной прототип, то это сильно упрощает кое-какие моменты. И наконец, откуда ты знаешь, что там у них происходило на протяжении этих 5-6 лет? Сам заказчик рассказал? В деталях? А другая сторона отчиталась?


4>1. Заказчик по прежнему объяснял "на пальцах" чего ему нужно, т.н. прототип и соп. документы особо не помогли.


Вам не помогли. Они вполне могли помочь заказчику. Кроме того, "помощь" прототипа часто выражается не в том, что можно заглянуть и посмотреть в деталях, как именно что-то сделано сделано, а только лишь в том, что он даёт некую "точку отсчёта".

4>2. Рассказывал действительно тим-лидер, которые пыйтался мне внушить, насколько это все невозможно

4>сделать по человечески, и сколько их коллектив угробил времени и нервов.

О! Вот с этого и надо было начинать, а не со своих оценок. Ты не забывай, что кроме всего прочего у вас не было предыстории этих самых нервотрёпок с заказчиком. Кстати, сугубо по-человечески тимлида здесь, вполне вероятно, можно понять: заказчику порой гораздо проще тянуть резину мелкими шагами, чем согласиться на переписывание (почему-то я не очень верю, что никто и никогда не предлагал переписать имеющееся полностью). Такая ситуация мотает нервы и заказчику, и проектной команде, и в конечном итоге может созреть именно такое отношение: "...это все невозможно сделать по человечески".
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[13]: Программирование — отстой
От: 4058  
Дата: 11.03.09 15:22
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

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


ГВ>Откуда дровишки? Прекрасно всё таскали — таблицы из Excel вполне себе совали в Word-овские документы.


Речь шла про связку MathCAD и WORD, что само собой (а особенно в то время)
подразумевало неприятные сюрпризы.
Вообще, а вы могли бы тоже самое в то время сделать под OS/2 (причем за те-же самые деньги)?

4>>MS съиграла на том, что давала простым смертным, то что им было нужно, здесь и сейчас,

4>>а не заниматся нетрадиционном сексом, чтобы настроить тот-же локальный принтер.

ГВ>Это тоже, мягко говоря, далековато от действительности. Способ лечения Windows по имени "переинсталляция" появился как раз во времена Win 3.x.


Причем здесь это? Речь шла об удобстве конфигурирования (настройке того-же локального принтера).

ГВ>Ничего им не пришлось переписывать.


Я так понимаю источник твой мозг?

ГВ>Ерунда. OS/2 лишь требовала довольно много дорогой по тем временам памяти. Не то 12, не то 16 Мбайт для нормальной работы, тогда как Win 3.1 прекрасно жила и на 4 Мб. Да и вообще, провал OS/2 по отношению к Win 3.x/9x это, скорее, заслуга специфического IBM-овского маркетинга, а не каких-то там мифических "качеств" этих систем. И уж тем более, к "качеству кода" эта история не имеет никакого отношения.


В 93-95 году почти все зарождавшиеся тогда глянцевые журнали, святили на своих обложках OS/2,
поэтому по поводу маркетинга можно даже не продолжать.

ГВ>Именно — пользователю. Каким именно кодом ты удовлетворишь пользователя — вопрос 110-й.


Я изначально вел разговор на тему качественного ПО, а не качественного кода
(хотя ествественно одно другое подразумевает).

ГВ>Поясню для особо искушённых и опытных: апелляция к персональному опыту (пипискомерство) — суть некорректный аргумент.


Вероятно аргумент это "про дествий садик",
который привел тут eao197 (http://www.rsdn.ru/Users/31476.aspx)?

ГВ>Знаешь, тыкать пальцем в небо очень удобно: никогда не промахиваешься.


Но никуда не попадаешь. А это собственно к чему? Или так просто поговорить захотелось?
Re[13]: Программирование — отстой
От: 4058  
Дата: 11.03.09 15:30
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

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


ГВ>О! Вот с этого и надо было начинать, а не со своих оценок. Ты не забывай, что кроме всего прочего у вас не было предыстории этих самых нервотрёпок с заказчиком. Кстати, сугубо по-человечески тимлида здесь, вполне вероятно, можно понять: заказчику порой гораздо проще тянуть резину мелкими шагами, чем согласиться на переписывание (почему-то я не очень верю, что никто и никогда не предлагал переписать имеющееся полностью). Такая ситуация мотает нервы и заказчику, и проектной команде, и в конечном итоге может созреть именно такое отношение: "...это все невозможно сделать по человечески".


На самом деле у тим-лида и его подобечных банально не хватало знаний в области "софтвэр-инжиниринга"
(это из личного общения, и его круглых глаз когда мы ему в 10-ы раз доказывали что невозможное по его
мнению, более чем возможно), поэтому почти все что они писали, затем переписывали как им казалось лучше,
и так было постоянно в течении 5-7 лет (то они обработку изображений перепишут, то на другой протокол перейдут и т.п.).
Вдобавок грешили забиванием гвоздей микроскопом,
по причине того, что не занимались постоянных поиском более удобных средств.
Re[3]: Автор - унылый балбес
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 11.03.09 15:43
Оценка:
Здравствуйте, Flem1234, Вы писали:

ГВ>>А здесь начинается каша в голове. Если инструменты "великолепны и мощны", то очевидно, они необходимы и бизнесу тоже. В противном случае они не мощны и не великолепны. И следовательно, пресловутому ремесленнику даром не нужны.

F>По-моему, автор хочет сказать, что для бизнеса часто важнее не великолепность и мощьность а еще и чтоб это работало. Причем дешево, быстро и качественно. Как конкретно, решает бизнесмен)

А мне плевать, что хотел сказать автор, я отвечаю на то, что он сказал.

ГВ>>3. Учитесь вне работы.

ГВ>>Допустим. Хотя на самом деле процесс обучения очень тесно переплетён с работой. Такова уж наша специфика: если проблема хорошо знакома, то она уже закодирована, а если проблема не знакома, то что-то предварительно следует изучить.
F>По-моему он говорил скорее про риск. Рискуйте вне работы. А на работе подчиняйтесь интересам бизнеса.

Он говорит "учитесь". Ткни пальцем в слово "риск" в исходном тексте.

ГВ>>
MyForm.assignData(txtFirstName, 30, 50, Validations.LettersOnly, securityContext.CanEdit, customerRecord.FirstName);

F>Эээээ... А если у вас одна форма в проекте. Например, утилита какая-нибудь?

Тогда нет смысла говорить о "туевой хуче" такого кода. Про контекст не забываем, да?

ГВ>>5. От скуки не уйти. Никакие O/R-мапперы или генераторы кода не смогут избавить вас от факта, что записи, поля, валидаторы и т.п. должны быть прописаны вручную, по крайней мере, в двух местах (фронт-энд и бэк-энд). И UI, генерируемая из базы — это также плохо, как база, генерируемая из UI.


ГВ>>Определённо, автор ничему не учился ни на работе, ни вне работы. Во всяком случае, своей головой он дошёл только до того, что "от скуки не уйти". Собственно, сужение пространства доступных решений заметно вот тут: "UI, генерируемая из базы — это также плохо, как база, генерируемая из UI". Фокус в том, что между UI и "базой" можно поставить ещё очень много всего интересного, из чего уже впоследствии "отобразить" и базу, и UI.

F>Поставить можно все, что угодно, но с точки зрения бизнеса иногда выгоднее поставить скучную подолбень. С точки зрения программиста.

Прочти исходную цитату ещё раз: "Никакие O/R-мапперы или генераторы кода не смогут избавить вас..." При чём тут "интересы бизнеса"?

ГВ>>

6. Ищите удовлетворение повсюду.

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

Хм. От работы, знаешь ли, вообще все устают так или иначе. И что это доказывает?
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[14]: Программирование — отстой
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 11.03.09 15:58
Оценка:
Здравствуйте, 4058, Вы писали:

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

ГВ>>Откуда дровишки? Прекрасно всё таскали — таблицы из Excel вполне себе совали в Word-овские документы.

4>Речь шла про связку MathCAD и WORD, что само собой (а особенно в то время)

4>подразумевало неприятные сюрпризы.
4>Вообще, а вы могли бы тоже самое в то время сделать под OS/2 (причем за те-же самые деньги)?

Вот уж чего не помню, того не помню. Последний раз под OS/2 работал, чтобы не соврать, в 96-м.

4>>>MS съиграла на том, что давала простым смертным, то что им было нужно, здесь и сейчас,

4>>>а не заниматся нетрадиционном сексом, чтобы настроить тот-же локальный принтер.

ГВ>>Это тоже, мягко говоря, далековато от действительности. Способ лечения Windows по имени "переинсталляция" появился как раз во времена Win 3.x.

4>Причем здесь это? Речь шла об удобстве конфигурирования (настройке того-же локального принтера).

Это я к тому, что под Win 3.x рзнообразного секса тоже хватало.

ГВ>>Ничего им не пришлось переписывать.

4>Я так понимаю источник твой мозг?

Да я уж не помню все первоисточники, звиняй. Помню, что не раз встречалось, что NT — это не развитие 3.x, а параллельная ветка.

ГВ>>Ерунда. OS/2 лишь требовала довольно много дорогой по тем временам памяти. Не то 12, не то 16 Мбайт для нормальной работы, тогда как Win 3.1 прекрасно жила и на 4 Мб. Да и вообще, провал OS/2 по отношению к Win 3.x/9x это, скорее, заслуга специфического IBM-овского маркетинга, а не каких-то там мифических "качеств" этих систем. И уж тем более, к "качеству кода" эта история не имеет никакого отношения.


4>В 93-95 году почти все зарождавшиеся тогда глянцевые журнали, святили на своих обложках OS/2,

4>поэтому по поводу маркетинга можно даже не продолжать.

Правильно, только маркетинг — это не одни лишь глянцевые журналы. Например, всё равно не было понятно, для кого эта ОС? Офисные работники вполне уживались с Win 3.x, серверы обслуживались Novell-ом, и куда, и почему нужно засовывать OS/2 — никто так и не понял. Кроме банковского сектора, где у IBM традиционно сильные позиции (были, не знаю, как сейчас).

ГВ>>Именно — пользователю. Каким именно кодом ты удовлетворишь пользователя — вопрос 110-й.


4>Я изначально вел разговор на тему качественного ПО, а не качественного кода

4>(хотя ествественно одно другое подразумевает).

А что такое качественный код?

ГВ>>Поясню для особо искушённых и опытных: апелляция к персональному опыту (пипискомерство) — суть некорректный аргумент.


4>Вероятно аргумент это "про дествий садик",

4>который привел тут eao197 (http://www.rsdn.ru/Users/31476.aspx)?

Нет, это лёгкий флёр формальной логики.

ГВ>>Знаешь, тыкать пальцем в небо очень удобно: никогда не промахиваешься.

4>Но никуда не попадаешь. А это собственно к чему? Или так просто поговорить захотелось?

К скипнутому рассуждению о горе-философе, которой пишет библиотечку "для души".
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[4]: Автор - унылый балбес
От: Flem1234  
Дата: 11.03.09 16:03
Оценка:
Автор выражается кривовато, то во многом прав. Я бы переписал это так:

2. Служите интересам бизнеса. Используйте только те технологии (инструменты), которые выгодно использовать в данном случае с учетом не только технических сложностей, но и организационных сложностей, затрат на лицензии.

3. Учитесь вне работы. Не рискуйте слишком в живом проекте. Лучше попробуйте новую технологию на пилотном.

4. Если в основной своей массе код, написанный вашими руками, не является специфичным для предметной области и не связан с целями приложения, значит, вы используете неправильные инструменты.

5. От скуки не уйти. Никакие O/R-мапперы или генераторы кода не смогут избавить вас от факта, что записи, поля, валидаторы и т.п. должны быть прописаны вручную если это необходимо для проекта.

6. Ищите удовлетворение повсюду. Если ваш единственный источник получения удовольствия — это написание сложного кода, тогда вам никогда не стать хорошим и довольным разработчиком приложений. Лично я счастлив от мысли, что помог конечному пользователю увеличить его продуктивность и/или открыл новые возможности для какой-то организации.

7. Найдите себе другую работу. Возможно, вы достигли своего максимума на этой работе. Или может вас просто тошнит от такого типа программирования. Как бы там ни было, существует целая масса программерских возможностей, которые не включают в себя скуку и информационные системы. Конечно, конкуренция будет намного выше, поскольку шедевры наподобие «The Brilliant Paula's bean» рождаются только в недрах IT-корпораций.
Re[5]: Автор - унылый балбес
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 11.03.09 16:21
Оценка:
Здравствуйте, Flem1234, Вы писали:

F>Автор выражается кривовато, то во многом прав. Я бы переписал это так: [...]


Можно узнать, а зачем делать то, что должен был сделать сам автор? Читатель не должен догадываться, что именно хотел сказать автор текста. Он сказал то, что сказал. Если его что-то не устраивает в реакциях читателей — пусть скажет что-нибудь ещё. А то получится, как в той поговорке: "дурак за час сможет наговорить столько, что потом мудрецу вовек не разобрать".
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[15]: Программирование — отстой
От: 4058  
Дата: 11.03.09 17:39
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

ГВ>Это я к тому, что под Win 3.x рзнообразного секса тоже хватало.


Без этого ни куда, другое дело в каком кол-ве, какой степени извращенности и главное за какую цену.

ГВ>Да я уж не помню все первоисточники, звиняй. Помню, что не раз встречалось, что NT — это не развитие 3.x, а параллельная ветка.


Об этом уже говорилось ранее, что NT частями произошел от OS/2.

ГВ>А что такое качественный код?


Я затрудняюсь ответить на этот вопрос. Можно попытаться привести набор противоречивых критериев,
и спорить о них до бесконечности, но в кратце:

Качественный код должен:

* безошибочно выполнять свою задачу наиболее локаничным образом
* рационально использовать ресурс
* удобно сопровождаться

Все описанные выше критерии, должны на сколько возможно укладываться в поставленные временные рамки
(а не как оно бывает дайте нам в 1.5-n раза больше времени и мы вам сделаем всё )

4>>Вероятно аргумент это "про дествий садик",

4>>который привел тут eao197 (http://www.rsdn.ru/Users/31476.aspx)?

ГВ>Нет, это лёгкий флёр формальной логики.


Нет, это называется подругому и логикой тут мало пахнет, т.к. логика основывается на выводах,
а правильность вывода основана на достаточном объеме информации, которой автор явно не владеет.

4>>Но никуда не попадаешь. А это собственно к чему? Или так просто поговорить захотелось?


ГВ>К скипнутому рассуждению о горе-философе, которой пишет библиотечку "для души".


Это долгий розговор вероятно требующий отдельного поста.
Re[16]: Программирование — отстой
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 11.03.09 19:19
Оценка:
Здравствуйте, 4058, Вы писали:

4>Качественный код должен:


4>* безошибочно выполнять свою задачу наиболее локаничным образом


Было бы интересно хоть когда-нибудь увидеть сколько-нибудь серьезную программу без ошибок...

4>* рационально использовать ресурс

4>* удобно сопровождаться

4>Все описанные выше критерии, должны на сколько возможно укладываться в поставленные временные рамки


Еще не учтена смета.

4>(а не как оно бывает дайте нам в 1.5-n раза больше времени и мы вам сделаем всё )


"как оно бывает" -- это бывает до начала работ или уже перед сдачей проекта?

ГВ>>К скипнутому рассуждению о горе-философе, которой пишет библиотечку "для души".


4>Это долгий розговор вероятно требующий отдельного поста.


А здесь никто не торопится. Мне лично было бы интересно прочитать этот отдельный пост.


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[17]: Программирование — отстой
От: 4058  
Дата: 11.03.09 20:09
Оценка:
Здравствуйте, eao197, Вы писали:

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


4>>Качественный код должен:


4>>* безошибочно выполнять свою задачу наиболее локаничным образом


E>Было бы интересно хоть когда-нибудь увидеть сколько-нибудь серьезную программу без ошибок...


Если говорить про софт под игровые приставки, то тут все просто,
диск (или любой другой "ПЗУ"-носитель) прошит и отправлен на печать,
больше никаких тебе патчей и исправлений (как это делается на PC и считается нормой, яркий пример — Сталкер),
и тем более никто не хочет отзывать партию напечатанных дисков.
Все должно работать как часы и не вешать железку, максимально утилизировать возможности железа,
и работать в строго оговоренных условиях (например загрузка сцены не должна превышать > 15 сек).
При этом всем, железо мягко говоря не подарок, а требования к игрушкам похлеще чем на топовых PC.
Сложный это софт или нет, решать тебе, но если будет хоть одна ошибка контракта больше не получишь.

Кстати, по поводу GUI, часто используется построение GUI на игровом движке.
Почти вся работа осуществляется в дизайнере 3D-сцен + автоматическая генерация DSL
с триггерной обработкой событий и байдингом данных.
Поэтому скучать с копи-пастом "формо-кодерства", особо не приходится.

В данный момент на посл. крупном проекте сложность была обусловлена его инфрастуктурой:
крипто-сервера, сервера БД (Oracle, MS SQL, FoxPro, многомерная БД + барахло в виде Documentum и файловые хранилища),
несолько серверов прирожений, узкоспециализированное железо,
на котором крутится допотопный софт, который прекрасно работает 24/7 и никто не позволит его переписывать.
Все это конечно было не просто заставить петь дружным хором.
Сложный это софт или нет, решать тебе, но ошибки сведены к минимому.

E>"как оно бывает" -- это бывает до начала работ или уже перед сдачей проекта?


Обычно подобное нытье начинается где-то на середине проекта, когда уже становится понятно,
что далеко на говнокоде не уедешь, а если и уедешь, то точно ни туда куда хотелось.

E>А здесь никто не торопится. Мне лично было бы интересно прочитать этот отдельный пост.


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