Ports and Adapters at compile-time for Rust
Dans ce dépôt, je propose une façon simple et efficace de mettre en œuvre une inversion de dépendances avec Rust. Plus particulièrement lorsque le besoin est de substituer les dépendances lors de la compilation et d'éviter le Dynamic Dispatch. Très u…
Droits et rôles dans une architecture orientée domaine
Le chemin à emprunter en suivant la direction Domain Driven Design (DDD) n’est pas si complexe qu’il n’y paraît. Il requiert, entre autres, de se débarrasser de certains réflexes et idées préconçues. Surtout de la fâcheuse tendance qu’on a de se proj…
La métaphysique des systèmes proudhoniens
Libertaire, Anarchiste, Utopiste, ZADiste, Étudiant (68) … C’est la saison ! Quelle étiquette coller à un système dessiné pour privilégier l’autonomie et l’indépendance de ses composants ? C’est une promenade philosophique, sans conclusion, qui fait …
Meta de la configuration, illustré avec Elixir
La configuration des applications est un (non)sujet qui semble simple à première vue, mais qui n’est pas si bien maîtrisé par les développeurs juniors ou seniors. Build configuration vs Run configuration Attaquons par le fond du problème, sans tourne…
Design stratégique et jeu de Go
Dans l’article précédent nous avons effleuré le concept de design stratégique. La phase indispensable qui consiste à analyser notre système sous l’aspect et dans le référentiel du problème (par opposition à la solution). J’ai insisté sur le fait que…
Pérégrinations vers une architecture découplée
Nous sommes souvent confrontés au problème récurrent de l’entropie et l’érosion du code. Passé un certain stade, il devient très complexe et pénible d’ajouter des fonctionnalités ou correctifs. La dette technique, notre ennemi de toujours, c’est sûre…
J'ai une dette technique et c'est mon choix ! ™
Derrière cette métaphore financière que l’on utilise régulièrement dans notre métier, se cache la mesure de difficulté à ajouter de nouvelles fonctionnalités et correctifs sur un logiciel. Elle se traduit par un surcoût sur les temps de développement…
Le contrôle de droit d'accès et la sécurité de vos systèmes
Sur la quantité d’applications et systèmes d’information que j’ai pu développer, analyser et auditer, une grande majorité présentaient des défauts de sécurité majeurs. C’est un constat assez effarant. Le plus inquiétant est que la gestion des droits …