Analyse statique de code pour C# et .NET avec NDepend

En tant qu’architecte logiciel j’ai souvent besoin de faire un contrôle de qualité du code de mes clients.

Le code a-t-il une bonne tête ? Qu’en est-il de sa complexité et de la couverture de test ? Puis-je le considérer comme facilement maintenable avec une bonne évolutivité ?

Bien sûr, je ne vais pas passer tout mon temps à lire chaque fichier source, ce serait trop long et probablement peu efficace. Heureusement un ensemble de règles et d’outils peuvent être d’un grand secours si vous êtes dans la même situation.

Lire la suite

Ember.js, framework challenger pour les Single Page Applications

On parle souvent en ce moment (et nous les premiers, parce qu’on en fait souvent aussi) de Single Page Applications (SPA), ces application web riches et interactives à base de JavaScript et d’API. Le framework leader du moment pour la réalisation de telles applications est AngularJS, porté par Google, très populaire parmi les développeurs.

Cependant, il existe une quantité d’autres frameworks dont le but est de faciliter la réalisation de SPA. Ils varient en périmètre fonctionnel, en philosophie, en adoption et parfois même en langage utilisé (un bon aperçu ici http://todomvc.com/). Un des plus gros challengers d’AngularJS sur son terrain de prédilection est Ember.js. Ces deux frameworks proposent des outils fonctionnellement similaires pour réaliser des SPA, tout en utilisant des approches très différentes.

C’est justement l’approche qu’adopte Ember.js dont nous allons discuter dans cet article, en se focalisant bien sûr sur les aspects qui nous ont le plus marqués lors de nos projets réalisés avec Ember.js.

Lire la suite

Améliorer la performance des jobs Hadoop sur HDInsight

Cela fait quelque temps que j’expérimente des Tips & Tricks sur mes algos pour traiter de la data de façon performante et comme ça a été plutôt concluant dans mon cas, j’ai mis tout ça au propre pour les partager ici avec vous.

Les quatre optimisations que je présente ici vont faire passer le temps d’exécution de 45 minutes à moins de 3 minutes. La plus importante étant le passage d’un script Pig à un code MapReduce.
Lire la suite

Afterwork à Genève le 2 juillet : Agilité & top management, une thérapie pour leurs principaux challenges ?

Entr_agilemailing

Le CEO conference board a publié, comme chaque année, le podium des challenges que les exécutifs européens pensent devoir adresser en 2014.
Passée la surprise de ne pas trouver en tête les grands classiques tels que l’optimisation de la relation client ou la gestion des risques économiques & politiques, on se surprend à découvrir un podium ressemblant à s’y méprendre au portrait chinois d’une entreprise agile : la qualité d’exécution, le management de l’innovation et le développement du capital humain. Lire la suite

PerfUG : Mesurer directement depuis le CPU – les compteurs de Performance

Les CPUs intègrent une unité de mesure de performance (PMU) que l’on peut utiliser pour collecter des données sur l’utilisation des caches (hit/miss) des prédictions de branches, du nombre d’instructions, des cycles, etc.

Ces compteurs de performance (HPC) peuvent être accédés en Java grâce à la librairie Overseer. Cette présentation montrera comment les mettre en oeuvre avec des exemples de situation où ils sont pertinents pour la compréhension des performances.

Cette session aura lieu dans les locaux de Criteo le Jeudi 26 Juin à 19h et sera présentée par Jean-Philippe Bempel, architecte performance chez Ullink.

Attention : cette session aura lieu dans les locaux de Criteo !

Inscriptions et informations sur Meetup.

Java 8 est réactif !


Programmation réactive

Parmi les nombreuses évolutions que nous propose Java8, l’une d’entre-elles attire particulièrement notre attention. Il s’agit de la présence de la classe CompletableFuture<>. Mine de rien, cette classe va bouleverser les applications Java. De nouvelles architectures seront proposées, de nouveaux frameworks vont apparaître pour remplacer les anciens, etc. C’est une classe majeure de Java8.
Lire la suite