↩ Accueil

Vue lecture

tiny11 : réduire la taille de l'image d'installation de Windows 11

Les images systèmes de Windows sont très lourdes, plusieurs Go. NTDEV développe un outil capable de réduire la taille des images d'installation. Le développeur promet avec la toute dernière version de son tiny11 de réduire encore le poids de 20 %...Tiny11 supporte la version 24H2. 

tiny11 se compose de 2 outils : builder et core. Tiny11 builder permet de créer une image allégée en retirant tout ce qui n'est pas indispensable. Il s'agit d'un script Powershell. Tiny11 core va plus loin et va limiter le fonctionnement de Windows : il retire WindowsSxS, Windows Update, WinRE. Pour l'outil core, NTDEV prévient qu'il n'est pas possible de remettre une fonctionnalité retirée à la générer. Il faudra regénérer une nouvelle image. 

Site : https://ntdev.blog/2024/01/08/the-complete-tiny10-and-tiny11-list/

Petite démo :

Catégorie actualité: 
Image actualité AMP: 

Index TIOBE : Python consolide sa 1ere place

Le dernier index TIOBE confirme la 1ere place de Python qui atteint 23,28 %. Rappelons que l'index est la popularité des langages dans les moteurs de recherche. Il ne reflète pas l'utilisation réelle du langage. L'index donne des tendances et une certaine importante du langage. 

Le top 10 a évolué sur 1 an :

1er Python =

2e C++ +1 place

3e Java + place

4 C - 2 places

5 C# =

6 JavaScript =

7 Go +4 places

8 SQL +1 place

9 Visual Basic -1 place

10 Fortran + 2 places

Go fait son apparition dans le top 10 même si se contente de 2,61 % des requêtes. PHP chute assez sévèrement - 6 places. Rust est 14e avec 5 places de mieux.  

Catégorie actualité: 
Image actualité AMP: 

WordPress : Automattic réduit son soutien et accuse WP Engine de la situation

Nouvel épisode dans la guerre Automttic - WP Engine. Le 9 janvier, Automattic annonçait, à la surprise générale, sa volonté de réduire considérablement son soutien à WordPress. Cela signifie une réduction des ressources (financement, équipes, développements, etc.). "... nous devons consacrer beaucoup de temps et d’argent à nous défendre contre les attaques juridiques lancées par WP Engine et financées par Silver Lake, une grande société de capital-investissement. Nous avons également dû faire face à d’intenses critiques et même à des attaques personnelles contre un certain nombre d’Automatticiens de la part de membres de la « communauté » qui veulent que Matt et d’autres se retirent du projet." précise le communiqué.

L'argument a de quoi surprendre. Oui, WP Engine utilise WordPress et contribue bien moins, mais c'est Automattic, et son patron, qui a lancé les premiers affrontements et cherche depuis cette offensive à forcer la main à la communauté et aux contributeurs. 

"C'est le moment de se regrouper, de repenser et de planifier stratégiquement la manière dont les Automatticiens peuvent continuer à contribuer de manière à assurer l'avenir de WordPress pour les générations à venir." poursuite l'annonce. Automattic s'alignera sur le niveau des efforts de WP Engine et des autres contributeurs. Sous-entendu : les autres ne font pas grand chose, nous, nous faisons tout le travail. 

"Nous avons pris la décision de réaffecter des ressources en raison des poursuites judiciaires de WP Engine. Cette action en justice détourne beaucoup de temps et d’énergie qui pourraient autrement être consacrés au soutien de la croissance et de la santé de WordPress. Nous gardons l’espoir que WP Engine reconsidère cette attaque juridique, nous permettant de recentrer nos efforts sur des contributions qui profitent à l’écosystème WordPress dans son ensemble." explique le communiqué. Automattic oublie de dire qu'ils ont tout fait pour empêcher WP Engine à accéder à certaines ressources de WordPress. Oui, WP Engine a engagé une action en justice mais pour forcer Automattic à rétablir les accès.

Communiqué : https://automattic.com/2025/01/09/aligning-automattics-sponsored-contributions-to-wordpress/

Catégorie actualité: 
Image actualité AMP: 

VLC : 6 milliards de téléchargement et IA

VLC est un des logiciels open source les plus populaires au monde. Au CES 2025, l'équipe de VLC a mis en avant le succès incroyable du lecteur vidéo : 6 milliards de téléchargement depuis sa création. L'outil montre aussi de nouvelles fonctionnalités sur la traduction et le sous-titrage. VLC mise sur le LLM et un traitement local pour générer automaniquement les sous-titres et pour les traductions dans une centaine de langues (à terme).

L'objectif est de réaliser le traitement uniquement local, sur la machine et non en utilisant un service cloud. On pouvait déjà réaliser le sous-titrage avec un plug-in tel que Whisper, là, l'avantage est une intégration native au logiciel.  

Pour le moment, aucune date de disponibilité n'est connue ni les LLM qui seront utilisés, ni les langues qui seront disponibles immédiatement. 

Catégorie actualité: 
Image actualité AMP: 

KDE Frameworks 6.10.0 est disponible

Le projet KDE annonce la disponibilité de KDE Frameworks 6.10.0. Il s'agit de 72 addons pour les développeurs Qt. Cet ensemble doit faciliter le développement et l'intégration des apps Qt dans l'environnement KDE. 

Cette nouvelle version introduit de nombreuses évolutions et corrections de bugs sur l'ensemble des modules. Le code source complet est disponible sur le site officiel. 

Annonce : https://kde.org/announcements/frameworks/6/6.10.0/

Catégorie actualité: 
Image actualité AMP: 

Le bug de 2038 sur les systèmes Linux : petit point

Après le bug de l'an 2000, le bug de 2028 (aussi appelé Y2038 bug) ? Peut-être en avez-vous déjà lu ou entendu parler. Il peut toucher certains systèmes Linux, Unix, macOS, Android, etc.. Le problème de l'an 2038 est un bug de formatage du format de date/heure après 03:14:08 le 19 janvier 2038. Sur les systèmes 32 bits, les entiers sont encodés en 32 bits, c'est le cas pour la valeur time_t.  A ce moment là, le système va comprendre autre chose et afficher : 20:45:52 le 13 décembre 1901 ou au 1er janvier 1970 comme le précise une note technique de ST Micro... C'est selon le système impacté. L'heure indiquée est l'heure universelle.

Ce problème n'existe pas sur les systèmes 64 bits. Il faut donc que les OS supportent les entiers 64 et non uniquement 32. Par exemple, sur Linux, le problème est fixé depuis le noyau 5.6. 

Le problème concerne uniquement les systèmes 32 bits. Les ancienns machines ou encore les systèmes embarqués sont directement impactés. 

Une note de gnu.org : https://www.gnu.org/software/gnulib/manual/html_node/Avoiding-the-year-2038-problem.html

Catégorie actualité: 
Image actualité AMP: 

Soirée ParisJUG Academy 2025 - 14 Janvier 2025

Le ParisJUG propose le 14 janvier une grande soirée !

19h30 à 19h50 : Nous avons besoin de vous sur Quarkus Cucumber

Par Said Boudjelda

19h50 à 20h10 : De la modélisation à la mise en production : Automatisation des workflows avec Camunda et Spring Boot

Par Salah Eddine El Mamouni

20h10 à 20h30 : How to test asynchronous code

Par Yifang Dong

20h30 à 20h50 : JPMS - Nightmares and Awakening Java Platform Module System

Par Salathiel Genese Yimga Yimga

20h50 à 21h10 : Reprenez le contrôle de votre stack back !

Par Marc Guiot

21h10 à 21h30 : Apprenez votre IA à faire du TDD

Par Manuel Camargo

Où : Octo, 34 avenue de l'Opéra - Paris

Pour en savour : https://www.parisjug.org/events/2025/01-14-parisjug-academy/

Catégorie actualité: 
Image actualité AMP: 

RISC-V : Ubuntu 24.04 est disponible sur HiFive Premier P550

C'est désormais officiel : Ubuntu 24.04 LTS est disponible sur la carte de développement HiFive Premier P550 conçue par SiFive et ESWIN. Cela fait presque 2 ans que Canonical s'active dans la communauté RISC-V. En décembre dernier, les trois partenaires annonçaient la disponibilité rapide de la distribution. La HiFive Premier P550 est une carte de développement utilisant un processeur RISC-V 4 coeurs. La carte est vendue à -400 $ (version 16 Go de RAM). 

Canonical confirme son intérêt pour l'architecture RISC-V et propose un environnement complet pour les développeurs. Aujourd'hui, RISC-V a besoin de logiciels adaptés et de matériels performants, notamment pour le desktop et le monde serveur. L'OS est pré-installé sur la carte.

Catégorie actualité: 
Image actualité AMP: 

NVIDIA Project DIGITS : un ordinateur IA surpuissant dans un barebone

Il existe déjà des PC IA mais NVIDIA va bien au-delà en dévoilant le projet DIGITS. Le PC reprend le format barebone des Intel NUC et Mac Mini. DIGITS n'est pas un autre micro-ordinateur mais plutôt un HPC dédié à l'IA.

Il utilise un NVIDIA G10 Grace Blackweel, 128 Go de RAM, un stockage ultra rapide de 4 To. Le puce NVIDIA embarque une GPU de 1 petaflop de calculs et un CPU intégrant 20 coeurs ARM. DIGITS n'est pas là pour faire du jeu ou de la bureautique, il est taillé pour les LLM de 200 milliards de paramètres, faire de l'entrainement, développer des IA. Il sera possible de mettre en cluster plusieurs DIGITS pour pouvoir utiliser des LLM de 400 milliards de paramètres. La connexion entre les DIGITS pourra se faire via ConnectX qui sont des interfaces Ethernet hautes performantes (jusqu'à 400 Gb/s).

La machine utilise un OS dédié basé sur Linux : DGX OS. Il travaillera en transparence avec DGX Cloud. Tous les SDK et frameworks NVIDIA pourront être utilisés sur la machine. 

DIGITS devrait être disponible à partir de mai 2025 pour un prix de départ de 3 000 $. Reste à voir la configuration de base et les options proposées. DIGITS est un nom de code, peu de chance que ce soit le nom commercial de la machine. 

Catégorie actualité: 
Image actualité AMP: 

Réduire l’empreinte des vecteurs : la quantification vectorielle partie 2

Dossier de Han HELOIR, EMEA Gen AI Solutions Architect (MongoDB)

La quantification vectorielle : Réduire pour mieux produire

1.   Pourquoi compresser les vecteurs ?

La quantification vectorielle est une méthode de compression des embeddings, qui consiste à réduire la précision des vecteurs pour diminuer leur taille en mémoire et leurs besoins en calcul. Cette approche s’inscrit dans une stratégie globale d’optimisation des systèmes d’IA générative, où chaque milliseconde et chaque octet comptent.

Sans quantification, les vecteurs sont généralement stockés en float32, un format numérique utilisant 32 bits par dimension. Cela garantit une précision élevée mais engendre des coûts de stockage exorbitants, une augmentation des latences, et des contraintes pour la scalabilité. La quantification répond à ces défis en réduisant la taille des vecteurs tout en maintenant une précision suffisante pour les tâches courantes.

2.   Les trois grandes méthodes de quantification

Chaque méthode de quantification propose un équilibre différent entre compressionprécision, et performance. Voici un tour d’horizon des principales approches :

a) Quantification scalaire (int8) : La solution universelle

La quantification scalaire réduit la précision de chaque élément d’un vecteur en le mappant à un ensemble pré-défini de niveaux, comme les 255 niveaux disponibles en format int8. Cette méthode divise la taille des vecteurs par 4x à 32x, tout en conservant une grande partie de leur précision.

Comment ça marche?

  1. Les valeurs maximales et minimales de chaque dimension sont identifiées dans l’ensemble de données.
  2. L’espace entre ces valeurs est divisé en niveaux équidistants (ex. : 255 pour int8).
  3. Chaque élément du vecteur est associé au niveau le plus proche, réduisant ainsi sa précision.

Exemple:

Un vecteur original avec des valeurs précises comme [0.456, 0.789, -0.123] pourrait être réduit à [46, 78, -12], tout en maintenant sa signification dans les recherches.

Bénéfices:

-        Réduction importante des coûts de stockage.

-        Compatible avec la majorité des cas d’usage, des moteurs de recherche aux systèmes de recommandations

-        Conservation d’une précision élevée (jusqu’à 96 % dans certains scénarios).

b) Quantification binaire : La compacité maximale

La quantification binaire pousse la compression encore plus loin en réduisant chaque élément à une valeur binaire (0 ou 1). Cela réduit drastiquement les besoins en stockage, mais au prix d’une perte de précision plus marquée.

Comment ça marche?

  1. Les vecteurs sont normalisés dans un espace restreint, souvent entre -1 et 1.
  2. Chaque élément est évalué : s’il est positif, il devient 1 ; sinon, 0.

Exemple :

Un vecteur [0.45, -0.23, 0.78] deviendrait [1, 0, 1].

Bénéfices :

-        Compression maximale, divisant les besoins de stockage par 32x à 64x.

-        Temps de calcul réduit grâce à des représentations simplifiées.

Risque de perte de précision, nécessitant des techniques complémentaires comme le rescoring ou l’oversampling.

c) Quantification par produit (PQ) : La solution modulaire

La quantification par produit (Product Quantization - PQ) divise un vecteur de haute dimension en sous-vecteurs de taille plus petite, chacun étant compressé indépendamment. Cette méthode offre un compromis idéal entre compressionprécision, et efficacité computationnelle.

Comment ça marche?

  1. Le vecteur est divisé en plusieurs segments (ou sous-vecteurs).
  2. Chaque sous-vecteur est associé à un centroïde préalablement calculé (via des algorithmes comme k-means).
  3. Au lieu de stocker les sous-vecteurs eux-mêmes, on ne conserve que les indices des centroïdes correspondants.

Exemple :

Un vecteur [0.45, -0.23, 0.78, -0.11] pourrait être divisé en deux sous-vecteurs [0.45, -0.23] et [0.78, -0.11], chacun étant compressé indépendamment.

Bénéfices:

-        Permet une compression adaptative selon les besoins.

-        Très efficace pour des systèmes traitant des milliards de vecteurs, comme FAISS (Facebook AI Similarity Search).

Performances légèrement inférieures pour les recherches en temps réel.

Cas d’usage recommandé :

-        Systèmes nécessitant une forte scalabilité, comme les plateformes de commerce électronique ou les moteurs de recherche visuelle.

4.   Pourquoi choisir la quantification vectorielle en production ?

a) Réduction des coûts

Selon une étude réalisée par HuggingFace, la quantification scalaire ou binaire peut réduire les coûts de stockage par un facteur de 20x à 30x, tout en maintenant une précision suffisante pour la majorité des cas d’usage. Par exemple : Une base contenant 250 millions de vecteurs passe de 7,5 To à 240 Go.

b) Amélioration des performances

Avec des vecteurs compressés, les recherches deviennent plus rapides car il y a moins de données à traiter. Cela se traduit par une réduction significative de la latence, essentielle pour les applications en temps réel.

Significant storage reduction + good recall and latency performance with quantization on different embedding models(Source: MongoDB blog)

c) Scalabilité accrue

La compression permet de gérer des bases de données volumineuses sans augmenter proportionnellement les coûts en matériel ou en infrastructure cloud. Cela ouvre la voie à une scalabilité durable, même avec une augmentation rapide des utilisateurs et des requêtes.

4.   Techniques avancées pour compenser la perte de précision

Oversampling : Récupère un plus grand nombre de résultats initiaux pour maximiser les chances d’inclure les éléments pertinents.

Rescoring : Affine les résultats en recalculant leur pertinence avec les vecteurs originaux (float32), garantissant des recommandations de haute qualité.

Conclusion : Construire une IA générative scalable

Grâce à des techniques comme la quantification vectorielle et l’indexation HNSW, les entreprises peuvent réduire leurs coûts, améliorer leurs performances, et garantir une scalabilité durable. Ces approches sont essentielles pour transformer les PoC prometteuses en solutions de production robustes et économiques.

Invitation à l’action : Explorez ces techniques dans vos projets et découvrez leur impact sur vos systèmes IA !

Références : 

  1. HuggingFace: Binary and Scalar Embedding Quantization for Significantly Faster & Cheaper Retrieval (https://huggingface.co/blog/embedding-quantization#quantization-experiments)
  2. MongoDB blog: Significant storage reduction + good recall and latency performance with quantization on different embedding models (https://www.mongodb.com/blog/post/vector-quantization-scale-search-generative-ai-applications)
Catégorie actualité: 
Image actualité AMP: 

Réduire l’empreinte des vecteurs : la quantification vectorielle partie 1

Dossier de Han HELOIR, EMEA Gen AI Solutions Architect (MongoDB)

Introduction : la révolution des embeddings et ses défis cachés

L’intelligence artificielle générative, notamment à travers le Retrieval-Augmented Generation (RAG), révolutionne la gestion des données en combinant la puissance des modèles génératifs avec des bases de connaissances structurées. Cette approche permet d’automatiser des tâches complexes tout en accédant en temps réel à des informations précises et pertinentes provenant de multiples sources. 

Au cœur de ces systèmes se trouvent les embeddings, des vecteurs mathématiques capables de représenter des données non structurées telles que des textes, des images, ou des vidéos. Ces vecteurs permettent de réaliser des tâches avancées comme les recherches sémantiques, les recommandations, ou encore l’analyse de similarité.

Cependant, derrière l’innovation se cache une complexité technique. Lors de la phase de PoC (Proof of Concept), la gestion des embeddings peut sembler relativement simple. Mais une fois en production, ces vecteurs deviennent une source importante de coûts, de latence, et de problèmes d’évolutivité. En effet, leur stockage, leur traitement, et leur recherche à grande échelle exigent des infrastructures coûteuses et complexes.

Dans cet article, nous explorons comment la quantification vectorielle, associée à des techniques de l’indexation comme HNSW(Hierarchical Navigable Small World), peut réduire significativement ces obstacles. Ces approches permettent de maintenir des performances élevées tout en rendant la scalabilité plus accessible.

Les défis techniques des embeddings en production

1. Explosion des coûts de stockage

Chaque embedding est une représentation numérique haute dimension, souvent en format float32. Cela signifie que chaque élément du vecteur utilise 32 bits de mémoire. Multipliez cela par des millions, voire des milliards d’embeddings, et vous obtenez des volumes de données astronomiques.

Prenons un exemple concret : une base contenant 250 millions d’embeddings, chacun ayant 1 024 dimensions. En format float32, cette base occuperait 7,5 To d’espace et coûterait environ 3 600 $ par mois sur une plateforme comme AWS. À cela s’ajoutent les frais pour les sauvegardes, la redondance, et la haute disponibilité. Ces coûts deviennent rapidement prohibitifs, notamment pour des start-ups ou des projets avec des budgets limités.

Embeddings et le coût associé (Source: HuggingFace)

2. Latence accrue et surcharge computationnelle

Les embeddings ne se limitent pas au stockage ; ils doivent également être interrogés pour effectuer des recherches rapides et précises. Ces recherches, appelées recherches de voisins les plus proches (Nearest Neighbor Search), nécessitent des calculs dans des espaces vectoriels de haute dimension. Chaque vecteur doit être comparé à d’autres pour déterminer les éléments les plus similaires.

Plus les vecteurs sont longs (haute dimension) et plus la base de données est volumineuse, plus la recherche devient longue. Cela pose un problème critique dans les applications en temps réel, où les utilisateurs s’attendent à des réponses quasi instantanées. Par exemple, une application de recommandations doit répondre en moins de 300 millisecondes pour maintenir une expérience utilisateur satisfaisante. Une recherche trop lente peut entraîner une frustration des utilisateurs et une perte de clients.

3. Scalabilité limitée

À mesure que le nombre d’utilisateurs et de données augmente, les exigences en calcul et en mémoire explosent. Cela entraîne des frais supplémentaires en matériel (serveurs, RAM) et en infrastructure cloud, créant un goulot d’étranglement financier. Les entreprises sont alors confrontées à un dilemme : réduire la qualité du service ou augmenter leurs dépenses.

HNSW : Une indexation intelligente pour les recherches rapides

1. Une structure hiérarchique

HNSW (Hierarchical Navigable Small World) est une méthode d’indexation conçue pour accélérer les recherches dans des bases vectorielles. Contrairement à une recherche linéaire, qui comparerait chaque vecteur à l’ensemble des autres, HNSW construit un graphe multi-niveaux pour organiser les données de manière plus efficace.

Ce graphe hiérarchique fonctionne comme une carte routière :

-        Niveau supérieur : Les autoroutes, qui permettent de parcourir rapidement de grandes distances.

-        Niveaux intermédiaires : Les routes principales, qui affinent la recherche.

-        Niveau le plus bas : Les petites rues, qui mènent aux résultats finaux.

En utilisant cette approche, HNSW réduit drastiquement le nombre de comparaisons nécessaires pour trouver les voisins les plus proches d’un vecteur, tout en garantissant une recherche rapide et précise.

2. Avantages et limitations

HNSW est particulièrement efficace car il :

-        Réduit les temps de recherche, même dans des bases massives.

-        Permet des mises à jour incrémentielles (ajout de nouveaux vecteurs sans reconstruire tout l’index).

Cependant, cette méthode exige une grande quantité de RAM, car le graphe doit être entièrement chargé en mémoire pour offrir des performances optimales. C’est ici que la quantification vectorielle devient essentielle, car elle réduit la taille des vecteurs et, par conséquent, les besoins en mémoire.

Catégorie actualité: 
Image actualité AMP: 

Accident de robots à Los Angeles

Ce n'est pas un film de S-F mais la réalité : le 27 décembre 2024, dans les rues de Los Angeles, un robotaxi de Waymo est entré en collision avec un robot de livraison de Serve Robotics. Selon les vidéos et les commentaires, le robot livreur de Serve traversait une rue alors que le robotaxi tournait au même moment. Qui est à causer l'accident ? 

TechCrunch a voulu en savoir plus et a posé la question à Waymo : comment le système Waymo détecte-t-il un autre robot ? Selon le constructeur, le système (Waymo Driver) a correctement analysé son environnement. Le robot livreur a été vu comme un objet inanimé dans le sens non vivant (humain ou animal). Le système a donc considéré qu'il pouvait continuer sa route sans freiner ni contourner l'obstacle. 

Waymo Drive analyse les objets animés ou non sur sa route et doit pouvoir détecter en temps réel ce qui ne passe sur le route et autour. Si le système doit agir pour sauver un objet animé (= vivant) ce n'est pas pour autant qu'il doit "oublier" les objets inaminé (= non vivant). Ces objets peuvent bouger, tomber sur la chaussée, etc. L'accident de décembre dernier en est la preuve.

Quand on regarde la vidéo de l'accident : le robot livreur traverse la route sur un passage piéton et ralentit quand une voiture passe. Il tente ensuite de monter sur le trottoir, mais fait marche arrière pour se repositionner. C'est à ce moment-là que le taxirobot arrive et heurte le robot. Le robotaxi freine assez fortement mais cela ne suffit pas à éviter le choc frontal. Après quelques secondes, le robot livreur se dégage et reprend visiblement son trajet. Waymo précise que le robotaxi était vide au moment du choc. 

Serve Robotics a répondu à TechCrunch que le robot livreur était contrôlé à distance par un opérateur. Pour les carrefours, c'est la procédure standard. Nos confrères précisent qu'aucun des deux constructeurs n'a répondu sur les causes précises de l'accident ni sur les responsabilités (qui est à l'origine de l'accident ?). Cela pose tout de même des questions sur les futurs accidents : comment définir les responsabilités, rédiger un constat d'accident, etc.

Source : https://techcrunch.com/2024/12/31/a-waymo-robotaxi-and-a-serve-delivery-robot-collided-in-los-angeles/

Catégorie actualité: 
Image actualité AMP: 

Java : Vaadin ou JavaFX pour sa GUI ?

Java Code Geeks publie une liste des frameworks UI pour Java. Ces frameworks permettent de créer des interfaces "modernes". Ces outils permettent de créer des apps graphiques pour les desktop.

Les frameworks les plus récentes :

- Vaadin : orienté interface web app, nécessite un serveur Java, richesse des objets graphiques

- Apache Pivot : basé sur un XML, permet de faire du data binding et de créer rapidement des animations. Popularité limitée.

Les frameworks historiques :

- JavaFX : il reste une référence et offre une grande richesse UI, accélération matérielle

- Swing : framework historique, léger mais dépassé. Pour les apps legacy

- SWT : framework historique, dépendance sur les plateformes. 

Sauf à maintenir les apps historiques, l'usage de SWT et Swing n'est plus d'actualité depuis longtemps. JavaFX est un choix efficace et intégré à la plateforme Java. Il est taillé pour les interfaces modernes, propose une approche déclarative mais attention à l'apprentissage. Vaadin représente une alternative intéressante à JavaFX : pas besoin de CSS ou HTML, propose une collection de composants, typage fort pour limiter les erreurs de runtime. Vaalin propose aussi une approche déclarative avec des templates intégrés. 

A vous de voir si vous optez pour un framework GUI côté client ou côté serveur. 

Le choix de Java Code Geeks : https://www.javacodegeeks.com/2025/01/top-java-gui-frameworks-for-modern-ui-development.html

Présentation de Vaalin : https://vaadin.com/blog/comparing-java-gui-frameworks-vaadin-javafx-and-swing

Catégorie actualité: 
Image actualité AMP: 

Syncfusion 2024 volume 4 : un nouveau composant de Chat disponible

Syncfusion propose dans le dernier pack de composants pour Angular / JS un nouveau composant pour construire un Chat : Angular Chat UI. Il permet aux développeurs de créer un service de chat dans ces apps. Le Chat UI permet de créer des échanges entre utilisateurs, pour créer un chat sur une boutique en ligne.

Le composant intègre :

- une barre d'outils

- chargement des messages à la demande

- affichage des utilisateurs actifs

- personnalisation du composant

Ce composant est disponible sur JS, Angular, React, ASP.Net, Blazor.

Site : https://www.syncfusion.com/blogs/post/new-angular-chat-ui-component

Catégorie actualité: 
Image actualité AMP: 

QNX veut aider les développeurs à créer des apps embarqués

Les systèmes embarqués sont parfois vus comme des objets curieux et difficiles à programmer. L'éditeur QNX veut démocratiser le développement embarqué en proposant des ressources pour des projets non commerciaux : QNX Everywhere. Ce programme permet d'accéder à QNX SDP 8, la plateforme de développement QNX. Des formations et des tutoriels sont également accessibles. 

« L'ingénierie logicielle est le pilier de notre avenir. Elle nous permet de relever les défis les plus complexes de la société, allant de la conduite autonome à la chirurgie robotisée », a déclaré Grant Courville, SVP, Product and Strategy, QNX. « Alors que notre dépendance aux technologies intelligentes et connectées augmente, les initiatives telles que QNX Everywhere, sont essentielles pour rendre l'apprentissage plus accessible. Cette dernière fournit aux développeurs des outils et des technologies de pointe afin de nourrir l'exploration et la créativité, tout en les aidant à résoudre des problématiques comme jamais auparavant. Nous sommes ravis d'élargir l'accès aux solutions QNX, pour une utilisation non commerciale à grande échelle, et nous sommes impatients de voir les innombrables innovations qu'elles susciteront. »

Cette initiative donne accès à :

  • Une licence de développement QNX SDP 8 non commerciale pour un seul utilisateur ;
  • Un kit de démarrage rapide pour Raspberry Pi 4 ainsi que les composants complémentaires associés (applications de rendu, graphiques, écran tactile, caméra, support réseau câblé et Wi-Fi, stockage USB et plus encore).
  • Des accès à des portages open-source QNX supplémentaires et à un code source optimisé.
  • Des accès à des tutoriels dirigés par des ingénieurs, tels que des vidéos accessibles expliquant le développement de logiciels de systèmes embarqués et les concepts de systèmes d'exploitation.

Vous devrez créer un compte QNX : https://www.qnx.com/products/everywhere/

Catégorie actualité: 
Image actualité AMP: 

IPv6 et Java : BigInteger pour faciliter la manipulation

IPv6 est la nouvelle norme IP dans le monde réseau suite à la pénurie d'adresses IPv4. Les deux protocoles sont supportés par Java. IPv4 utilise un adressage 32 bits alors que IPv6 est en 128 bits. 

Comme le précise Oracle : "IPv6 dans Java est transparent et automique. Un portage n'est pas nécessaire et il n'y a pas de recompilation à faire.". Bref, tout est fait pour être le plus transparent possible et ce, depuis plusieurs années. Si vous avez besoin impérativement d'IPv4, vous pouvez configurer java.net.preferIPv4Stack en true. Il est false par défaut. 

Vous pouvez aussi avoir besoin de stocker ou de manipuler simplement les adresses IPv6. Pour ce faire, vous pouvez utiliser BigInteger pour convertir. BigInteger est une classe Java immutable ce qui est particulièrement pratique pour maniper des adresses IP sans risquer de les modifier. Bien entendu, vous pouvez convertir d'IPv6 vers BigInteger et inversement

Présentation d'Oracle : https://docs.oracle.com/javase/8/docs/technotes/guides/net/ipv6_guide/

Configuration réseau : https://docs.oracle.com/javase/7/docs/api/java/net/doc-files/net-properties.html

Tutoriel pour utiliser BigInteger : https://www.javacodegeeks.com/convert-ipv6-to-biginteger-in-java.html

Catégorie actualité: 
Image actualité AMP: 

OpenJDK 24 et 25 : point de situation

OpenJDK 24 commence à accélérer son développement. La build 30 a été livrée le 3 janvier. La 1ere version RC est attendue fin février. La build 30 apporte surtout des corrections de bugs. La version 24 s'annonce comme une mise à jour importante. 

Lien : https://github.com/openjdk/jdk/releases/tag/jdk-24%2B30

Liste des JEP :

404:Generational Shenandoah (Experimental)

450:Compact Object Headers (Experimental)

472:Prepare to Restrict the Use of JNI

475:Late Barrier Expansion for G1

478:Key Derivation Function API (Preview)

479:Remove the Windows 32-bit x86 Port

483:Ahead-of-Time Class Loading & Linking

484:Class-File API

485:Stream Gatherers

486:Permanently Disable the Security Manager

487:Scoped Values (Fourth Preview)

488:Primitive Types in Patterns, instanceof, and switch (Second Preview)

489:Vector API (Ninth Incubator)490:ZGC: Remove the Non-Generational Mode

491:Synchronize Virtual Threads without Pinning

492:Flexible Constructor Bodies (Third Preview)

493:Linking Run-Time Images without JMODs

494:Module Import Declarations (Second Preview)

495:Simple Source Files and Instance Main Methods (Fourth Preview)

496:Quantum-Resistant Module-Lattice-Based Key Encapsulation Mechanism

497:Quantum-Resistant Module-Lattice-Based Digital Signature Algorithm

498:Warn upon Use of Memory-Access Methods in sun.misc.Unsafe

499:Structured Concurrency (Fourth Preview)

501:Deprecate the 32-bit x86 Port for Removal

Les équipes travaillent déjà sur la JDK 25 prévue pour l'automne ! Pour le moment, il s'agit surtout de la mise en place du projet. Aucune JEP n'est annoncée. Page officielle : https://jdk.java.net/25/

Catégorie actualité: 
Image actualité AMP: 

Raspberry Pi 5 : le tunning SDRAM fait gagner 20 % de performances

Jeff Geerling a publié un post particulièrement intéressant sur le tuning de la SDRAM sur la Pi 2. Le résultat est sans appel : jusqu'à 20 % de performances en plus à fréquence processeur identique ! Jeff a tenté l'expérence en overclokant le SoC. Résultat : +32 % sur sa configuration. 

Par défaut, ces optimisations ne sont pas activées. Jeff explique que ces gains se font en faisant du tuning de la mémoire SDRAM. Bref, ces réglages sont prévus par design. La Pi 5 possède une SDRAM plus rapide que la Pi 4 et elle possède un meilleur accès aux composants via un bus interne plus rapide. Merci le NUMA.

Pour améliorer le rendement de le SDRAM, il faut :

1 installer le dernier firmware

2 éditer le bootloader config

3 ajouter l'option SDRAM_BANKLOW=1 

4 Redémarrer

Jeff précise que le noyau de Raspberry Pi OS possède désormais les patchs nécessaires pour l'émulation NUMA. 

Pour l'overclock du SoC, c'est simple. On ouvre le config.txt et on ajoute : 

over_voltage_delta=72000
arm_freq=3200
gpu_freq=1000

Attention : il faut impérativement un système de refroidissement sur la Pi pour éviter une surchauffe. Forcez l'utilisation du ventilateur.

Pour Jeff, ce tuning de la rémoire pourrait être activé par défaut dans les prochains mois. 

Post source : https://www.jeffgeerling.com/blog/2024/raspberry-pi-boosts-pi-5-performance-sdram-tuning

Framboise314 a publié une traduction complète du post : https://www.framboise314.fr/boostez-votre-raspberry-pi-4-ou-5-en-affinant-lacces-a-la-sram/

Catégorie actualité: 
Image actualité AMP: 

GenIA : tabnine veut trouver les licences d'utilisation des codes générés

Retour vers le passé : un des objectifs des scanneurs de code était de découvrir l'origine des codes utilisés pour déterminer les licences d'utilisation et éventuellement les conflits inter-licences et les risques légaux de ces codes pour les entreprises. L'éditeur tabnine veut aider les développeurs et les entreprises à déterminer les licences des codes générés par la GenIA. N'oublions pas que la GenIA ne génère pas du code par pur magie. Derrière, nous avons des LLM ou SLM qui eux-mêmes s'appuient sur des données pour entraîner les modèles et donc pouvoir répondre à nos prompts.

Problème 1 : les codes utilisés pour l'inférence peuvent être mis sous une licence précise, par exemple licence GPL, MIT, Apache, etc. 

Problème 2 : les licences ne sont pas identiques et peuvent rentrer en conflit quand des codes / librairies d'un projet sont sous différentes licences

Problème 3 : comment les répérer dans du code fourni par la GenIA ?

"(...)ces modèles sont entraînés sur de vastes quantités de données collectées sur internet, y compris du code soumis à des restrictions d'utilisation, ce qui introduit un risque d'infraction à la propriété intellectuelle. Étant donné que la législation sur l'utilisation du contenu généré par l'IA reste incertaine, les équipes d'ingénierie des entreprises cherchent à trouver un équilibre : profiter des gains de performance offerts par ces modèles tout en minimisant le risque d'intégrer du code sous licence copyleft dans leur base de code." précise Tabnine

"Pour répondre à ces objectifs, Tabnine est ravi d'annoncer Provenance et Attribution, une nouvelle fonctionnalité qui réduit le risque d'infraction à la propriété intellectuelle lors de l'utilisation de modèles tels que Claude d'Anthropic, GPT-4o d'OpenAI(...) Tabnine vérifie désormais le code généré dans notre chat IA par rapport au code publiquement visible sur GitHub, signale toute correspondance trouvée et référence le dépôt source ainsi que le type de licence associé. Ces informations essentielles facilitent la révision des suggestions de code et permettent de décider si elles répondent à vos exigences et politiques spécifiques." poursuit l'annonce de l'éditeur.

Bref : n'oubliez jamais de vérifier l'origine des codes snippets ou des libs que vous utilisez. Les conflits inter-licences sont réels et sont parfois très complexes à gérer. 

Post source : https://www.tabnine.com/blog/introducing-provenance-and-attribution-minimize-ip-liability-for-genai-output/

Catégorie actualité: 
Image actualité AMP: 

FOSDEM 2025 : l'événement européen du monde Open Source

C'est LE rendez-vous incontournable du monde Open Source depuis 25 ans. Plus de 7 000 développeurs sont attendus pour l'édition 2025. Plus de 930 sessions et ateliers sont planifiés sur 74 thèmes. L'événement se déroule dans plus de 40 salles de l'université libre de Bruxelles !

Les Developer rooms sont thématiques. Impossible de tout lister, voici quelques tracks à suivre : Android Open Source Project, APIS, Confidential Computing, Containers, Declarative and Minimalistic Computing, Free Java, GCC, Go, HPC, LLVM, Kernel, WebAssembly, Quantique, RISC-V, sécurité, embarqué & automobile.

Quand : les 1er et 2 février 2025 à Bruxelles

Site officiel : https://fosdem.org/2025/

Catégorie actualité: 
Image actualité AMP: 

Gemini Code Assist : Google veut aider les développeurs

C'est un peu la promesse de tous les assistants de codage et de la GenIA : nous aider au quotidien et générer du code pertinent. Google Code Assist peut être utilisé dans les principaux IDE du marché (Visual Studio Code, IntelliJ, PyCharm, etc.). Il supporte plus de 20 langages. Comme les autres solutions, tout passe par le prompt / chat en langage naturel. 

Code Assist utilise les dernières générations de LLM : Gemini 2.0 Flash. Il affiche beaucoup de promesses :

- un flux constat disponible dans son IDE

- un toolkit pour étendre les possibilités

- apporter une qualité de réponse et minimiser la latence

- personnalisation du fonctionnement avec nos propres données

- prise en compte du contexte et du code utilisé

Deux versions sont disponibles :

- Code Assist Standard : complétion du code, génération de code, support des données locales, Firebase, Colab Enterprise, à partir de 22,80 $ / mois ou 19 $ en annuel

- Code Assist Enterprise : pour les entreprises et les équipes, plus de technologies Google supportées, à partir de 54 $

Les tarifs sont globalement plus élevés que ceux de GitHub Copilot. L'outil n'a pas le droit à l'erreur. 

Présentation complète : https://cloud.google.com/products/gemini/code-assist

Catégorie actualité: 
Image actualité AMP: 

ANSSI met en open source son système d'échange de fichiers par diode

L'ANSSI met en open source sa solution de transfert d'information entre 2 réseaux distincts avec des niveaux de sécurité différents via... une diode physique. Ce système a pour nom Eurydice (émetteur unidirectionnel redondant de yottabit pour le dialogue intergiciel avec correction d'erreur). 

A quoi sert Eurydice ? "Pour les utilisateurs, Eurydice propose une interface web intuitive et ergonomique (fonctionnalités d’upload drag-n-drop, visualisation rapide des fichiers, etc.) ainsi qu’une API pour scripter les actions, avec la possibilité d’ajouter des métadonnées supplémentaires aux fichiers transférés. Ce guichet de diodes élaboré par l’ANSSI facilite également la prise en mains des administrateurs en mettant à disposition des fonctionnalités multiples (gestion des comptes utilisateurs, authentification par Kerberos, endpoint de métrics, etc.)." explique la page officielle.

Les deux réseaux fonctionnent chacun de leur côté, le transfert se fait donc physiquement par une diode. Pour assurer ce transfert et ce lien physique, Euridyce utilise Lidi. Lidi permet de copier des flux et des fichiers en TCP ou via Unix sur un lien unidirectionnel. La diode n'est pas obligatoire. Le réseau unidirectionnel par diode a été développé dès les années 1980. Attention, il faut que chaque réseau puisse communiquer, il faut installer un module réseau identique (ou compatible). 

Opswat présente ainsi cette approche : "Une passerelle de sécurité unidirectionnelle est une solution matérielle de cybersécurité qui assure un transfert d'informations unidirectionnel entre deux réseaux. S'appuyant traditionnellement sur une connexion par fibre optique pour assurer des transferts de données unidirectionnels, les diodes de données peuvent rencontrer des problèmes de fiabilité de transmission et de dépassement de données, alors que les passerelles de sécurité unidirectionnelles modernes incluent des mécanismes de livraison assurée pour surmonter ces défis. Les passerelles unidirectionnelles et les diodes de données sont courantes depuis des décennies dans les environnements de haute sécurité, tels que les installations des agences de défense et de renseignement."

Qui dit unidirectionnel, dit une circulation des informations que dans un sens. Il n'est pas possible de faire des transferts dans les 2 sens. Cette approche permet par exemple de transférer des données d'un système critique et sécurité vers un système plus ouvert. On peut assimiler la diode de données comme une valve que l'on ouvre et que l'on ferme. 

Ce principe de direction unique est le fonctionnement de la diode. Une diode est un composant qui fonctionne que dans un unique sens. Il existe de multiples de solutions sur le marché. 

Eurydice est disponible sur GitHub : https://github.com/ANSSI-FR/eurydice. Une API facilite la mise en place de ce réseau et pour réaliser les transferts. 

Catégorie actualité: 
Image actualité AMP: 

Puppet : vers un fork pour contourner les limitations à venir ?

Depuis que l'outil open source Puppet est passé sous le giron de l'éditeur Perforce, la communauté observait. La modification de licence est sans doute l'affront de trop. En effet, les versions modifiées directement par les équipes Perforce ne sont plus intégrées à la version open source. L'accès à ces codes "privés" se fera par un accord spécifique... et ce, même si Perforce maintient la licence Apache 2.

Depuis quelques jours, la communauté s'agite et un fork est de plus en plus évoqué. Pour Antoine Beaupré, Perforce arrête de rendre publique les packages et le code Puppet modifié par Perforce n'est plus disponible publiquement. Selon Beaupré, Perforce encourage une version totalement open source. Source : https://devops.com/perforce-forks-puppet-community-considers-muppet/

La question n'est pas de savoir si un fork de Puppet sera fait mais quand et sous quel nom. Le nom de Muppet pourrait être une des appelations... Le projet OpenPuppetProject a été créé même si aucun code n'est disponible... pour le moment. 

A suivre

Catégorie actualité: 
Image actualité AMP: 

Apache Struts 7 : Jakarta EE, Java 17, sécurité, modernité

Struts est un framework bien connu des développeurs (web) Java. Le framework est disponible en version 7. Cette version est une évolution majeure .

Les évolutions les plus marquantes :

- transition vers Jakarta EE : performances, sécurité, plus moderne que Java EE, namespace jakarta

- Java 17 est la version par défaut de Structs 7

- focus sur la sécurité : les paramètres par défaut se veulent mieux sécurisés, invocation méthode dynamique désactivée par défaut, meilleure protection CSRF (cross-site request forgery)

- meilleure gestion des erreurs des exceptions

- dépréciation des fonctionnalités trop anciennes (voir la release note), retrait de 9 plugins (attention à vérifier leur présence et gérer leur retrait)

Note de version : https://cwiki.apache.org/confluence/display/WW/Version+Notes+7.0.0#VersionNotes7.0.0-Bug

Catégorie actualité: 
Image actualité AMP: 

Installer un SSD NVMe sur sa Raspberry Pi 5

La Raspberry Pi 5 permet d'installer facilement un stockage externe de type SSD NVMe au format M.2 via une HAT dédiée et le port PCIe disponible sur la Pi 5. Sur la Pi 4, il fallait passer par le port USB autorisant le boot car la ligne PCIe nétait pas accessible via un connecteur. 

Matériel nécessaire

- Raspberry Pi 5 avec une carte SD avec Raspberry Pi OS

- HAT PCIe M.2 avec son ruban pour connecter la HAT à la Pi 5

- SSD NVMe format M.2 128 Go (ou plus) 

Coût du matériel (hors Pi 5, écran, clavier, souris) : env. 30 €

Etape 1 : on monte la HAT M.2, on connecte le ruban et on installe la barrette NVMe

Etape 2 : mise à jour 

Dans le Terminal du Pi OS, on met à jour l'OS et le firmware : 

sudo apt update && sudo apt upgrade -y

sudo rpi-eeprom-update puis sudo rpi-eeprom-update -a

La dernière commande permet de mettre à jour le firmware de la carte.

Etape 3 : Raspi-config

Ouvrez rapsi-config (depuis le menu). On va vérifier dans Advanced Option -> Bootload version -> Latest : use the latest version boot ROM software. On valide et on redémarrage pour mettre à jour le firmware et valider la configuration

Etape 4 : NVMe es-tu là ?

La commande ls /dev/nvme permet de vérifier la présence du SSD et qu'il soit bien reconnu par le système. Si ce n'est pas le cas, vérifiez l'installation matérielle et refaite les étapes 2 et 3

Etape 5 : Raspberry Pi Imager

Ouvrez l'outil Pi Imager. Sélectionnez dans l'odre : 

Choose device : Pi 5

Choose OS : Raspberry Pi OS 64 bits

Choose storage : SSD NVMe 128 Go

Cliquez sur NEXT. Pour effacer le contenu du SSD, vous devez confirmer avec votre mot de passe admin / root. L'installation prend environ 15 minutes, selon la rapidité de votre connexion réseau

Avec la dernière version de l'OS, nous n'avons pas besoin de configurer le boot order mais si vous garder une SD sur la Pi, vous devrez le configurer. 

Quand tout est prêt, l'installateur vous invite à retirer la carte SD. Redémarrez.

Etape 6 : configuration de l'OS

La Pi 5 va redémarrer plusieurs fois avant d'afficher la configuration système : nom de la Pi, mot de passe, wifi, etc. Il va automatiquement mettre à jour l'OS et le firmware. Après un dernier redémarrage, votre Pi 5 avec SSD NVMe est prête à être utilisée. 

Quelques éléments de performances

Attention, cette solution ne rivalise pas avec les NVMe USB C / Thunderbolt mais c'est une solution plus pratique que la carte SD et bien plus performante. 

Boot à froid : 22,8s sur la SD, 16,36s sur le SSD NVme

Lecture / écriture aléatoire sur la SD (IOPS) : 4066 / 647

Lecture / écriture aléatoire sur le NVMe (IOPS) : 105 703 / 95 672

Lecture / écriture séquentielle sur la SD (IOPS) : 91 851 / 10 574

Lecture / écriture séquentielle sur le NVMe (IOPS) : 431 157 / 388 361

Le SSD NVMe est incontestablement un avantage et les performances sont largement supérieures. Plusieurs tests montrent des performances multipliées par 3 ou 4 en mo/s.

Si vous faites de l'inférence LLM sur votre Pi, il est vivement conseillé d'utiliser cette configuration ou même en moder serveur.

Catégorie actualité: 
Image actualité AMP: 

Go Survey 2024 H2 : 93 % des dévs sont contents du langage

Que retenir de la dernière étude du monde Go menée en septembre dernier ? 4 points clés sont à retenir :

- 93 % des répondants se disent très contents du langage et de la manière de travailler avec Go

- 70 % utilisent de la GenIA pour créer des assets Go

- le déploiement des API et SDK est simple et rapide

- la maintenance du code existant est LE défi technique (à nuancer)

Deux OS sont les plus utilisés pour coder en Go : Linux et macOS. Windows et WSL arrivent loin derrière. Les IDE de référence sont sans surprises : Visual Studio Code et JetBrains GoLand. Il est intéressant de constanter que 96 % disent déployer les environnements Go sur Linux en cloud ou dans des conteneurs. L'architecture de référence reste x86 (92 %). L'architecture ARM est tout de même présente pour la moitié des répondants. Dans le cas d'un déploiement en Web Assembly, JS est le langage de référence. 

Parmi les autres IDE utilisés : nous trouvons Vim. Les autres éditeurs sont ultra minoritaires. Par contre, l'IDE préfére n'est pas tranché : VS Code est légèrement devant GoLand. 

Les autres outils :

- analyse de codes : gopls, golandcilint

- AWS est le cloud le plus utilisé 

- AWS EKS / EC2 sont les plus utilisés pour les conteneurs

- les LLM / GenIA sont souvent utilisés pour générer du code Go : code complétion, écrire des tests, générer du code depuis une description. ChatGPT, Copilot sont les modèles les plus utilisés

Quels sont les usages de Go ? 75 % disent créer des API et des services RPC, 62 % évoquent créer des CLI, 45 % l'utilisent pour des sites web ou pour créer des frameworks / librairies.

La maintenance du code est le plus grand défi pour les développeurs Go pour 23 % mais 35 % disent que cela n'est pas un défi. Il est à noté que 33 % des répondants au survey ont -2 ans d'expérience en Go. Ce ne sont pas pour autant des débutants en développement. Seuls 11 % sont nouveaux (-2 ans). Ils sont surtout dans des ESN et des entreprises. 19 % travaillent aux USA, 10 % en Allemagne. Seulement 4 % sont en France. 

Catégorie actualité: 
Image actualité AMP: 

Programmez hors série 17 spécial IA est disponible

Pour terminer en beauté 2024, notre hors série IA est disponible dès maintenant. Dans ce numéro, nous vous proposons un panorama très complet de l'IA et de la GenIA :

- éthique et sécurité

- les brevets dans l'IA : une question sensible

- Retour d'expérience 

- Comment la GenIA peut nous aider au quotidien ?

- Utiliser et découvrir LangChain4j

- Apple Intelligence : côté usage et plomberie

- Découvrir le tout nouveau GitLab Duo

- Coder Fibonacci avec ChatGPT !

- Créer une GenIA avec OLLAMA et Go sur une Rapsberry Pi !

- Utiliser la Pi Camera AI

Ce numéro est disponible en kiosque, sur abonnement, en version papier et en PDF : https://www.programmez.com/magazine.php

Catégorie actualité: 
Image actualité AMP: 

MongoDB profite de son événement annuel en France pour présenter sa vision de l'IA

par Joffray Anduze, DG France de MongoDB.

Le succès grandissant de MongoDB dans le secteur de l'IA s'est confirmé lors de son événement MongoDB.local Paris, qui a attiré plus de 1 000 développeurs et experts IT. Très riches en annonces, l'événement a également permis au public de découvrir les dernières innovations technologiques de MongoDB et leur potentiel de transformation. Le public a pu bénéficier des retours d’expérience d’utilisateurs ayant exploité toute la richesse de MongoDB provenant de plus d’une quinzaine de clients de premier plan évoluant sur des secteurs variés (Adeo, Amadeus, Auchan Retail international, Axa, Boulanger, Carrefour, Crédit Agricole Technologies & services, Décathlon, KONE, L’Oreal, Michelin, Monoprix, TotalEnergies). 

Parmi ces témoignages, on peut notamment citer celui du Crédit Agricole Technologies & Services, qui a partagé son expérience de modernisation du SI de Crédit Agricole pour le transformer en un SI modulaire, avec un fort découplage produit. L’équipe a présenté la manière dont elle avait utilisé une base de données MongoDB pour développer un moteur de pilotage unifié, garantissant une cohérence de parcours quel que soit le canal utilisé et facilitant les évolutions de demain.

Démocratiser l'accès à l'intelligence artificielle

Face au constat que la plupart des entreprises peinent encore à concrétiser leurs ambitions en matière d'IA, MongoDB leur propose une stratégie globale d'accompagnement. Elle a identifié les principaux obstacles freinant la mise en œuvre des projets d’IA : la complexité croissante du paysage technologique, le manque de compétences internes et les préoccupations liées à la sécurité et aux performances.

Pour répondre à ces défis, MongoDB a lancé le MongoDB AI Applications Program (MAAP), qui sera disponible en accès anticipé dès juillet. Ce programme apporte aux organisations les architectures de référence nécessaires pour développer leurs applications IA, tout en garantissant l'intégration avec des partenaires de premier plan tels qu’Anthropic, Cohere et Fireworks AI. 

Services professionnels et innovations techniques

L'entreprise renforce son offre avec deux nouveaux services professionnels stratégiques. Le premier aide les clients à identifier leurs opportunités prioritaires en matière d'IA, tandis que le second, l'AI Accelerator, accompagne le développement des projets de l'idée à la production.

« L’accueil plus que positif du public à l'annonce de l’intégration d'Atlas Vector Search et d’Atlas Edge Server dans MongoDB Community Edition, témoignent de l'enthousiasme des développeurs », commenteJoffray Anduze, DG France de MongoDB« Cela témoigne de l'appréciation des développeurs pour notre engagement continu à enrichir notre plateforme, pour leur permettre de développer des applications modernes plus rapidement et efficacement, en exploitant pleinement les capacités de l'IA. »

Une plateforme unifiée pour l'ère de l'IA 

Proposant une architecture unique pour l'ensemble de la stack IA, MongoDB s'impose comme la référence pour le RAG (Retrieval Augmented Generation) et les systèmes d'agents. La plateforme permet en effet d'unifier les différents types de données - sources, embeddings vectoriels, métadonnées et données générées - au sein d'un même environnement. 

De plus, d'importantes évolutions techniques sont annoncées pour la fin d'année, notamment l'intégration de la recherche plein texte et vectorielle au sein de MongoDB Community Edition. Ces fonctionnalités faciliteront l'expérimentation et le développement d'applications IA, y compris pour les déploiements edge et on-premise. 

Optimisation des performances et des coûts 

Pour répondre aux enjeux d'optimisation, MongoDB étend ses nœuds dédiés Atlas Search aux trois principaux fournisseurs cloud. Cette fonctionnalité, initialement disponible sur AWS, permet d'isoler les charges de travail des recherches vectorielles sans isoler les données, offrant une gestion plus efficace des ressources via l'Atlas CLI ou l'Infrastructure-as-Code.

Au-delà de l'IA : traitement temps réel et analyse prédictive 

Si l'IA était au cœur de l'événement, MongoDB renforce également ses capacités dans d'autres domaines essentiels. La disponibilité générale d'Atlas Stream Processing, la preview d'Atlas Edge Server et les améliorations de performance pour les séries temporelles dans MongoDB 8.0 permettent de répondre à des besoins variés, de la détection de fraude à la maintenance prédictive.

Vision stratégique et écosystème MongoDB positionne sa plateforme, son réseau de partenaires et ses solutions sectorielles comme des atouts majeurs dans un marché en pleine mutation. Cette approche vise tant les organisations qui débutent dans l'IA générative que celles déjà engagées dans cette transformation.

En simplifiant constamment le travail avec les données, MongoDB poursuit sa mission d'accompagnement des développeurs, de l'expérimentation à l'impact concret. L'entreprise démontre ainsi sa capacité à transformer "le bruit de l'IA" en solutions tangibles pour ses clients.

Catégorie actualité: 
Image actualité AMP: 

PyCharm : 11 (bonnes) raisons d'utiliser dbt Core

L'équipe PyCharm veut nous aider à mieux coder en Python et à optimiser nos codes et couches techniques. Un post mérite une lecture attentive : les bonnes raisons pour utiliser dbt Core dans PyCharm. dbt Core est un frameworks de transformation des données. Il ne fonctionne pas comme un ETL classique, il se concentre uniquement sur le T (T pour transformation). Le E correspond à extraire et le L à chargement. Le framework permet de se connecter à son data warehouse (ou tout autre source de données) et nous aide à préparer les données pour être ensuite transformer pour traitement et analyse. 

Les arguments pour son utilisation dans les projets PyCharm (version Professional) sont :

- modularité et réutilisation du code

- versioning des projets dbt dans Git / GitHub

- tests

- documentation : dbt génère la documentation pour les modèls de données

- l'IDE permet une intégration fluide de dbt

- espace de travail unifié pour les bases de données et le framework

- intégration depuis l'IDE entre Git et dbt

- autocomplétion des fichers yml et SQL

- historique des modifications

- assistance IA

- explorateur de projet dbt complet

Le post et les démos : https://blog.jetbrains.com/pycharm/2024/12/dbt/

Catégorie actualité: 
Image actualité AMP: 

LG ouvre son API ThinQ pour faciliter la domotique

Le constructeur LG a annoncé l'ouverture de son API ThinQ. ThinQ est une plateforme domotique supportée par les matériels du constructeur. Pour faciliter la diffusion de son API et de sa plateforme, LG a ouvert un portail dédié : https://smartsolution.developer.lge.com/ko/cloud/landing

LG propose deux API distinctes : 1 pour les utilisateurs, 1 pour les partenaires. L'API fournit un accès distant aux matériels compatibles. Elle facilite le contrôle de l'appareil et son monitoring. "Pour les utilisateurs individuels, l’API ThinQ offre la possibilité de piloter et de surveiller les appareils électroménagers enregistrés dans l’application LG ThinQ depuis différentes plateformes de maison intelligente. Grâce à cette API, n’importe qui peut créer facilement une maison intelligente personnalisée correspondant à son mode de vie." précise l'annonce.

Les matériels compatibles sont nombreux : électroménager, machine à laver, ventilateur, qualité de l'air, etc. Attention, les scénarii avec l'API standard sont plus limités que l'API Business. Dans les cas d'usage proposés, seule la partie maison intelligente utilise l'API standard. 

A noter que le site développeur ThinQ Cloud est remplacé par le portail API. 

Catégorie actualité: 
Image actualité AMP: 

BADBOX : 192 000 terminaux Android infectés

Il y a quelques jours, l'ANSSI allemande, la BSI, avait alerté sur l'infection de plus de 30 000 terminaux Android par un malware pré-installé en Allemange : BADBOX. Il permet de créer des portes dérobées au coeur du système et déployer des Bot. La criticité est élevée. La BSI avait même décidé de bloquer l'accès à ces 30 000 terminaux. Elle précise que BADBOX touche des versions obsolètes d'Android.

Au-delà de l'Allemagne, BADBOX se diffuse. Plus de 192 000 terminaux sont considérés comme touchés. Mais visiblement, il se propage régulièrement. Les pays les plus touchés : Chine, Russie, Inde

BADBOX appartient à la famille des Triada. L'infection se fait majoritairement par des terminaux provenant de constructeurs peu connus / obscurs. Les hackers piratent alors la chaine de production ou la logistique pour injecter le malware. La première trace de BADBOX remonte à 2023. Le but principal de BADBOX est financier. 

Schéma de fonctionnement du malware (Source: BitSight) :

Catégorie actualité: 
Image actualité AMP: 

IA : risque énergétique sur l'Amérique du Nord, et en Europe ?

L'explosion de l'IA auprès du public et des entreprises pose un défi hors norme sur le réseau électrique, ce que l'on appelle la power grid. La North American Electric Reliability Corporation (NERC) s'inquiète d'une croissance de la demande énergétique "folle" sur les 10 prochaines années. L'IA exige d'énormes capacités de traitements, donc des datacenters. Le NERC alerte sur les risques réels sur le réseau énergétique aux Etats-Unis et au Canada. 

Trois points clés expliquent les risques :

  • Fermeture des centrales : Les arrêts accélérés de centrales au charbon, au gaz naturel et de certains sites nucléaires diminuent les capacités de production.
  • Réseau vieillissant : Le réseau électrique nord-américain n'est pas toujours adapté à l'augmentation rapide de la demande, augmentant les risques de pénuries. Un réseau mal adapté limite la livraison et le transport de l'énergie avec des risques de pertes croissants.
  • Projection 2025-2034 : Une baisse des réserves énergétiques est prévue, avec des pénuries possibles dès 2025, touchant d'abord le centre-est des États-Unis, puis s'étendant vers l'ouest d'ici 2029-2031. Le Canada est également concerné à court terme.

« L’arrêt accéléré des centrales au charbon, au gaz naturel et de sites nucléaires existants peut avoir un effet négatif profond sur l’adéquation des ressources et la fiabilité du système de production d’électricité au cours des dix prochaines années », a déclaré la NERC.

Ainsi le rapport LTRA 2024 du NERC précise que cet été, la demande supplémentaire a été très forte : +132 gigawatts, +80 gigawatts sont attendus pour l'hiver, voire, plus les températures sont basses.

Pour le NERC, une pénurie énergétique, du moins d'une baisse significative des "réserves de production" entre 2025 et 2034 est à prévoir. Plusieurs Etats américains seront rapidement concernés (centre est du pays) mais peu à peu, les risques vont s'étendre vers 2029-31 vers l'Ouest américain. Le Canada est concerné à court terme. Il faut réagir vite, très vite et lancer les chantiers et les projets dès 2025/2026. 

La Bank of America avait prévenu cet été qu'il faudrait ajouter une capacité de production de 18 à 28 gigawatts dès 2026, ce qui est colossale. Les Etats-Unis et le Canada subissent la fermeture des centrales fossiles mais les autres productions ne compensent pas ou alors uniquement sur certaines régions. A titre de comparaison, l'EPR de Flamenville (France) fournira en pleine puissance 1 600 mégawatts. Pour ajouter 18 gigawatts sur le réseau américain, il faudrait plus de 10 EPR à pleine charge !

Ce n'est donc pas un hasard si les géants de la technologie investissent massivement dans le nucléaire : sur des réactions actuels ou sur de nouveaux projets de type SMR. Le SMR est un réacteur nucléaire modulaire de petite taille, moins complexe qu'un réacteur classique et plus rapide à construire. En France, EDF a annoncé une refonte technique de son projet SMR, le Nuward. Objectif : une capacité de 400 mégawatts au lieu des 170 initiaux. EDF espère une disponibilité dès 2030. 400 mégawatts représente 0,4 gigawatt. Pour une production de 18 gigawatts, il faudrait 45 SMR de 400 mégawatts.

La question du réseau énergétique et de la production se pose en France et en Europe où les datacenters se multiplient. 

En partenariat avec Qbyte Magazine.

Catégorie actualité: 
Image actualité AMP: 

GitHub CoPilot est gratuit sur Visual Studio Code

C'est LA nouvelle de la nuit pour tous les dévs utilisant Visual Studio Code et rêvant d'utiliser CoPilot. Microsoft vient d'annoncer un plan gratuit : sans période d'essai, sans CB ! Il faut avoir un compte GitHub actif. Ce plan gratuit propose jusqu'à 2 000 complétions de code par mois, 50 messages par mois et vous pouvez utiliser GPT-4o et Claude 3.5 Sonnet. D'autres LLM sont disponibles uniquement dans les versions payantes. 

Pour l'activer :

- vous devez avoir un VS Code à jour

- sur l'icône GitHub CoPilot l'option Copilot for Free doit apparaitre. 

- connectez-vous à votre compte GitHub

- si tout ce passe bien, GitHub CoPilot est activé

Dans notre cas, nous avons eu quelques soucis d'activation car nous avions déjà une version trial / essai actif mais après quelques redémarrage de l'IDE et une vérification sur https://github.com/settings/copilot tout est rentré dans l'ordre... La page settings permet de voir l'état de votre compte CoPilot et le plan actif. Comme vous pouvez le voir, Copilot free est bel et bien actif. 

CoPilot Free inclut :

- 2 000 complétions de codes

- 50 messages par mois (Copilot Chat dans l'IDE)

- Copilot Chat sur GitHub (et non dans l'IDE) : accessible

Vous pouvez utiliser Copilot Free même si vous avez une version d'essai ou un souscription Copilot pro. 

Quelques détails : https://docs.github.com/en/copilot/managing-copilot/managing-copilot-as-an-individual-subscriber/about-github-copilot-free

Les différents plans disponibles : https://docs.github.com/en/copilot/about-github-copilot/subscription-plans-for-github-copilot

Enjoy !

Catégorie actualité: 
Image actualité AMP: 

Kali Linux 2024.4 : Linux 6.11, Python 3.12, nouveaux outils de hacking et de pentesting

Kali Linux est une des références des systèmes dédiés aux hackeurs et aux experts de sécurité. La distribution est disponible en version 2024.4. Elle se base sur Debian. Elle est disponible sur Raspberry Pi, x86_64, Apple Silicon. Kali ne supporte plus les architectures i386.

La version 2024.4 introduit de nombreuses évolutions :

- Python 3.12 est disponible par défaut. PIP n'est plus recommandé. PIPX est recommandé pour les paquets.

- Fin des clés DSA dans le client SSH

- personnalisation de l'OS sur Raspberry Pi Imager. Idéal pour faire une préconfiguration de l'OS avant de flasher une carte SD !

- Support de Gnome 47

- nouvelle fenêtre de login

Côté outil de hacking, Kali 2024.4 propose de nouveaux outils (aperçu) :

- bloodyad : élevation des droits dans Active Directory

- chainsaw : pour trouver rapidement les événements keywords, détection des règles, etc. 

- hexwalk : éditeur et analyseur des HEX, UTF8, regex et UTF16

- outil de pentesting pour MSSQL : mssqlpwner

- python-pipx : exécuter des binaires Python dans des environnements isolés

- web-cache-vulnerability-scanner : outil pour tester les caches web

Note de version : https://www.kali.org/blog/kali-linux-2024-4-release/

Catégorie actualité: 
Image actualité AMP: 

SimpleQA : des benchmarks peu flatteurs et une hallucination au top pour les LLM

SimpleQA est un benchmark lancé par OpenAI pour mesurer la pertinence et la qualité des LLM et vérifier l'hallucination des modèles. SimpleQA repose sur plusieurs critères : la justesse des réponses (ouf !), la diversité des sujets demandés, la rapidité pour obtenir une réponse. Basiquement, SimpleQA pose 4 326 questions pour couvrir une multitude de sujets. Ces résultats datent d'octobre 2024. En 2 mois, les résultats ont sans doute changé. 

Les domaines des questions : 

- 858 questions sur les sciences et technologies

- 709 questions sur la politique

- entre 300 et 500 questions : musique, sport, géographie, art, autres.

3 niveaux de qualité de réponses sont indiquées : les réponses correctes ou du moins se rapprochant d'une réponse correcte, les réponses incorrectes et les échecs ou l'impossibilité de répondre (= je ne comprends pas la question). Idéalement, un modèle répondra au plus grand nombre de questions possibles (nombre le plus élevé de bonnes réponses), tout en minimisant le nombre de réponses incorrectes.

Le benchmark inclut GPT-4o mini, 01-mini, GPT-4o et 01-preview. Les résultats sont inquiétants et illustrent toutes les difficultés à faire confiance à une GenIA ou IA toute simple. Heureusement, des LLM s'en sortent mieux mais tout de même. 

Ainsi, GPT-4o mini est le plus mauvais : -9 % de réponses correctes, le plus performant est 01-preview avec 42,7 % ! La non compréhension de la question est une autre problématique qu'il ne faut pas sous-estimer : o1-mini est le plus sensible à cette non compréhension : 28,5 % des questions ne sont pas comprises ou impossible à traiter ! C'est énorme contre 9,2 % pour o1-preview.

Finalement, ce qui est beaucoup plus inquiétant est le niveau de mauvaises réponses et l'hallucination du LLM :

- GPT-4o mini : 90 %

- o1 mini : 63 %

- GPT-4o : 60 %

- 01 preview : 48 %

Est-ce mieux ailleurs ? Des benchmarks de Claude 3 montrent que les différents LLM Claude fournissent des réponses correctes à un niveau très variables (5 à 29 %), les réponses correctes varient de 19 à 36 %... 

La calibration du LLM permet d'améliorer les résultats mais cela peut nécessiter du temps et des itérations des prompts. 

Pour découvrir SimpleQA : https://openai.com/index/introducing-simpleqa/

Catégorie actualité: 
Image actualité AMP: 

Visual Studio Code : du nouveau côté Python

Dans l'édition décembre 2024, VS Code annonce de belles choses pour Python, Pylance et Jupyter. En résumé :

- génération de Docstring avec Pylance et Copilot

- extension Python Environnements en préversion

- Pylance pour le langage serveur en full mode

Docstring est ce que l'on appelle un string litéral (string literal) pour exprimer une valeur d'un string d'un type de données. Il faut activer Pylance. L'extension Python Environnements doit simplifier la gestion des environnements Python dans l'IDE : par exemple pour gérer les paquets sur tel ou tel environnement Python. La partie langage serveur propose le full mode depuis Pylance. 

Cette éditon corrige plusieurs bugs, affine certaines fonctions de tests. 

Tous les détails : https://devblogs.microsoft.com/python/python-in-visual-studio-code-december-2024-release/

Catégorie actualité: 
Image actualité AMP: 

Humour : Microsoft dit que la nouvelle interface de Windows Store est très positive

Quand un éditeur dit que sa nouvelle interface a un impact très positif, il y a de quoi être méfiant. Microsoft a introduit un nouveau Windows Store. Oui il est plus performance, plus rapide mais sa nouvelle interface divise. 

Microsoft a décidé de réagir et de brandir : eh, regardez les retours, ils sont bons ! L'argumentaire est imparable. Les responsables disent que le design est subjectif, que la nouvelle UI a subi des millions de tests auprès des utilisateurs et que les retours ont été pris en compte. 

Sur X, Albacore évoque tout le bien qu'il pense de la nouvelle UI. Il faut avouer que le design choisi casse l'organisation du Store. Cela donne une impression brouillonne et d'un formulaire non fini. L'espace est mal exploité et laisse de grands vides. Windows Store revient à une interface à la Windows 10, ce qui n'est pas un compliment. Il faudrait surtout que Microsoft arrête de changer le design de son Windows Store. La dernière version remonte à 2021.

Une petite séance pop-corn pour les prochains épisodes ?

Image : albacore

Catégorie actualité: 
Image actualité AMP: 

Drupal 11.1.0 : PHP 8.4, hook, caches, composer

Drupal 11.1.0 est une version mineure de la v11. Elle a pour objectif d'introduire des évolutions et surtout de corriger les bugs et d'améliorer les nouveautés de la v11. Drupal précise qu'il n'y a pas de casse de compatibilité. Attention : pour les API internes ou expérimentales, des casses de code sont possibles. 

Quelques annonces sont à retenir :

- les flags ont changé de localisation

- .htaccess est ajouté par défaut pour les images webp

- changement dans les hooks : les hooks peuvent être implémentés dans des classes

- les assets sont classés par dépendances

- Composer est conseillé pour ajouter du nouveau code dans une installation Drupal

- améliorer du Page Cache et Dynamic Page Cache

- nouveau module Workspaces UI

- les codes Drupal core nécessitent un typage strict : declare(strict_types=1);

- apparition d'un experimental module dans package manager. Il est caché.

- support de Symfony 7.2 et de Twig 3.14.2

- support d'OpenTelemetry 1.1.0, CKEditor 44.0.0, jQuery UI 1.14.0

- support de 8.4

- Drupal CMS 1.0 : la version basique de Drupal sera basée sur Drupal 11.

- nouvelle API de gestion des icônes

- amélioration du cache navigateur et CDN pour JavaScript et CSS

- Drupal annonce aussi la disponibilité prochaine de la 10.4. Drupal 10 est une version LTS. 

Tous les détails : https://www.drupal.org/project/drupal/releases/11.1.0

Catégorie actualité: 
Image actualité AMP: 

Benq RD28U : un écran taillé pour le code

Nous avons testé récemment le RD28U de Benq. Cet écran est taillé pour le code. Ce qui nous a frappé c’est la vivacité de la dalle, sa luminosité et une belle dynamique des tons. L’affichage en mode sombre de VS Code sur un MacBook Air M1 paraît fade et pourtant la dalle du MacBook Air est loin d’être mauvaise. On voit que le noir reste profond, le blanc reste blanc et ne bave pas. Cela permet une belle lisibilité des caractères même dans la résolution maximale. Même quand le profil Coding Dark Theme est activé, la dalle reste dynamique. En usage intensif, nous préférons rester en profil Coding Light Thème.

La qualité de la dalle fait la différence. L'affichage des caractères est précis et nous ne remarquons pas de problèmes de lisibilité. Benq a intégré un halo lumineux au dos. On pourrait croire à un badget mais à l'usage, nous avons apprécié cette lumière indirecte. Même en environnement sombre, le halo fournit une lumière homogène et suffisante pour travailler. Le mode pivot est un autre avantage de l'écran. On peut basculer en affichage portail grâce à l'outil Display Pilot 2. Pour les longs fichiers de codes, c'est parfait. On apprécie aussi la possibilité de lier un profil couleur selon l'application utilisée. Par exemple, couleur plus vive en gaming, profil plus neutre avec son IDE, etc. 

Benq intègre aussi des fonctionnalités pour éviter la fatigue occulaire et la lumière bleue : adaptation de la luminosité par raport à la lumière ambiante, filtre de la lumière bleue, diminution du scintillement (via le Blicker Free). 

Quelques détails techniques :

- Dalle IPS

- Résolution : 3840x2560

- Angle de vision : 170°

- 164 PPI

- Temps moyen de réponse : 5 ms

- Connectique : HDMI, USB C, DisplayPort, USB A & 3

On apprécie beaucoup la qualité de fabrication et la stabilité du pied. Plusieurs modèles sont disponibles, à partir de 399 €. Test complet du RD28U dans Programmez! 266. 

Catégorie actualité: 
Image actualité AMP: 

Visual Studio Code : des hackers réussissent à s'introduire dans les fonctions remote

Visual Studio Code a été détourné par des hackers chinois en trompant les développeurs. Le vecteur d'attaque est un tunnel de communication utilisé par Microsoft. Ce fonction distance permet de travailler à distance sur une machine cible depuis son IDE. Le développeur peut alors exécuter des commandes depuis l'IDE. 

Les hackers ont réussi à tromper les mécanismes de sécurité de Microsoft en maintenant une porte dérobée. Une fois connectée, le hacker peut exécuter du code, injecter des commandes, etc. Ce n'est pas la première fois qu'une telle attaque  est détectée. 

En septembre dernier, Unit 42 avait détaillé une attaque de type ATP sur VS Code. Des solutions existent pour détester et contrer ces attaques : filtrage des URL, sécurité DNS, anomalie du trafic réseau, pas d'exécution de commandes via un tunnel distant.

Les détails de l'attaque : https://www.sentinelone.com/labs/operation-digital-eye-chinese-apt-compromises-critical-digital-infrastructure-via-visual-studio-code-tunnels/

Attaque de septembre 2024 : https://unit42.paloaltonetworks.com/stately-taurus-abuses-vscode-southeast-asian-espionage/

Catégorie actualité: 
Image actualité AMP: 
❌