Veille de la semaine - 2 janvier 2023
Du PHP, de la culture générale, un peu de CI / CD mais aussi de la base de données, le programme de ce début d'année se veut simple et léger, on s'y met ?
Bien le bonjour à tous et à toutes, j’espère que tout le monde va bien, avant d’aller plus loin, je profite de cette première itération pour vous souhaiter encore une fois une très bonne année 2023, la santé, tout le reste, vous avez l’habitude.
Pour cette première itération de la veille de la semaine, j’ai pris la décision de rassembler quelques liens glanés durant les vacances ainsi que quelques liens trouvés durant la semaine, cette semaine est donc plus légère qu’à l’accoutumée mais vous devriez y trouver quelques pépites, lançons-nous.
On commence donc par la culture générale et par un très bon article sur pourquoi nous cherchons surtout à découper nos applications en modules et non en “services”, si vous êtes à l’aise avec le concept de Clean Architecture (ou Architecture Hexagonale), cela devrait vous parler et vous devriez y voir un parallèle avec le concept de boundaries et de découpage des responsabilités (les principes SOLID s’y prêtent aussi), dans le cas contraire, je vous laisse vous documenter à ce sujet via le lien “officiel”.
A noter aussi un très bon article sur la définition des attentes pour chaque profil et l’intégration / usage de personne au profil en T, une très bonne idée dans les équipes où la gestion des responsabilités est complexe.
Culture générale
Du côté du cloud computing, on se concentre sur une seule ressource et notamment sur la stack souvent utilisée dans les projets en microservices (ou modules comme indiqué plus haut), vous devriez vous y retrouver facilement si vous avez déjà fait face à ce type de projet, dans le cas contraire, n’hésitez pas à explorer la façon dont les données transitent entre chaque bloc afin d’en savoir plus.
Cloud computing
On continue avec la base de données et notamment avec le support du mode WAL sur LiteFS (un indispensable), un très bon article sur l’usage d’un trop grand nombre d’indexes (vous devriez éviter) ainsi que Slashbase, un IDE via vos navigateurs pour gérer vos applications sous PostgreSQL / MongoDB
Base de données
Du côté de la CI / CD, CircleCI a émis une alerte concernant une faille de leur côté, si jamais vous avez des pipelines sur leur infrastructure, vous devriez mettre à jour vos variables d’environnement.
A noter aussi une série de “best practices” concernant les pipelines de vos CI, les points remontés seront pour certain(e)s des “tartes à la crème” mais il est toujours utile de les rappeler.
CI / CD
CircleCI issued a security alert (@Maxime)
On arrive à PHP et plusieurs liens ont retenu mon attention cette semaine, le premier se concentre sur la complexité cognitive de vos codes, en dehors de quelques outils en ligne, il existait peu d’outils “open-source” pour analyser tout ceci, via l’extension PHPStan, l’analyse fait relativement vite et la configuration est relativement simple.
Info utile, PHP 8.1 n’est pas encore supporté.
On continue avec un article indispensable sur l’usage de PHP dans un environnement WASM / WASI afin de lancer PHP via WASM, vous devriez réellement y jeter un oeil.
Je termine avec Ara, un langage “prototype” qui peut être compilé vers PHP (il avait été teasé sur Twitter il y a peu), ce dernier est basé sur Rust (le parser est écrit en Rust) et propose notamment le support des génériques, si vous voulez voir tout ceci à l’oeuvre, n’hésitez pas l’essayer.
PHP
Using PHP in Docker without containers thanks to WebAssembly
Ara, a statically typed programming language that compile directly to PHP
Du côté de Rust, on reste simple et on découvre le language via un très bon “tutoriel” écrit par l’équipe Android, les exemples sont très bons et très concrets, si vous cherchiez un point d’entrée, ne cherchez plus.
Rust
Du côté de Go, un article sur les arguments que nous continuons à nous vendre pour utiliser Go alors que d’autres solutions existent, certains points sont ouverts à débat mais le coeur de l’article reste une très bonne façon de vous questionnez sur l’usage réel que vous avez de Go.
Go
On finit avec les outils et notamment GlitchTip, un tracker d’erreur open-source et relativement simple, à noter aussi Codeium qui se veut une alternative “gratuite pour le moment” à Github Copilot ainsi que CanaryTokens qui permet d’être notifié selon certaines actions sur vos applications / Urls.
Outils
Bref, je vous laisse lire tout ceci au calme et je vous donne rendez-vous dès la semaine prochaine pour la nouvelle édition de la veille, d’ici là, passez un très bon week-end ainsi qu’une très bonne semaine.
A vendredi, même heure, même endroit.