Больше версий хороших и разных

Не понимаю и не поддерживаю всеобщую истерию по поводу нумерации версий распространенного ПО. Решил высказать свое мнение, так как часто стал встречать возгласы типа: «— Куда Chrome гонится за цирфами?», «— когда я вижу Firefox 6 мне становится грустно», «— Зачем Линус изменил номер версии Linux Kernel на 3.0?»

Система нумерации версий — чисто технологический вопрос и он не влияет на потребительские качества ПО, соответсвенно решение о присвоении того или иного номера версии — вопрос, который должны решать разработчики, а точнее технологи.

На вопрос «Почему изменлся мажорный номер версии?» — ответ прост — первая цифра в такой схеме нумерования не является мажорной версией ПО, и не отвечает за коренные измения продукта. Первая цифра в rapid release отвечает за номер итерации процесса разработки, который сам по себе становится более размеренным и ритмичным (итерация определяется не фичами а периодом времени, в который эта итерация умещается). Каждая итерация вмещает в себя порцию кода, которая в последствии проходит стабилизацию — заметьте последующие цифры не обозначают стабильность релиза, а обозначают итерацию стабилизации. Любая ветка при этом проходит путь от беты до стабильного релиза, но разделение между ними не идет по номеру и это логично — результат не всегда есть пройденный путь.

Таким образом нумерация версий из разряда потребительских (читай маркетинговых) показателей, становится технологическим и характеризует процесс разработки. Хорошо это или плохо? Раз наблюдается тенденция перехода от классической схемы к системе rapid release — значит, люди отвечающие за формализацию процесса разработки считают это нововведение оправданым, а это на мой взгляд показатель.

Из проектов, которые первыми приходят на ум системой rapid release пользуются:

  • Ubuntu,
  • Google Chrome,
  • Firefox (с 4 версии)
  • и, на самом деле, Битрикс, хотя он смотрится в этом списке лишним, но выходит раз в год «мажорная» версия и раз в полгода «половинка».

Что касается моего личного мнения — я считаю систему rapid release более «продвинутой», и позволяющей избавиться от некоторых негативных эффектов в разработке, таких как застой, неуправляемый по объему поток входящих требований и несогласованность тактов в проектировании и разработки. Я не испытваю негатива к большим номерам версий, и считаю переход к RR естественной эволюцией технологии разработки.