LCC 227 - Teletravailler une corona dans une main et un gamin dans l'autre

Published: March 17, 2020, 9:49 p.m.

Cet \xe9pisode parle du coronavirus, des conf\xe9rences annul\xe9es, de la popularit\xe9 des langages, de GraphQL, de Ghostcat et pleins d\u2019autres choses encore. L\u2019intro date un peu: les infos sur le coronavirus \xe9tant encore plus fr\xe9quentes que les nouveaux framework JavaScript.

Enregistr\xe9 le 13 mars 2020

T\xe9l\xe9chargement de l\u2019\xe9pisode LesCastCodeurs-Episode\u2013227.mp3

News Corona virus

Les actions des grosses boites

  • pas de meeting
  • conf annul\xe9es
  • limite du travail au bureau
Langages

RedMonk ranking - Le langage au top est\u2026

  • JavaScript Python Java
  • Typescript dans le top 10
  • R monte
  • Rust stable comme Go (+1)
  • Kotlin 19, Scala 13

InfoQ meta sondage

  • Java 8 le plus d\xe9ploy\xe9 en prod, 25% Java 11 et non LTS derri\xe8re
  • Spring 60\u201380%
  • IntelliJ 60\u201380%, Eclipse 20\u201325%
  • mavenjvs Gradle 66\u201333 ou 50\u201350

Sondage sur Scala

Scala.js 1.0.0

  • 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\u2019un advisory board

  • Gluon, Red Hat, Amazon, Microdoc, Shopify, Twitter, OCI, Neo4J, Pivotal, ARM et Oracle bien s\xfbr

Gros round d\u2019investissement 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\xe9
  • make GraphSQL schema available
  • execute GraphQL requests
  • code first approach

Apache Camel 3.1 et 3.0 d\xe9pr\xe9ci\xe9
Le guide de migration de Camel

  • am\xe9lioration de m\xe9moire

Lightbend recoit 25M d\u2019investissement

  • de Dell capital
  • pour la partie reactive
  • sp\xe9cifiquement pour le \u201cserverless\u201d
  • 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\xe9e par microservice
  • les avantages des syst\xe8mes event based
Middleware

ElasticSearch en prod, les choses a savoir

Infrastructure

La M&A de have i been p0wned: l\u2019histoire de l\u2019abandon

  • societe KPMG
  • due diligence
  • des milliards de questions
  • les doutes
  • exclusivit\xe9
  • le risque du changement de strat\xe9gie
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\xe9veloppeur (nombre de clusters en parall\xe8le)
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\xe9e plut\xf4t que par package mis a jour
  • plus immuable et donc facile en rollback
  • par contre chaque host goes down et up
  • si orchestrateur c\u2019est ok
Outillage

IntelliJ Big Data Tools

  • un IDE pour le big data!
  • deja integration avec Zeppelin S3
  • nouveau Spark, HDFS, Paquet
Architecture

Les syst\xe8mes simples ont moins de downtime

  • facile \xe0 comprendre, facile \xe0 corriger
  • plus rapide de monter en competence
  • trouver la cause est plus rapide
  • solutions simples, plus d\u2019alternatives disponibles
  • regles: les fonctionalit\xe9s de justifient pas la complexit\xe9, les id\xe9es complexes am\xe8nent des impl\xe9mentations complexes, modifier avant d\u2019ajouter
  • challenge de l\u2019automation pour faire avec moins de gens?

OPTIONNEL 11 raisons pour lesquelles vous allez rater vos microservices

  • voir les titres de section

OPTIONNEL Retour d\u2019experience sur l\u2019usage incorrect d\u2019un outil bloom filters

  • probleme id\xe9al pour bloom filters
  • mais suspicieusement plus long que pr\xe9vu
  • 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\xe9thodologies

Les trains de merge

  • rebasing, la course au coll\xe8gue
  • 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

Retour sur le mod\xe8le GitFlow

  • 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\xe8res
  • en cas de repos multiples ou mono repos, impossible a g\xe9rer (microservices)
  • ok pour des cycles de release par trimestre avec des equipes sur des releases en parallele

Mesure de la complexit\xe9 de code: une meilleure mesure

  • cyclomatic complexit\xe9 est un mauvais oracle de la complexit\xe9 de code
  • les logiques conditionnelles embo\xeet\xe9es utilisent notre m\xe9moire de travail (~indentation)
  • les fonctions avec des dos d\u2019anes d\u2019indentation multiples sont les pires
  • refactorer pour externaliser chaque

Dans Sonarqube cela s\u2019appelle Cognitive Complexity. Voici un exemple sur du code XWiki ou l\u2019on voit tr\xe8s bien visuelement ce que cela veut dire: https://sonarcloud.io/project/issues?id=org.xwiki.commons%3Axwiki-commons&issues=AWzY6RXo8pMOHxUYvkyE&open=AWzY6RXo8pMOHxUYvkyE

S\xe9curit\xe9

Ghostcat: la faille dans Tomcat de 6 \xe0 9

  • dans le protocole Apache JServ (implicitement trust\xe9 par Tomcat (cs une requ\xeate)
  • peut lire le contenu des web apps
  • si la webapp peut uploader => activer un remote execution
  • upgrader Tomcat 7, 8, 9, si 6, vous \xeates dans la merde
  • attention Tomcat est embarqu\xe9 dans pleins d\u2019outils comme Wildfly, Spring Boot etc

Letencrypt r\xe9voque 3 millions de certs a multiples domaines

Loi, soci\xe9t\xe9 et organisation

Amicus brief sur le copyright d\u2019API par IBM et Red Hat

  • computer interfaces ne sont pas copyrightable
  • moteur de l\u2019economie du logiciel
  • va etre entendu au printemps

Amicus brief de chercheurs attaqu\xe9 par Oracle

  • pay\xe9s par Google

OPTIONNEL Les hackers de Equifax contamn\xe9s pour crime

  • DOJ charcge 4 militaires Chinois
  • Struts CVE
Rubrique d\xe9butant

La tonte de Yak appliqu\xe9e \xe0 Donarld Knuth

  • \xe9crire un livre
  • \xe9crire un programme pour ecrire un livre
  • invente un langage de programmation pour \xe9crire le programme
  • invente un mode de pagination
  • design une police de caract\xe8re
  • \xe9crit un outil pour construire les polices de caract\xe8re
  • invente un syst\xe8me de version pour son programme
  • impl\xe9mente un langage d\u2019abstraction maison pour les documents imprim\xe9s
Conf\xe9rences

ANNUL\xc9 - Breizhcamp du 25 au 27 mars 2020
ANNUL\xc9 - MiXiT du 29 au 30 avril 2020
VIRTUEL - GitHub Satellite les 6 et 7 mai
ANNUL\xc9 - 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\xc9 - 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\xc9 - 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 \u2026.
Liste d\u2019Aur\xe9lie

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/