"DevOps" est le plan astucieux des responsables des opérations pour obliger les développeurs Java à faire le travail des autres, mais nous sommes assez intelligents pour voir clair dans cette astuce naïve de rebranding !
Baruch vous suggère d'y réfléchir : nous, les développeurs Java, avons écrit tout le code. Il passe tous les tests ; cela fonctionne évidemment et fonctionne bien (Sommes-nous un peu fiers ? Nous le sommes !) ; donc nous avons terminé.
Maintenant, à l'improviste, un groupe de « leaders d'opinion » (tous ayant une expérience en opérations, remarquez !) essaient de nous dire que nous devons apprendre YAML, Docker, Kubernetes et Terraform pour déployer notre logiciel parce que tout d'un coup, il est notre préoccupation ?!
Dans cet exposé, nous verrons pourquoi les développeurs Java ont ou n'ont pas besoin de DevOps. Nous examinerons les arguments avancés par les visionnaires du DevOps et verrons s’ils tiennent la route. Espérons qu'à la fin de l'exposé, nous comprendrons si DevOps aide réellement les développeurs Java à déployer plus souvent un meilleur code en production ou s'il s'agit simplement d'une autre arnaque inventée par le marketing et les évangélistes.
Malgré une saison automnale tranquille au niveau du JUG de Québec, nous avons plusieurs projets sur la planche pour l'année 2023.
La prochaine version de Java est due pour le 21 mars 2023, on devrait y voir de nouvelles fonctionnalités telles que :
"scoped values" qui permet de partager des valeurs immuables entre les threads.
"virtual thread" qui permet la création de "threads légérs" qui facilitent la maintenance et l'observation des applications utilisant un large volume de threads.
Concurrence structurée : permets de simplifier la programmation en multi-threads.
Pour en savoir plus, vous pouvez lire : https://www.infoworld.com/article/3676699/jdk-20-the-new-features-in-java-20.html
Encore une fois cette année, le calendrier de l'avent Java était en ligne tout le mois de décembre, les informations sont encore disponibles (probablement toute l'année). Si vous voulez découvrir des articles intéressants sur Java allez :
https://www.javaadvent.com/calendar
Sur ce, Bonne année et on se souhaite des activités intéressantes au JUG cette année!
La saison des conférences est en route !
Les conférences J4K ont eût lieu la semaine passé! Ce sont des conférences intéressantes si vous voulez entendre parler de cloud-native Java. Plusieurs des présentations sont rendues sur leur canal youtube : https://www.youtube.com/channel/UCC-iQ5mH3BymvahUP56DqHg/featured
JavaOne est de retour cette année les du 17 au 20 Octobre à Las Vegas, des passes virtuelles sont offertes pour les gens qui ne veulent/peuvent pas voyager. https://www.oracle.com/cloudworld/register/
KubeCon + CloudNativeCon auront lieu du 24 au 28 Octobre, le prix est peu élever (75$ pour accéder aux conférences en virtuel). Pour ceux qui veulent entendre parler de Kubernetes et de solutions de logiciel libre : https://events.linuxfoundation.org/kubecon-cloudnativecon-north-america/
JakartaOne LiveStreams arrive le 6 décembre, conférences gratuites où on parle beaucoup de standard JEE. https://www.crowdcast.io/e/Dec_06_JakartaOneLivestream/register
La nouvelle version de Java, Java 19 est toute fraîche sortie, pour aller voir les nouveautés https://www.infoworld.com/article/3674993/jdk-20-whats-next-for-java.html
Un rapport sur l'efficacité énergétiques des différents langages de programmation est sortit ce été, dans le top 5 dans langages les plus efficaces, 4 sont des languages compilés, le seul langage "interprété" qui a ressortit dans le top 5 : Java! Pour voir le rapport (et les sources) c'est ici : https://thenewstack.io/which-programming-languages-use-the-least-electricity/
En vacances!
Bonjour tout le monde! Le comité organisateur du JUG sera en vacances jusqu'au mois de septembre, nous vous souhaitons un bel été et beaucoup de plaisir. En attendant, voici quelques nouvelles du monde Java:
Voici un apperçu de la prochaine release de Java 20 : Java Release 20
Sortie du Bootiful podcast le 20 Juin : Bootiful podcast
Pulumi ajoute (enfin) Java à sa liste de langages supportés : Pulumi ajoute Java
La nouvelle édition du Java Magazine est sortie le 7 juillet :Java Magazine
Nouvelle release de OpenLiberty : OpenLiberty 22.0.0.7
Bonne Lecture et bon été!
Le prochain événement du Java User Group de Québec nous sera présenté par Ticketmaster!
Avec l’avènement du cloud, il est devenu de plus en plus simple de déployer des microservices à grande échelle pour répondre à la demande de dizaines de milliers de clients. Par contre, plusieurs défis s’imposent! Le coût, la résilience, l’observabilité et l’utilisation judicieuse des ressources en font partie. Avec son long historique, Java est en mesure de répondre à ces problématiques et nous explorerons des pistes de solution répondant à trois critères: la simplicité, la familiarité et surtout, le pragmatisme. Nous verrons, entre autres, comment les nouveaux développements du framework Spring nous permettent de créer des applications Cloud Native et réactives, prêtes à être installées sur un cluster Kubernetes.
Pour s'inscrire, suivez le lien suivant : https://www.eventbrite.ca/e/billets-java-a-grande-echelle-290369672507
Premièrement, inscrivez-vous aux JConf 2021, c'Est le 9 décembre, et c'est gratuit et en ligne!
Allez voir le calendrier de l'avent de Java :
https://www.javaadvent.com/calendar
Les nouvelles du Java de InfoQ sont toujours intéressantes à lire :
https://www.infoq.com/news/2021/11/java-news-roundup-oct25-2021/
Et finalement, un petit article intéressant que j'ai lu dernièrement sur la sous-publicisation du Java :
https://jackson.sh/posts/2021-04-java-underrated/
Depuis vendredi, c'est le branle-bas de combat partout à cause d'une vulnérabilité de log4j2, pour les version inférieures à (ou égale à) 2.14.0. Voici un peu d'informations sur la vulnérabilité.
https://www.infoq.com/news/2021/12/log4j-zero-day-vulnerability/
https://research.nccgroup.com/2021/12/12/log4j-jndi-be-gone-a-simple-mitigation-for-cve-2021-44228/
https://logging.apache.org/log4j/2.x/security.html
Heureusement, le problème est relativement facile à corriger :
1- Mettre à jours la version de log4j à 2.16
2- Si la librairie de log4j est à au moins 2.10, mettre la variable d'environnement LOG4J_FORMAT_MSG_NO_LOOKUPS=true sur le serveur ou ajouter la propriété système log4j2.formatMsgNoLookups. Par-contre, cette solution ne protège pas contre toute les formes de l'attaque.
3- Enlever jndiLookup du classpath : zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class
4- Mitiger par firewall.
5- Si on utilise kubernetes, on peut mitiger par "Network Policies" : https://sysdig.com/blog/mitigating-log4j-kubernetes-network-policies/
Bonjour!
Le mois d'octobre a été très prolifique pour le java et le cloud en général
1- le RHUG de Québec (Red Hat user group) a eu lieu. Beaucoup d'informations Kubernetes / OpenShift, entre autre, une présentation de notre ami Félix Roberge sur Tekton, un outil de CI/CD natif au cloud : https://people.redhat.com/mlessard/qc/
2- Les conférences J4K deuxième partie ont eu lieu. Pleins d'information sur Java dans le nuage on a entendu parler de Quarkus, Micronaut, Spring et naturellement Kubernetes.
Leur Chanel YouTube : https://www.youtube.com/channel/UCC-iQ5mH3BymvahUP56DqHg
3- Les conférences Kubecon + CloudNativeCon ont été toute la semaine passée. Beaucoup d'informations sur la sécurité de kubernetes : https://www.youtube.com/c/cloudnativefdn/featured
Érik Piché a assisté à l'événement "Java Innovation" d’Oracle.
Fait à noter : le support gratuit de Java est maintenant prolongé de 6 mois à 3 ans, c’est-à-dire jusqu’à la prochaine version LTS + 1 an. De plus, le support de Java8 lui est prolongé jusqu’en mai 2026 et il ne serait pas surprenant qu’il soit prolongé à nouveau éventuellement.
Après le langage en tant que tel, il y avait des conférences sur les développements modernes que voici :
* Helidon et Verrazzano : pour le développement et le déploiement rapide de microservices dans un conteneur Kubernetes du Cloud d’Oracle.
* GraalVM and Micronaut : pour le développement de microservices « cloud native » sur le Cloud d’Oracle.
Voici une petite introduction sur ces technologies en particulier :
* Helidon (OpenSource) : provides a development environment library rich with standardized APIs such as Jakarta EE and MicroProfile for POJOs, REST services, CDI, object storage, and more.
* Verrazzano (Oracle) : a hybrid multi-cloud Kubernetes based Enterprise Container Platform for running both cloud-native and traditional applications.
* GraalVM (Oracle) : GraalVM native image offers a perfect deployment platform for the cloud—enabling fast startups, low memory footprint, and instant performance.
* Micronaut (OpenSource) : a modern framework for creating lightweight microservice and serverless applications.
Je vous invite à aller voir le Keynote de « Java Innovation » sur YouTube, il s’agit d’une bonne vue d’ensemble de l’ensemble de l’oeuvre :
https://www.youtube.com/watch?v=yZxod_iD0ig
Pour les changements au langage en tant que tel, allez voir la présentation du JUG de Montréal:
https://www.youtube.com/watch?v=L5iiNy2tccU
Pour finir, je vous invite à visionner les « teasers » de JavaZone. Mon préféré, c’est “Game of code” mais j’ai bien aimé aussi “Stranger Strings” :-).
Javapocalypse: https://www.youtube.com/watch?v=E3418SeWZfQ
Stranger Strings: https://www.youtube.com/watch?v=EAH3i6l8PbY
Game of code: https://www.youtube.com/watch?v=3vI_7os2V_o
La nouvelle version LTS de Java sort ce 14 septembre, plusieurs nouvelles fonctionnalités sont attendues. Dont en voici une liste :
JEP 382: New macOS Rendering Pipeline
JEP 391: macOS/AArch64 Port
JEP 398: Deprecate the Applet API for Removal
JEP 403: Strongly Encapsulate JDK Internals
JEP 407: Remove RMI Activation
JEP 409: Sealed Classes
JEP 414: Vector API (Second Incubator)
Pour en savoir plus, nous vous invitons à venir voir la présentation de Henri Tremblay, Président du JUG de Montréal et premier Java Champion du Québec au JUG de Montréal : https://www.montreal-jug.org/meetup/java-17/
Nous ferons une activité spéciale pour l'automne au JUG de Québec, restés connectés pour savoir les détails!
Titre: Accélérer votre développement Java avec Quarkus et Openshift
Venez explorer ce que signifie développer en “Cloud Native”; les raisons justifiant pourquoi Java ne semblait pas être adapté à cette nouvelle réalité; et comment, grâce à Quarkus, Java est en voie de reprendre sa place dans le marché.
Dans une session de “live coding” en utilisant Openshift, nous démontrerons comment Quarkus peut aider les développeurs à augmenter leur productivité en optimisant leurs connaissances de Java. Nous verrons comment Quarkus permet de bénéficier des environnements cloud comme Openshift – autant en container qu’en “serverless”.
Vous pouvez vous inscrire sur eventbrite : https://www.eventbrite.ca/e/157985782729