La versione stabile di Magento 2 è stata rilasciata ormai da alcune settimane, seguendo un periodo di “gestazione” di quasi 5 anni e quasi altrettanto lungo di hype.
In molti, agenzie e professionisti, blogger e guru di settore, hanno già scritto molto su questa nuova incarnazione della più famosa (e per certi versi famigerata) piattaforma e-commerce sul mercato.
Queste review hanno evidenziato pregi e difetti, confermato o deluso aspettative.

Anche noi di MageSpecialist abbiamo ovviamente messo le mani sulla nuova versione, concentrandoci specialmente su quel che c’è “sotto il cofano”, e ci siamo fatti la nostra idea.
In questo articolo però non parleremo della parte squisitamente tecnica del software: per questo ci sarà sicuramente tempo nei prossimi mesi; considerando che se Magento 1.x ha avuto una vita tecnologica di quasi 8 anni – e gode ancora di un parco installato enorme – è logico supporre che il “regno” della versione 2.x possa essere altrettanto duraturo e magari anche più lungo.
Quel che vorremmo invece offrire è una prospettiva forse più inedita su quello che sarà l’impatto sull’ecosistema e-commerce di questo rivoluzionario software; sia per i merchant, che per i loro clienti finali, sia anche per le agenzie e i professionisti che lavoreranno su questa piattaforma per trasformare in business i progetti dei propri committenti.

Potremmo sintetizzare dicendo che questo nuovo Magento 2 allarga ancor più il solco fra le soluzioni “casual” entry-level e quelle enterprise level – dove per “enterprise” s’intende un prodotto che offre prestazioni di alto livello, scalabilità, solidità anche e soprattutto in ambienti mission critical, e che allo stesso tempo richiede un livello di expertise molto alto da parte dei professionisti che si occuperanno di setup, customizzazione e manutenzione.
Ma facciamo un passo indietro per introdurre meglio l’argomento.

Uno degli elementi che ha contribuito a creare la fama di software “difficile” di Magento 1.x è stata indubbiamente la sua complessità, intesa innanzitutto come complessità dell’architettura e struttura software che lo contraddistinguono.
In molti, tra merchant e professionisti, si sono avvicinati a questa piattaforma, attirati dalle sue caratteristiche di potenza e scalabilità, pensando che equivalesse come livello di complessità ad altre soluzioni presenti sul mercato, come ad esempio altri CMS open source come WordPress, Joomla, OSCommerce, ZenCart, PrestaShop. Software per i quali, nella maggior parte dei casi, è sufficiente un setup “standard” magari effettuato tramite un comodo wizard tool, qualche settaggio, una customizzazione “leggera”, per avere rapidamente pronto uno strumento per lavorare.

Magento però è invece è un software molto strutturato, progettato per essere altamente scalabile, espandibile, modificabile.
Questo approccio è stato da un lato la pietra fondante di una delle migliori e più solide piattaforme e-commerce di sempre, dall’altro causa di frustrazione e delusione per molti utilizzatori.
La learning curve alta, la nota “avidità” di risorse hosting (se non si è skillati nella configurazione della piattaforma), la difficoltà di effettuare anche personalizzazioni “light” con la stessa facilità con cui le si può operare su un software meno complesso: sono stati tutti fattori che hanno contribuito ad aumentare la “cattiva fama” di Magento soprattutto come soluzione per lo small business su progetti a basso budget.
Quella che era una feature piuttosto che un difetto, ha generato nel tempo una notevole “diffidenza” nei confronti di un ottimo prodotto – semplicemente perché lo si è scambiato per qualcosa di diverso da ciò che realmente è.
Vuoi per “faciloneria”, vuoi per entusiasmo (nel mondo del web 2.0 si è abituati a ragionare per buzzwords piuttosto che per esigenza/soluzione – basti vedere l’evoluzione su Google Trends della chiave di ricerca Magento che in un determinato periodo ha superato le ricerche per “e-commerce”): molti hanno scelto Magento come piattaforma tecnologica quando forse sarebbe stato opportuno scegliere un prodotto diverso.
Oppure si sono affidati ad agenzie che, a volte con discutibile deontologia professionale, hanno proposto una soluzione sulla quale non erano adeguatamente confidenti e preparati.

Il risultato è stato in alcuni casi disastroso: non possiamo nemmeno enumerare tutti gli “orrori” cui abbiamo assistito nel corso di 8 anni sul campo come MageSpecialists!
Abbiamo visto Magento “violentato” in ogni modo possibile e immaginabile, e sentito mille volte ripetere la fatidica frase “ma ‘sto Magento è una fregatura… non funziona nulla“…
Naturalmente non è questa la realtà dei fatti. Magento non è certo esente da difetti, bug e soluzioni di dubbia efficienza, ma di sicuro il modo migliore per “romperlo” è operare su di esso senza cognizione di causa!

Ma torniamo, dopo questa necessaria premessa, a Magento 2.
Il motivo per il quale abbiamo speso tante parole per descrivere gli errori che sono state a volte commessi su Magento 1 – sia da parte di chi l’ha usato che da parte di chi l’ha programmato – è proprio per portare alla luce pregi e difetti di questa nuova incarnazione.
Intanto prendiamo in prestito una frase della pubblicità di un noto melafonino dicendo che in Magento 2 “è cambiata solo una cosa: tutto”. Dalla struttura del core, del database e del filesystem, all’interfaccia utente nel back-office, tutto è stato riscritto, ampliato, migliorato ed espanso. Una cosa però non è cambiata, e di questo alcuni (come noi) sono ben contenti: l’approccio architetturale e progettuale – e con esso il settore di riferimento del prodotto.
Magento 2 si prepara ad essere un nuovo benchmark di riferimento per l’ecosistema e-commerce. Per essere ciò doveva necessariamente essere (anche) un elemento di rottura. Doveva avere il coraggio di innovare, pur mantenendo intatta la sua vocazione.

Magento 2 ha tutte le carte in regola per essere, a nostro avviso, all’altezza di queste aspettative. Non solo un “refurbishing” superficiale della versione 1.x, ma una riscrittura completa che mantiene intatte le premesse ma accentua ulteriormente le caratteristiche salienti del prodotto, se vogliamo i suoi selling points. La complessità dell’architettura è ulteriormente aumentata, il livello di astrazione con essa, a beneficio dell’espandibilità e scalabilità di quello che ormai nessuno potrà più considerare “solo” un software, ma un vero e proprio framework per la realizzazione di applicazioni e-commerce multi-channel e multi-layer. Ovviamente tutto questo ha contributo a scavare un solco ancora più profondo fra Magento e i suoi (non) competitor.
Torniamo quindi all’argomento e alla premessa iniziali. Come cambierà l’approccio di merchants e professionals al mondo dell’e-commerce con Magento 2?

Merchants

Aumento dei costi e del time to market

Magento 2 è più complesso del suo predecessore, che già era più complesso della media delle soluzioni software simili presenti sul mercato.
Il merchant che vorrà sviluppare il proprio business online su Magento 2 dovrà quindi mettere in conto un budget più sostanzioso sia per quanto riguarda il setup che la maintenance – intesa come aggregato di costi infrastrutturali, di assistenza e di ulteriore sviluppo.
Dovrà anche considerare un time to market proporzionalmente maggiore, anche se questo fattore è forse più ambiguo da potersi valutare in maniera precisa – potrà non essere sempre una funzione lineare.

Cambio di forma mentis

Magento 2 è una soluzione ancora più dichiaratamente enterprise level di quanto non lo sia la v. 1.x.
E’ pensato per essere utilizzato in ambienti mission critical; le sue caratteristiche lo rendono adatto a creare infrastrutture complesse, grossi store e marketplace, applicativi multi-channel e-commerce integrati con vari layer software.
L’aumentata complessità richiede per sua natura un approccio differente allo sviluppo di custom, integrazioni, plugin, e persino al semplice setup. Questo implica doversi affidare a professionisti seri e validi, possibilmente certificati. Occorre anche “abbracciare” questo cambio di mentalità capendo che, ad esempio, banalmente non esisterà più la “modifica fatta al volo” (tanto a te servono 5 minuti) (cit.)
Le test unit, il versioning del codice, l’ambiente di sviluppo modulare richiedono fasi ben distinte e sequenziali di sviluppo, test, debug, rework, deploy (ed eventuale rollback). Il che esclude un approccio “casual” e prevede invece di affrontare tutti i problemi, grandi e piccoli, con la necessaria attenzione.

Professionals

Expertise e metodologie di lavoro

Magento 2 è una piattaforma completa ma anche complicata.
Le skills “tradizionali” che troviamo tipicamente in una web agency (generalmente concentrate sul front-end) decisamente non sono più sufficienti per fornire un servizio di qualità ai propri clienti per quelle agenzie o professionisti che volessero proporre soluzioni basate su Magento 2.
XHTML, PHP, Javascript e CSS rimangono pietre miliari ma si aggiungono all’elenco anche:

  • Competenze sistemistiche solide in ambiente Linux/Unix
  • Approcci di automazione e continuos integration (Ansible, Vagrant)
  • Controllo del codice (GIT, Composer)
  • Framework di sviluppo (Zend ma anche Symfony, del quale Magento 2 ricalca molto l’approccio).

La risposta a queste esigenze è quindi, ovviamente: formazione! O, in alternativa, outsourcing della parte tecnica su partner già formati ed affidabili.

Conclusioni

Magento 2 è sicuramente uno strumento estremamente potente e flessibile.
Quel che abbiamo visto fin qui è solo la “punta dell’iceberg” di un ecosistema che, seguendo le orme del suo predecessore, è destinato a “regnare” per molti anni nel settore divenendo un punto di riferimento e un sinonimo di qualità totale.
Aumenterà probabilmente ancora di più il divario fra il progetto a budget medio-basso, gestito “in economia” se anche con passione e professionalità, che potrà scegliere fra molte valide piattaforme (anche SaaS) diverse da Magento, e quello a budget medio-alto che potrà trovare la propria platform of choice in Magento 2.

Naturalmente noi di MageSpecialist, insieme a molti ottimi professionisti, siamo pronti a raccogliere il guanto di sfida e non vediamo l’ora di gettarci nella mischia!