Здравствуйте, Lloyd, Вы писали:
L>Да, может. Для того, чтобы признать код качественным, должен быть объективный критерий, по которому об этом можно судить. То, что софт является коммерческим (т.е. продается) и является одним из возможных критериев.
Например, MS Word глючит уже на протяжении десяти лет, а SVN работает весьма надежно. Это разрушает твое утверждение?
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, Lloyd, Вы писали:
L>Я просто хочу понять как такое возможно — "Контора наймет того кого я захочу...", если ты не владелец???
Вообще-то не обязательно быть владельцем, чтобы иметь право решать вопрос о наеме программистов. Я знаю массу примеров когда вопрос принятия на работу программиста решается ведущим программистом или начальником отдела.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, VladD2, Вы писали:
L>>Да, может. Для того, чтобы признать код качественным, должен быть объективный критерий, по которому об этом можно судить. То, что софт является коммерческим (т.е. продается) и является одним из возможных критериев.
VD>Например, MS Word глючит уже на протяжении десяти лет,
все альтернативы ворда, которые я видел, были только хуже
VD>а SVN работает весьма надежно. VD>Это разрушает твое утверждение?
Нет, конечно. Это продукты из ниш, которые не пересекаются. Они не являются конкурентами.
Здравствуйте, VladD2, Вы писали:
L>>Я просто хочу понять как такое возможно — "Контора наймет того кого я захочу...", если ты не владелец???
VD>Вообще-то не обязательно быть владельцем, чтобы иметь право решать вопрос о наеме программистов. Я знаю массу примеров когда вопрос принятия на работу программиста решается ведущим программистом или начальником отдела.
Ну так ты на вопрос ответь. Поднимись выше по ветке и ответь, чего юлить-то?
Здравствуйте, Lloyd, Вы писали:
L>>>Да, может. Для того, чтобы признать код качественным, должен быть объективный критерий, по которому об этом можно судить. То, что софт является коммерческим (т.е. продается) и является одним из возможных критериев.
VD>>Например, MS Word глючит уже на протяжении десяти лет,
L>все альтернативы ворда, которые я видел, были только хуже
Согласен. Только к делу это не относится.
VD>>а SVN работает весьма надежно. VD>>Это разрушает твое утверждение?
L>Нет, конечно. Это продукты из ниш, которые не пересекаются. Они не являются конкурентами.
А это тоже к делу не относится. Ты же говоришь о коммерческом софте в общем? Ну, вот тебе отличные примеры демонстрирующие ложность твоих посылок.
Я тебе скажу больше. Понятие "хороший код" вообще трудно обсуждать, так как для 90% свой будет автоматом хороший, а просто не привычный — плохим.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, VladD2, Вы писали:
VD>Если вирус пишется для развлечения, то — это несомненно софт не коммерческий. VD>Если он пишется на продажу или для извлечения выгоды другим путем, то уже коммерческий.
Если выгода состоит в том, что разработчика OpenSource проекта взяли в солидную фирму на серьезную зарплату (как с разработчиками JRuby или Nemerle) или акций на пару лимонов отвалили (как в случае с разработчиками ядра Linux), то и OpenSource проекты можно считать коммерческими. Даже когда на них не тратится никаких денег и они не продаются.
Поэтому в своем определении коммерческого софта я вообще не выносил вопрос использования софта. Ключевыми факторами в моем определении является то, что программисты, разрабатывающие подобные софт, либо пишут его за чужие деньги, либо делают его не для себя.
VD>В прочем, качество кода тут никак не коррелирует с мотивами вирусописателей. Вирус может быть отличным и будучи написанным 4fun.
Меня мало интересует качество кода и сравнение качества кода коммерческих и некоммерческих разработок. Краеугольный камень в том, пригодна ли какая-то технология в условиях, когда подавляющее большинство ее пользователей слабо заинтересована в целях софта, который с помощью этой технологии разрабатывается. Ну, например, Java заняла нишу Ынтырпрайз систем. Программистам, которые эти системы лабают, по большому счету, пофигу, что именно они делают -- биллинг для БиЛайна, он-лайн трейдинг для Нью-Йоркской биржи, или систему коммунальных платежей города Урюпинска. Равно как пофигу то, что они лабают на Java, а не на C# (или наоборот). 99% подобных разработчиков -- найомные рабочие, которые пашут на дядю и не имеют возможности (да и желания) разделять интересы и амбиции этого дяди. Таким как мы нужны простые и надежные инструменты, которые можно нещадно эксплуатировать и которые тяжело сломать. Конечно, со временем наш уровень растет. Поэтому когда мы умнеем, нам можно дать что-нибудь посложнее, но только до определенной степени.
И в этом очень сильно отличается коммерческая разработка, где Вася Пупкин сидит с 9:00 до 18:00 на работе потому, что ему платят N денежек, от проектов, которые делаются "под себя" с помощью того, что нравится. Даже если это потом приносит парочку зеленых миллионов, заработанных самим или полученных через подаренные добрым дяденькой акций.
А краеугольным камнем данного обсуждения является то, что у Хейлсберга очень хорошо получается создавать языки как раз для коммерческой разработки. И не нужно обвинять его в том, что он не делает языки для гиков. Тем более приводя в качестве довода утверждения о том, что он чего-то не знает (не знал) и не смотрит по сторонам.
SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Здравствуйте, VladD2, Вы писали:
L>>Нет, конечно. Это продукты из ниш, которые не пересекаются. Они не являются конкурентами.
VD>А это тоже к делу не относится. Ты же говоришь о коммерческом софте в общем? Ну, вот тебе отличные примеры демонстрирующие ложность твоих посылок.
Очень даже относится. Плохой код не выдерживает конкуренции и умирает.
VD>Я тебе скажу больше. Понятие "хороший код" вообще трудно обсуждать, так как для 90% свой будет автоматом хороший, а просто не привычный — плохим.
Адекватный человек при этом будет понимать, что его мнение гроша выеденого не стоит и будет искать другие подтверждения, кроме деления на свой/не-свой.
Здравствуйте, VladD2, Вы писали:
L>>Ну так ты на вопрос ответь. Поднимись выше по ветке и ответь, чего юлить-то?
VD>А не хочу.
Почему?
VD>Тем более человеку уходющему (или передергивающему) от половины вопросов.
От какого вопроса я ухожу? Я стараюсь отвечать по возможности полно и по теме.
VD>Твой вопрос к делу не относится. Я тебе сказал что это так и этого достаточно.
Ты не сказал, "что это так". Вот твои слова:
А тебя это смущает?
Считай, что да. А что?
Вообще-то не обязательно быть владельцем, чтобы иметь право решать ...
Здравствуйте, Lloyd, Вы писали:
L>>>Я просто хочу понять как такое возможно — "Контора наймет того кого я захочу...", если ты не владелец??? VD>>Вообще-то не обязательно быть владельцем, чтобы иметь право решать вопрос о наеме программистов. Я знаю массу примеров когда вопрос принятия на работу программиста решается ведущим программистом или начальником отдела. L>Ну так ты на вопрос ответь. Поднимись выше по ветке и ответь, чего юлить-то?
Так, раз уж начали разделять ветку, то я решительно требую, чтобы выделили в отдельную ветку "Является или не является VladD2 владельцем?". Всем уже очень интересно.
P.S. Желательно оставить ее в философии — вопрос своего рода филосовский, похоже.
Здравствуйте, AndrewVK, Вы писали:
AVK>Наличие продающегося кода дает больше гарантий, чем проекты внутренней автоматизации.
Совсем не факт. Сравни шароварку "CD-ejector" и внутреннее приложение 24х7, на котором завязана вся работа крупной корпорации и ошибка в котором чревата многомиллионными убытками и с прогнозируемой поддержкой лет эдак на 20 вперёд.
Здравствуйте, VladD2, Вы писали:
VD>На мой взгляд качество кода зависит не от типа проекта, а от: VD>1. Отношения разработчиков к процессу разработки. VD>2. От сложности создаваемой системы (чем она сложнее, тем сложнее сделать весь код качественным). VD>3. От опыта и знаний разработчиков. VD>4. От используемых средств разработки (хотя это можно отнести к п. 1).
Влад, ты забыл самый главный пункт:
0. От того, как код удовлетворяет потребности пользователей.
Этот пункт перевешивает все остальные пункты вместе взятые. С другой стороны, без этого пункта все остальные пункты не имеют вообще никакого значения.
Здравствуйте, prVovik, Вы писали:
AVK>>Наличие продающегося кода дает больше гарантий, чем проекты внутренней автоматизации.
V>Совсем не факт.
Для меня — факт. Если для тебя нет — ради бога, я никому свои методы оценки зрелости технологии не навязываю.
V> Сравни шароварку "CD-ejector"
Про шароварки я уже здесь писал.
V> и внутреннее приложение 24х7
Это не показатель. Если инсталляция одна, то все выявленные проблемы легко решаются конкретным хардкодом под конкретную ситуацию. Я такого навидался даже в коробочных продуктах.
V>, на котором завязана вся работа крупной корпорации и ошибка в котором чревата многомиллионными убытками и с прогнозируемой поддержкой лет эдак на 20 вперёд.
Ага, еще немного, и опять стройными рядами пойдут программисты АЭС.
... << RSDN@Home 1.2.0 alpha 4 rev. 1111 on Windows Vista 6.0.6001.65536>>
Здравствуйте, prVovik, Вы писали:
VD>>На мой взгляд качество кода зависит не от типа проекта, а от: VD>>1. Отношения разработчиков к процессу разработки. VD>>2. От сложности создаваемой системы (чем она сложнее, тем сложнее сделать весь код качественным). VD>>3. От опыта и знаний разработчиков. VD>>4. От используемых средств разработки (хотя это можно отнести к п. 1).
V>Влад, ты забыл самый главный пункт: V>0. От того, как код удовлетворяет потребности пользователей.
Этот пункт не имеет никакого отношения к качеству кода. Он имеет отношение к качеству продукта. И, по большому счету, для пользователя гораздо важнее.
"Качество кода" — это скорее инженерный взгляд на предмет, а качество продукта — маркетинговый и пользовательский.
Пользователю вообще фиолетово какое там качество кода в продукте. Другое дело, что за счет качественного кода у продукта могут появиться другие полезные пользователю свойства — например более низкая цена или более быстрое обновление.
Но это только возможность, и тот же эффект может быть получен (или наоброт аннулирован) другими действиями производителя.
Здравствуйте, AndrewVK, Вы писали:
AVK>Это не показатель. Если инсталляция одна, то все выявленные проблемы легко решаются конкретным хардкодом под конкретную ситуацию. Я такого навидался даже в коробочных продуктах.
Ну да, и что?
V>>, на котором завязана вся работа крупной корпорации и ошибка в котором чревата многомиллионными убытками и с прогнозируемой поддержкой лет эдак на 20 вперёд.
AVK>Ага, еще немного, и опять стройными рядами пойдут программисты АЭС.
Здравствуйте, fmiracle, Вы писали:
F>"Качество кода" — это скорее инженерный взгляд на предмет, а качество продукта — маркетинговый и пользовательский.
О "красоте" некоторого решения можно говорить тогда и только тогда, когда это решение корректно. Между качеством двух решений, первое из которые делает действительно то, что надо пользователю и другим, которое делает что-то другое, что захотелось писавшим его программистам лежит бесконечная пропасть, даже если первое писала толпа индусов на Q-Basic'e, а второе было рождено группой гениальных программистов, вооружённых Nemerle.
Каково качество нерабочего кода? Я думаю, что-то около нуля. Но код может быть нерабочим не только потому, что он настолько плох, что не в состоянии работать, но и в том числе из-за того, что никому не нужен результат работы этого кода.