Sécurité

Avec Trivy, c’est trivial d’identifier les vulnérabilités de vos conteneurs

Les conteneurs sont une manière de plus en plus courante de packager et de déployer les applications. Un conteneur comprend tout ce qui est nécessaire au fonctionnement de l’application: le code source ou le binaire de l’application, les fichiers de configuration, l’environnement d'exécution (Java, Python, Nodejs, …) et les bibliothèques. Il serait difficile de suivre manuellement tous ces éléments. Et autant dire qu’il serait impossible de suivre les vulnérabilités associées. Mais heureusement, il est possible d'automatiser cette tâche fastidieuse avec des outils d’analyse des vulnérabilités.…

Read more
Archi & Techno

BD – Pet vs Cattle

Hello ! On l'a vu, l'Infrastructure as Code (IAC) nous permet de facilement et rapidement détruire et remonter des machines. Cela a donc grandement impacté la façon de travailler des ops ! Plutôt que de travailler sur des serveurs spécifiques qu'on maintient et qu'on bichonne des mois durant, on préfère détruire et remonter les machines régulièrement. On parle de "Pet vs Cattle".     Pour aller plus loin : "Pet vs Cattle", de l'artisan du serveur à l'artisan du codeur : https://blog.octo.com/pet-vs-cattle-de-lartisan-du-serveur-a-lartisan-codeur/  DevOps Concepts :…

Read more
Culture Hacking

Happiness Management

Le bonheur, cet état émotionnel tant recherché difficile à définir tant il est propre à tout un chacun. On le lie souvent avec de la joie, certains le définissent comme un état de satisfaction complète,  d’autres le caractérisent comme de l’euphorie et l’associent à toutes les activités qui nous la font ressentir( voyage, sport, détente..). On va même à confondre le bonheur avec cette sensation éphémère. On parle beaucoup de bonheur mais peu l’associent au travail, car la définition même du mot « travail » si l’on…

Read more

EuRuKo 2019 : Ruby 3 or not to be !

Ahoy ! Nous avons assisté à la conférence annuelle européenne de Ruby, EuRuKo, qui s’est déroulée le 20 et 21 juin 2019 à Rotterdam. A bord du SS Rotterdam, les speakers nous ont embarquées dans le monde magique de Ruby et de sa communauté, employant à tour de bras pour l’occasion les jeux de mots de type maritime. Nous avons voulu souligner quatre grands axes qui ont émergés de cette conférence : le futur de Ruby, la méthodologie, les expérimentations avec Ruby, et un écho…

Read more
Méthode innovation

La blockchain : au-delà du Produit Minimum Viable (MVP), l’Écosystème Minimum Viable (MVE)

Le développement de solutions blockchain implique la co-construction d’écosystèmes d’entreprises, ou de réseaux d’acteurs. Cet article présente tout d’abord une rétrospective et une définition du concept d’écosystème d’entreprise et conclut par l’introduction de la notion d'Écosystème Minimum Viable (MVE). Par la suite, l’importance d’une démarche de MVE en amont et en parallèle du développement d’un Produit Minimum Viable (MVP) dans un projet blockchain est soulignée. Écosystème d’entreprise : rétrospective et définition Le concept d'écosystème d'entreprises a été introduit dans un article de James F. Moore…

Read more
Android

Comment booster son application android grâce à de l’IA

Dans un monde “Mobile First”, la performance est un facteur clé du succès d’une application mobile. Plus celle-ci est performante, plus l’utilisateur y passera du temps. Les bonnes pratiques de développement intègrent des solutions techniques permettant d’optimiser le temps de chargement. Pourrait-on aller encore plus loin, faire mieux pour l’utilisateur ? Pour répondre à cette question, nous avons décidé de faire de la prédiction de parcours utilisateur grâce à du machine learning de manière à précharger les données de sa future navigation. Mon binôme a…

Read more
Big Data

Accelerating NiFi flows delivery: Part 1

While working in different contexts with NiFi, we have faced recurring challenges of development, maintenance and deployment optimization of NiFi flows. Whereas the basic approach suggests to manually duplicate pipelines for similar patterns, we believe that an automated approach is relevant for production purpose when it comes to implementing a significant amount of ingestion flows relying on a limited set of patterns or, more simply, when it comes to deploying these flows on different environments of execution. The ability to reach the right level of…

Read more
UX - Ergonomie

Quel design system pour le service public ?

Disons-le tout de suite : il n’existe pas de design system pour le service public français. Pas encore. Pas tout à fait. Pour les designers et développeurs qui ont à cœur d'améliorer l'expérience usager, voici un état des lieux, pour mieux s'y retrouver entre documents officiels délaissés, ressources alternatives et initiatives prometteuses, sans oublier de prendre exemple hors de nos frontières. Car le vent tourne. Une révolution s’amorce dans l’histoire du design institutionnel. Documents en vigueur Les ressources à utiliser pour la fabrication des services…

Read more
Archi & Techno

Cache me if you can – 2

Introduction - scope of the article This series of articles deals with caching in the context of HTTP. When properly done, caching can increase the performance of your application by an order of magnitude. On the contrary, when overlooked or completely ignored, it can lead to some very unwanted side effects caused by misbehaving proxy servers that, in the absence of clear caching instructions, decide to cache anyway and serve stale resources. In the first part of this series, we argued that caching is the…

Read more
Data Science

Algorithmes Évolutionnistes : Applications à des problèmes de données – 1

Initialement créés pour résoudre des problèmes d’optimisation dans des espaces complexes à forte dimension, les algorithmes évolutionnistes ont aujourd’hui un large champ d’applications comme solveurs. En particulier, le machine learning se base explicitement sur des processus d’apprentissage qui s’apparentent à des problèmes d'optimisation complexe (on cherche à optimiser les performances d’une fonction d’estimation en se basant sur une quantité limitée d’informations : les données dont on dispose). Ainsi, plusieurs cas applicatifs concrets d'algorithmes évolutionnistes dans les domaines de l’IA ont été développés pour améliorer les…

Read more