6 juli 2019
Waar beginnen met Magento en React?
Yireo Blog
donderdag, 24 oktober 2019: Docker Fundamentals training in Soest, Nederland » Meer informatie
Yireo in het kort:

Waar beginnen met Magento en React?

Misschien zou je kunnen stellen dat PWA een hype binnen Magento-land is. Maar in een wereld waarin de concurrentie feller wordt, performance en innovatie daarom belangrijker, moet er wel iets veranderen. En de oude Magento frontend is daarbij een last. Magento zelf kiest voor React (maar dat gezegd, Vue zou voor jou ook een goede keuze zijn). Maar hoe ga je nu aan de slag (met React)? Waar begin je?

De kat uit de boom kijken

Een optie is om de kat uit de boom te kijken - wachten tot Magento PWA helemaal klaar is. Maar de realiteit is dat de huidige Magento 2 frontend (Knockout, Require, XML layout) een webwinkel duur maakt, simpelweg omdat de frontend (te) complex is. En de belofte dat React en Vue dat makkelijker maken (en daarmee goedkopere shops mogelijk maken, dus misschien oude klanten beter bedienen) klopt: Iedereen die de investering al heeft gemaakt zal je kunnen vertellen dat de development tijd naar beneden gaat.

Maar is Magento er zelf wel klaar voor? Misschien. Betekent dat dat je niets hoeft te doen? Dat kan. Maar dat betekent ook dat je misschien uiteindelijk achter het net vist. Bovendien is PWA niet zomaar alleen een Magento beweging, het is een beweging over de hele breedte van frontend development. En daarmee heb je er simpelweg profijt van om vroeg of laat te beginnen met PWA. Ik durf te zeggen dat PWA-achtige technieken ook na het einde van Magento nog steeds zal bestaan en de show zullen bepalen.

Is Magento er klaar voor?

Bovendien is volgens mij de vraag of Magento er klaar voor is verkeerd. Ja, er zijn essentiele onderdelen die aangeboden moeten worden door Magento wil het concept van PWA succcesvol zijn: Stabiliteit van de core, een volledige GraphQL API, misschien zelfs ook een aantal wezenlijke React componenten (routing, caching).

Maar een herbruikbaar basisthema is daar niet perse onderdeel van. De PWA Studio tools zijn nu al prima te gebruiken. Sinds Magento 2.3.2 zijn er nog eens ontzettend veel GraphQL endpoints bijgekomen waardoor je nu stap-voor-stap een bestelling via GraphQL kan maken. Magento is er dus klaar voor. Maar jij nog niet.

Wat betekent het een System Integrator te zijn?

Er zijn veel termen te bedenken voor diegene die Magento shops bouwt: System integrator, solution provider, bouwer, specialist. Een lange tijd was een Magento bouwer puur bezig met Magento en PHP. Maar die tijd is voorbij. Magento is niet an-sich een PHP applicatie, JavaScript speelt ook een grote rol. En er zijn tal van gerelateerde diensten waar een Magento specialist nu al bekend mee moet zijn: Redis, MySQL, Nginx, ElasticSearch, DevOps (zoals bij deployment), Grunt/Gulp.

PWA wordt nu simpelweg aan dat lijstje toegevoegd. Als moderne frontend developer zit je niet meer te neuzelen met Microsoft FrontPage, Macromedia Dreamweaver of oude PHP-gestuurde frontends. Nee, je bent bezig met technieken zoals React, Angular en Vue - tools die het mogelijk maken razendsnelle shops te ontwikkelen, wat vanaf het begin van Magento al de droom was. Een System Integrator klikt dus niet de boel bij elkaar. Nee, een System Integrator gebruikt juist die tools (zoals PWA Studio) om een shop op maat te maken.

Het kantelpunt komt snel

Ik voel aan me water dat het kantelpunt nu al snel komt: Het kantelpunt is niet wanneer Magento (an Adobe Company) met trots een kant-en-klare Venia presenteert. Het is ook niet wanneer VueStoreFront en DEITY de frontend developers van Magento wegkapen.

Nee, het kantelpunt is het moment dat de meerderheid van Magento specialisten zich realiseert dat het programmeren van maatwerk componenten binnen React of Vue goedkoper is dan het worstelen met de huidige Magento 2 frontend. DEITY en VueStoreFront duiken heel slim in op deze omslag door te zeggen dat hun oplossing efficienter is. En ik denk dat ze gelijk hebben. Sterker, Magento geeft ze ook gelijk.

Praktisch: Waar beginnen?

Het kantelpunt betekent ook dat er ergens in de nabije toekomst binnen jouw bedrijf een Magento project wordt verkocht aan de hand van React of Vue. En dat zal een zware dobber zijn als je nog compleet niet bekend met deze frameworks. Vandaar dat het begin van PWA eigenlijk het verkennen van de opties zou moeten zijn.

Met onze Yireo trainingen haken we hier op in: De fundamenten van React en Vue moeten eerst helemaal bekend zijn, voordat je een complexere applicatie zoals een webshop kan bouwen. Maar het liefst wil je dit daarna ook in de praktijk terug zijn: Niet direct een Magento shop, maar eerst kleine satelliet projecten. Misschien een blog gebaseerd op Gatsby, een hobby projectje, de bedrijfssite uitrusten met wat React componenten, of hybride PWA (een term die ik zelf heb bedacht om aan te geven dat React componenten ook al in de huidige frontend toegepast kunnen worden).

Er zijn genoeg plekken waar je kan beginnen, zodat je kan beginnen met de eigen React leercurve. Uitstellen is zonde, want de markt is juist nu in beweging, straks niet meer.

Met React aan de slag?

Op 25 juli organiseren we weer onze React Fundamentals training, die misschien makkelijk lijkt maar er juist voor zorgt dat je met state, context en hooks goed uit de voeten kan. De React-in-Magento training haakt juist in op de geavanceerdere concepten die door alle Magento PWA/React providers (DEITY, FrontCommerce, ScandiPWA en Magento PWA Studio) worden toegepast: Redux, GraphQL, Apollo. Misschien zien we je daar terug?

Geschreven door Jisse Reitsma op 6 juli 2019

Behoefte aan een training op maat?
Dat gaat we doen!

Een training kan op maat en op locatie worden gegeven. Hierdoor weet je zeker dat de tijd optimaal wordt benut en dat de training zeker de moeite waard is. Om de training op maat te maken overleggen we eerst over de vorm en de onderwerpen. Hierna sturen we een offerte op. Zie hiervoor ook onze tarieven. Sinds 2011 hebben we al honderden bedrijven (geen grap en geen overdrijving) van een professionele opleiding voorzien. We beloven je dat het inspirerend en leerzaam is!