Een tour door The Consensus: zes maanden later

The Consensus is een 'bootstrapped' website die dit jaar in februari is gestart. De site is gewijd aan software-infrastructuur en wordt onafhankelijk van softwareleveranciers beheerd. Het is mijn fulltime baan en, afgezien van de schrijvers die worden betaald om artikelen bij te dragen, ben ik de enige die het platform exploiteert. (Als ik in dit artikel "we" zeg, is dat enkel omdat dat minder ijdel voelt dan constant "ik" te zeggen.)

Hoewel de kern van de site bestaat uit onafhankelijke, door mensen geschreven analyses over cruciale software waar we allemaal van afhankelijk zijn, wilde ik de reikwijdte iets breder trekken. Het doel is om ontwikkelaars in software-infrastructuur te voorzien van tools en data die hen helpen bij het nemen van technische beslissingen en het verder uitbouwen van hun carrière.

Naast de redactie — waarbij het proces niet significant is veranderd — is de site gebouwd om ontwikkelaars up-to-date te houden over vacatures, evenementen en financieringen binnen dit vakgebied. In het begin was dit een volledig handmatig proces.

Groei van de vacature-indexering

Toen ik de site lanceerde, begon ik met 9 vacatures. In mijn laatste blogpost begin april waren we net over de 100 heen. Later in april startte ik met de eerste automatisering op mijn laptop om vacatures te indexeren, waardoor het aantal sprong naar meer dan 1.000. In juli ben ik overgestapt naar een dedicated server voor de indexering, waarna we zijn gegroeid naar meer dan 20.000 geïndexeerde vacatures.

Van deze 20.000 vacatures zijn er ongeveer 10.000 direct gerelateerd aan programmeren (of engineering management), waarvan er momenteel zo'n 7.000 actief zijn. Qua geografische spreiding bevindt ongeveer de helft van deze 10.000 banen zich in Noord-Amerika en een kwart in Europa.

Het platform is grotendeels vanaf nul geschreven, met uitzondering van betalingen, e-mail en analytics. De gebruikersinterface (UI) wordt aangedreven door Go en PostgreSQL. De indexeringspijplijn maakt gebruik van Go, Python en SQLite. In het algemeen is de functionaliteit van de site sinds de lancering aanzienlijk veranderd; de rest van dit bericht gaat over deze functies. Tenzij anders vermeld, zijn de genoemde functies bedoeld voor betalende abonnees.

Artikelen

In de afgelopen zes maanden hebben we 28 artikelen gepubliceerd door 6 verschillende auteurs. Artikelen op The Consensus zitten bij publicatie achter een betawall; deze verloopt doorgaans binnen een week of twee (twee weken zal waarschijnlijk de standaard worden).

  • Exclusive-artikelen: Een aantal artikelen met het label 'Exclusive', zoals WasmGC in Wasmtime, zijn permanent gereserveerd voor abonnees op het Standard-niveau.
  • Toegang: Overige abonnees krijgen direct toegang tot de meeste artikelen zodra deze worden gepubliceerd.
  • Interactie en UI: Alle betalende abonnees hebben toegang tot het reactiesysteem en de 'Focus mode'-UI, een functie die door een abonnee is gesuggereerd.
  • Gift links: Abonnees op het Standard-niveau kunnen maandelijks twee 'Gift links' aanmaken, inclusief links naar Exclusive-artikelen.

De feed

De feed is een door machines gecureerde weergave van artikelen die zijn gepubliceerd door de meer dan 600 bedrijven, 400+ projecten en 80+ ontwikkelaars die wij indexeren, over een periode van de afgelopen vijf jaar. Op dit moment hebben van de 350.000 bezochte artikelen er 30.000 gekwalificeerd voor de feed.

Het was een uitdaging om regels te ontwikkelen die bepalen welke artikelen geschikt zijn voor algemene lectuur. Er wordt voornamelijk gebruikgemaakt van statische filters, zoals:

  • Het artikel moet een auteur hebben en mag niet zijn gepubliceerd door "The Company" of "The Team".
  • Het artikel moet hoofdzakelijk bestaan uit proza of code.
  • Release notes of aankondigingen van evenementen worden uitgesloten.

De enige toepassing van machine learning in de feed-pijplijn is het optioneel toewijzen van een categorie aan artikelen, verdeeld over circa 40 onderwerpen. Hierdoor kunnen gebruikers filteren op thema's zoals Consensus & replication protocols of Formal methods & verification.

Dezezelfde optionele categorisering passen we toe op vacatures, zodat men bijvoorbeeld kan zoeken naar banen in Compilers & code generation.

Rankings en backlinks

The Consensus extraheert links en vermeldingen van projecten uit de artikelen in de feed. Samen met vermeldingen in vacatures vormt dit de basis voor pagina's zoals Most Popular Programming Languages en Most Popular Databases. Omdat alleen artikelen die de feed halen worden meegenomen, hebben deze rankings een specifieke betekenis: het zijn de projecten waar ontwikkelaars bij software-infrastructuurbedrijven het meest uitgebreid over schrijven. Zelfverwijzingen door het bedrijf zelf, of door moeder- en dochterondernemingen, worden hierbij uitgesloten.

Sinds kort is het mogelijk om te zoeken naar backlinks over elk artikel dat in de feed is opgenomen. Zo kan men bijvoorbeeld alle artikelen in de feed vinden die linken naar Antithesis.

Dynamische RSS en e-mailmeldingen

Alle betalende abonnees kunnen filters instellen voor vacatures, nieuws over financieringen en de feed. Abonnees op het Standard-niveau hebben daarnaast de mogelijkheid om deze filters om te zetten in dynamische RSS-feeds of e-mailmeldingen.

***

À bientôt

De afgelopen zes maanden zijn intensief geweest en vormden een enorme leerervaring op vele vlakken. Dank aan alle betalende abonnees die ons volgen!