abonneren

GraphQL: The Documentary toont ontwikkeling opensource-project Facebook

GraphQL
Het is 2011. Browsers worden langzamer en de mobiele app van Facebook voor iOS leunde daar teveel op. Mobiele apps halen traditionele webbrowsers in rap tempo in en Facebook is er niet klaar voor. GraphQL is daar het antwoord op, zo is te zien in een nieuwe documentaire van banenplatform Honeypot.

Er moest destijds een native mobiele app komen, al wisten de drie Facebook-collega’s Lee Byron, Nick Schrock en Dan Schafer dat nog niet, toen ze begonnen aan hun project. Het zou uitgroeien tot GraphQL, maar de mannen hadden vooral de missie om de nieuwsfeed gebruiksvriendelijker te maken voor mobiel. Het ‘liep uit de hand’ toen de drie hun krachten bundelden om de Facebook-app helemaal zelf te gaan bouwen.

Niet dezelfde taal

Het verhaal van hoe dat is verlopen, wordt verteld in de documentaire GraphQL: The Documentary. Wat de taal zo bijzonder maakt, is dat deze ervoor zorgt dat applicaties succesvol met elkaar kunnen communiceren, zonder dat deze in dezelfde taal zijn geschreven. De taal is bovendien zo ontwikkeld dat deze zo min mogelijk data gebruikt.

Waar Facebook normaliter niet volledig transparant is over zijn algoritmes en de werking van zijn website, pakte het dat heel anders aan met GraphQL. Het is echt een mini-start-up geworden binnen Facebook. Een soort vrij project binnen de doorgaans dikke muren van het grootste sociale platform ter wereld. Het is uiteindelijk in 2015 zelfs openbaar beschikbaar geworden, zodat ook anderen hun voordeel kunnen halen uit deze querytaal voor API’s.

Netflix, Airbnb en KLM

Op zich zwerven er online enorm veel openbaar beschikbare tools rond, maar GraphQL werd erg succesvol. Grote bedrijven als Netflix, Airbnb en KLM werken ermee. Ontwikkelen gaat volgens hen aanzienlijk sneller dankzij deze verbindende querytaal. Wat mooi is om te zien is dat er een eigen community ontstond van mensen die gebruikmaken en ervaringen delen over GraphQL, zo stellen ook de heren in de documentaire. Airbnb heeft bijvoorbeeld een gedeelte van zijn code gedeeld, zodat anderen daar weer hun voordeel uit kunnen halen.

GraphQL

De documentaire geeft een mooi kijkje in hoe drie mannen die een uitdaging aangingen om simpelweg een app gebruiksvriendelijker te maken, steeds meer door elkaar werden geïnspireerd om buiten de gebaande paden. Ze waren overduidelijk zelf zo enthousiast over de ontdekkingen die ze deden tijdens de ontwikkeling van GraphQL, dat ze er met liefde vele uren voor overwerkten.

Echter wordt het beeld van GraphQL wel heel rooskleurig geschetst. Het is nog steeds een in taal die wordt doorontwikkeld waardoor je enerzijds bijna wel moet participeren in de community eromheen. Hoewel dat qua ontwikkeling positief is, is het niet per se in een handomdraai geleerd. Je moet je er goed in verdiepen voordat je het succesvol kunt toepassen, en vervolgens moet je bijblijven in de community om up-to-date te blijven. Juist omdat het openbaar is en door grote bedrijven wordt opgepakt, is het soms moeilijk om de informatie te vinden die je nodig hebt. Er is namelijk erg veel informatie beschikbaar.

Maak eerst een schema

Bovendien moet je sowieso bezinnen eer je begint, want je moet het schema van tevoren definiëren. Wat betekent dat je voor je enthousiast begint te implementeren een stap terug moet zetten om het schema zo te maken dat je uiteindelijk ook uit GraphQL kunt halen wat jij er specifiek mee wilt. Uiteindelijk heeft zo’n schema ook zijn voordelen, namelijk dat je achteraf - als je het goed doet - geen extra werk hebt aan bugfixing en andere probleemoplossingen.

Aan de andere kant gelden veel van de bovenstaande tegendelen voor de meeste ontwikkeltalen. Je moet ze leren, je moet ze bijhouden en er gaat een heleboel denk- en zoekwerk in zitten. Als je dat net zo leuk vindt als de mannen het vonden om het te ontwikkelen, dan zullen je beginstappen met GraphQL aanzienlijk makkelijker zijn. Wie weet kan juist het verhaal achter de ontwikkeling van deze querytaal je extra inspiratie bieden.

De documentaire is onthuld op de tweede GraphQL-conferentie in Berlijn, maar hij is - net als de taal - voor iedereen beschikbaar. Kijk de docu (van ongeveer een half uur) hieronder:

Geschreven door: Laura Kempenaar op

Category: Nieuws, Programmeren

Tags: Facebook, Programmeren

Laatste Vacatures