đ dâun cĂŽtĂ© il a raison. Le mariage entre SQL et les langages de programmation nâa jamais Ă©tĂ© dâune grande Ă©lĂ©gance. Ce mariage ratĂ© depuis 40+ ans Ă mĂȘme donnĂ© naissance Ă quelques horreurs : ORMs et failles SQL injection en tĂȘte.
Jâai Ă©crit il y a longtemps que l'algĂšbre relationnelle est une bien meilleure piste dâintĂ©gration entre data et software engineering quâun calculus comme SQL (lien en commentaire).
đ dâun autre cĂŽtĂ©, on retrouve dans la critique dâUncle Bob cette petite condescendance ordinaire et vielle comme lâinformatique (et Ă laquelle il nous a habituĂ© concernant les bases de donnĂ©es). Dâun cĂŽtĂ© il y aurait les logiciels qui mĂ©ritent un dĂ©veloppeur, et de lâautre, ce vulgaire reporting quâon fait du bout dâun vague terminal.
Sauf que ce point de vue ne passe absolument pas la barre de la critique historique.
1ïžâŁ Dâabord parce que 50% au moins du travail des informaticiens consiste Ă donner la bonne info Ă la bonne personne. Un langage comme SQL permet de faire cela souvent plus vite, plus correctement, et pour moins cher que de payer Bob Ă faire du C ou du Java.
2ïžâŁ Ensuite parce que le modĂšle relationnel et SQL ont Ă©tĂ© inventĂ©s prĂ©cisĂ©ment parce que les programmes COBOL de Bob Ă©taient bourrĂ©s de bugs et avaient un coĂ»t de maintenance prohibitif.
3ïžâŁ TroisiĂšmement, que sâil faut applaudir les agilistes comme Bob dâavoir inventĂ© le TDD (entre autres choses), il faut le faire en observant que la qualitĂ© par les tests double le nombre de lignes de code nĂ©cessaires. Lâinvention de Codd, et SQL dans la foulĂ©e, vise Ă rĂ©duire ce nombre de lignes par 10, et ne mĂ©rite dĂšs lors aucune condescendance.
4ïžâŁ Enfin par principe de rĂ©alitĂ© : la trĂšs trĂšs grande majoritĂ© des systĂšmes que vous utilisez tous les jours sont globalement stables et fiables. Ils le sont entre autres parce que les serveurs de bases de donnĂ©es SQL quâils utilisent sont des merveilles dâingĂ©nierie thĂ©orique et pratique qui nous sauvent, et de trĂšs loin, de la trop frĂ©quente mĂ©diocritĂ© d'un secteur, mĂ©diocritĂ© que Bob commente frĂ©quemment. Ils nous sauvent par exemple en ne perdant quasi jamais les donnĂ©es : ni lors d'incidents, ni au fil du temps, alors que les langages de programmations et les frameworks Ă la mode, eux, vont et viennent autant que leurs dĂ©veloppeurs.
#SQL #History #SoftwareEngineering