face

Инфляция номера версии

Opera Software не удержались. Так и чесались, видать, у менеджмента руки увеличить старший номер версии. Я следил за предварительными выпусками:

7.60 Preview 1 Build 793 (August 25, 2004)
7.60 Preview 2 Build 840 (October 26, 2004)
7.60 Preview 3 Build 862 (November 15, 2004)
7.60 Preview 4 Build 874 (December 3, 2004)
8.0 Beta 1 Build 913 (January 6, 2004)

Вообще, похоже, это закономерность: координаторы open source, как правило, подходят к изменению старшего номера версии очень консервативно, и большинство открытых продуктов вообще имеют в качестве первой цифры 0 или 1. Увеличивается эта цифра только тогда, когда или продукт переходит в стабильное состояние (после 0 становится 1), или половина кода переписана напрочь. Бывают, конечно, исключения: например, Emacs.

Коммерческие продукты с закрытым кодом, наоборот, как правило, обращаются со старшим номером версии весьма вольно. В основном, думаю, это происходит потому, что в коммерческих организациях выбором публичного номера версии занимаются не программисты, а менеджеры, и для них это не столько отражение значительности или характера изменений по сравнению с предыдущей версией, сколько маркетинговый рычаг, наряду с названием продукта, эмблемой и лозунгом. А с этой точки зрения, наверное, 8.0 смотрится красивее, чем 7.60 или, тем более, 7.60-preview4.874.

При этом возникает явление, которое я бы назвал «инфляцией номера версии»: если при взгляде на версию Apache 2.0 мне ясно: «Уууу, тут, наверное, пол-апача перелопатили», — то, значительные ли изменения в Corel DRAW 12, по номеру версии не определить. Так, например, Corel DRAW 11 содержал по сравнению с предыдущей версией нововведения, которые я бы назвал если не косметическими, то, по крайней мере, не более чем тривиальными. Причём инфляция бывает иногда столь значительна, что менеджерам иногда приходится увеличивать старший номер версии больше, чем на единицу, чтобы отразить, что изменения на этот раз ещё масштабнее. Так, например, произошло с Netscape и Winamp.

К чему я всё это? Да так, нашёл ещё одно подтверждение универсального принципа: Выделяя всё, не выделяешь ничего. Если выделить каждое слово в тексте жирным шрифтом, то непременно захочется самое-самое важное выделить жирным-прежирным. Если, давая любое задание подчинённым, вы говорите, что это должно быть готово вчера, то вам будет трудно объяснить, что вот это новое задание имеет более высокий приоритет, чем остальные. Других примеров существует масса, и, думаю, каждый без труда вспомнит ещё несколько. Просто я в данном случае несколько неожиданное проявление нашёл.

UPDATE: Вот, можно сказать, предельный случай агрессивного наращивания номера версии: полный отказ от использования публичных номеров версий, как это сделала Micro$oft, когда выпустила Windows 95 после Windows 3.11. А дальше уж понеслось. Ещё можно припомнить Pentium после 80486, но это уже из другой оперы всё-таки.
  • Current Music: Roxette - Beautiful things
Только WinAMP — не очень хороший пример, он развивался скорее по логике свободного ПО.
Re: Reply to your post...
Да, действительно. И даже переход на цифру 3 был вполне оправдан при
таких-то нововведениях. Насчёт Winamp погорячился.
Угу. Так и есть. Это точно как в том анекдоте
"Alpha. Doesn't work. Beta. Doesn't work. Release. Still doesn't work, but we hit a deadline!".
Кстати, Опера7 от 6-ой отличалась очень сильно.
А вообще это очень выгодно новую версию увеличивать - можно паковать новые боксы, и опять продовать их, и продовать за отдельные деньги.
Emacs - тоже пример нехороший.

[mag@vertex:/usr/share/emacs/21.3/etc]$ cat *NEWS* | wc -l
21997

И это NEWS - только краткое описание крупных фич.
Re: Reply to your post...
Посмотрел NEWS. Ничего революционного там не вижу. Сделано, конечно,
немало, но это просто активная эволюция. Если бы это была революция (21-ая
по счёту), Emacs версии 18 (а не версии 1 даже) казался бы уже динозавром,
примерно как PHP 2.0.

Хотя, может, он и кажется?
Re: Reply to your post...
Emacs 19 - это такой динозавр...

Emacs 21 добавляет поддержку немоноширинных символов (уже само по себе много), звука, картинок, тулбары, тултипы, более полную работу с мышью. В общем, переписан нахрен весь интерфейс.

Emacs 20 добавляет поддержку многих языков и кодировок (в том числе многобайтных).

Еще можешь посмотреть раздел "ANTINEWS" в Info от Emacs.

Кстати, Emacs 22 будет насквозь уникодным.
Re: Reply to your post...
…, звука, картинок, …
WTF? I just want to edit the damned crontab!

;-)
Я бы сказал что приведение в пример emacs это как удар ниже пояса :)

Как доказательство того что во всем виноват маркетинг - Adobe Photosop CS (8) ну и вообще вся его эволюция. CS это и правда новая программа. Ну и номер версии 7 на самом деле вполне оправданн - я (начиная с 3.5, или что-то в этом духе) не помню ни одной ненужной мажорной версии. Сдается мне причина - в отсутствии конкуренции.

PS Сейчас начал вспоминать что поменялось и подумал что для человека который видел самый мега-растровый редактор всех времен и народов - это вообще не изменения...начиная с шестерки где-то. Так что так же и с emacs - вопрос спорный что есть эволюция, а что -ревоюция .
самый мега-растровый редактор
Это кто такой??
а теперь представь, что продажник будет критиковать твой код?

Леша, каждый делает то, что умеет. и не комментироветь то в чем ты разбираешся херово -- хороший тон, что ли. в Опере офигенный менеджерский состав, видимо. просто офигенный. мне бы такой
я не о смене версий сейчас. но раз специально обученные люди, ведущие успешный проект решили, то это не просто так.
Re: Reply to your post...
> а теперь представь, что продажник будет критиковать твой код?

Имеет право. С точки зрения потребительских качеств. То есть, если ему
кажется, что программа неудобна, он, конечно, имеет полное право об этом
заявлять.