De nieuwe routerfunctie komt niet in Joomla! 3.7.0
Op donderdag 23 maart publiceerde Robert Deutz op Joomla.org een uitleg over de stand van zaken rond de nieuwe routerfunctie die in Joomla! 3.7.0 zou worden geïntroduceerd.
Zijn Engelstalige uitleg vind je hier.
In het kort komt het er op neer dat het ontwikkelteam dat verantwoordelijk is voor het realiseren van Joomla! 3.7.0 heeft besloten dat de nieuwe routerfunctie geen onderdeel gaat worden van deze nieuwe versie.
De belangrijkste reden is dat het niet is gelukt om op tijd een stabiele router te ontwikkelen, die in staat is om bestaande en nieuwe links goed af te handelen. Het risico is te groot, dat na het inschakelen van de router op bestaande websites, de geïndexeerde URLs bij Google niet meer naar de juiste URL verwijzen. Daardoor zouden in één keer alle Joomla!-websites enorm in de Google-ranking dalen en dat mag niet de bedoeling zijn.
Voor Joomla!NL heeft Wouter de uitleg vertaald, zodat iedereen de laatste stand van zaken hierover kan lezen. Lees in de vertaling hieronder wat het ontwikkelteam nu als plan heeft voor de komende periode.
Vertaling: (originele tekst is van Robert Deutz)
Enkele weken geleden publiceerden we de informatie dat we bezig waren met de nieuwe router. Sindsdien zijn we met het team bezig geweest om de nieuwe routercode goed te controleren. Dit naar aanleiding van een issue waarin werd gemeld dat de communicatie naar ongeldige URLs leidde tot 404-fouten.Daarom vertellen we hier nu waarom we tot de beslissing zijn gekomen om de nieuwe router niet op te nemen in de komende Joomla!-versie.
Voordat we in details treden, vertellen we eerst over de plannen voor de toekomst. We weten dat veel mensen al lang uitkijken naar een betere router voor Joomla!
Ons plan is nu om in de komende 2-3 maanden intensief te gaan werken aan die router en willen de nieuwe router introduceren in Joomla! 3.8.
Dit wordt ook ondersteund tijdens het Google Summer of Code Project. We zetten een team op van ontwikkelaars en SEO-experts om samen de beste router te bouwen die Joomla! ooit heeft gekend.
We verwijten niemand iets We hebben fouten gemaakt. De grootste fout was dat het PLT te weinig tijd heeft besteed aan het beheer van het ontwikkelen van de router en daarbij te weinig wensen en eisen heeft vastgesteld, mogelijk omdat er te weinig inhoudelijke kennis aanwezig was.
Dit brengt ons bij de belangrijkste reden waarom het is mislukt. De router moest namelijk in staat zijn om per component ingeschakeld te kunnen worden. Bij de ontwikkeling werd er op component-routing gefocust.
De nieuwe router komt in een omgeving van allerlei al bestaande oude router-code. Dus moet de nieuwe router worden gebouwd op oude magie. Dit is de belangrijkste reden waarom het niet gaat werken. De juiste benadering zou moeten zijn, om aan het begin van het routeringsproces te starten en de nieuwe router leidend te laten zijn in plaats van dat de nieuwe router als een late gast aan tafel aanschuift.
Hoe dan ook, er werd aan et begin al een verkeerd pad gekozen om mee te starten. De administrator laten kiezen bij welk component de router moet worden ingeschakeld, ligt eigenlijk ver boven de basiskennis die zo’n beheerder behoort te hebben. We hadden dus onze doelgroep niet goed in beeld. Om problemen op te lossen hadden we juist meer “moeilijk te begrijpen” parameters ingebouwd. En dat maakte het er niet eenvoudiger op.
De code zelf had ook nog enkele problemen, sommige waren behoorlijk onduidelijk en zelfs door te debuggen werd niet duidelijk waar het precies voor was geschreven. De slechte kwaliteit van de code maakt beheer in de toekomst lastig. De nieuwe routercode en procedures moeten goed worden gedocumenteerd, zodat alle gebruikers en ontwikkelaars weten wat ze kunnen verwachten. Op basis van wat we nu weten mag dit dus geen onderdeel worden van een nieuwe Joomla!-versie.
En dan even terug naar onze gebruikers. Onze gebruikers bouwen websites en in een wereld met Google moet je website zichtbaar zijn in de Google-zoekresultaten. Mensen maken een hoop URLs en willen daarmee hoog scoren. Met de nieuwe router konden we geen pad bieden waarin de oude URLs zouden blijven werken en ze doorsturen naar de nieuwe routering. Om goed te kunnen begrijpen wat nu het effect van ons besluit is, geven we als voorbeeld dat de nieuwe router een standaardfunctionaliteit in Joomla! 4.0 zou gaan worden, zonder optie om terug te kunnen naar de oude routerfunctionaliteit. Dus kon je kiezen om de nieuwe router niet te gebruiken in Joomla! 3, maar in Joomla! 4 zou je die keuze niet meer hebben. En dat zou grote problemen gaan opleveren.
Voor kleine websites zou dat nog wel te overzien zijn, maar op grotere en complexe websites zou het wel een groot probleem worden. Daarnaast zijn beheerders van kleine websites vaak minder goed op de hoogte van de techniek van Joomla!, waardoor het ook voor hun een lastig punt zou worden. Dus is besloten dat we onze gebruikers moeten kunnen ondersteunen en dat zou niet gaan met de huidige code voor de nieuwe router.
Het Production Department Leadership Team, de teams die betrokken zijn bij het beheer van de code (release team en beheerteam) en ikzelf als leider van de uitgave van versie 3.7, waren het er samen over eens dat het de beste beslissing is om de nieuwe router uit deze versie te halen. We gaan er nu mee aan de slag om de nieuwe router te kunnen opleveren in Joomla! 3.8.
Tot slot nog een groot “Dank je wel” aan alle mede-ontwikkelaars en testers en special dank aan Hannes voor al het harde werk dat er tot nu toe in is gedaan. Dit is GEEN verspilde tijd, we hebben veel geleerd uit dit proces en het helpt ons allen om het voor de toekomst beter te doen. Het nieuwe router-team gaat aan de slag met de ideeën en heeft kunnen leren van de ervaringen tot nu toe. Iedereen wordt bij deze uitgenodigd om in het team mee te werken (vooral diegene die al met de nieuwe router bezig geweest zijn).
Robert Deutz, 3.7 Release Leader.
PS: Door alle tijd die we al in het ontwikkelen van de nieuwe router hebben geïnvesteerd, is het uitkomen van Joomla! 3.7 vertraagd. Binnenkort publiceren we meer details en informatie over het vervolg