Inleiding
Vandaag is het precies achttien jaar geleden dat Femme Taken de voorloper van Tweakers, World of Tweaking, online zette. We zijn dus jarig en eindelijk officieel volwassen! En wat doe je op een verjaardag? Feesten en terugblikken natuurlijk. Dat feesten gebeurt vanavond op Tweakers HQ en terugblikken doen we vandaag op de site.
Bijvoorbeeld in dit artikel, waarin we ingaan op het ontstaan van Tweakers, de ontwikkelingen rondom de site, de groei van de organisatie en de mensen achter de schermen. Of in ons losse artikel over de serverhistorie, waarin we een kijkje nemen in alle hardware die er de laatste jaren bij is gekomen om de site draaiende te houden.
En ook in video. We hebben een aantal tweakers voor de camera getrokken om het te hebben over achttien jaar technologie. Waar begon het voor hen? Waar hebben ze warme herinneringen aan? En welke rol heeft Tweakers daarin gespeeld? Daarnaast hebben we aan jullie gevraagd welke producten en technieken nou echt een indruk hebben achtergelaten in de afgelopen achttien jaar. Het resultaat bekijk je hieronder.
De preconceptie
De geschiedenis van Tweakers gaat terug tot een eenvoudige overkloksite, die door Femme Taken in juni 1998 online werd gebracht naar aanleiding van de aanschaf van een Abit BX6 en een Pentium II 233. Die Pentium II liep na de montage van zwaardere heatsinks en extra ventilators op een voor die tijd indrukwekkende kloksnelheid van 360MHz. Om deze prestatie wereldkundig te maken en andere mensen te enthousiasmeren voor het overklokken, bouwde hij met behulp van server side includes een eenvoudige pagina waarop de basistechnieken van het overklokken werden uitgelegd. De site draaide op een shared-hostingaccount, dat hij gebruikte voor zijn webdesignbedrijfje. Aangezien er nog volop data over was (100MB per maand!) werd de overkloksite onder hetzelfde account geplaatst.

Dankzij een submit van een medestudent kreeg 'Ftl_F's Overclocking Experiences' een vermelding op Slashdot. Overklokken stond destijds nog in de kinderschoenen en een pagina waarop de basistechnieken van het overklokken werden uitgelegd, viel in de smaak bij het Slashdot-publiek. Zo beleefden we voor het eerst de sensatie van het Slashdot-effect. De site kreeg dankzij de vermelding op Slashdot maar liefst drieduizend bezoekers te verwerken. De trafficlimiet van ons shared-hostingaccount werd binnen een dag volgeserveerd, wat Femme deed besluiten om een dikker account te nemen met een hogere trafficlimiet en ondersteuning voor php, mSQL, MySQL en Perl. Hiermee kreeg hij de mogelijkheid om dynamische sites te bouwen. Tegenwoordig host je voor een paar euro per maand een WordPress-site, maar destijds moest er nog bijbetaald worden om scripts te kunnen draaien.

De nieuw verworven privileges om Perl-scripts te mogen draaien werden meteen aangewend om een UBB-forum uit te rollen. UBB draaide op Perl en maakte gebruik van tekstbestanden om gegevens over gebruikers en forumtopics op te slaan. Het forum werd een toevluchtsoord voor gebruikers van het Webwereld-forum, die de strenge moderatie en het gebrek aan diepgang beu waren. Er ontstond een clubje van gelijkgestemden, die aan het pionieren waren met de laatste pc-hardware, en het bouwen en hosten van sites.

Een van de eerste forumtopics op GoT
Het ontstaan van Tweakers
Het succes van de Engelstalige overkloksite smaakte naar meer en dus werd het plan gesmeed om een Nederlandstalige hardwaresite te bouwen in de geest van Tom’s Hardware Guide, AnandTech en Voodoo Extreme. Deze site ging uiteindelijk op 30 september 1998 live, onder de naam World of Tweaking. Het eerder geopende forum werd hernoemd naar Gathering of Tweakers en maakte deel uit van de nieuwe site.

De frontpage van World of Tweaking
De techniek achter World of Tweaking was in eerste instantie gebaseerd op server side includes. Een van de eerste uitbreidingen van de site was een pollscriptje in Perl. Hoewel de server side includes het mogelijk maakten om vaste onderdelen van de pagina, zoals de header en de footer, te delen, was er veel handwerk nodig om nieuwsberichten en reviews toe te voegen. Artikelen moesten met de hand als html ingeklopt en via ftp geüpload worden.
De beheersbaarheid was verre van ideaal en werd problematisch toen de behoefte ontstond om andere vrijwilligers de mogelijkheid te geven om nieuwsberichten en reviews te schrijven. Zo’n twee maanden nadat World of Tweaking live was gegaan, begonnen we daarom met het bouwen van een database-driven variant van de poll en de nieuws- en reviewpagina’s.

Een nieuwsbericht op World of Tweaking, beheerd via server side includes
Femmes ervaring met programmeren was beperkt tot wat autodidactisch javascripten en het volgens trial en error aanpassen van Perl-scripts. Verder had hij een paar lessen Java en sql genoten en, hoewel beide op introductieniveau werden gegeven, begon hij de mogelijkheden te zien van dynamische websites, waar bezoekers zelf bijdragen aan konden leveren. Om databases te kunnen gebruiken moest het hostingaccount bij Pair Networks opgewaardeerd worden. Niet wetende wat het verschil was tussen mSQL (MiniSQL) en MySQL, werd per ongeluk gekozen voor de mSQL-checkbox. In tegenstelling tot MySQL had mSQL geen ondersteuning voor auto increments. Bij het toevoegen van nieuwsberichten en reviews was het dan ook goed opletten dat ze een uniek id kregen.
Niet gehinderd door enige kennis van programmeertalen werden de eerste scripts in elkaar gesleuteld waarmee artikelen in een database gestopt en daar weer uitgehaald konden worden. Eind november gingen de eerste dynamische pagina's live. Na het nieuws kwamen de reviews, de frontpageposts en de poll aan de beurt. Enige tijd later werd de site uitgebreid met een prijsvergelijkingspagina, waarop de laagste prijzen van een aantal populaire computeronderdelen, zoals processors en geheugenmodules, werden vermeld. Deze voorganger van de Pricewatch werd aanvankelijk met de hand bijgehouden. Het reageren op nieuwsposts en reviews was nog niet mogelijk, en de mogelijkheden voor input van gebruikers waren nog beperkt tot het forum en de poll.
De allereerste php-knutsels waarop Tweakers draaide, hadden als enige doel om data in de database te zetten en er weer uit te halen. Het waren geen esthetische hoogstandjes. De code had in het begin zelfs geen indenting en code die ongeveer hetzelfde net iets anders deed, werd botweg gekopieerd in plaats van dat er gepoogd werd om er generieke functies voor te bouwen. Een coding style guide zou ook nog lang op zich laten wachten. Aan de hand van willekeurige gebeurtenissen en het gevoel van de dag werd in dezelfde functie- en variabelenamen een mix van snake_case, camelCase en UpperCamelCase gebruikt.
Van WoT naar Tweakers.net
In april 1999 vond de eerste restyling van Tweakers plaats en werd de naam van de site hernoemd van World of Tweaking naar Tweakers. De site kwam op een eigen domein te draaien, met het forum op het subdomein gathering.tweakers.net. Het forum draaide nog steeds op UBB en kreeg in dezelfde maand een restyling, maar bleef gebruikmaken van de blauwe WoT-kleuren, totdat het in september 2008 eindelijk wat styling betreft in de pas ging lopen met de rest van de site.
Bij de restyling werden alle php-scripts herschreven en werd MiniSQL ingeruild voor MySQL. Van een volledige lamp-stack was nog geen sprake, aangezien de servers nog op FreeBSD-draaiden. De url van de site werd gewijzigd van world.tweakers.net in tweakers.net. Een andere belangrijke vernieuwing aan de site was dat er voor het eerst gereageerd kon worden op nieuwsberichten. Een registratiesysteem ontbrak echter nog.
Er werden discussies gevoerd over het briljante idee om e-mail-links bij artikelen te plaatsen
Prachtig aan die tijd was dat je de ontwikkeling van een nieuw medium van dichtbij kon meemaken. Het bouwen van een communitysite was nog echt pionieren. Veel diensten die tegenwoordig als vanzelfsprekend worden beschouwd, moesten nog bedacht of verder ontwikkeld worden. Er waren dus volop kansen om een uniek of zeldzaam concept te ontwikkelen. Daardoor was het mogelijk om met weinig middelen iets handigs in elkaar te klussen, dat veel gebruikers gelukkig kon stemmen, ondanks de eenvoudige functionaliteit.
Een voorbeeld was de prijsvergelijker van World of Tweaking, die bestond uit slechts één pagina, waarop de laagste prijs van enkele hardlopende producten werd bijgehouden. De inhoud bestond vooral uit populaire processors, moederborden en generieke producten, zoals geheugenreepjes met een bepaalde capaciteit. Bij gebrek aan beter was men snel tevreden. Er werden discussies gevoerd over de vraag of het briljante idee om e-mail-links bij artikelen te plaatsen moest worden overgenomen en in de reacties werd de mogelijkheid toegevoegd om door middel van de [url]-tag links te maken.

Prijsvergelijker buitenland, opgesteld door Ype Poortinga op 20 november 1998.
Een vergelijkbare lay-out werd gebruikt voor de Nederlandse prijsvergelijker.
Deze prijsvergelijker bleef bij de restyle van Tweakers.net nog even in de oude lay-out draaien, tot hij op 30 april 1999 in een nieuwe vorm werd geherintroduceerd. Voor het eerst werden de naam Pricewatch en de url tweakers.net/pricewatch gebruikt. Een andere noviteit was dat de productdatabase werd opgedeeld in categorieën, zodat het opzoeken van producten gebruiksvriendelijker werd en de bezoekers niet langer een grote tabel van 80kB moesten binnenhengelen. De users konden zelf producten en prijzen toevoegen of verwijderen. Kort erna werd op 1 mei een eenvoudige implementatie van de winkelmand geïntroduceerd en krap drie dagen later volgde de Shopsurvey. Inmiddels waren de bezoekersaantallen zo sterk gegroeid dat er op 26 mei voor het eerst meer dan 2.000 op een dag werden geteld.
Lay-out van de productlisting in de Pricewatch, medio 1999
Op 31 augustus 1999 kreeg de site een facelift, met naast een vernieuwde vormgeving optimalisaties van de databasequeries. Op 20 januari van het nieuwe millennium werd de eerste generatie van het moderatiesysteem geïntroduceerd. Op 8 april volgde de introductie van Vraag & Aanbod. Halverwege 2000 kwam daar de Meuktracker bij. In grote lijnen nam Tweakers.net toen de indeling aan die ook vandaag nog wordt gebruikt, maar aan het uitdiepen en verfijnen van de functionaliteit zou nog enorm veel werk te verzetten zijn.
DSP: Dynamic Server Pages
Om extra interessant te doen tegen de buitenwereld kreeg het cms van Tweakers de naam 'DSP' en werden pagina’s voorzien van een .dsp-suffix. De afkorting staat voor Dynamic Server Pages. Het is alleen bedoeld om het beestje bij de naam te kunnen noemen en betekent verder niets. Het cms van Tweakers wordt nog altijd DSP genoemd.
De eerste rewrite van de DSP vond halverwege het jaar 2000 plaats. Het design dat toen werd geïntroduceerd, wordt nog steeds gebruikt door enkele beheerpagina’s. Tot enkele maanden geleden vond het beheer van de benchmarkgegevens nog plaats in de oude DSP. Bij de introductie van de tweede generatie DSP werd trots gemeld dat onze php-skills gestaag waren verbeterd en de nieuwe code efficiënter, sneller en cleaner was. Ten opzichte van de nog brakkere code die daarvoor werd gebruikt, was dat zeker het geval, maar er was nog lang geen sprake van code met een universele schoonheid.


Het toevoegen en bewerken van nieuwsberichten in de eerste en tweede versie van de DSP
Big Crashes
In de geschiedenis van Tweakers heeft zich een aantal 'BC's' voorgedaan. De eerste Big Crash vond plaats op 13 mei 1999, toen het forum corrupt raakte. Doordat Ultimate Bulletin Board zijn data in losse tekstbestanden bewaarde, was het herstellen minder eenvoudig dan bij een gestructureerde database. Zoals het een hobbysite betaamt, waren er geen back-ups aanwezig en dus moest het forum doodverklaard worden. Er zou nog even doorgemodderd worden met een halfbrakke inhoud, totdat de users vanaf medio juni na een tweede crash met een schone lei konden beginnen aan het hervullen van het forum. Dit was het moment waarop de oudste registraties in de huidige userbase van Tweakers plaatsvonden. Aan de hardstplakkende forumgebruikers werden cd'tjes verstrekt met de corrupte restanten van het oude forum.

De cover van de Big Crash-cd die verstrekt werd aan de forumgangers
De derde BC vond plaats op 30 mei 2001, toen door een gecrashte harde schijf alle data van de database-server verloren ging. De datadisks waren abusievelijk in raid 0 geconfigureerd, wat niet goed was voor de redundancy, en tot overmaat van ramp bleek het back-upscript een maand lang niet te hebben gefunctioneerd. Dankzij de hulp van de community kon veel redactionele content teruggehaald worden uit de lokale browsercaches.
Eigen servers
World of Tweaking en later Tweakers draaiden in eerste instantie op shared-hostingaccounts bij Pair Networks. Omdat bandbreedte nog prijzig was en de financiële middelen gering, werden alle mogelijkheden benut om het bandbreedtegebruik op het Pair-account te beperken. Inmiddels draaiden we op het grootste shared-hostingaccount bij Pair met een datalimiet van 500MB per dag. Plaatjes werden gehost op Femmes studentenaccount van de HKU en op webspace die door bezoekers beschikbaar werd gesteld.
In november 1999 werd de site verplaatst naar een dedicated server die samen met Fok werd gehuurd bij Rackspace. Ook deze server bevond zich vanwege de lagere tarieven voor dataverkeer in de VS. Er werd gekozen voor een configuratie met twee Pentium III's op 450MHz, 768MB ram en 175GB traffic per maand.
Dankzij een sponsoringdeal met Vuurwerk Internet kregen we in het voorjaar van 2000 de kans om onze hosting onder te brengen op eigen servers in Haarlem. In samenwerking met AMD en Comptech World werden twee servers samengesteld met een AMD Athlon-processor. De Athlon was sinds de zomer van 1999 op de markt en was een serieuze concurrent voor de Pentium III van Intel. Tweakers was een van de eerste sites die het aandurfde om ze in een server te stoppen. Het bouwen en configureren van de server vond plaats op het tapijt in de studentenkamer van crewlid Firefox. Meer informatie over de ontwikkeling van het serverpark van Tweakers vind je in het artikel van Kees over de hostinggeschiedenis van Tweakers.


Servers bouwen in de begintijd van Tweakers
Vroege optimalisaties
Data was schaars en de kosten waren hoog in de begintijd van Tweakers. Ook waren processors nog lang niet zo snel als tegenwoordig. Waar je nu een complexe site op een single-boardcomputer kunt hosten, was toen zwaar en duur metaal nodig om Tweakers in de lucht te houden. Een ook niet onbelangrijk aspect was de snelheid van de internetverbinding, die nog veel te wensen overliet.
Een van de technieken die werden ingezet om Tweakers sneller te maken, was het cachen van headers en footers in externe javascripts. Hierdoor hoefden de trage inbelmodems van die tijd niet bij elke pageview de terugkerende inhoud, zoals header en footer, over een telefoonverbinding naar beneden te praten. Het leidde ook tot fors minder dataverbruik op de servers, wat belangrijk was omdat dataverkeer in die tijd kostbaar was.
Om de snelheid van het renderen van pagina’s te verbeteren, werd al in een vroeg stadium gebruikgemaakt van caching van delen van de inhoud van de pagina in de database. Aanleiding daartoe was onze fameuze tracker, die al bij het eerste redesign van Tweakers, in april 1999, zijn intrede maakte. Via de tracker kon de bezoeker in real time zien wat er zoal op de site gebeurde, vergelijkbaar met de Facebook-tijdlijn, maar dan niet gepersonaliseerd. Om te voorkomen dat bij elke pageview de laatste nieuwsberichten, reviews en Pricewatch uit de database werden getrokken, werd een inhoud van de tracker pas bij een verandering op de site opnieuw gerenderd en als geheel in de database opgeslagen.

De karakteristieke tracker links in de lay-out van Tweakers
Eind 2000 begonnen we voor het eerst met het gebruik van http-compressie om de html van pagina’s te comprimeren. Dit leverde een enorme verkleining van de omvang van pagina’s op, met gemiddeld een factor vijf.
Forumsoftware
Zoals gezegd werd het forum in UBB gehost en was dat niet altijd even stabiel, mede door de opslag van de forumtopics in losse tekstbestanden. Dit leverde allerlei problemen op toen de site serieuze hoeveelheden bezoekers begon te krijgen. Dat ging onder andere om allerlei race conditions als verschillende gebruikers tegelijk een reactie in een topic plaatsten of als iemand een topic wilde lezen terwijl er net een nieuwe versie op disk werd weggeschreven. Uiteindelijk leidde dit tot de twee genoemde crashes.
Topix
UBB werd in september 2000 vervangen door Topix. Topix werd in die tijd geschreven door twee vrienden, die beide ook betrokken waren bij Tweakers en Fok. Ze werkten naast hun opleiding aan de forumsoftware en richtten er uiteindelijk een bedrijfje bij op: Android Dynamic Sites. Overigens was dat nog ruim voor de introductie van Android door Google 
De Topix-software was in eerste instantie een grote verbetering ten opzichte van UBB. Het draaide in php met MySQL als database. Daardoor hadden we geen last meer van schalingsproblemen en race conditions. De twee ontwikkelaars hielden Topix aanvankelijk vrij actief bij.
Een van de lastigste elementen bleek het aanbieden van een
goede zoekmachine
Helaas was ook Topix niet vrij van problemen. Een van de lastigste elementen bleek het aanbieden van een goede zoekmachine. Overigens is dat iets wat zelfs nu nog lastig blijkt te zijn, door de grote hoeveelheid aan topics en reacties. Daarnaast losten de ontwikkelaars bugs steeds minder actief op en doordat het in een voorganger van Zend's Guard was versleuteld, konden we zelf geen wijzigingen aan de software maken. De ondersteuning voor Topix werd uiteindelijk begin 2002 beëindigd. Ondertussen waren we al bezig met een andere partij voor nieuwe forumsoftware: React.
Helaas ging het einde van de ondersteuning van Topix gepaard met het compleet stoppen van de communicatie, waardoor we veel moeite moesten doen om de data van Topix naar React te migreren.
React
React werd in juli 2002 in gebruik genomen. Na de nodige startproblemen werkte React vrij goed. We hadden bovendien weer ondersteuning en een bedrijf dat actief moeite deed voor het verhelpen van bugs en voor nieuwe ontwikkeling. Bovendien hadden we bedongen dat Tweakers toegang kreeg tot de broncode, zodat we zelf, in overleg, bugs konden fixen en functies konden toevoegen. Overigens was dit allemaal nog in de pre-git-tijd, waardoor het concept van pull-requests nog niet bestond. We waren erop aangewezen om wijzigingen domweg in hun cvs (en later Svn) te committen.
Na een paar jaar actieve ontwikkeling kwamen we aan bij versie 1.9 van React. Deze werd steeds met vrij kleine fixes uiteindelijk bijgewerkt tot versie 1.9.4, maar de bouwers waren zo druk bezig met versie 2.0 dat de ontwikkeling aan hun kant stil kwam te liggen. In de laatste periode deden we uiteindelijk meer fixes op React 1.9.4 dan de bouwers zelf. Door de eerdere ervaring met Topix hadden we in het contract met React niet alleen bedongen dat we actief mochten mee ontwikkelen aan de software, maar ook dat we een eeuwigdurende licentie op de broncode konden afnemen. Nadat duidelijk werd dat alle vernieuwing in versie 2.0 van React niet interessant was voor ons en er ook geen deadline gegeven kon worden, hebben we uiteindelijk in december 2007 gebruikgemaakt van die overnameclausule.
Diverse oude forumlay-outs
Accountmerge
Vanaf het begin van Tweakers werkten we met twee losse accountdatabases, een voor tweakers.net en een voor gathering.tweakers.net. Bovendien hadden we fysiek losse databaseservers voor die twee delen van de site. Gebruikers moesten zich dan ook op beide delen registreren als ze gebruik wilden maken van beide elementen. Dit was natuurlijk niet gebruiksvriendelijk en leidde bovendien tot verwarring en conflicten, omdat dezelfde nickname aan twee verschillende personen kon toebehoren. Het was daardoor ook technisch erg lastig om dat met terugwerkende kracht allemaal tot één database samen te voegen.
Al in december 2002 hadden we concrete plannen om dat uit te voeren. We kondigden een tool aan waarmee gebruikers konden aangeven welke twee accounts van hen waren en sloegen dat in de database op. Helaas bleek het allemaal wat complexer dan gedacht. Het project werd uiteindelijk stilgelegd en pas in oktober 2006 weer opgepakt. Het kostte onze database toen zo'n drie uur om de accounts samen te voegen en in alle tabellen waar accounts werden gebruikt de data aan te passen naar de nieuwe user-id's.
Pricewatch
De Pricewatch ontstond heel vroeg al en bestond in eerste instantie uit domweg een pagina met een overzicht van wat producten en de bijbehorende prijzen. Al snel ontstond een lijst van producten waar gebruikers prijzen van de verschillende producten aan toe konden voegen. Ook konden de winkels in die vroege versie al worden beoordeeld. Uiteindelijk werd het beoordelen van producten met de productreviews geïntroduceerd in april 2005.
Rond de overname door VNU, in 2006, bleek ook dat we meer uit de Pricewatch konden halen dan we tot dan toe deden. Dat ging overigens niet alleen om meer geld, we konden het ook nuttiger en beter maken voor onze bezoekers. Sindsdien is de Pricewatch uitgegroeid tot een van onze grootste inkomstenbronnen, maar ook tot een van onze populairste onderdelen. De reeks 'Beste prijsvergelijker'-prijzen van de 'Website van het jaar'-verkiezing is dan ook een fijne beloning daarvoor.
In augustus 2006 werd de Pricewatch 1.5 geïntroduceerd. Hierin werden de productcategoriëen ondergebracht in verschillende niveaus, waardoor de producten beter ingedeeld konden worden. Doordat we nog geen specificaties hadden, ging die opsplitsing behoorlijk ver. Een klein jaar later werden de specificaties toegevoegd aan de Pricewatch en een maand later maakten we het mogelijk om daadwerkelijk op die specificaties te filteren. Mede daardoor konden we al die subcategoriëen weer verwijderen. Nog wat later kwamen we met een uitbreiding om de prijzen inclusief order- en verzendkosten te kunnen berekenen.
Met het Tweakers 7-project maakten we de splitsing tussen producten en productuitvoeringen
De Pricewatch was intussen uitgegroeid tot een populair onderdeel van Tweakers. Hij bevatte veel producten en al die producten hadden weer specificaties. Al met al werd dat wat te veel voor de vrij complexe code die nodig was voor de filtering van specificaties. Tot op dat moment gebeurde dat 'in memory' in php, waarbij eerst alle specificaties werden opgehaald en daarna pas gefilterd. Dat werd bij grote categoriëen erg traag en kon soms meer dan twee seconden duren.
Het grootste probleem was niet zozeer de rekentijd die nodig was voor het filteren, maar domweg het in het geheugen laden van al die gegevens. Om dat op te lossen bouwden we begin 2009 een systeem met de technische naam 'productfilterservlet'. Onze toenmalige productowner vond dat een te lastige naam en doopte het de 'Engine'. Daar is overigens ook een achtergrondartikel over geschreven, met nog veel meer informatie.
Hoewel het concept van de Pricewatch niet echt meer is veranderd sinds de introductie van de specificaties, hebben we toch nog veel wijzigingen doorgevoerd. Er zijn onder andere allerlei wijzigingen geweest aan de weergave, zoals versie 3, waarmee de trend voor de huidige lay-out werd gezet. Ook zijn Pricewatch Unsorted, dat later minder ongesorteerd werd, telefoonabonnementen en wenslijsten toegevoegd. En met het illustere Tweakers 7-project maakten we de splitsing tussen producten en productuitvoeringen, en werd de algehele taxonomie aangepakt. Recenter hebben we Belgische prijzen beter in het systeem verwerkt en deze zomer hebben we nog de snelste prijsdalers inzichtelijk gemaakt.
Pricewatch van 2001 tot en met 2016
Professionalisering
Hoewel Tweakers begonnen is als een hobbyprojectje van Femme, is het dat ondertussen al lang niet meer. Het begon serieus te worden toen op 1 januari 2002 een bv werd opgericht met toen vier vennoten. Net voor het starten van de bv waren er ook al een paar medewerkers aangetrokken, waaronder twee parttimedevelopers en een parttimesysteembeheerder. Dit groeide in 2004 uit tot fulltimecontracten. Intussen hadden we ook een medewerker in dienst die zich bezighield met de plannen rond de ontwikkeling van Tweakers. Hij was daarmee de voorloper van ons huidige Productteam.
Net voor de overname door VNU was het ontwikkelteam zelfs uitgegroeid tot vijf man, van wie er twee nog parttime werkte. Die overname vond plaats in maart 2006. Hoewel dat volgens diverse bezoekers de commerciële neergang van Tweakers inzette - we waren voor de overname overigens al een winstgevende organisatie - gaf het in werkelijkheid juist nieuwe mogelijkheden. Zo werd meer aandacht besteed aan de functie die later zou uitgroeien tot een compleet productteam en ontstonden er investeringsmogelijkheden. Bovendien kregen we toegang tot nieuwe kennis; er kwam vooral extra kennis van productontwikkeling - wat doe je en met welk doel? - en marketing. Een voorbeeld van de investeringsruimte die ontstond, is onze overgang van één datacentrum naar twee met ons project Phoenix, om de robuustheid van Tweakers verder te verbeteren.
Er kwam vooral extra kennis van productontwikkeling en marketing
Na een hoop gedoe rond VNU op een niveau ver boven ons werden we uiteindelijk omgevormd tot een online bedrijf met alleen de Nederlandse titels onder de naam VNU Media. Dat waren met name Computable, Nationale Vacaturebank, Intermediair en Tweakers. Helaas kreeg VNU Media het financieel moeilijk gedurende de crisissen in 2008 en later. Vooral de arbeidsmarkt stortte in. Dit resulteerde uiteindelijk in een overname door de Persgroep. Voor Tweakers veranderde er uiteindelijk weinig, maar wel bleek dat er wat te veel enthousiasme over de markt was en moesten we bezuinigen. Naast andere aanpassingen in het personeelsbestand werd het team van toen tien developers verkleind tot zes. Gelukkig konden die vier anderen nog wel terecht bij onze nieuwe zustersite Autotrack.nl, waardoor we hen niet hoefden te ontslaan.
Intussen heeft de Persgroep een aantal van zijn websites ondergebracht bij de Persgroep Online Services. Daardoor kunnen we ons als groep richten op internet en de problemen die daaromtrent ontstaan, zonder last te hebben van (mensen die bezig zijn met) de problemen van bijvoorbeeld fysieke kranten. Hoewel iedere website daarbij eigen mensen heeft, kunnen we alsnog van elkaars inzichten, successen en fouten leren.
Scrum
Af en toe besluiten we dat de site lang genoeg een bepaald uiterlijk heeft gehad en dat het tijd wordt voor een nieuw jasje. Een van die momenten resulteerde uiteindelijk in een enorm project waarvoor allerlei aanvullende wensen op één grote hoop waren gegooid: Tweakers 7. Onze toenmalige werkwijze leek ons niet erg geschikt om dat aan te pakken en de toen net aangestelde it-manager introduceerde Scrum in ons ontwikkelproces. In juli 2011 kwamen we met onze eerste development-update in de nieuwe stijl, na het afronden van onze eerste sprint. Sindsdien hebben we voor vrijwel elke sprint zo'n update geschreven.
Overigens was het Tweakers-7-project ook gelijk ons laatste in die orde van grootte. Ondanks de Scrum-aanpak was het toch min of meer een waterval geworden en moesten we na de release flink aan de slag om alle gemelde problemen op te lossen. Sindsdien hebben we flink wat moeite gedaan om de wijzigingen kleiner te maken. Overigens kunnen ze nog altijd verscheidene sprints overstijgen, zoals met onze kortgeleden vernieuwde benchmarkdatabase.
Git
Na jaren met Svn gewerkt te hebben, liepen we steeds meer tegen de beperkingen ervan aan. Vooral rond branches en het mergen daarvan ontstonden veel lastige problemen. Ongeveer op het punt waarop we Svn meer dan zat waren, halverwege 2015, namen we een nieuwe medewerker aan die concrete ervaring had met de migratie van Svn naar Git bij een softwareproject dat vergelijkbaar was met Tweakers. Zijn kennis en ervaring konden we goed gebruiken.
In oktober 2015 hebben we de stoute schoenen aangetrokken en zijn we overgestapt van Svn naar Git. De illustere tree conflicts van Svn zijn daarmee verleden tijd en intussen zijn we ook behoorlijk gewend geraakt aan de eigenaardigheden van Git.
De redactie
Nieuwsposten staat vanaf de beginfase aan de basis van Tweakers. In den beginne bedroeg dit niet meer dan het linken naar artikelen elders op internet en het citeren van een alineaatje, voorzien van een al dan niet grappig bedoeld zinnetje waarin Femme zijn mening niet onder stoelen of banken stak. Dat leverde pareltjes op als "The Register heeft een uitgelekt rapport te pakken gekregen waarin aanbevelingen worden gedaan om Bill in 4 stukken te hakken" uit Mikro$choft in 4 stukken en "May the force be with us en laat AMD niet zo'n clocklock indingessen, anders heb ik weer een hobby minder" uit Het einde van overklokken?
Al direct bij de start van World of Tweaking vroeg Femme om hulp bij het op peil houden van de nieuwsvoorziening. Die hulp kwam in de vorm van drie vrijwilligers, waarvan de eerste in oktober 1998 zijn eerste bericht plaatste. In de jaren erna bleven vrijwilligers bijdragen leveren, maar het gros van de nieuwspostings bleef van Femme komen.

In de loop van 1999 groeide het aantal actieve nieuwsposters naar acht en eind dat jaar sloot Tweakers een contract met WebAds, waardoor geld beschikbaar kwam om nieuwsposters te betalen voor hun berichten. De opbouw van berichten bleef beperkt tot 'inleiding, citaat, link', maar in de jaren na 2000 werd de inleiding steeds vaker uitgebreid tot verschillende alinea's eigen tekst, met extra informatie en duiding. Naast een vaste vergoeding gold er een creditssyteem voor freelancers; ze konden extra credits verdienen voor uitgebreide postings en het aantal dat ze wegwerkten. Die credits konden ze inzetten om korting te krijgen bij webshops of voor items uit de TweakShop. Dit systeem vereiste dat de hoofdredacteur elk gepubliceerd bericht beoordeelde op basis van de hoeveelheid tekst, de geboden informatie en toegevoegde elementen, om ze meer of minder credits toe te bedelen. Ook was er een procentuele bonusregeling, die later werd omgedoopt tot TurboBoostRegeling, voor extra uitbetalingen als het aantal posts boven een bepaald aantal kwam.

Crewmeeting in november 2000
De hoeveelheid nieuws per dag, en de vorm en kwaliteit van de berichten die de grote club van freelance-nieuwsposters produceerde, kende nog steeds een grote variëteit. In 2004 werd daarom besloten een compact en zelfstandiger werkend nieuwsteam op te zetten, 'om de continuïteit en kwaliteit van content zoals nieuwspostings, reviews en features te verbeteren'. Hiervoor kregen in eerste instantie drie redacteuren een parttimecontract, waarmee een begin gemaakt kon worden met het maken van een heus rooster voor de nieuwsdiensten. De basis van het rooster was dat er voor elk dagdeel - ochtend, middag en avond - twee redacteuren werkzaam waren voor de nieuwsgaring, het opschonen van door users aangedragen submits, het aanvullen van de lijst op te pikken onderwerpen, het maken van frontpageaankondigingen en het nakijken van teksten. Naast het team van redacteuren bleven freelancers werkzaam voor de nieuwsvoorziening.

Begin 2006 bestond het nieuwsteam al uit twintig man, waarvan acht redacteuren in vaste dienst en een hoofdredacteur. Die redacteuren zaten door het hele land en daarbuiten. Alle communicatie vond plaats via het forum en via ICQ. Vanwege de brakheid van het ICQ-netwerk werd eind 2006 besloten over te stappen, waarbij MSN, IRC, Skype en Jabber werden overwogen. Uiteindelijk viel de keuze voor het #nieuws-kanaal op de IRC-server van Tweakers. Dit bleef jarenlang de belangrijkste communicatiemethode, zelfs toen in 2014 de voltallige redactie daarnaast Telegram ging gebruiken om mobiel beter te kunnen overleggen. In 2015 maakte heel Tweakers de overstap naar Slack, waarna het stil werd in 'hekje nieuws'.
2006 markeert ook de overname van Tweakers door VNU, waarmee budget vrijkwam voor een uitbreiding van de redactie met fulltimeredacteuren die daadwerkelijk de bureaus in het pand in Amersfoort gingen bezetten. In 2007 waren er daar drie van, maar een jaar later ging het hard en begonnen er vier nieuwe schrijvers, waaronder de gameredacteuren. Vanaf dat moment kregen redacteuren ook steeds meer hun eigen expertise en schreven ze allemaal naast nieuws ook reviews. Dat principe werd deels losgelaten in 2013; door een splitsing kwam er een dedicated nieuwsteam, terwijl een ander deel van de redactie zich volledig op reviews kon storten, zonder lastiggevallen te worden voor actuele prioberichten.
Vooral door de opkomst van YouTube was video aan een opmars bezig op internet, reden voor Tweakers om ook de mogelijkheden hiervoor te verkennen. In 2011 vond daarop een volgende belangrijke uitbreiding van de redactie plaats: die met een videoteam. Het team ging voortvarend te werk en ontwierp een eigen studio, ging op pad voor reportages en vloog mee naar beurzen en persaankondigingen. De redacteuren die voor de camera moesten verschijnen, waren aanvankelijk wat onwennig. Dit was niet waar ze voor aangenomen waren, maar de meesten ging het uiteindelijk uitstekend af.
/i/2001246995.jpeg?f=imagenormal)
Het zijn niet alleen maar uitbreidingen geweest in de afgelopen jaren. Tweakers kende ook mindere tijden, die het noodzakelijk maakten om te snijden in het personeelsbestand. In 2009 trof de economische tegenwind het bedrijf, wat ook zijn gevolgen had voor de redactie. Twee parttimeredactieplaatsen werden geschrapt. De redactie heeft in zijn bestaan daarnaast met twee ingrijpende sterfgevallen te maken gehad. In 2008 stierf eindredacteur Yoeri Lauwers op vijfentwintigjarige leeftijd aan de gevolgen van cystische fibrose en in 2009 overleed freelancer Arie Jan Stapel plotseling na een hartstilstand.
Met de groei van de redactie sinds 2004 nam ook de behoefte aan een soort stijlgids toe. Verspreid over het forum waren er altijd al verschillende faqs en how-to's, maar een belangrijk deel van de werkwijze bevond zich lange tijd uitsluitend in de hoofden van de nieuwsposters. In 2007 werd de aanzet gedaan tot een gebundeld redactiedocument dat beschreef hoe artikelen opgebouwd moesten worden en waar redacteuren op moesten letten bij het schrijven. In dat jaar verscheen ook de eerste versie van de Schrijfwijzer voor de redactie, met tal van taalconventies. Beide documenten zijn sinds die tijd bijgewerkt; het redactiedocument behandelt onder andere de workflow en de omgang met (anonieme) bronnen, geruchten en embargo's. Op het gebied van taal is de lijvige Schrijfwijzer aangevuld met een lijst veelgemaakte fouten, te vermijden woorden en uitdrukkingen, en Taalgeneuzel-topics om de taalkennis van redacteuren bij te spijkeren.
Sinds 2012 maakt Tweakers deel uit van de Persgroep, een uitgeverij die een groot aantal kranten onder zich heeft. Voordeel voor de redactie is onder andere dat ze kan deelnemen aan de journalistieke cursussen van de Persgroep Campus. Daarnaast had de overname tot gevolg dat er de laatste jaren in een stabiele omgeving aan het uitbreiden van de expertise kon worden gewerkt. Op veel terreinen heeft Tweakers inmiddels gespecialiseerde redacteuren, zoals gaming, televisies, mobile, security & privacy, componenten, fotografie en laptops. Dat, in combinatie met het toegenomen belang van technologie in de maatschappij, heeft ertoe geleid dat je velen van hen regelmatig in de media kunt zien verschijnen, zoals in Radar, EditieNL en Kassa.
Een volgende stap dient zich aan met de komst van Hardware.info op de zevende verdieping van het hoofdkantoor in Amsterdam, later dit jaar. Beide sites blijven gescheiden hun eigen koers varen, maar wel biedt het beide redacties de mogelijkheid om kennis te delen over hoe om te gaan met nieuws, producten testen, informatie vergaren en analyseren, enzovoort.
Tot slot
De ontwikkelingen die Tweakers in de afgelopen achttien jaar heeft doorgemaakt, zijn behoorlijk en niemand had eind jaren negentig kunnen bedenken dat we nu hier zouden staan. Terugkijkend valt op hoe anders het technologielandschap was en hoeveel er veranderd is. Google was toen gloednieuw, maar is nu niet meer weg te denken; internet was nog een plek voor pioniers, terwijl het nu met alles verbonden is, en de stappen die gezet zijn op het gebied van technologie, hardware en elektronica zijn enorm.
Passie voor technologie,
hardware, elektronica en alles
wat ermee te maken heeft
Ook Tweakers is in die afgelopen achttien jaar flink veranderd, maar we werken nog altijd vanuit dezelfde overtuiging: een passie voor technologie, hardware, elektronica en alles wat ermee te maken heeft, en het idee dat je die voorliefde het beste kunt delen met gelijkgestemden op een online platform. Ook in de komende jaren zullen we vanuit die overtuiging elke dag aan en voor Tweakers blijven werken.