Full-stack developer Emerson Rocha .::. CMS Joomla!, PHP, JavaScript/NodeJS, Infraestrutura

Este artigo não é técnico, mas creio que vale a pena deixar registrado. Não que o que vou dizer a esse respeito seja uma verdade absoluta, porém vou dizer do ponto de vista de alguém que acompanhou as discussões internacionais antes mesmo de se tornar público esse versionamento.

Visão geral

O Ponto central é que a adotou-se essa numeração em função de que, depois de discussões em lista de discussão internacional, resolveu-se que o CMS iria assumir ciclos de atualizações menores porém frequentes, separadas em dois grupos: uma com poucas modificações em relação a anterior e com uma garantia explicita de liberação de atualizações de segurança por um prazo extendido, conhecida como LTS, e outra que iria sofrer evoluções maiores, a um custo de exigir atualizações dos desenvolvedores para que suas extensões estejam adequadas a essa versão intermediária.

Vale lembrar que esse conceito de dividir em dois grandes grupos os lançamentos que não são meramente de segurança não é algo inovador. Um exemplo mais recente disso é o sistema operacional Ubuntu, caso explícito de sucesso. Alguns vão argumentar que o Debian é melhor, que isso, que aquilo, mas, cá entre nós, o Ubunto realmente popularizou o Linux mais do que qualquer outra distribuição e, quer queira-se ou não, também trouxe junto mais interesse. E assim como eu havia argumentado em um post anterior sobre Explicação de Interface com Usuário para Programadores, é sim bom inovar, mas certas situações em que algo é tão comum que chega a virar um senso comum implicito, é valido facilitar uma idéia geral de uma pessoa entender do seu projeto ainda que parcialmente aproveitando-se do que ele sabe de outros projetos. As pessoas ficam felizes com isso! Então é valido argumentar primeiro essa relação dessa divisão de dois grupos de versões.

Questões de marketing (ou melhor, visão do publico leigo e "senso comum")

Ainda que para o publico em geral, haja uma péssima idéia de achar que a questão numérica realmente importe. A questão de numeração explicitamente não representa evolução mas, estranhamente, pelo menos no que diz respeito as pessoas colaborando, tenho impressão que a quantidade de pessoas envolvidas, e a quantidade de caracteristicas implementadas por semestre, aumentaram desde que o Joomla passou a assumir um ciclo semestral. Concordam que isso é bom? 

Ainda sobre esse ponto, foi realmente traumatico a ideia do Joomla ter passado de 1.5 para 1.6 e convencer as pessoas que não ia ser uma transição tão fácil como só clicar no painel administrativo e deu, como é hoje em dia. Agora, se fosse de um 1.5 para 2.0, o grande publico certamente entenderia com facilidade. Sob esse outro ponto de vista, uma numeração extremamente conservativa acaba sendo uma desvantagem.

Veja esse exemplo genérico, e procure perceber se ele lhe parece lógico

  • 1.0: Primeira versão estável de um software
  • 1.0.1: A mesma versão de software anterior, com uma pequena correção, tipicamente algum bug ou falha de segurança
  • 1.1.0, 1.2.o, 1.3.0, 1.4.0, 1.5.0 ... : A primeira versão do softtware, versão 1.0 com alterações não necessariamente pequenas. Alguma caracteristica nova implementada
  • 2.0: A segunda versão. Deve ter grandes mudanças e adições em relação a 1.0. Alguma incomplatibilidade experada com relação a versões anteriores
  • 2.5: A segunda versão, com implementações novas em relação a versão 2.5, mas ainda é, em essência, uma 2.0 com melhorias, mas não muitas. Presupõe-se não haver grandes problemas para fazer algo ser compativel entre a 2.0 e 2.5

O CMS Joomla, para o grande publico, irá seguir o padrão 2.5 -> 3.0 -> 3.5 -> 4.0 -> 4.5 -> ... . Nesse sentido, sem parar para pensar muito, você consegue desde já responder se a versão 4.0 do Joomla trará novidades maiores em relação a 3.5 do que a 4.5 em relação a 4.0?

Questões técnicas

Se por um lado, uma numeração mais alta pode passar uma impressão boa para um leigo, para quem é desenvolvedor e está há tempos no meio, ver a quantidade e qualidade de implementações gera um impacto positivo, independente de a numeração evoluir 0.1 ou 0.5 ou 1.0. E por esse sistema de versionamento funcionar bem em outros projetos, gera também certa segurança e confiança para desenvolvedores. Bem, pelo menos os desenvolvedores sérios e que não querem apenas ficar preso a algo que não evolua e fique funcionando do mesmo modo pra sempre.

Alias, agora está mais claro para o desenvolvedor de extensões, e até mesmo para quem implementa o CMS Joomla, que ele pode assumir dois ritimos de atualização distintos: um que tende a ter uma quantidade menor de inovações e garantia de ter suporte com prazo estendido, e outro que implementará novas versões mais rapido. Parece mais justo, não?

Então, por que foi da 1.7 para a 2.5 e não para a 1.8 ou a 2.0?

Agora que leu a base do versionamento dividido nestes dois grupos, e que sabe o impacto ao grande publico e o impacto aos desenvolvedores, vai ficar mais fácil compreender. Apenas tem que ter em mente o seguinte:

  • A versão 1.5 é considerada uma versão LTS
  • As versões 1.6/1.7 são consideradas versões não LTS
  • Os desenvolvedores, e praticamente toda a comunidade, tinham interesse em que, a versão após a 1.7 fosse, houvesse obrigatoriamente uma versão LTS para servir ao publico que estivesse migrando do 1.5.

Então, sabendo disso, qual numeração VOCÊ daria? Pense um pouco. Se iria responder 2.0, ja lhe adianto que se fizesse essa heresia, iria passar a ideia de que essa versão viria com novas implementações marcantes, e que um desenvolvedor de extensões da 1.7 poderia sofrer para atualizar para para ela, coisa que não é verdade do ponto de vista técnico. Você estaria mentindo para os desenvolvedores e para o grande publico, simplesmente para manter o que na sua opinião pareceria "bonito". E qualquer outra idéia que desse, como por exemplo, ir para a 1.8 -> 1.9 -> 2.0 seria ainda pior. Claro que você poderia argumentar que, em vez de mudar a nomenclatura, fosse alterado todo o ciclo de desenvolvimento. Algo como querer convencer os desenvolvedores a não fazer uma versão LTS, mas acho que compreende que seria ignorado e mal visto até por quem só faz o assemble de sites Joomla

Bem, na prática mais cedo ou mais tarde haveria uma quebra na numeração do CMS para acompanhar a evolução técnica dele. E foi por isso que escolheu-se fazer isso logo, e não simplesmente, nem principalmente, por questões de marketing.

Atualização em 2012-04-02:

Saiu no Joomla Magazine de Abril uma explicação do Max Dexter, membro do PLT e coordenador do JBS, a respeito do mesmo tema e alguns pontos a mais, como as versões futuras. Recomendo a leitura de Joomla Versions and Updates Explained

comments powered by Disqus

fititnt.org is not affiliated with or endorsed by the Joomla Project or Open Source Matters. The Joomla logo is used under a limited license granted by Open Source Matters the trademark holder in the United States and other countries
HTML5 Valid