LCC 290 - Mettre tes lunettes dans ta base de données
Guillaume et Arnaud discutent de tech en cette nouvelle année 2023. GraalVM dans OpenJDK, Rust, Webassembly, containers. postgres, ChatGPT, le rôle de l’architecte et la ribambelle de rétrospective 2022.
Enregistré le 13 janvier 2023
Téléchargement de l’épisode LesCastCodeurs-Episode-290.mp3
News
Langages
OpenJDK propose le projet Galahad pour fusionner dans OpenJDK certaines parties de GraalVM community edition https://www.infoq.com/news/2022/12/openjdk-galahad-Dec22/
Alex Snaps partage un article sur Rust pour le développeur Java https://wcgw.dev/posts/2023/rusty-java-intro/
- Basé sur son talk sur le même thème qu’il a déjà présenté à Devoxx Maroc et Belgique.
- Alex a également écrit une deuxième partie faisant suite à son article, dans lequel il parle un peu plus d’ownership, de borrowing, du trait Drop, etc. (c.-à-d. sur la gestion mémoire).
- https://wcgw.dev/posts/2023/rusty-java-2/
Google a sorti sa formation interne sur Rust en libre accès https://google.github.io/comprehensive-rust/
Paul King du projet Apache Groovy partage sa rétrospective de l’année 2022 https://blogs.apache.org/groovy/entry/apache-groovy-2022-year-in
Webassembly pour le développeur Java https://www.javaadvent.com/2022/12/webassembly-for-the-java-geek.html
Un article assez critique sur TypeScript https://dev.to/wiseai/17-compelling-reasons-to-start-ditching-typescript-now-249b
- On voit souvent des articles plutôt positifs sur TypeScript, mais est-ce que tout est tout rose tout le temps, pas forcément !
- L’article cite 17 problèmes avec TypeScript, dont la courbe d’apprentissage, la baisse de productivité, la verbosité des types, le manque de flexibilité, le fait que ce n’est pas vraiment un sur-ensemble de JavaScript, la lenteur du temps de compilation…
Librairies
Sortie du Micronaut 3.8 https://micronaut.io/2022/12/27/micronaut-framework-3-8-0-released/
- support de GraalVM 22.3.0,
- possibilité d’annoter les records avec
@RequestBean
(pour binder les paramètres de requête et autre, aux paramètres de la méthode du controller), - amélioration du CorsFilter pour éviter certaines attaques,
- également des améliorations sur le support de CRaC (Coordinated Restore at Checkpoint),
- et plein d’autres upgrades de versions, nouveaux plugins et améliorations mineures.
Swing n’est pas mort ! Un nouveau DSL Java open source pour Swing dénommé Sierra, pour faciliter la création d’interfaces graphiques Swing https://github.com/HTTP-RPC/Sierra
Infrastructure
Comprendre root
dans et en dehors des conteneurs https://www.redhat.com/en/blog/understanding-root-inside-and-outside-container
- Un article pas récent, mais utile.
- Qu’est-ce qu’un conteneur rootless ?
- On peut être
root
et lancer le moteur de conteneur. - On peut être
root
dans le conteneur lui-même. - Quand on exécute en
root
le moteur, l’utilisateur extérieur et intérieur sont mappés (même numéro d’UID) ; par contre en non-root
, l’UID de l’utilisateur du conteneur est mappé sur un nouvel UID - C’est top, car les utilisateurs dedans et dehors ne sont pas mappés, donc moins de risque en cas de sortie de bac à sable (sandbox escape).
- C’est le cas pour podman, mais pour docker il y a un ajout : docker a un démon (root ou pas) et une CLI qui appelle ce demon (root ou pas). Ce qui importe, c’est le demon pour les risques de sécu.
- L’idéal, c’est d’exécuter en non-root le moteur et d’être non-root dans le conteneur (même si encore beaucoup d’images s’attendent à être root les folles).
Cloud
Kubernetes 1.26 avec notamment une de corrélation de l’hébergement de la Registry par Google https://www.infoq.com/news/2022/12/kubernetes-1-26/?utm_campaign=infoq_content&utm_source=twitter&utm_medium=feed&utm_term=Devops
Web
Evan You, le créateur de Vue.js revient sur l’année 2022 https://blog.vuejs.org/posts/2022-year-in-review.html
- C’est la grande migration de Vue 2 vers Vue 3.
- Migration de l’API Composition de Vue 3 vers l’API Options de Vue 2 (mais supportée encore en 3).
- La documentation de Vue propose Vue 3 par défaut depuis février.
- Pendant la phase de transition, gros focus sur l’outillage et l’expérience développeur.
- L’écosystème a bien adopté Vue 3 et continue de le faire au fur et à mesure.
- Pour 2023, espère faire plus de releases mineures régulières et travail sur le “vapor mode” qui propose une stratégie de compilation plus rapide.
Data
Un article de Stephan Schmidt qui suggère d’utiliser PostgreSQL… pour tout ! https://www.amazingcto.com/postgres-for-everything/
- pour du caching à la place de REDIS,
- comme une queue de messages,
- pour stocker des documents JSON au lieu de MongoDB,
- pour faire des requêtes géo-spatiales,
- pour le full-text search à la place d’ElasticSearch,
- pour générer du JSON directement en base,
- comme stockage / adaptateur pour GraphQL ou pour Timescale (base de données time-series).
Outillage
ChatGPT en action sur le design d’un nouveau langage de programmation https://judehunter.dev/blog/chatgpt-helped-me-design-a-brand-new-programming-language
ChatGPT, on lui attribue plus de magie qu’il n’en a https://arxiv.org/pdf/2212.03551.pdf
Github rajoute le scan des secrets dans vos repos publics aussi https://github.blog/2022-12-15-leaked-a-secret-check-your-github-alerts-for-free/
- ça n’est plus seulement pour les organisations des entreprises,
- aussi accessible pour les repos publics,
- permet d’éviter de leaker des clés d’API et autre.
Les nouveautés de Java sur Visual Studio Code https://foojay.io/today/java-on-visual-studio-code-update-december-2022/
- améliorations visuelles pour les extensions Spring Boot et aussi pour la visualisation de la mémoire utilisée,
- complétion “post-fix” comme dans IntelliJ,
- plus de raccourcis pour générer du code,
- support de Lombok intégré,
- support de l’annotation processing de Gradle,
- meilleure visualisation des erreurs de build,
- 2 millions de développeurs utilisent Visual Studio Code pour Java.
Encore un guide pour sortir de Vi https://thevaluable.dev/vim-advanced/
Le client HTTP de IntelliJ peut maintenant être utilisé en ligne de commande et dans un environnement d’intégration continue https://blog.jetbrains.com/idea/2022/12/http-client-cli-run-requests-and-tests-on-ci/
Architecture
L’évolution du rôle de l’architecte https://www.infoq.com/articles/architecture-architecting-role/
Le (très long) rapport des tendances 2023 par Didier Girard et Olivier Rafal https://www.linkedin.com/pulse/rapport-tendances-2023-didier-girard/?trackingId=wu9pJ4wNQAOKjh11R2UyjA%3D%3D
- un prisme tech/orga/culture pour préparer l’entreprise aux enjeux,
- un prisme produits/plateformes/data pour structurer notre approche d’un SI moderne,
- couvre des tonnes de sujets de l’intelligence artificielle, les données, le cloud, le web1/2/3, mais aussi l’organisation des équipes, les rôles, etc.
Loi, société et organisation
Twitter n’apprécie guère Mastodon, et bride les tweets avec des liens vers Mastodon. La liberté d’expression façon Elon Musk ! https://twitter.com/bluxte/status/1603656787097534464
- Statement de Mastodon sur le fait que Twitter bannit les liens vers Mastodon https://blog.joinmastodon.org/2022/12/twitter-suspends-mastodon-account-prevents-sharing-links/
- Et finalement Twitter est revenu en arrière sur son changement des conditions d’utilisation
Dans la famille “les informaticiens ont des super-passions”, je voudrais Cédric Champeau, qui nous fait une magnifique rétrospective de ces clichés d’astrophotographie https://melix.github.io/blog//2022/12/astrophoto-2022.html
Conférences
La liste des conférences provenant de Developers Conferences Agenda/List par Aurélie Vache et contributeurs :
- 19 janvier 2023 : Archilocus - Bordeaux (France)
- 19-20 janvier 2023 : Touraine Tech - Tours (France)
- 25-28 janvier 2023 : SnowCamp - Grenoble (France)
- 31 janvier 2023 : Duck Conf - Paris (France)
- 2 février 2023 : Very Tech Trip - Paris (France)
- 2 février 2023 : AgiLeMans - Le Mans (France)
- 9-11 février 2023 : World AI Cannes Festival - Cannes (France)
- 16-19 février 2023 : PyConFR - Bordeaux (France)
- 7 mars 2023 : Kubernetes Community Days France - Paris (France)
- 23-24 mars 2023 : SymfonyLive Paris - Paris (France)
- 23-24 mars 2023 : Agile Niort - Niort (France)
- 1-2 avril 2023 : JdLL - Lyon 3e (France)
- 5-7 avril 2023 : FIC - Lille Grand Palais (France)
- 12-14 avril 2023 : Devoxx France - Paris (France)
- 20-21 avril 2023 : Toulouse Hacking Convention 2023 - Toulouse (France)
- 4-6 mai 2023 : Devoxx Greece - Athens (Greece)
- 10-12 mai 2023 : Devoxx UK - London (UK)
- 12 mai 2023 : AFUP Day - lle & Lyon (France)
- 25-26 mai 2023 : Newcrafts Paris - Paris (France)
- 26 mai 2023 : Devfest Lille - Lille (France)
- 27 mai 2023 : Polycloud - Montpellier (France)
- 7 juin 2023 : Serverless Days Paris - Paris (France)
- 15-16 juin 2023 : Le Camping des Speakers - Baden (France)
- 29-30 juin 2023 : Sunny Tech - Montpellier (France)
- 19 septembre 2023 : Salon de la Data Nantes - Nantes (France) & Online
- 21-22 septembre 2023 : API Platform Conference - Lille (France) & Online
- 2-6 octobre 2023 : Devoxx Belgium - Antwerp (Belgium)
- 12 octobre 2023 : Cloud Nord - Lille (France)
- 12-13 octobre 2023 : Volcamp 2023 - Clermont-Ferrand (France)
- 6-7 décembre 2023 : Open Source Experience - Paris (France)
Nous contacter
Pour réagir à cet épisode, venez discuter sur le groupe Google https://groups.google.com/group/lescastcodeurs
Contactez-nous via twitter https://twitter.com/lescastcodeurs
Faire un crowdcast ou une crowdquestion
Soutenez Les Cast Codeurs sur Patreon https://www.patreon.com/LesCastCodeurs
Tous les épisodes et toutes les infos sur https://lescastcodeurs.com/