
Medusa JS, l'alternative headless e-commerce open-source
Durée: 48m33s
Date de sortie: 09/01/2023
Dans cet épisode, nous avons le plaisir de recevoir Adrien de Peretti. Il fait partie de l'équipe Core du projet "Medusa JS" en tant que "Senior Software Engineer". Adrien est également coauteur du framework Nest JS. Il possède donc des bases très solides en développement JavaScript. Avec lui nous allons parler de la solution open source, Medusa JS. Une solution e-commerce qui prétend être une alternative à Shopify. Retrouvez toutes les notes et les liens de l'épisode sur cette page : https://double-slash.dev/podcasts/medusa/
Bonjour à tous, bienvenue sur ce nouvel épisode de Double Slash et comme d'habitude nous sommes avec Alex, salut Alex ! Salut Patrick, salut tout le monde !
Et petit rappel pour nous retrouver, vous avez le Twitter avec tous les liens de Discord, Twitch, Youtube etc. du site internet qu'on a fait il n'y a pas longtemps, qui a été mis en ligne.
Allez voir le nouveau site internet, enfin le nouvel web app on va dire.
Et aujourd'hui nous sommes avec un invité Adrien de Peretti, bienvenue Adrien.
Merci, bonjour à tous.
Merci d'avoir accepté l'habitation et donc pour commencer on va te laisser te présenter ce que tu fais dans la vie, ton background.
Alors moi je suis actuellement software engineer, un édouard sur mes usage.es, on travaille un peu sur toutes les stacks, mais principalement sur la partie backend architecture.
Et puis avant ça j'ai travaillé dans différents start-ups, dans différents domaines, donc j'ai travaillé dans la comptabilité, j'ai travaillé dans le machine learning par l'industrie parbastautique.
Alors ça j'ai travaillé juste dans les données classiques.
J'aime bien toucher un peu à tout, découvrir de nouveaux projets, de nouvelles problématiques.
Ok, super.
Et donc aujourd'hui le sujet de l'épisode vous l'avez compris c'est MADEUSA.js, tu vas nous expliquer un petit peu ce que c'est.
Et je crois que tu as une petite anecdote aussi, c'est souvent où on explique aux gens qu'il faut contribuer au projet Open Source.
Et donc toi tu vas nous expliquer un petit peu comment tu es rentré dans le projet MADEUSA.js.
C'est ça bon. Alors le WSIN, je n'étais pas du tout volontaire, je suis en train de développer mon propre projet dans les commerces.
Et pour ça je cherchais en premier avant tout, des soucis sur Open Source et puis après avoir eu plus cher un petit peu les différences sur Open Source,
je suis tombé sur MADEUSA.js, que j'ai sélectionné pour tout un tas de raisons.
Et puis j'ai commencé à contribuer et puis faire tout ce dont il y avait besoin, toutes les futures qui me montrent qui est en fait.
Et je me suis rendu compte que dans la communauté, il y avait pas mal de gens qui ont cherché à faire un peu près la même chose que moi.
Donc c'était un sujet qui était assez commande, j'ai essayé de les aider.
Je me suis rendu compte que c'était pas forcément facile pour tout le monde, donc j'ai Open Source, c'est une partie de mon projet, donc MADEUSA Extender.
Et donc c'est pas mal utilisé, je continue à aider les gens qui ont des difficultés, qui souhaitent, qui se souhaitent un petit peu de ça,
à un peu plus profond que la norme.
Et à ce suite d'affaires que j'ai rejoigné MADEUSA.js, du coup, ça a fait un peu plus...
Ils t'ont recruté en tête, ils t'ont contacté pour...
Je les ai aidé un petit peu, dans le sens où parfois il y avait certaines questions, etc.
Donc je les ai aidé un petit peu, on entend venait la communauté, puis par sueur à l'arrivée,
quelqu'un a venu me voir vraiment de la communauté pour savoir comment est-ce qu'on pouvait être recruté par MADEUSA.js.
Je n'avais aucune idée, on lui a posé la question pour lui, et puis on a entamé un process comme ça.
Mais finalement c'est toi qui a été revouché.
Finalement c'est moi qui a été envoçé.
Excavation de nom, oui.
Excellent.
Et tu contribuais que sur une seule livre, où en fait l'idée c'était de faire des fragments, de différents clips,
et de répondre à des besoins spécifiques.
Mais peut-être avant de répondre à cette question, est-ce que tu peux peut-être nous expliquer un peu plus le fonctionnement de MADEUSA.js ?
C'est quoi exactement ? C'est quoi le paradigme, le foie, la techno, tout ça ?
Alors MADEUSA.js, c'est un moteur micro-merse qui va permettre de fournir tout un tas de fonctionnalités
pour supporter un magasin sur le web en store.
Refornir aussi un admin qui permet de gérer le store, tout ce qui est comment, produit, option, tax, etc.
Donc tout un tas de phatacres de features et des start-ups pour dépâter la partie front du store.
Donc ce que tu appelles le thrusters, c'est quoi ? C'est une sorte de template, c'est ça ?
C'est un template pour démarrer.
C'est un début de projet avec un minimum de fonctionnalités, ensuite tu vas pouvoir venir customiser, entendre que le personne qui va vous bément de vos magasins.
Mais notre color, maintenant on a deux, on va dire.
Notre color, c'est le moteur micro-merse, donc c'est la partie back-end qui tourne sur la route de JLS ou Express pour l'instant,
mais qui devrait s'ouvrir à d'autres plateformes HTTP.
Et pour la partie admin, du coup, sur lesquels on travaille beaucoup, court, facilité, la route de ce store justement.
Donc ça c'est les deux grosses parties sur lesquelles on travaille, ensuite les start-ups de stores, ça tout le monde peut en faire.
Le tout c'est de savoir, on veut dire, savoir comment consommer la pays.
Et donc c'est pour ça que j'ai l'aise, c'est quand même un tas de taxés, tout est découplé, on va le servir d'un côté,
et l'aliment de l'autre, et le store de l'autre.
Ensuite on peut venir faire ce qu'on veut, le Krigistru.
Ok.
Donc tout le monde peut faire un starter, donc on parle de la partie front, en fait,
qui va se connecter à MedusaJS qui est un service, un système e-commerce, headless.
Uniquement headless, hein, on est d'accord ?
Uniquement headless.
Ok.
Très bien.
C'est ça.
Et toutes les parties, toutes les fonctionnalités, ça marche comment, c'est un système de plug-in,
c'est un système, je viens étendre en fait le coeur Node.js via des classes, comment ça marche ?
Alors il y a plusieurs approches, et on va d'abord parler de l'approche du corps,
celle qu'il faut en intermettre, c'est l'approche plugin.
Donc en fait, tu peux développer un groupe plugin, tu vas pouvoir venir exporter tes services, tes entités, tes migrations,
ça MedusaJS va venir le consommer, et ça va être intégré dans notre conténère.
On utilise un conténère pour les diamants de charge, pour venir garder tout ça,
et pouvoir le consommer un peu partout.
Donc ça, c'est une des premières approches.
Ensuite, on a aussi ce qu'on appelle des stratégies,
faire partie des plugins aussi, ça va venir permettre d'étendre certaines parties du corps.
Par exemple, je pense à la carte completion,
on a eu un fond des stratégies par des shows,
on complétait un cartes, peut-être qu'on a eu dans certains contextes la completion de cartes,
et le cartes, elle doit passer par des tistels et avoir des trucs qui les ont pour.
On ne sait pas, mais il y a des entreprises qui en aient voulu un parti de fuillet,
donc elles vont pouvoir venir complètement remplacer cette stratégie,
et mettre l'aileur à condition de respecter le contrat d'interface.
Donc ça, ça va être les deux parties principales, les deux composantes.
Sachant que l'architecture de plugins, c'est la même que celle que tu peux avoir
dans ton serveur quand tu fais tes propres customisations qui ne passent pas à être par un plugin.
Ça va être surtout pour pouvoir réutiliser tes fragments,
ou les partager avec ta projet.
Et puis ensuite, la troisième partie, celle que moi, j'ai développée,
qui est l'extender, qui est là, donc là, c'est un petit peu plus poussé
pour des cams beaucoup plus...
... un peu plus perdus.
C'est pas l'extender, c'est pour les caps peut-être un petit peu plus poussé,
ou en fait, on a besoin un niveau de granulométrie un petit peu plus poussé, je suppose.
C'est exactement où là, tu vas peut-être avoir besoin de détendre les entités,
tu as pas forcément envie de créer de nouvelles entités,
de les rattacher aux entités existantes,
mais peut-être on va utiliser les tables existantes,
juste de pouvoir les manipuler différemment,
ou simplement de changer quelques petites parties de certains services,
ou ça prend pour une telle, etc.
Donc là, ça donne une grande éverie.
Typiquement, je pense au Marketplace.
Donc, on permet de faire des stores.
Marketplace, c'est encore un autre système.
Si on parle de votre moteur et de la commerce,
simplement fait pour les stores,
c'est pas facile forcément d'étendre sur les Marketplace.
Alors, maintenant, on propose les sales channels,
qui permettent justement d'écoupler le catalogue de produits,
en faisant de dire, part le temps sur lequel on rebonde.
Donc là, on va pouvoir se rapprocher dans la multi-tapente architecture.
Mais voilà, l'extender, il faut essayer de donner cette possibilité
à certaines sociétés d'aller plus loin,
et d'avoir le contrôle complet sur ce qu'elle fait,
dans la grandeurité de ce qu'elle compte.
En gros, si j'ai bien compris,
l'extender est plus complexe ou plus simple que le plugin en fait ?
Non, il est plus simple et plus complexe.
Il est plus complexe,
dans le sens où il faut savoir que l'on met du zajid à son action d'abord.
On va pas utiliser le kilofon,
mais on n'utilise pas l'extender comme ça, de suite,
parce que c'est pas aucune idée de ce qu'on y a éteint,
de ce qu'on a changé,
ça peut avoir des impacts importants sur le reste de l'application,
donc il faut quand même avoir une bonne notion de comment ça fonctionne.
Donc, au point d'avance,
c'est plus pour des utilisateurs avancés et des projets un petit peu plus complexes.
Il y a des agences qui s'en servent, qui y a le connaissance bien mesdusard,
et qui, du coup, aussi, utilisent l'extender pour aller un petit peu plus loin.
Mais sinon, de manière générale,
pour la majorité des cas,
l'approche plugin fonctionne très très bien,
et elles n'ont pas besoin de sortir de ça.
Et pour le coup, les utilisateurs,
on va dire les clients, les consommateurs de mesdusard
qui vont utiliser et implémenter mesdusard,
c'est qui, c'est surtout des agences, des boîtes,
peut-être une marque qui veut lancer son propre store,
c'est qui la typologie des personnes qui utilisent et qui implémentent mesdusard.
Aujourd'hui, vous allez trouver ce type d'infos ou pas ?
Oui, alors on a un peu de tout.
On a autant des boîtes qui essaient de se séparer des technologiques qu'ils utilisent actuellement.
Donc là, ils vont peut-être utiliser mesdusard
sur certaines parties de l'ensemble de leurs applications
pour commencer à le tester, pour commencer à réagir,
puis ensuite essayer de l'étendre sur le reste de leurs apps.
On a des agences qui, elles, développent pour d'autres entreprises
qui se faire aussi beaucoup de mesdusard,
et puis on a aussi beaucoup de personnes qui justent souhaitent créer leur store,
ils souhaitent se lancer, et donc d'habitude, ils vont se rechauffer par exemple,
et puis ils ont vu qu'il y avait mesdusard, donc ils ont envie de tester.
Alors au départ, c'était un petit peu, ça parvait d'un petit peu tout le monde,
maintenant on parvait un petit peu plus les développeurs.
Parce que oui, on peut faire un store assez facilement,
ou on va en avoir assez simple, mais souvent on va avoir
des titus de la mise à son pour vous en faire,
sans aucune connaissance on ne peut y arriver,
si on sait comment chercher, comment trouver l'information,
ou au travers de la dog ou au travers de sa conversation,
c'est une autre, après ça peut aussi donner un aide dans le debacle.
Donc sur le site de mesdusard, en fait, quand on arrive sur la home,
c'est marqué Shopify open source en fait,
en gros, est-ce que la promesse vraiment, c'est pour les gens qui disent Shopify
de pouvoir passer facilement sur mesdusages, c'est d'avoir à peu près les mêmes fonctionnalités.
Est-ce qu'aujourd'hui c'est le cas d'avoir les mêmes fonctionnalités ?
Il n'y a pas toutes les fonctionnalités, je suis en train de penser par exemple
à la partie de marketing, Shopify, ils ont quand même beaucoup d'extrace,
ils ont quand même beaucoup de plugins qui sont autour de eux, souvent très payants.
On n'a pas encore cette partie, mais on verra.
Oui, la dernière fois, par exemple, j'ai développé un plugin de fortification,
mais il y avait des noms de la communauté qui étaient très contents,
parce qu'à d'habitude c'était payant.
Je trouvais ça normal de leur proposer.
Et donc du coup, oui, on a par exemple un plugin qui permet d'importer
et de s'accompagner les produits avec Shopify pour faciliter la transition.
Après, aujourd'hui, Shopify reste plus user friendly
dans le sens où tu drag-and-drop, tu cliques par un tout et tout est fait.
Aujourd'hui, on n'a pas encore cette possibilité avec les Usa.
Est-ce qu'on va prendre plus ou moins un terme, on va voir.
Mais c'est vrai qu'on est en train d'apprendre un petit peu plus
sur notre communauté, sur qui se sert le monde,
d'après un besoin et d'essayer de répondre au maximum à ça.
Et vraiment, on va dire ce focus sur...
On va dire un panel de...
Ouais, un target.
Pour le coup, on va pas refaire l'histoire,
mais on a commencé à discuter, ça fait quasiment un an, peut-être, maintenant,
où on avait échangé.
Et il y a un an, en fait, le projet était, je pense,
encore une sorte de...
La maturité n'était pas encore là.
Aujourd'hui, vous êtes encore dans le game,
vous avez encore développé plein de choses.
Justement, à quel niveau de maturité vous êtes sur le produit,
est-ce que vous êtes encore sur des ajouts de features
ou sur la mélioration de l'expérience utilisateur,
en fait, quelle est la maturité du produit aujourd'hui ?
Alors, on est certainement beaucoup plus mature,
parce qu'on est derrière, ça c'est sûr.
Et certain, on a des features qui étaient déjà existantes,
qui sont beaucoup robustes, on a ajouté.
On a encore de nouvelles features,
et on a encore plus mal de nouvelles features qu'on a envie d'ajouter.
On a peut-être travaillé sur la performance récemment,
donc il va y avoir des groupes,
ou des performances qui vont sortir un peu très entrons.
Donc, déjà, on a envie de dire, on a encore beaucoup de choses à ajouter,
parce que j'ai vraiment l'impression que dans le e-commerce,
c'est tout un tas de choses qu'on peut faire.
Là, par exemple, je pense à la gestion de stock multi-location
avec des multi-wirehouse,
ça c'est quelque chose qu'on n'a pas pour l'instant, mais qui est en train d'aller.
Donc, on a des celles celles qui sont sorties il n'y a pas longtemps,
qui n'existent pas avant, mais qui peuvent être ultra-utiles.
Et ça, ça va aussi donner lieu à plein de systèmes de pensée
qui vont nous faire ressortir plein de features qui gravient tout au long de ça,
et qui vont pouvoir aider la communauté.
Mais ensuite, on est aussi très friands des retours de la communauté,
de nos utilisateurs, de vraiment comprendre leur problématique,
et de pas juste développer des features pour développer des features.
Et ça, on se fait beaucoup de retours,
en avant de nos compagnies et des utilisateurs internationalement.
Comment est fait le tri, en fait ?
Parce que si vous ajoutez beaucoup de choses,
en fait, au bout d'un moment,
est-ce que ça ne va pas devenir inutilisable avec trop de fonctionnalité dans tous les sens ?
Est-ce qu'il y a un tri qui est fait ?
Est-ce que vous faites le choix de dire non, on va essayer de garder un truc simple,
ou on va rajouter le plus de trucs possible ?
Enfin, je ne sais pas comment ça marche, en fait.
Généralement, on essaie de faire le moins pour faire le plus.
Donc, si on peut, avec 20%, faire 80% de problématiques,
quand j'ai toujours, moi comme je disais,
on en met déjà des phénomènes, entre guillemets.
Donc, trouver des haçons dans le plus en en repassant les moins.
Et donc, en fait, on a un système,
alors déjà, c'est filtré en amont par Oli et Sainte,
donc qui sont les compagnies en atterrub de Medusa.
On en discute aussi avec la team en Vendrom Ring.
Et puis, on a le sillon où tout est partagé,
donc on a vraiment beaucoup de ce restaurant.
Et ensuite, on discute tout sans forme,
on a des différentes futures, on se les split,
on écrit des avocés dessus,
on essaie de voir vraiment quel problématique on est en train de essayer de résoudre.
Comment est-ce qu'on va la résoudre et quel choix on va faire ?
Mais c'est vrai qu'il y a une personne qui a encore un potentiel de feature
qui est quand même incroyable.
On a trouvé pas que j'ai les commerces,
il y a vraiment beaucoup de choses.
Après, ça ne veut pas dire que toutes les features sont ouvres à être pour tout le monde,
mais en tout cas, on a décidé de faire ça qui récombre au plus de besoin.
Ah ok.
Et pour le coup, les features aujourd'hui, comment vous les implémenter ?
Est-ce que c'est sous forme en fait de setting the option en clair
où je vais avoir ma base, mon corps qui est X,
et si je veux passer en mode Marketplace,
je viens toggle quelque chose dans mon admin et ça me débloque des nouvelles features
parce que je vais prendre un pris, mais je vais orienter ma solution e-commerce
vers plus une Marketplace.
Est-ce que vous avez opté pour cet approche-là
ou c'est via des plugins que je vais venir rajouter ?
Ou c'est par défaut, j'ai accès à de plus en plus de choses.
Par contre, peut-être avec un peu plus de complexification parce qu'il y a plus de settings.
Comment vous faites ces ajouts de feature ?
D'abord, quand on ajoute une nouvelle feature, elle est sous feature flag.
Donc, à certains temps, si tu veux nous servir,
il faut que tu viennes tenter de paramètres pour rajouter des features flag.
Ça va devenir de la qualité bloquée.
Moose, ça nous permet aussi de pouvoir avoir des retours de détesté, etc.
Et ensuite, elles font toute partie du corp.
Dès que tu lances ton serveur, tu as accès à toutes ces features.
On est en train de retravailler sur l'architecture du corp
et notamment d'intégrer la notion de modules,
qui diffère de la notion de plugins parce que là, on sépare les domaines.
Et l'idée, c'est qu'il y a des domaines qui vont être récroyables
et qui vont être optionnels.
Et on va donner la possibilité à un diata,
ça veut dire, moi, je veux complètement remplacer ce domaine
ou je veux qu'on sommeille le domaine,
tant ou de ne pas avoir la fonction de la nécessité.
Donc, ça, c'est quelque chose qui n'est pas encore disponible,
mais qui est en train d'arriver.
On est en train de faire, de discuter, de faire des essais, etc.
Donc, on en montre sur quelque chose qui m'a donné beaucoup plus de flexibilité
sur l'utilisation de collèges.
Par contre, l'utilisation de ces modules et ce paramétrage,
est-ce que vous n'allez pas, pour le coup,
fermer un peu les portes de toutes les personnes qui veulent,
on va dire, un clic, en trois clics, j'ai mon shop,
qui est en ligne, qui est en place.
Et là, pour le coup, c'est clairement volontaire,
peut-être de cibler les développeurs ou les agences
ou les personnes qui ont des connaissances en termes de casque,
parce que pour faire et jouer et paramétrer tous ces modules-là,
il faut un bagage technique certain, quand même.
Alors, ça peut être, à la fois,
ça peut être, il y a des fois compliqués à la fonction de comment on le prend.
Pour l'instant, on est en train de continuer de travailler
et de discuter sur cet approche architectural.
En revanche, l'idée, c'est que tu puisses,
juste comme aujourd'hui, déployer ton serveur avec les cultures actuelles
et tu avais mal à faire, à forme de déployer.
Parce qu'il y aura, en fait, des packages par défaut pour ces modules.
Donc eux, ça se verra pas, ils se font installer tout seul
et ils vont se plugger tout seul.
Ça permet de façon d'avoir un monolithe,
d'avoir un micro-service, mais ça, ça sera pareil,
ça va se gérer tout seul,
il se fait juste de le spécifier quelque part,
et hop, ça se verra tout seul.
On essaie quand même de garder cette simplicité,
mais en même temps, il y a certains besoins qui nécessitent
d'avoir un petit peu plus de configuration.
Mais après, quand on a des plugins, des modules,
la configuration, on se met à un site assez simple à faire
et souvent, il y a des gens un petit peu comme moi
qui vont faire ça pour la communauté
et essayer d'acte de faire une abstraction de toute cette complexité
pour le rendre encore plus simple pour les utilisateurs.
Donc ça dépend vraiment de besoin.
Pour un simple store, voilà,
ce sera aussi facile aujourd'hui.
Par contre, c'est vrai que si tu veux customiser,
il y a le plus loin et il va falloir un petit peu plus de connaissances
pour savoir comment les choses fonctionnent,
comment est-ce que tu veux venir changer un morceau,
parce que si on change un morceau,
ça va quand même des implications.
Donc il faut connaître ces implications.
C'est un petit peu comme si on veut venir,
on fait un Shopify, et puis d'un coup,
on a besoin d'avoir beaucoup plus de granules d'amérités,
peut-être d'avoir un service Shopify Plus,
et d'avoir un service à discuter avec l'équipe ingénielle, etc.
Mais là, on va prendre encore une fois dans la partie
où on a besoin d'ingénieurs.
Mais pour tous les cas les plus simples,
ça reste très simple.
D'accord.
Aujourd'hui, j'ai une question.
Moi, par exemple, je suis une entreprise,
j'ai envie de lancer, j'ai besoin d'un e-commerce,
de renouveler mon système e-commerce.
Est-ce que aujourd'hui je peux m'investir à fond dans Medusa.js?
Est-ce que dans 6 mois, il y aura des brekkingschanges
ou pas, ou vraiment je peux y aller à fond?
Même s'il y a des changements,
ce ne sera que par module plugin, donc il n'y a rien qui cassera.
Est-ce que là, je peux y aller dans une entreprise?
Alors, oui, carrément.
On a des entreprises qui se forment à leur activer
un e-commerce.
Après, des brekkingschanges, c'est sûr qu'il va y en avoir,
mais on essaie toujours de les limiter.
A part quand on fait un service version majeur.
Alors, à ce moment-là, c'est vrai qu'il peut y avoir
un certain nombre de brekkingschanges.
Et en général, on essaie de les limiter,
ou en tout cas d'aider.
Avec, exemple, certains brekkingschanges qu'on a déjà eu fait,
on a fourni des scripts aux utilisateurs
pour qu'ils aient juste besoin de lancer les scripts.
Et hop, c'était tout fait.
Comme ça, ils n'auront rien besoin de faire.
En tout cas, minimum.
On essaie vraiment de garder cet esprit de starplicité.
Peut-être que les utilisateurs, ils n'aient pas de mal à s'en servir.
Après, c'est comme tout, plus ou moins,
on a de connaissances, plus ou moins,
ça va être difficile de comprendre.
Mais, dans l'artien de Rite, ça reste quand même relativement ça.
Après, il y a forcément des API qui m'ont changé.
Il y a forcément des services qui m'ont crée exposé
la main au API parce qu'ils m'ont évolué, etc.
Mais je pense que ça fait partie aussi
de certaines améliorations qui vont aller en faveur des utilisateurs.
Mais pour les clients, il y a besoin de faire ces changements.
Et c'est vrai que les crées clients, ça peut être embêtant.
Je pense que ça peut être pareil, par exemple.
Mais en même temps, c'est pour le...
Le...
Après, c'était...
De toute façon, il en faut, c'est obligé sinon le produit n'évolue plus.
C'est ça.
Mais en même temps, c'est au niveau structure.
Structure, ça va pas changer spécialement.
Je parle de ça parce que par exemple, Next.js13 est sorti
avec une nouvelle structure et là, c'est carrément un changement énorme.
Donc, on n'est pas là. La structure va rester là-même.
Oui. Pour l'instant, on n'en est pas là.
Et quand il y a des changements structurels, comme l'appareil dont je parlais
de l'approche des modules, ça ne va pas être plus clair.
C'est l'existence. C'est en plus.
Ok. C'est bien.
Et pour le coup, j'ai vu tous ces systèmes de plugins et de modules.
Par exemple, pour donner un exemple concret,
sur un système de paiement, vous allez injecter
et connecter avec le plus de services de paiement possible.
Moi, je veux utiliser Stripe.
Un autre veut utiliser PayPal.
L'autre, il veut utiliser quelque chose d'autre.
Vous, vous avez codé, ou la communauté a codé des plugins
pour faire des interfaces entre tous ces services.
Parce qu'on sait très bien que dans le e-commerce,
très vite, il va y avoir plein d'acteurs sur la gestion du stock,
la gestion du contenu, la gestion des paiements, des refunds,
on le support tout ça. C'est tout organisé.
Et donc, comment vous structurez tous ces plugins ?
Vous avez des plugins que vous avez fait vous et la communauté.
C'est identifié comme, ok, ça, c'est du corps, c'est chez nous.
Nous, qui les avons fait, ça, c'est la communauté.
Alors, nous, on fournit un certain nombre de plugins.
Pour l'instant, on essaie de ne pas trop non plus étendre
la quantité de plugins qu'on fournit.
Parce que plus on a de plugins officiels, plus il y a de motes
qui sont des gens qui sont des gens de la communauté,
ça peut être plus un des monde compliqué, etc.
Pour l'instant, on a un certain nombre de plugins,
comme tu l'as évoqué, on a Stripe, Payback, Lerna, etc.
Et ensuite, il y a des gens de la communauté
qui vont faire leurs propres plugins,
soit pour eux-mêmes, soit pour les partager avec la communauté.
Mais j'ai pu récemment passer un plugin pour un système de PEMU
qui est vraiment localisé quelque part en Afrique,
mais qui apparemment, pour certaines personnes,
des utiles sur la question de la marché.
Il y a des gens qui vont se charger de le faire.
Ça reste relativement simple,
même si les plugins provider, c'est tout le monde,
tu peux être complexité de casse-tête parfois.
Et d'où, on se crée sans mal maintenir les plugins qu'on fournit aujourd'hui.
Donc, les officiels, en fait, c'est très simple,
il faut partie du mot d'horipo de mes dusants.
Tout ce qui est dans son oripo,
il y a une sorte d'annuaire qui répertorie tous ces plugins.
Alors, il y a un de mes deux,
il y a celui du nosim qui est partagé,
je crois qu'on peut le trouver sur le site de mes dusants.
Ou là, il y a une liste de plugins de chel et communautaires,
certains, à tous.
Et puis, moi, je vais aussi faire awesome,
que je cède maintenant comme je peux,
avec touchin list de plugins, packages,
ou je détame en tant qu'officiel.
D'accord.
Il y a des plugins payants,
est-ce qu'il y a des développeurs qui font des plugins qui sont payants,
ou vraiment, tous les plugins sont open source ?
Alors, tous les plugins sont open source,
après, je crois qu'il y a certains membres de la communauté
qui font certains plugins qui,
autant seulement pour aller faire payer, je sais pas.
Vous avez vu quelqu'un qui les est pas saisant,
ce qui a priori, il y avait passé beaucoup de part sur leur plugin
et chez une société.
Mais de manière générale,
on ne connaît pas d'appelage.
Dans l'ensemble, c'est open source,
c'est livre d'utilisation.
Bon, maintenant qu'on parle d'open source,
depuis tout à l'heure, on parle de tune, tout ça.
OK, Medusa, c'est complètement open source,
vous, vous êtes une société.
Et donc dès qu'on invite quelqu'un
qui fait de l'open source et qu'il y a une société,
on leur pose la question,
« Égat, comment vous faites du pognon ? »
Parce qu'à un moment donné,
il faut manger, il faut payer tout ça.
Et donc, comment aujourd'hui,
c'est quoi le business model de Medusa,
ou le business model à venir ?
Alors, ça oui, c'est une question
qui est très souvent en même temps.
Mais pour l'instant,
en fait, on a fait une levée de chou,
on m'aide la trésor, si on peut dire.
On revient avec ça.
L'idée, c'est de vraiment se concentrer
sur le fait de faire le meilleur produit
du marché open source,
avoir la meilleure expérience utilisateur,
la meilleure expérience développeur.
Ça, c'est vraiment le cœur de ce qu'on fait
et ce qu'on souhaite.
C'est le « like motive ».
C'est notre « like motive ».
Et d'avoir vraiment cette culture open source
qui reste.
Et par la suite,
on a quelques supports premiums,
des sociétés qui sont complexes
pour essayer de leur donner
des guidance,
que ce soit architectural
ou juste des questions
sur comment faire quelque chose.
Ça, ça sert à l'innocié un petit peu d'argent.
Et puis, par la suite, on essaie de voir
ce qui fait le plus de ça.
Si on fait un open core,
est-ce qu'on fait une solution
hostile by means users.
C'est des questions qui restent encore ouvertes,
qui ne sont pas figées,
mais qui vont venir
de nos futures plus ou moins proches.
Donc ça va dépendre de l'évolution.
Mais principalement,
financé par des visites.
Ok, donc en fait, ça veut dire
que, en termes de maturité
de boîte, vous êtes encore
en recherche de business model.
Aujourd'hui, vous ne savez pas comment
vous allez gagner de l'argent.
Vous concentrez le focus
sur le produit, faire un produit de ouf.
Et après,
vous verrez comment vous pouvez
mettre du...
gagner de l'argent avec votre business.
Ok, c'est un problème.
Donc, ça va me dire que gagner de l'argent
ça n'est pas forcément
c'est une problématique.
Mais il y a tellement de faces
de faire en sorte que nous puissons
rentrer de l'argent,
qu'on n'a pas de soucis
de ce focus vraiment sur la qualité
de ce qu'on a fait de produit
et de créé. Ok.
Après, ça peut être aussi un frein
sur des agences
qui, par exemple, pourraient migrer
de technos.
Parce qu'ils ont mis en place
leur paterne pour aller justement
pour mettre des sites de e-commerce assez
vite et rapide
en fait de déployer relativement rapidement.
Le fait
de changer et de basculer sur mes
d'usages
ça pourrait peut-être mettre
des freins en fait
à cette migration
technique parce que
bah oui.
Même si vous êtes super motivés, peut-être
que demain, en fait, pour X-Raison,
il n'y a plus de thunes qui rentrent,
qui dit que le projet
va être maintenu si
vous n'êtes plus là et que la communauté
est suffisamment
forte tout.
Après, je ne veux pas
noire-clair le tableau, mais
ça reste
toujours d'inquièr et dangereux
pour des entreprises de faire une migration
technique. Bah t'as super raison, parce que
c'est vraiment un enjeu, une entreprise
qui investit dans d'e-commerce, c'est souvent
des grosses sommes,
50-100 000 euros, pas facile,
et c'est vrai qu'il faut se poser la question
est-ce que le projet est pérenne, est-ce que dans 2 ans
il sera encore maintenu, est-ce que voilà.
D'autant plus.
Excuse-moi de te couper,
mais d'autant plus dans la mesure où
ce que j'ai compris
c'est que les premiers clients
en fait, les gens que vous devez convaincre
c'est plutôt les agences et les développeurs
qui eux-mêmes vont utiliser
cette brique-là auprès de leurs clients.
Donc ce qui veut dire qu'il y a un intermédiaire
qui doit être full convaincu
que sa brique techno
elle va pas s'effondrer quoi, parce que
c'est lui qui porte le projet technique
et donc qui va aller le vendre
aux clients. Donc si
demain il se retrouve avec Medusa
et son client qui tourne
mais Medusa n'est plus maintenu
là ça va être
ça peut être compliqué. Après
vous avez tous les signes au verre
pour continuer et pour grossir
et pour faire plein de features et tout ça
donc c'est plutôt bon, mais
c'est important de bien le signaler
pour comprendre en fait
le niveau de maturité du produit
quoi, les de l'entreprise qui est derrière
clairement. Bien sûr.
Alors c'est vrai que pour l'instant
pardon. Mais vas-y vas-y vas-y.
C'est vrai que pour l'instant tout va bien
tout est plus ouvert, tout va sur
ça, c'est sur de bon rail
on n'a pas vraiment
je pense qu'on est pas vraiment inquiets
sur cette partie du future
tant mieux on instraille tous des routes
comme prévu et on a de longs
plans et
il y a pas beaucoup d'agences qui sont déjà convaincus
une entreprise aussi qui est migrée
qui sont déjà convaincus donc je pense que ça
ça se supporte aussi pas même le projet
et puis on peut le voir
aussi même au sein de la communauté
avec certaines sociétés qui font des PR
ou encore la grosse migration
qui a eu lieu dernièrement sur la mine
pour
sortir de Gadbille, être fou au réact 18
et ça c'est pareil
c'est une personne
qui voulait migrer
l'utiliser
notre admine qui s'est rendu compte de cette problématique
nous on est en train de réfléchir
à la courbe d'enfortier et puis vous voyez
qu'ils s'investissent aussi dans ça et ça donne
de bons signaux pour nous aussi
on s'est rendu aussi beaucoup d'intérêt
et ça résout de
de bons problématiques aujourd'hui.
C'est un bon signal aussi qui n'est pas que
l'entreprise derrière, il y a aussi toute la communauté
qui contribue donc même si demain
l'entreprise disparaît, le projet est open source
et la communauté va continuer
à contribuer sur quoi donc
ça c'est superveilleux temps.
Oui et tu parles d'agences
il y a beaucoup d'agences qui
utilisent Medisa et est-ce que c'est des agences
qui ont migré de Magento
des choses comme ça ?
Je ne sais pas, je ne sais pas
de ship ou de nom en tête
on va pas mal
passer aussi sur la communauté mais juste sur le discord
on peut les voir
dans leur façon de s'exprimer
ou ce qu'ils sont en train de chercher à faire
plus de certains même de la communauté
avec qui je discute
qui même ont des agences
qui font des débloquerants et puis on a des discussions
aussi bien, on essaie de garder
une discussion la plus ouverte possible
après il y en a quand même qui contactent
en privé, bon quelques réponses
mais on essaie de quand même les rediriger
sur les channels ouverts
pour que tout le monde puisse contribuer
à la réponse et puis que ça bénéficie
à tout le monde aussi
Ok, et...
En fait il y a pas mal de...
je voulais parler de storefront
un petit peu parce que je sais que storefront
ça se connecte à Magento par exemple
il y a pas mal d'agences qui sont passées là-dessus
en fait est-ce que storefront on peut aussi le connecter
sur un metduzar en fait ?
C'est dur hein ?
Oui c'est du vu en fait, il y a les connecteurs
Alors il y avait
ça fait un moment
il y avait justement storefront qui était venu
sur notre discord pour discuter
de faire une intégration
ça nécessite aussi
celui de temps, mais il n'y avait pas forcément
un lecteur, le temps
ou la possibilité d'aller se parler
pour le faire mais c'est complètement ouvert pour la communauté
je crois qu'il y en a qui ont commencé à faire une intégration
avec storefront
Je me trompe pas, mais il y a un lien entre
à la fois on est sur leur discord
et eux ils sont sur le matres pour garder ce lien
et que les gens qui soient intéressés
puissent en discuter et puis je suis sûr
que ça va sortir
Pour le coup
pour remettre dans le contexte
pour ceux qui ne connaissent pas storefront
c'est une bibliothèque de composants
spécifique pour le e-commerce
qui écrit en vue et en autre chose ou pas ?
Non c'est qu'en vue
C'est dur
C'est qu'en vue mais c'est une bibliothèque
de composants front
vraiment orienté
e-commerce
et headless
Exactement
Oui de ce que j'avais vu
de mon attraction en plus de la partie
de Couchapin et etc
Il s'incrit une intégration
Il y a des connecteurs
Je pense que c'est juste un besoin
de temps à investir
et je pense que s'il y a ce qu'il y a de gens
qui sont intéressés à la partie
Donc en fait c'est juste une question
de temps avant que ça se passe
Je ne pense pas que tu en fais de si une question
Si on veut se débarrasser de ma gente
ou il faut qu'on aille tous contribuer
sur mes dizaines
Après, en plus
on a eu un plugin qui a été fait
pour la transition de ma chanteuse
pour les produits, les collègues
On a un cheat qui est sorti sur ça
Il y a des façons
d'architecture et des choses
qui n'ont pas du tout les mêmes que dans les dizaines
quand on regarde dans ma chanteuse
Il y a des complexes qui se posent
quand on veut essayer de tout importe
et puis ma chanteuse, ce n'est pas du tout la même solution
Ah oui non
Parce qu'il y a un plein de types de produits
c'est vraiment une mode façon de concevoir
une belle boule d'ambérière
Très compliqué
Et pour le coup
est-ce que vous avez encore de recul en disant
clairement
on peut se substituer
Alors vous avez déjà à moitié répondu à la question
quand vous dites que vous êtes le Spotify
le Shopify
le Shopify Open Source
Mais est-ce que
vous travaillez en fait
sur cette migration
et vous êtes proactif
en disant arrêtez de faire du bout-commerse
faites du Medusa
ou arrêtez de faire du Shopify
venez voir Medusa
est-ce que aujourd'hui vous êtes à la chasse
en fait
sur des plateformes
et vous
vous mettez clairement en opposition
à ces plateformes
et vous apportez une solution Open Source
assez solution
un peu bière
je suis certain
je pense
en tout cas à ma connaissance
je ne pense pas qu'on soit à la chasse
on essaie par exemple
de faire des sondages
régulièrement pour savoir un petit peu qui utilise quoi
qu'ils se feront besoin
on essaie de rester neutre
quand on fait des comparatives
pour plusieurs plateformes on va bien feature
on essaie de rester
plus objectif possible
votre emploi c'est bien objectif
oui oui
il est le plus possible
sans forcément forcer tout le monde
à changer et à l'option de Medusa
sachant que le bruit court tout seul
et les gens ne discutent entre eux
après c'est pas forcément les mêmes
quand on parle de bout-commerse
c'est pas forcément la même cible
du tout d'utilisateur
par rapport à Medusa ou Shopify
c'est vrai que Shopify
il y a énormément de parts de marché
c'est vrai que c'est...
les parts de marché ils sont très gros
même si ce sont un petit peu
les dernières moments avec des derniers investissements
ou ces teams de choses
mais oui il reste quand même très gros
il reste hyper utilisé
ça reste quand même hyper simple
quand on est à l'store
après c'est vrai que
c'est pas les mêmes tags comme tu disais
et aujourd'hui chez Medusa
c'est une société
vous êtes combien
à bosser sur Medusa
et on va dire dans la société
Medusa vous êtes combien
il y a la répartition entre la tech
et non tech c'est quoi à peu près
on est une campground
de personnes chez Medusa
et en tech on est...
je tire les...
non
on est pas tout tech
mais on est...
on est...
7 je me trouve pas
de votre motif
il y a des répartis un petit peu partout
ou vous êtes tous en remote ?
on est tous en remote
on peut au brésil, au canada, au danemark, en france
par contre
historiquement je crois que vous êtes au danemark
enfin les fondateurs sont au danemark
c'est ça ?
oui, les bureaux au danemark
et les fondateurs sont au danemark
à Copenhague
sympa
mais on a vraiment cette culture du remote
à connaître dans le contenu
on fait tout pour que ça fonctionne
ça c'est intéressant
et après toi par exemple
ça fait combien de temps que tu es chez une année à peu près ?
7 mois
et ton intégration
je l'ai vu un petit peu
mais ton intégration par exemple
en tant que full remote
au début tu t'es évoqué
ou pas du tout
ou vous n'est jamais rencontré ?
c'est si
j'ai passé 2 ou 3 jours
à Copenhague au départ
où j'ai pu être dans les locaux
avec eux
et puis je suis découvert mes collègues
ça c'était chouette
plus récemment on a fait un get together
où on est tous parti dans Crete
ça a pu nous aider
pour vous aider à construire des liens
je suis désolé pour mon frère anglais
je ne sais pas pour moi
de construire des liens
tous ensemble
des activités communes
ça c'est des choses qu'on fait
d'outre site on va dire
et puis on a toutes les activités
par exemple les shri-de-barre
où on est tous sur zone
on fait des nujins ensemble
on fait des skate games
avec des caméras sur vie
plusieurs équipes
vous êtes encore en mode confiné
en fait
d'abord quand on est seul
c'est ça
quand on est un peu partout dans la planète
je pense que c'est bien
il faut avoir eu plusieurs expériences en vime
c'est hyper important pour avoir
une équipe soudée de partager
les choses autre que le travail
et donc du coup
il y a pas mal de process
je pense qu'on peut faire des process
des coffies de chat, des frayes de barre
et puis on a la possibilité
aussi sur le souhait
par exemple demain on doit aller travailler
à Copenhague pendant quelques jours
je ne veux pas de soucis je peux le faire
et puis on va vivre en tout à fait ouvert
et tout le monde peut faire ça
j'ai envie d'aller travailler avec un couple de grands
coffsings et vous vous allez travailler d'ailleurs
et au coeur ceci
et pour le coup
qui est
la place de la communauté
sur ce travail
là on parle
de la boîte
vous êtes 7 tech
alors
il y a les autres personnes
mais sur la tech
comment vous intégrer
est-ce que c'est intégrer la communauté
elle fait partie
prenante du produit
ou quelle est la place
de la communauté
par rapport au produit
je vais finir ma question
parce que clairement c'est de l'open source
par contre c'est votre produit
donc c'est toujours difficile
si demain la communauté
elle grossit mais elle choisit une orientation
différente de la vôtre
et les intérêts sont divergents comment ça se passe
en clair la question c'est la gouvernance
comment ça se passe
alors je pense qu'elle est décide
de finir la société
maintenant en moins
jusqu'à présent on est tout à fait
ouvert à discussion on discute beaucoup
avec la communauté on leur pose des questions
on leur envoie des sondages pour leur donner le retour
on leur dit des features problématiques
leurs besoins qu'elles ne vont répondre peut-être pas
et qu'elles voudraient qu'on répond
nous on essaie de faire
de sortir de la data de tout ça de l'information
et puis il y a aussi des discussions
complètement ouvertes sur le Google tab
il y a des gens qui ont des questions
on va s'y parler de ce qui est d'abord sujet
une problématique qui est rencontre
puis ensuite on va partager des RFC avec eux
on va éclairer des RFC et faire des retours dessus
on va faire des retours sur ce que
un GIS ne nous proie pas
et puis avec ça on sauf qu'il y a une chose
oui je dirais que la communauté est très intégrée
dans tout ça
et comme on peut faire
pour participer au projet
voilà nous on est soit une agence
soit des développeurs qui ont envie
de participer
à ce projet là
il faut déjà que les développeurs soient javascript
parce que ce que je comprend c'est que tout le backend
est fait en gs c'est ça
c'est ça
et comment ça se passe
et PR on discute
c'est ça
il y a la possibilité de nous mettre sur le discord
de poser des questions
soit la communauté soit nous la team on va répondre
on est créé aussi impliqué dans ça
on répond quand même assez rapidement
ensuite il y a la possibilité de créer des échules
on va aller regarder et essayer de discuter
avec la personne
parfois de faire des calls
ça peut aussi aider
sur une problématique vraiment bloquante
et puis voilà il y a plein de moyens
de nous venir nous contacter
on est tout le temps sur le discord
on pense sur le viteur donc il n'y a pas de soucis
pour tout ça
et puis aucun problème pour rire
à la fois des PR, des discussions
n'importe quoi
on prend tout
et on voit que la mode en ce moment c'est de faire des conf
est ce que Medjiza Gilles va faire une conf bientôt ?
la Medjiza conf
je ne sais pas que je sois au courant
pour l'instant je me demande
quand tu peux en entendre ça
on va en entendre parfait
par contre j'ai vu néanmoins
vous avez été hyper actif
sur le hackathon
sur le octobre
dev
et là vous avez
ça vous a beaucoup aidé
c'était juste génial
beaucoup d'exposéances
même moi ça n'en ai qu'jeter
je peux dire ça
c'est comme ça que j'ai sorti 3 plugins
pour commencer
ah ouais tout d'un fait c'est de mon petit peu après
et il y a eu
beaucoup de participants
beaucoup d'équipes qui se sont formées
ça a aussi créé des liens entre les membres de la communauté
qui ne se connaissaient absolument pas mais qui reformaient des teams
sur des sujets sur lesquels ils avaient un travail
on a
ça c'était hyper souhait
on a eu beaucoup de projets qui ont été soumis
après voilà c'est comme tout
on est plus ou moins expérimentés
plus ou moins avancés
d'écritement
ce qui est cool c'est qu'il y a eu de tout les niveaux
de toutes les propositions
ça c'était hyper chouette
ça a permis à beaucoup de gens de découvrir comment ça fonctionnait
d'autres d'essayer d'approfondir un petit peu moins
on a vraiment très
il y a eu beaucoup de mouvements autour de ça
avec Tuberfest
moi ça me donne vraiment
chacun contribue
comme il peut
on peut commencer par juste
de la traduction
si on est un peu plus avancé
il faut pas hésiter à contribuer
un projet open source
désolé avec tout ce que je t'ai coupé
je remondissais parce que tu parlais
d'équipe de contribution
est-ce que vous avez une personne qui gère
la communauté en interne
pour moi je parle
on n'a pas de personne
de DJ à la communauté
on est tous un peu déçus
d'accord
parce que ça s'arrête c'est très important
la gestion de la communauté
pour les driver, les motiver
on essaie quand même de pas laisser
des questions trop longtemps
après il y a beaucoup aussi de questions
ça c'est un truc à gérer aussi
oui on apprend
il y a beaucoup de questions redondantes
des gens où on peut pas forcément trouver l'information
ou les réponses qui ont déjà été données
donc là il faut répéter
mais c'est vrai que ça crée beaucoup de flux
parce que c'est pas forcément toujours facile
de répondre à l'imagine
surtout quand enfin
les personnes elles pensent
que c'est madboulot
on nous mentionne
en permanence mais c'est vrai qu'on essaie
quand même de répondre au plus vite
et tous les jours on donne des réponses
tous les jours on décide les gens de la communauté
sans pro-légal
par exemple je prends beaucoup de temps
sur mon temps perso pour essayer
d'éplucher des questions
toujours de donner des réponses et d'instituer une guidée
mais je pense que c'était aussi un choix de chacun
mais à terme je pense qu'on aura quelque chose
aussi pour permettre
de gérer la communauté et d'aller gérer
peut-être aussi la charbe sur tout le monde
parce que ça a quand même beaucoup beaucoup de travail
c'est très prenant
top
super
je sais pas Patrick tu veux rajouter quelque chose
une question peut-être
écoute non c'était super intéressant
c'est très intéressant
et de toute façon
on arrête pas de le dire
sur ce podcast mais
faites de l'open source
on t'est en compagnie
contre la doc, faites de la traduction
n'importe, faut contribuer
et en fait on a toujours un retour
sur investissement et une lecture
d'un talk
elle doit même être importante
exactement parce que là on a l'exemple
même que au départ
tu faisais ça en à côté
et aujourd'hui t'es payé pour faire ça
et donc c'est devenu
t'as été embauché par la boîte
sur laquelle tu as fait des contributions
et maintenant ils t'ont embauché
c'est énorme
c'est un exemple qui revient souvent
on a eu plusieurs invités qui nous ont
enfin c'était pas eux qui avaient été embauchés mais d'autres
ils avaient embauché des gens qui contribuaient
qui ont intégré dans la société
donc vraiment, vas-y t'es pas
ça faut pas avoir peur
après on ne t'a rien émouvé
tout est bon à prendre, il suffit juste de discuter
et on peut tout faire
il y a des gens même qui écrit
des articles, on a un programme aussi pour cindre
qui peut commencer par écrire des articles
pour essayer de mieux appréhender les problématiques
qui sont liées, essayer d'écrire de la doc
faire des traductions comme tu le disais
faire des petites corrections mineures
dans un premier temps pour essayer de se familiariser
un petit peu avec la code base
parce que la code base ça va être assez vulnérable
et puis ensuite ça viendra
mais ouais, je crois pas que c'était
parfait
oui, c'est le mot open
oui, c'est le mot open carrément
et écoute, Adrien, un grand merci
d'avoir pris le temps de venir discuter avec nous
de parler de Medusa
d'open source, de gestion de la communauté
et tout ça
et super enrichissant
merci Patrick
merci Alex, merci Adrien
merci à tous
merci à tout le coup
retrouvez double slash sur
la plateforme de podcasts préférés
et sur le site internet du podcast
www.slash-podcast.fr
sur le site vous allez retrouver
tous les liens de l'épisode, les références
évoquées durant l'émission
Episode suivant:
Les infos glanées
DoubleSlashPodcast
Double Slash, un podcast sur le développement web. Retrouvez-nous régulièrement pour parler de sujets variés tels que la JAMStack, l’accessibilité, l’écoconception, React.js, Vue.js, Next.js, Nuxt.js, le CSS et des retours d’expériences sur des implémentations.
Tags
Card title
[{'term': 'Technology', 'label': None, 'scheme': None}, {'term': 'Technology', 'label': None, 'scheme': 'http://www.itunes.com/'}]
Go somewhere
Les News pour janvier 2023