De developers hebben de afgelopen maanden niet stilgezeten en hebben een waslijst aan nieuwe features, tweaks en bugfixes opgeleverd. De grote projecten zijn reeds in eigen .plans aangekondigd. Veel kleinere wijzigingen blijven echter onopgemerkt voor de gebruikers. Vanaf heden zullen we daarom regelmatig een overzicht geven van het development changelog.
Nieuws, reviews & meuk
Op de nieuws-, reviews- en meukpagina's werd het ruimtegebruik van de I/O-items in de rechterkolom verminderd door de items in twee kolommen naast elkaar te plaatsen. De lijstjes met gerelateerde producten werden aangekleed met productplaatjes om de herkenbaarheid van de producten te verbeteren. Op de homepage van de Meuktracker werden de lijstjes met de laatste updates voorzien van een reactieteller.


Pricewatch
In de Pricewatch werd vanaf eind februari gefaseerd een verbeterde Pricewatch-engine ingevoerd. De nieuwe engine maakt gebruik van een in Java geschreven middleware, die een laag tussen de database en php vormt. Een beperking van php is dat de gegevens die tijdens een request worden verwerkt voor elk request uit bijvoorbeeld een database opgehaald moeten worden. Na het voltooien van het request wordt data weer weggegooid. Dit is nogal jammer bij pagina's die vaak dezelfde dataset gebruiken, zoals de categoriepagina's in de Pricewatch. Door Java te gebruiken kan de data actief blijven in het geheugen van de webserver en is er minder communicatie met de database nodig. Pas als de webserver bericht heeft gekregen over een wijziging, wordt de database benaderd. Uitgebreide uitleg over de werking van de nieuwe Pricewatch-engine is in deze .plan gegeven.
Een andere verbetering in de Pricewatch betreft de ondersteuning van aantallen van specs. Het is mogelijk geworden om bij bijvoorbeeld een tv niet alleen aan te geven welk type poorten er wordt ondersteund, maar ook het aantal per type. In Vraag & Aanbod werd de embargofunctie in ere hersteld. Hiermee is het mogelijk om een advertentie onzichtbaar te maken voor anderen zodat de gebruiker rustig de tijd kan nemen om zijn advertentie op orde te maken.
Tweakblogs
De Tweakblogs zijn na de invoering van de karmastore voor een groter publiek toegankelijk geworden en dus werd het tijd om aan de functionaliteit en de prestaties te sleutelen. Optimalisatie van de databasequery's en het snoeien in de stylesheets zorgde voor betere prestaties van de blogpagina's. Het resultaat is een prachtige performance grade van 98 in YSlow. Bloggers kregen meer mogelijkheden om de vormgeving van hun blog te tweaken. Om de instellingen overzichtelijk te houden zijn deze ondergebracht in aparte tabbladen voor de headers, content, sidebar en algemene styling. Er werd ontbrekende styling van een aantal rml-tags toegevoegd en de parser werd aangepast zodat forum-url's nu ook automatisch worden verwerkt naar links met een mooi naampje.
Het wijzigen van reacties was voorheen niet mogelijk. Eigenaren van blogs hebben een optie gekregen waarmee zij kunnen aangeven of (ingelogde) bezoekers hun reacties mogen aanpassen en binnen welke termijn een wijziging is toegestaan. Vanwege de toename van het aantal tweakbloggers werden de kleine lijstjes met updates, populaire blogs en nieuwe blogs op de Tweakblogs-homepage te beperkt. De lijsten werden daarom aangepast op de grotere doorstroom en zijn uitklapbaar gemaakt, zodat er meer items getoond kunnen worden. Details over de tweakblogtweaks vind je in de blogs van Tino en Robert.


Forum
Het forum werd voorzien van diverse subtiele tweaks en de code werd opgeschoond. De rml-parser werd voorzien van ondersteuning voor Vimeo-filmpjes. Voor de gebruikers van custom css werd er een aparte class 'topicstarter' gemaakt voor berichten van de topicstarter. Met behulp van deze class kunnen bijvoorbeeld de naam en de achtergrond van de berichten van de topicstarter afwijkende kleuren gegeven worden, zodat berichten van de topicstarter beter herkenbaar zijn. De zoekmachine werd uitgebreid met een optie om op datum van de laatste reactie in een topic te zoeken. Voorheen was alleen zoeken op de topicstart mogelijk, wat tot gevolg had dat langlopende topics niet werden gevonden. Om het invoeren van het datumbereik te vereenvoudigen werd er een mooie kalender-widget gebouwd.


Benchmarks
De kwaliteit van de grafieken uit de Benchmark Database werd verbeterd door supersampling toe te passen. Jpgraph, de library waarmee deze grafieken worden gegenereerd, biedt geen ingebouwde ondersteuning voor anti-aliasing van lijngrafieken met een dikte van meer dan één pixel. Door grafieken op de viervoudige resolutie van het gewenste formaat te renderen en daarna te downsamplen wordt aliasing in grafieklijnen vermeden. De grafieken in de Benchmark Database werden tevens veelzijdiger gemaakt zodat ze breder ingezet kunnen worden. Onder andere videokaartreviews zullen gebruikmaken van automatisch gegenereerde grafieken.


Notificatie & Direct Messages
De notificatieinstellingen werden uitgebreid met de optie om notificaties over meukupdates, advertenties en reacties op je gallery, shopreviews en productreviews via Direct Message te ontvangen. De fanatieke Tweaker genereert eerder een pageview op Tweakers.net dan hij zijn mail checkt en dan werkt notificatie via DM sneller ;) Meer informatie over DM-notificatie vind je in deze blog van Michael.
In de Direct Messages werd een bug verholpen die ervoor zorgde dat de checkbox 'discussie negeren' niet werkte bij discussies die in een subfolder waren ingedeeld.


Registratieprocedure
De registratieprocedure werd gestroomlijnd door een betere controle van de geldigheid van het opgegeven emailadres. Er wordt nu een check op het bestaan van een MX-record of A-record gedaan. De registratiepagina geeft meer duidelijkheid over de omgang met de adressen van gratis e-maildiensten. Adressen van grote gratis e-mailproviders zoals Hotmail en Google zijn sinds kort tijdens de registratie toegestaan. Andere gratis e-maildomeinen zijn niet toegestaan bij registratie, maar een gebruiker mag na registratie wel zijn email wijzigen in een adres naar keuze. Bezoekers die proberen te registreren met een e-mailadres dat reeds is geregistreerd worden hier met een duidelijke melding op gewezen. In dergelijke gevallen gaat het waarschijnlijk om personen die hun gebruikersnaam zijn kwijtgeraakt of vergeten zijn dat ze zich hebben geregistreerd.
Beëindiging ondersteuning Internet Explorer 6
Op 20 maart kondigde Tweakers.net aan dat de actieve ondersteuning van Internet Explorer 6 wordt gestaakt. Er zullen geen workarounds meer gemaakt worden voor nieuwe functionaliteit en layoutwijzigingen die vanwege de brakheid van IE6 niet op de gewenste wijze in deze browser worden gepresenteerd. Om IE6-gebruikers te wijzen op de gammele staat van hun browser is er een mooie melding gemaakt.

Javascript minifying
De developers produceerden diverse performanceverbeteringen, waaronder de javascript minifier die Tino in elkaar sleutelde. De minifier reduceert de bestandsgrootte van javascriptbestanden door overbodige tekens te verwijderen. Er is gekozen voor een oplossing die de namen van functies, parameters en variabelen onaangetast laat, zodat de minifier geen beperkingen oplegt aan de ontwikkelaars. Het minimaliseren van de javascriptbestanden is onderdeel van het semi-geautomatiseerde deploymentproces van Tweakers.net en vindt plaats op het moment dat scripts vanuit de svn-repository naar de webservers worden gekopieerd.
In de praktijk levert het minimaliseren van javascriptbestanden op gzip-gecomprimeerde bestanden een besparing op van dertien tot twintig procent. De minifier werd omgedoopt tot JSMin+ en is onder een mpl/gpl/lgpl-licentie vrijgegeven. De nieuwste versie kun je downloaden in de Meuktracker. Uitgebreide informatie over JSMin+ en de updates 1.1 en 1.2 vind je in Tino's blog.


Karmastore
Tweakers.net lanceerde op 14 maart de karmastore. Daarmee kwam tegelijkertijd een einde aan het My.Tweakers.net Full-abonnement, dat sinds november 2002 heeft bestaan. Gebruikers kunnen de karma die zij met hun bijdragen aan Tweakers.net hebben verdiend, inzetten om extra's te activeren. Voorbeelden van extra's zijn een fotoalbum, weblog en custom frontpage layout. Een deel van de features wordt levenslang beschikbaar gesteld en een ander deel wordt per half jaar geactiveerd. De Full-abonnees werden op een passende wijze gecompenseerd door hen voor het leven toegang te geven tot de features in de karmastore.
Inmiddels hebben 1.600 users gebruikgemaakt van de karmastore en is er meer dan 7.200 keer een feature geactiveerd. Door de instroom van nieuwe tweakbloggers steeg het aantal nieuwe blogposts in de afgelopen maand met een factor 2,3 ten opzichte van twee maanden terug. De mogelijkheden van de karmastore zijn uitgebreid besproken in deze .plan.

