Articles

Construire une plateforme IoT avec l’approche Cloud Native et Kubernetes

Dans un premier article, nous avons vu les avantages d’utiliser les concepts de l’approche Cloud Native pour construire une plateforme IoT. Ce présent article a pour but d’expliquer comment ces concepts peuvent être appliqués à un projet de station agricole connectée. Station agricole connectée L’agriculture intensive ainsi que le changement climatique ont eu des causes...

Publié par Yassir Sennoun

Il y a 6 mois

Publié par Yassir Sennoun

Il y a 6 mois

Pourquoi et comment développer sa plateforme IoT avec l’approche Cloud Native ?

Une plateforme IoT est caractérisée par des problématiques de gestion d’équipements hétérogènes, de traitements et de stockage de grandes masses de données. Par conséquent, il est nécessaire de concevoir une plateforme à partir d’une architecture évolutive et flexible. Certaines entreprises optent pour une architecture monolithique qui n’est pas adaptée aux problématiques précédentes. Cet article vous...

Publié par Édouard Siha

Il y a 6 mois

Bien représenter le temps en Java

Représenter la mesure physique du temps dans du logiciel, quel que soit le langage de programmation, est souvent mal vécu par les développeurs. Les conversions entre UTC et l’heure locale sont sources de douleur, d’incompréhension et de problèmes plus obscurs les uns que les autres. Il en va de même pour les tests unitaires faisant...

Publié par Vincent Villet

Il y a 6 mois

Étude de la stabilité à la prédiction et au réentraînement de DeepAR

L’algorithme DeepAR a été développé par Amazon pour pouvoir entraîner un unique modèle de Deep Learning sur tout un ensemble de séries temporelles (les historiques de volumes de ventes pour chaque produit dans le problème initial d’Amazon). Il a été mis en open source en juin 2019 par Amazon au sein du package d’analyse de...

Il y a 7 mois

Asynchronisme en Java : passé, présent et future de la plateforme (partie 2)

Dans mon article pr écédent, nous avons découvert les principales fonctionnalités proposées par Java depuis la première version du langage jusqu’à la version 7. Focalisons-nous sur des versions récentes de Java : Java 8 : la programmation fonctionnelle fait « coucou » Comme vous le savez, la version 8 a généré une révolution au niveau du langage...

Publié par Yassir Sennoun

Il y a 7 mois

Les fondamentaux de Kubernetes en 5 minutes

Kubernetes est une des technologies les plus en vogue en ce moment. À l‘origine projet Open Source de Google, son succès est tel qu’il est désormais proposé en tant que service par tous les fournisseurs de cloud. Même s’il y a une pléthore d’articles et de vidéos sur ce sujet, il n’est pas simple de...

Il y a 7 mois

WWDC 2020 – Keynote & Platform State of The Union revue par des développeurs

Comme chaque année, le keynote WWDC d’Apple est l’événement que les développeurs Swift et Objective-C attendent avec impatience pendant 12 mois. Pourtant, il s’agit parfois principalement d’un événement axé consommateurs, riche en démonstrations de produits conçues pour plaire aux utilisateurs finaux, en particulier si comparé aux dizaines des créneaux très techniques offerts à la WWDC....

Publié par Loic Divad

Il y a 7 mois

Kafka Streams, le co-partitioning en images et en couleurs

Kafka Streams est la bibliothèque de stream processing proposée par Apache Kafka. Elle permet la transformation à la volé de flux continus. Avec cette bibliothèque il est possible d’atteindre de très faibles latences. Parmi toutes les transformations classiques réalisables (filtres, aggrégations etc) on retrouve les jointures. Il y a un concept essentiel en Kafka Streams...

Publié par Simone Civetta

Il y a 7 mois

Swift Runtime for AWS Lambda

With a new post on its blog, the Swift team have recently announced the creation of a custom runtime for AWS Lambda allowing developers to write serverless functions in Swift. Serverless functions are an extremely easy way to implement server-side logic and to deploy it in a 100% managed, and particularly cheap, environment. But, why...

Il y a 7 mois

Attaquer des modèles de machine learning : les grands types d’attaques – PARTIE 1

Peut-on faire révéler ses secrets à un modèle de machine learning ? Et si oui, comment se prémunir d’une telle attaque ? Les modèles de machine learning sont susceptibles d’utiliser des données privées et parfois sensibles, par exemple des informations précises sur des personnes (association nom/photo, habitudes et préférences, etc.). L’évolution des techniques et des...

Publié par Stéphane Mouawad

Il y a 7 mois

Swift LiveData

What is LiveData? LiveData is an observable data holder class. Meaning, it respects the lifecycle of other app components, such as business logic, UI, or services. This awareness ensures that LiveData only updates app component observers that are in an active lifecycle state. LiveData notifies active registered objects about updates. You can register an observer...

Publié par Aghilas Sadli

Il y a 7 mois

Android – MVI et le problème du Toast

Nous avions vu ce qu’est le design pattern MVI et comment l’appliquer au sein d’une une application Android simple dans notre précédent article « Créer une application Android en utilisant le pattern MVI et Kotlin Coroutines« . Reprenons donc là où nous nous étions arrêtés et attaquons nous au “problème du Toast” ! Si vous n’avez pas...

Publié par Thomas Champion

Il y a 8 mois

Booster votre application Vue.js avec TypeScript

Progressivement TypeScript devient la norme dans les projets Web. D’ailleurs, ces derniers temps plusieurs projets open source ont fait le choix de l’adopter pour leur base de code comme Slack et Lyft. Loin d’être les seuls, les développeurs de Jest et Yarn, de chez Facebook, ont également entrepris de remplacer Flow par TypeScript. Cela démontre...

Publié par Benjamin Lacroix

Il y a 8 mois

Utiliser Terraform pour configurer l’accès de GKE à Cloud SQL

Nous avons comme bonne pratique d’utiliser de l’infra-as-code, notamment via Terraform lorsqu’il s’agit de GCP. Via une seule commande l’infrastructure complète du projet est créée, détruite ou mise à jour. Voyons dans cet article comment créer un cluster GKE, une base de données Cloud SQL Postgres et comment sécuriser l’accès de nos applications à l’instance...

Il y a 8 mois

KED – ou la connaissance partagée

Chez Publicis Sapient Engineering, apprendre fait partie de notre métier. Nous nous engageons chaque jour à nous instruire et à partager notre savoir-faire. Développeur(se)s, Data Engineers, Agilistes, Consultant(e)s DevOps, Fonctions Support… nous formons une communauté de curieux. Ce “vilain défaut” est pour nous une qualité hautement valorisée, qui s’entretient. Depuis plus de 15 ans, avec...

Publié par Romain Ardiet

Il y a 8 mois

Packaging Python : setup.py et setuptools

Bien que Python soit aujourd’hui extrêmement populaire il y a une facette de celui-ci qui semble toujours peu maitrisée par les développeurs qui l’utilisent : le packaging de code. Hors le packaging est une étape importante lorsque l’on veut partager et réutiliser du code sans avoir à le dupliquer dans chacun de nos projets. Nous...

Publié par Daniel Chesters

Il y a 8 mois

Introduction au Record de Java 14

Avertissement Cette fonctionnalité est disponible en avant-première, ce qui nécessite d’utiliser l’option --enable-preview et que des évolutions majeures peuvent survenir dans les prochaines versions de Java. Qu’est-ce que c’est un record ? the state, the whole state, and nothing but the state Un record est une forme restrictive de classe qui à pour but de...

Publié par Lisa Thevenon

Il y a 8 mois

DataXDay devient DataXDays !

Au vu de la situation actuelle, le DataXDay comme on le connaissait, ne pouvait hélas pas avoir lieu. Nous vous proposons donc un format alternatif appelé DataXDays ! Cet événement gratuit est un ensemble de conférences en remote autour de la Data. Rencontrez nos speakers, tous les mardis de juin – à partir de 13 h...

Nous recrutons

Être un Sapient, c'est faire partie d'un groupe de passionnés ; C'est l'opportunité de travailler et de partager avec des pairs parmi les plus talentueux.