On aime, on partage #37

Bienvenue dans la série « On aime, on partage » de Viseo !
Chaque semaine retrouvez les meilleurs articles du web issus de notre veille technologique.

Gestion de projet

Formation MOOC en gestion de projet

Je souhaite partager une formation en ligne que j’ai apprécié faire. Il s’agit d’un MOOC (​Massive Online Open Course) en gestion de projet.

Le but de ce MOOC est d’apprendre (ou revoir) les bases de la gestion de projet ​(Notions fondamentales, Outils, infos et évaluation financière, Organisation des projets, Pilotage et plannification, …).

Il se déroule sur 5 semaines et la charge de travail par semaine est entre 2 à 7 heures en fonctions de la formation choisie (basique, avancée)

Chaque cours est divisé en chapitres composés d’une vidéo de 10 minutes environ, suivie d’un quiz.

Pour plus d’informations, rendez-vous sur http://mooc-francophone.com/mooc-abc-gestion-de-projet/

Tests

The little mocker

Un rappel utile sous la forme d’une discussion mentor/élève sur ce que sont les dummy, doubles, spys, mocks, fakes et dans quel cas les utiliser. Illustre aussi pourquoi l’utilisation de framework de mocks n’est peut être pas toujours adaptée.

http://blog.8thlight.com/uncle-bob/2014/05/14/TheLittleMocker.html

When to Mock

Oncle Bob propose quelques idées sur quand et où mocker. L’article se base sur un fond de TDD originel et revient aux origines de ce que sont les tests, ce qu’on attend d’eux, pour arriver à un argumentaire intéressant sur l’utilisation des mocks.

http://blog.8thlight.com/uncle-bob/2014/05/10/WhenToMock.html

Craftsmanship

Framework Bound

Rapide réflexion sur les framework et comment les utiliser plutôt que se faire utiliser par eux.

http://blog.8thlight.com/uncle-bob/2014/05/11/FrameworkBound.html

Java

Guava et Java 8

Voici un autre article avec des exemples d’utilisation des lambdas de Java 8.

Encore? Oui mais celui-ci montre quelques exemples de comment l’excellente librairie Guava peut aussi tirer profit.

http://blog.relateiq.com/java-8-examples/

Docker

Je vous propose de découvrir Docker à travers ce duo d’articles publiés par Nicolas Martignole a.k.a. “Le Touilleur Express”. En bref, Docker est un outil qui permet de simplifier le développement et la livraison d’applications en standardisant le packaging et l’exécution.

http://www.touilleur-express.fr/2014/05/03/docker-un-outil-simple-et-genial/

http://www.touilleur-express.fr/2014/05/05/installer-docker/

Le repo de la semaine !

Avant Java 8, il était impossible de connaitre par reflection le nom des paramètres d’une méthode au runtime.

Cette librairie propose plusieurs méthodes pour contourner le problème.

https://github.com/paul-hammant/paranamer

Merci aux contributeurs habituels : Frédéric BOUQUET,  Claude PETOT et Jean-Philippe LETARD 🙂

Merci beaucoup au nouveau contributeur : Sébastien BRUNO 😉

On aime, on partage #31

Bienvenue dans la série « On aime, on partage » d’Objet Direct !
Chaque semaine retrouvez les meilleurs articles du web issus de notre veille technologique.

REST

POST vs. PUT : la confusion

Retour sur quelques confusions entre POST et PUT lors de la définition d’API REST. Un bon retour aux sources

http://blog.xebia.fr/2014/03/17/post-vs-put-la-confusion/

Java 8

Une nouvelle façon de gérer les Collections en Java 8

Au lieu du classique pattern Iterator, Java 8 facilitera les traitements sur les collections avec la nouvelle API Stream.

http://blog.ippon.fr/2014/03/17/api-stream-une-nouvelle-facon-de-gerer-les-collections-en-java-8/

Web

jQuery – Conventions de codage et bonnes pratiques

Un récapitulatif très complet des standards de codages, bonnes pratiques & optimisations dans jQuery. Et en cerise sur le gateau, un template de plugin jQuery prêt à l’emploi !

http://lab.abhinayrathore.com/jquery-standards/

Tests

Comment rater ses tests unitaires

Article ultra-complet en 2 parties pour être certains de rater l’écriture de ses tests unitaires. Vous l’aurez compris, il s’agit d’apprendre les bonnes pratiques par le contre-exemple.

http://blog.soat.fr/2013/09/10-trucs-infaillibles-pour-rater-ses-tests-unitaires-en-toutes-circonstances-12/

http://blog.soat.fr/2013/11/10-trucs-infaillibles-pour-rater-ses-tests-unitaires-en-toutes-circonstances-22/

Le repo de la semaine !

Rendez vos tests unitaires plus puissants et plus lisibles avec cette lib de tests unitaires.

https://github.com/joel-costigliola/assertj-core

Merci à nos contributeurs de la semaine : Claude Petot, Florent FalcyFrédéric Bouquet et Jean-Philippe Letard!

On aime, on partage #29

Bienvenue dans la série « On aime, on partage » d’Objet Direct !
Chaque semaine retrouvez les meilleurs articles du web issus de notre veille technologique.

Documentation

Générer une documentation REST API avec Asciidoctor etGradle

La documentation est souvent un problème, voici un article qui explique comment se faciliter la vie grâce à Asciidoc et Gradle

Spring

Configuratoin des beans Groovy dans le Spring 4

Tutoriel Spring pour la configuration d’une application en se basant sur un DSL Groovy. Verdict : plus consis, plus lisible.

BigData

Storm – Ajouter du temps réel à votre BigData

Présentation de Storm, un projet Open Source permettant d’ajouter des traitements temps réel sur des flux de données complexes.

Le repo de la semaine !

Est-ce que votre machine est “developper friendly” ?

https://github.com/kdabir/dq

Merci aux contributeurs de la semaine : Frédéric BOUQUET et Jean-Philippe LETARD

Google ferme Reader son agrégateur de flux RSS

Reader est mort, vive reader

Après 8 ans de bons et loyaux service, le lecteur de flux RSS proposé par Google, Reader est maintenant fermé.

Si comme moi vous l’utilisiez pour réaliser une partie de votre veille technologique il va falloir lui trouver un remplaçant.

La relève est assurée

Feedly semble être l’alternative la plus populaire. Pour ma part, je me suis tourné vers The Old Reader qui, comme son nom le suggère, reprend le concept et la présentation introduite par son prédécesseur.

Par ailleurs, après avoir importé ses différents abonnements exportés via le service Takeout de Google, il est difficile d’être dépaysé.

On persévère

Profitez au passage de ces quelques suggestions de blogs à ne pas manquer.

Des blogs pour les développeurs :

http://blog.ninja-squad.com/

http://devgirl.org/

http://java.dzone.com/

http://news.humancoders.com/

http://nurkiewicz.blogspot.fr

http://thecodersbreakfast.net/

http://www.e-naxos.com/Blog

http://www.javacodegeeks.com/

http://www.touilleur-express.fr/

http://www.smashingmagazine.com/

http://android-developers.blogspot.fr/

http://techcrunch.com/

http://www.hanselman.com/blog/

http://www.infoq.com/

Des blogs pour les équipes agiles (ou qui souhaitent le devenir)

http://blog.brodzinski.com/

http://blog.crisp.se/author/henrikkniberg

http://dannorth.net/blog/

http://innovationgames.com/blog/

http://www.agilex.fr

http://www.aubryconseil.com/

http://www.leanagiletraining.com/blog/

http://www.morisseauconsulting.com/index.php/blog/

http://www.qualitystreet.fr/

http://xnopre.blogspot.fr/

http://noop.nl

Marketing et média sociaux :

http://cdeniaud.canalblog.com/

http://www.digitalbuzzblog.com/

http://www.emarketinglicious.fr/

http://www.fredcavazza.net/

http://www.terminauxalternatifs.fr/

Quelques podcasts Java et .net

http://www.dotnetrocks.com/

http://hanselminutes.com/

http://javaposse.com/

http://lescastcodeurs.com/

http://www.cast-it.fr/

Les blogs de nos concurents :

http://blog.fastconnect.fr/

http://blog.ippon.fr/

http://blog.octo.com/

http://blog.soat.fr/

http://blog.xebia.fr/

http://blog.zenika.com/

Et pour finir, un peu plus friday style :

http://geekandpoke.typepad.com/

http://lesjoiesducode.tumblr.com/

http://thedailywtf.com/

http://www.korben.info

http://xkcd.com/

N’hésitez pas à réagir dans les commentaires si vous avez d’autres bonnes suggestions de blogs ou de lecteurs de flux RSS.

Merci à tous les collègues qui ont participé à la collecte de blogs via la mailing liste interne !

Open Source SUN : nouveautés MySQL et intégration continue avec Hudson

Le 12 décembre dernier, Sun Microsystems mettait l’Open SOurce à l’honneur, à l’occasion d’un événement technique dont on pourra retrouver l’ensemble des présentations à cette adresse : http://www.slideshare.net/tag/aquariumparis

Je m’attarderai ici sur 2 des thèmes abordés : les évolutions MySQL 5.1 et 6.0 et le serveur d’intégration continue Hudson.

Un point sur MySQL par Serge Frezefond, responsable techique MySQL
Présentation en deux temps, après un rappel sur la popularité de MySQL auprès de nombreux sites Webs tels que FaceBook, a fait une présentation en deux temps :

  • Un retour sur les nouveautés de MySQL 5.1, disponible depuis le 27 novembre 2008. On retrouve donc la possibilité de faire un partitionnement d’une table sur plusieurs systèmes de fichiers. La programmation de taches, à un instant donné, périodiquement ou suite à un évènement. Au mode de réplication par instruction, viennent s’ajouter deux nouveaux modes : le mode de réplication basé sur les lignes et mixte pour lequel MySQL choisira le mode le plus adapté. La possibilité d’ajouter des logs de manière dynamique. La réplication de clusters permettant de dupliquer rapidement la base afin d’en augmenter les capacités.
  • Un aperçu des nouvelles fonctionnalités qui seront introduites dans la version 6. L’apparition d’un nouveau moteur transactionnel nommé Falcon, qui permettra des gains sensibles sur certaines requêtes. La possibilité de faire des backups en ligne

Ce que je retiens de la démonstration de l’outil d’intégration continue Hudson
Pour mémoire, l’intégration continue consiste à réaliser des builds de manière fréquente afin de déceler les problèmes d’intégration au plus tôt.
Une fois déployé sur un serveur d’application, Hudson permet d’automatiser la génération de builds et l’exécution de la batterie de tests qui s’ensuit. Pour cela, il faut indiquer les sources du projet (par un dépôt SVN par exemple), le gestionnaire de configuration Maven ou les scripts Ant peuvent être utilisés. On peut choisir sous quelles conditions les builds doivent être construits : par exemple, on peut demander à Hudson de lancer le build dès qu’un développeur réalise un commit et ne réaliser que quelques tests essentiels. L’ensemble complet des tests pourra néanmoins être réalisé quotidiennement, aux heures creuses par exemple. Ces tests complets pourront éventuellement reposer sur des matrices de configurations qui peuvent être employées pour tester l’application sur différentes combinaisons : bases de données, versions de Java, etc.. Par son interface, Hudson donne la possibilité de voir l’évolution au fur et à mesure des différents builds et surtout, en cas d’échec, d’avertir par flux RSS ou directement par mail le développeur soupçonné d’être la cause de l’erreur afin qu’il puisse intervenir au plus tôt.
Hudson, même si ce n’est pas une nouveauté, apparaît comme un outil simple d’emploi pour faire de l’intégration continue.