Le blog de l'équipe

Le blog est un espace numérique où chacun des membres de WanadevDigital et de WanadevStudio est libre de publier ses résultats de recherche, son actu et ses retours d'expériences.

Tous les articles de type: bonnes pratiques

Couverture de l'article Revue de code : rester responsable à l'ère de l'IA
Revue de code : rester responsable à l'ère de l'IA

Il y a 2 jours

L'automatisation des revues de code par l'IA offre un gain de temps précieux, mais risque de diluer la responsabilité technique des développeurs. De la préparation de remarques en brouillon à la validation humaine, retour sur les bonnes pratiques fondamentales pour conserver des revues de code pertinentes, formatrices et maîtrisées. L'article est disponible en anglais sur Medium.

Couverture de l'article Comment partager vos rules entre tous vos projets (sans les copier-coller) ?
Comment partager vos rules entre tous vos projets (sans les copier-coller) ?
Développement

Il y a 2 semaines

Dans les deux premiers articles, on a vu ce qu'était une rule et comment créer les vôtres. À la fin du deuxième, il restait deux questions : comment choisir entre les bonnes pratiques que vous voulez mettre en place et l'existant qui ne les respecte pas ? Et une fois le choix fait, comment savoir si une règle est respectée dans votre code ?

Dans cet article, on va voir comment on a répondu à ces deux questions avec un plugin, et comment vous pouvez construire le vôtre.

Article 3/3 de la série Wana-Rules

Temps de lecture : ~7 min

Couverture de l'article Complexité cognitive des algorithmes via le référentiel SonarQube
Complexité cognitive des algorithmes via le référentiel SonarQube

Il y a 3 semaines

Découvrez la complexité cognitive selon SonarQube : comment mesurer, réduire et maîtriser la lisibilité de vos fonctions avec des exemples concrets.

Couverture de l'article Comment créer vos premières rules pour Claude Code ? (sans les écrire de tête)
Comment créer vos premières rules pour Claude Code ? (sans les écrire de tête)
Développement

Il y a 2 mois

Dans le précédent article, on a vu ce qu'étaient les rules, où les positionner et surtout à quoi elles servent. Si vous ne l'avez pas lu, je vous invite à le faire avant de lire celui-ci.

Restait une question : ces règles, d'où sortent-elles ? Le réflexe serait de les écrire de tête. Mauvaise idée : de tête, vous obtiendrez des règles génériques que Claude connaît déjà, et vous passerez à côté de celles qui font vraiment votre façon de travailler. Vos règles existent déjà : dans votre code, vos reviews, vos réunions.

Dans cet article, on va voir comment on les a extraites chez Wanadev, et comment vous pouvez le faire à votre tour.

Article 2/3 de la série Wana-Rules

Temps de lecture : ~8 min

Couverture de l'article Pourquoi l'IA n'écrit-elle pas du code comme vous ? (et comment le lui apprendre)
Pourquoi l'IA n'écrit-elle pas du code comme vous ? (et comment le lui apprendre)
Développement

Il y a 2 mois

Vous utilisez Claude, mais vous avez souvent des retouches à faire pour qu'il respecte votre manière de faire. Les mêmes remarques reviennent en boucle à la review : « on ne nomme pas les types comme ça ici », « pas de valeur magique », « ce n'est pas notre façon de découper les composants ». Vous corrigez, vous re-promptez, et la semaine suivante, rebelote.

Les rules sont un mécanisme intégré à Claude pour limiter ces allers-retours. Dans cet article, on va voir ce qu'est une règle, à quoi ça sert et comment en écrire.

Article 1/3 de la série Wana-Rules

Temps de lecture : ~4 min

Couverture de l'article Petit Mariage Entre Amis : bousculer la personnalisation print en ligne par l’édition 2D et 3D
Petit Mariage Entre Amis : bousculer la personnalisation print en ligne par l’édition 2D et 3D

Il y a 3 mois

Plongez dans les coulisses de notre collaboration avec Petit Mariage Entre Amis, référence des objets et papeterie personnalisés depuis 15 ans. Pour répondre à leurs ambitions, nos équipes ont imaginé un configurateur 2D/3D web flexible capable de gérer un gros volume de produits et templates. R&D, interconnexion technique et témoignages : Tim, Damien et Antoine vous racontent comment nous avons transformé une idée de départ en une solution robuste et industrialisée.

Couverture de l'article La troisième voie : notre stratégie face à un marché qui bascule
La troisième voie : notre stratégie face à un marché qui bascule
Entreprise

Il y a 3 mois

Pendant des années, notre engagement s'est porté sur le tout sur-mesure. Nous avons aimé cette manière de travailler, et nos clients avec nous. Des projets menés au long cours, des fonctionnalités façonnées une à une, avec le soin que l'on réserve à un objet rare. C'était une prestation haut de gamme pour des ambitions qui ne l'étaient pas moins, et sans doute notre plus beau savoir-faire. Mais le marché change, les technologies aussi, et nous devons revoir notre copie sans attendre. Conserver la même connaissance métier, la même exigence de qualité, tout en repensant nos outils et notre façon de développer. Faire passer la technique au second plan pour ne donner à voir que ce qui compte vraiment : la solution finale, le produit que nos clients auront entre les mains. N'est-ce pas là l'essentiel ?

Couverture de l'article RAJA : industrialiser la personnalisation produit à grande échelle
RAJA : industrialiser la personnalisation produit à grande échelle

Il y a 8 mois

Comment transformer un configurateur 3D en véritable outil industriel ?

Pour un leader européen comme RAJA, la personnalisation produit ne peut pas reposer sur des traitements manuels ou des approximations techniques. Avec RAJA Print 2.0, l’enjeu était clair : automatiser l’ensemble de la chaîne web-to-print, de la personnalisation en ligne jusqu’au fichier d’impression exploitable par les imprimeurs. Dans cet article, nous revenons sur un projet structurant, à la croisée de la 3D, du traitement d’image et de l’industrialisation digitale.

Couverture de l'article Event Bus : Le secret d'une architecture Symfony réellement découplée
Event Bus : Le secret d'une architecture Symfony réellement découplée

Il y a 9 mois

Imaginez : votre utilisateur clique sur "Commander". En coulisses, le domaine Stock doit décrémenter les quantités, le domaine Facturation doit générer une facture, et le domaine Notification doit envoyer un email de confirmation. Trois domaines, une seule action... et un spaghetti de dépendances en perspective. 🍝

Et si ces domaines pouvaient collaborer sans jamais se connaître ?

C'est exactement ce que permet l'Event Bus. Mais avant de foncer tête baissée, une question se pose : Symfony propose déjà l'EventDispatcher pour gérer les événements. Alors pourquoi introduire un nouveau concept ?

Spoiler : ce ne sont pas les mêmes outils, et les confondre peut vous coûter cher.

Dans cet article, nous allons démystifier leurs différences et découvrir comment l'Event Bus de Symfony Messenger vous permet de construire une architecture réellement découplée.

Ce que vous allez apprendre :

  • Les différences fondamentales entre EventDispatcher et Event Bus
  • Quand utiliser l'un plutôt que l'autre
  • Comment configurer un Event Bus avec Symfony Messenger
  • Créer une architecture événementielle découplée
Couverture de l'article CQRS avec Symfony Messenger : Domptez la complexité de vos applications
CQRS avec Symfony Messenger : Domptez la complexité de vos applications

Il y a 9 mois

Vous êtes-vous déjà retrouvé face à un controller Symfony surchargé qui gère à la fois la validation, la logique métier, la persistence et les réponses HTTP ? Si oui, le CQRS est fait pour vous !

Le CQRS (Command Query Responsibility Segregation) est un pattern architectural qui sépare clairement les opérations d'écriture (Commands) et de lecture (Queries). Combiné avec Symfony Messenger, il vous permet de :

  • Organiser votre code de manière claire et maintenable
  • Séparer les responsabilités pour respecter les principes SOLID
  • Valider vos données avant même qu'elles n'atteignent votre logique métier
  • Gérer les transactions de base de données de manière élégante
  • Préparer votre application pour l'asynchrone sans effort

Dans cet article, nous allons explorer les Commands (écriture) et les Queries (lecture) à travers un exemple concret de gestion de bibliothèque.