mercredi, novembre 14, 2018

Liens pratiques de la semaine

Vous trouverez dans ce billet une sélection de liens pratiques autour des technologies Java et autres qui m'ont particulièrement intéressées ces dernières semaines. Pour la plupart des entrées, je les ai déjà diffusées via Twitter https://twitter.com/mickaelbaron. Il s'agit en gros d'un résumé de mon compte Twitter.

Java
  • La spécification MicroProfile 2.1 est disponible.
  • Java 11 est disponible. Voici deux liens intéressants pour apprendre rapidement ce qu'il y a de nouveau : lien 1 et lien 2.
  • Un sondage des habitudes des développeurs Java pour l'année 2018. On apprend que 80% des interrogés utilisent Java 8 en production et que 45% des interrogés utilisent l'IDE IntelliJ IDEA et 38% Eclipse.
  • Pour installer Java depuis une version fournie par OpenJDK sous macOS, il suffit de décompresser l'archive dans le répertoire /Library/Java/JavaVirtualMachines. Par défaut, la version la plus récente sera utilisée. Pour désactiver une version récente, il suffit de renommer le fichier Info.plist dans /Library/Java/JavaVirtualMachines/JAVA_VERSION/Contents en Info.plist.disabled.
  • Un article qui montre comment migrer ses projets Java avec Maven vers Java 11.
Docker
JavaScript/HTML/CSS
  • Un exemple intéressant d'une interface de login/password faite en JS/HTML/CSS.
  • Un article qui présente comment utiliser la nouvelle interface graphique de VueCli3 pour construire et configurer (plugins, dépendances...) un projet Vue.js.
  • Un article qui montre comment utiliser Flex Box, un standard CSS3 de disposition des éléments dans une page web.
  • Comprendre en détail le fichier package.json.
Divers
  • Un résumé intéressant des différentes algorithmes d'apprentissage automatique à utiliser selon le contexte.
  • Mole est une application en ligne de commande pour faciliter la création de tunnels SSH.
  • htrace.sh est un script Shell pour débogguer les traces de connexion HTTP/HTTPS et analyser les en-têtes...
  • Un site web qui fournit une base pour apprendre à fabriquer des avions en papier.
  • Les slides d'une présentation sur des cas de scénarios de Git.
  • Le projet Common Voice est une initiative de Mozilla pour aider à apprendre aux machines à parler comme tout un chacun. Les interfaces sont très simplistes et efficace. Vous dictez un texte ou vous confirmez qu'un texte a été correctement lu.
  • Un article pour comprendre rapidement Tmux, un multiplexeur de terminaux.
  • Un aide mémoire interactif sur Git.
  • Une commande Linux a échoué car vous n'étiez pas sudo, rappelez la dernière commande via sudo !! ou sudo !-1.
  • lazyGit est une interface graphique en ligne de commande pour Git.





vendredi, août 10, 2018

Tutoriel pour préparer son environnement de développement ROS avec Docker : partie 1

D'habitude quand je publiais un tutoriel, je créais un billet sur mon blog. La priorité avait été donnée à Twitter. Pour corriger ce manque à mon cher blog, voici un billet informatif pour vous avertir (en retard) qu'un tutoriel sur ROS avait été annoncé en mai 2018. Ce tutoriel concerne l'utilisation de ROS (Robot Operating System). 

Ce tutoriel s'intéresse donc à présenter ROS (Robot Operating System) et à décrire comment proposer à un développeur un environnement de développement prêt à l'emploi quel que soit le système d'exploitation utilisé pour le développement et pour le déploiement. Mon idée est de s'appuyer sur l'utilisation exclusive des outils Docker pour créer des conteneurs basés sur des images Docker ROS.

L'adresse du tutoriel est disponible sur mon hébergement de Developpez.com :

  • https://mbaron.developpez.com/tutoriels/ros/environnement-developpement-ros-docker/
Le second tutoriel devrait arriver prochainement, il faut juste trouver du temps sur ce travail qui est un peu en dehors du scope que j'ai l'habitude de traiter.

N'hésitez pas si vous avez des commentaires à publier sur mon blog ou directement sur le site de Developpez.com.

mercredi, mai 16, 2018

Liens pratiques de la semaine

Java
  • Un dépôt Github pour la comparaison des clients Java pour manipuler l'API Docker
  • Le projet Amber qui inclut notamment le typage implicite (var) est détaillé dans ce billet de blog.
  • Dans la suite du premier item, voici les autres nouveautés pour Java 10. Depuis la sortie, voici un article qui présente les 10 principales nouveautés.
  • Un billet de blog qui détaille comment utiliser Server-Sent Events SSE (technologie pour envoyer des messages du serveur vers le client, une technologie concurrente aux WebSockets) avec JAX-RS. Au passage, un article qui parle des autres technologies autre que SSE.
  • GWT-Jackson est une bibliothèque pour GWT pour fournir l'intégration de Jackson (mapping JSON). 
  • vue-gwt est un wrapper de la bibliothèque Vue.js. Le langage Java est utilisé pour remplacer Javascript pour toute la partie contrôleur. Un billet qui montre comment l'utiliser.
  • Un article qui traite de JNoSQL, une bibliothèque qui fournit un accès JDBC "avancé" pour les bases de données NoSQL. 
  • Java EE est devenu Jakarta EE et est désormais soutenue par la fondation Eclipse, j'espère que cela permettra d'accélérer les nouveautés.
  • Un billet de blog qui montre comment utiliser RXJava avec GWT.
  • Une série de trois billets sur JShell, l'interpréteur Java introduit depuis Java 9 (billet 1, billet 2 et billet 3)
  • Un billet intéressant sur les possibilités de JShell pour créer un serveur HTTP minimaliste.
Javascript / Web
  • Une page Github de type Awesome qui regroupe beaucoup de liens autour de Vue.js.
  • Toujours dans la série de Vue.js, voici un livre de recettes (Cookbook) des meilleures pratiques.
  • Un billet de blog qui montre comment utiliser les variables d'environnement dans ses projets Vue.js
  • Une très bonne présentation de Vue.js par un Core développeur (slides de la présentation).
  • Des comparatifs (lien 1 et lien 2) de framework web natif pour développer par exemple des applications Progressive Web App. Pour le second comparatif, une vidéo est disponible.
Divers
  • Un billet de blog qui montre comment choisir et utiliser une API pour la reconnaissance faciale. 
  • Quelques outils à posséder quand on fait du développement web.
  • Saviez-vous que pour Docker il y a deux options pour "monter" des volumes : -v et --mount. Cet article explique la différence de ces deux options.

mercredi, janvier 03, 2018

Bonne année 2018, les petites résolutions

L'année 2017 se termine et voilà l'année 2018. Très peu présent sur ce blog, peu d'articles cette année. Je me disperse et j'ai aussi beaucoup moins de temps.

Pour 2018, du côté de mes activités extra professionnel je reste en poste de responsable des rubriques Java sur Developpez.com. C'est très intéressant même si cela devient de plus en plus dur de mobiliser les bénévoles.  

Au niveau des articles, support de cours et tutoriels, je co-prépare un article technique sur Citus Data, une version distribuée de Postgres, un support de cours sur les techniques de communication serveur vers client et surement un tutoriel pour mettre en oeuvre ces concepts.

Excellente année 2018 à très bientôt