Les Cast Codeurs Podcast: LCC 227 - Télétravailler une corona dans une main et un gamin dans l'autre
3/17/20 - Episode Page
Cet épisode parle du coronavirus, des conférences annulées, de la popularité des langages, de GraphQL, de Ghostcat et pleins d’autres choses encore. L’intro date un peu: les infos sur le coronavirus étant encore plus fréquentes que les nouveaux framework JavaScript.
Enregistré le 13 mars 2020
Téléchargement de l’épisode LesCastCodeurs-Episode–227.mp3
News Corona virus
Les actions des grosses boites
pas de meeting conf annulées limite du travail au bureau Langages
RedMonk ranking - Le langage au top est…
JavaScript Python Java Typescript dans le top 10 R monte Rust stable comme Go (+1) Kotlin 19, Scala 13
Java 8 le plus déployé en prod, 25% Java 11 et non LTS derrière Spring 60–80% IntelliJ 60–80%, Eclipse 20–25% mavenjvs Gradle 66–33 ou 50–50
7 ans de dev not binary compatible with 0.6 nor 1.0RCx Ecrire en scala des applications front interop avec les libraries JavaScript
GraalVM se dote d’un advisory board
Gluon, Red Hat, Amazon, Microdoc, Shopify, Twitter, OCI, Neo4J, Pivotal, ARM et Oracle bien sûr
Gros round d’investissement dans Azul
investissement / achat: 340 M$ Librairies
Eclipse MicroProfile GraphQL 1.0
GraphQL: spec pour generaliser les endpoints en leur donnat lflexibilite en terme de requetage et graph retourné make GraphSQL schema available execute GraphQL requests code first approach
Apache Camel 3.1 et 3.0 déprécié Le guide de migration de Camel
amélioration de mémoire
Lightbend recoit 25M d’investissement
de Dell capital pour la partie reactive spécifiquement pour le “serverless” pas de mention de Scala
OPTIONNEL LightBend - Article sur pourquoi une architecture reactive est importante pour le cloud native
bonne piqure de rappel data localisée par microservice les avantages des systèmes event based Middleware
ElasticSearch en prod, les choses a savoir
les concepts de base (Clusters, Nodes, Indices and Shards) Quorum comment des noeuds rejoingnent le cluster segments et le merge gestion de la memoire (compressed pointers /!\ inversé, 30GB, 2x memoire sur la machine par rapport au heap) voir https://stackoverflow.com/questions/25120546/trick-behind-jvms-compressed-oops#25120926 options par workload (write heavy vs read heavy topology monitoring Infrastructure
La M&A de have i been p0wned: l’histoire de l’abandon
societe KPMG due diligence des milliards de questions les doutes exclusivité le risque du changement de stratégie Cloud
Les gens ralent car les clusters GKE vont avoir un cout de management de 10c/heure, ce qui change la relation du cluster au développeur (nombre de clusters en parallèle) Une comparaison des prix des clusters en fonction de leur taille et de leur host provider
Amazon annonce Bottlerocket
Mise a jour par image recrée plutôt que par package mis a jour plus immuable et donc facile en rollback par contre chaque host goes down et up si orchestrateur c’est ok Outillage
un IDE pour le big data! deja integration avec Zeppelin S3 nouveau Spark, HDFS, Paquet Architecture
Les systèmes simples ont moins de downtime
facile à comprendre, facile à corriger plus rapide de monter en competence trouver la cause est plus rapide solutions simples, plus d’alternatives disponibles regles: les fonctionalités de justifient pas la complexité, les idées complexes amènent des implémentations complexes, modifier avant d’ajouter challenge de l’automation pour faire avec moins de gens?
OPTIONNEL 11 raisons pour lesquelles vous allez rater vos microservices
voir les titres de section
OPTIONNEL Retour d’experience sur l’usage incorrect d’un outil bloom filters
probleme idéal pour bloom filters mais suspicieusement plus long que prévu profilers random access memory >> sequential reading (trop grand pour L3) alternative plus simple qui reduit le nombre le chargement memoire, pas la conso memoire Méthodologies
rebasing, la course au collègue garder master green pour la CD impossible de faire trops de merge en parallele ou doit faire pleins de rebase merge train sequentialise et batch les merges
pas intuitif (merge bidirectionels dans le temps entre develop, feature branch, release branch, hotfix et master) et cout cognitif haut risque grandi de merge conflit peut pas rebaser continuous delivery != trop de barrières en cas de repos multiples ou mono repos, impossible a gérer (microservices) ok pour des cycles de release par trimestre avec des equipes sur des releases en parallele
Mesure de la complexité de code: une meilleure mesure
cyclomatic complexité est un mauvais oracle de la complexité de code les logiques conditionnelles emboîtées utilisent notre mémoire de travail (~indentation) les fonctions avec des dos d’anes d’indentation multiples sont les pires refactorer pour externaliser chaque
Dans Sonarqube cela s’appelle Cognitive Complexity. Voici un exemple sur du code XWiki ou l’on voit très bien visuelement ce que cela veut dire: https://sonarcloud.io/project/issues?id=org.xwiki.commons%3Axwiki-commons&issues=AWzY6RXo8pMOHxUYvkyE&open=AWzY6RXo8pMOHxUYvkyE
Sécurité
Ghostcat: la faille dans Tomcat de 6 à 9
dans le protocole Apache JServ (implicitement trusté par Tomcat (cs une requête) peut lire le contenu des web apps si la webapp peut uploader => activer un remote execution upgrader Tomcat 7, 8, 9, si 6, vous êtes dans la merde attention Tomcat est embarqué dans pleins d’outils comme Wildfly, Spring Boot etc
https://t.co/zViFYyMIse"> Letencrypt révoque 3 millions de certs a multiples domaines
Loi, société et organisation
Amicus brief sur le copyright d’API par IBM et Red Hat
computer interfaces ne sont pas copyrightable moteur de l’economie du logiciel va etre entendu au printemps
Amicus brief de chercheurs attaqué par Oracle
payés par Google
OPTIONNEL Les hackers de Equifax contamnés pour crime
DOJ charcge 4 militaires Chinois Struts CVE Rubrique débutant
La tonte de Yak appliquée à Donarld Knuth
écrire un livre écrire un programme pour ecrire un livre invente un langage de programmation pour écrire le programme invente un mode de pagination design une police de caractère écrit un outil pour construire les polices de caractère invente un système de version pour son programme implémente un langage d’abstraction maison pour les documents imprimés Conférences
ANNULÉ - Breizhcamp du 25 au 27 mars 2020 ANNULÉ - MiXiT du 29 au 30 avril 2020 VIRTUEL - GitHub Satellite les 6 et 7 mai ANNULÉ - RivieraDev du 13 au 15 mai 2020 Devoxx UK du 13 au 15 mai 2020 NewCrafts les 28 et 29 mai 2020 AlpesCraft les 4 et 5 juin 2020 ANNULÉ - Best of Web les 4 et 5 juin 2020 DevFest Lille le 12 juin 2020 - (Le CFP est ouvert) Voxxed Days Luxembourg du 17 au 19 juin 2020 ANNULÉ - Serverless Days Paris le 1 juillet 2020 NOUVELLE DATE - Devoxx France du 1 au 3 juillet 2020 Sunny Tech les 2 et 3 juillet 2020
Et encore plus sur Developers Conferences Agenda/List …. Liste d’Aurélie
Nous contacter
Soutenez Les Cast Codeurs sur Patreon https://www.patreon.com/LesCastCodeurs Faire un crowdcast ou une crowdquestion Contactez-nous via twitter https://twitter.com/lescastcodeurs sur le groupe Google https://groups.google.com/group/lescastcodeurs ou sur le site web https://lescastcodeurs.com/