↩ Accueil

Vue normale

Hier — 18 février 2025Programmez!

MatterV : un gestionnaire de machines virtuelles open source

18 février 2025 à 11:59

Comment gérer ces machines virtuelles dans un unique outil d'administration ? Actuellement en développement, MatterV a l'ambition d'être cet outil. La version 0.7 est disponible depuis quelques jours. La nouveauté la plus importante est le support de VMware ! Il est possible d'avoir des machines virtuelles se comportant comme des VM Vmware. Vous pouvez même installer les VMware Tools dans les VM. Et MatterV est même vu comme un hyperviseur VMware !

Cette compatibilité VMware est donc une étape cruciale pour le projet :

- si vous maîtrisez VMware, vous pouvez faire la même chose sur MatterV

- Protégez votre investissement : tous les scripts, configurations ou flux de travail personnalisés que vous avez créés pour VMware continueront à fonctionner de manière transparente sur MatterV.

- envisager une migration de VMware vers autre chose :-) Il permet de copier simplement les données de vCenter vers MatterV

Pour découvrir l'outil :

MatterV est construit sur RHEL et AlmLinux avec un support de 10 ans minimum. Il offre une interface d'administration unifiée, une gestion des ressources des hosts, une gestion de la haute disponibilité et un monitoring centralisé. 

MatterV peut exécuter vos VM, gérer les ressources, se connecter à un cluster pour en assurer l'administration. 

Site officiel : https://matterv.com/

Catégorie actualité: 
Image actualité AMP: 

Webstudio : un outil pour créer rapidement son site web

18 février 2025 à 11:40

Webstudio est une plateforme de création de pages et de sites web. L'outil est open source. Il se veut une alternative à Webflow. Il peut se connecter à un CMS, supporte pleinement CSS et peut être facilement hébergé chez un hébergeur ou directement sur Webstudio. Il peut vous aider à créer des sites vitrines, du e-commerce ou encore être utilisé avec un CMS. On dispose d'un vrai designer pour créer les pages.

Pour démarrer, on peut utiliser un template. La partie propriété est très complète et la toolbox suffit largement pour la plupart des sites. Une marketplace est disponible pour ajouter des fonctionnalités et des connecteurs.

On dispose d'un mode de prévisualisation pour voir immédiatement la page en développement. Le bouton debug affiche les erreurs en cours. L'arborescence du projet est sur la gauche.

Si la création est visuelle, il faut maîtriser le CSS / HTML pour personnaliser les pages. Ce n'est pas un outil no-code / low-code.

Côté tarif, le plan gratuit permet beaucoup de chose : 

- 1 domaine personnalisé

- 10 000 pages vues par mois + 300 soumissions de pages par mois

- projets, pages, partages de projets, exportation de projets : illimité

- Le plan Pro est à 20 $ / mois avec 100 000 pages vues, un mode staging, une connexion à vos CMS

Les +

- richesse de l'environnement

- une documentation plutôt bien faite

- un plan gratuit attrayant

A noter que Safari n'est pas supporté pour créer les pages. Il nécessite un temps d'apprentissage mais si vous avez l'habitude de coder des sites web, vous allez vite maîtriser l'environnement. 

Site : https://webstudio.is/

Catégorie actualité: 
Image actualité AMP: 

Visual Studio 2022 v17.14: stabilité, sécurité, IA, bug fix

18 février 2025 à 09:07

Microsoft distribue la préversion de Visual Studio 2022 version 17.14. Cette version met en avant : 

- stabilité et sécurité : les équipes veulent corriger un maximum de bugs et améliorer la stabilité générale de l'IDE

- l'IA est naturellement un axe de développement et d'amélioration de l'outil : automatiser les tâches, généraliser la suggestion de codes, intégration toujours plus fine de Copilot, personnalisation étendue

- Git : nouveaux ajouts dans les outils Git (ex. : fenêtre de restauration d'un référentiel Git)

- attention : casse compatibilité sur le modèle de sérialisation DSL

Note de version : https://learn.microsoft.com/en-us/visualstudio/releases/2022/release-notes-preview

Attention : sur la page française, la 17.14 preview n'apparaissait pas à la publication de cette actualité. 

Catégorie actualité: 
Image actualité AMP: 
À partir d’avant-hierProgrammez!

Python 3.14 bêta 5 : 3 PEP et quelques nouveautés

17 février 2025 à 18:23

Python 3.14 continue son développement. Actuellement, la bêta 5 est disponible. Par rappel, cette version introduit les PEP 649, 741 et 761,améliore des messages d'erreur et un nouveau type d'interpréteur est introduit dans CPython. Pour certains compilateurs récents, cette nouveauté peut améliorer les performances. 

Attention : n'oubliez pas que la 3.4 introduit de nombreux retraits de fonctionnalités, modules, même chose pour la partie dépréciation. Il faut tester atttentivement les codes et faire les modifications nécessaires, même remarque pour l'API C. 

L'alpha 6 est prévue pour le 14 mars. Ne pas utiliser en production. 

Annonce la bêta 5 : https://pythoninsider.blogspot.com/2025/02/python-3140-alpha-5-is-out.html

Catégorie actualité: 
Image actualité AMP: 

OpenJDK 24 arrive bientôt

17 février 2025 à 14:49

Java 24 arrive bientôt ! La RC est maintenant disponible. Cette version promet une grande variété de JEP, dont :

- JEP 404 : amélioration de Shenandoah GC (expérimental)

- utiliser restreint de JNI, JEP 472

- JEP 478 : key derivation function, fonction de chiffrement

- retrait de Windows 32 x86, JEP 479

- Vector API, 9e incubation, JEP 489

La longue liste des nouveautés et évolution est ici : https://jdk.java.net/24/release-notes

Versions : https://openjdk.org/projects/jdk/24/

Catégorie actualité: 
Image actualité AMP: 

Janvier 1975 : le 1er ordinateur en kit est commercialisé, l'Altair 8800

17 février 2025 à 11:11

Décembre 1975, le magazine Popular Electronics met en couverture l'Altair 8800 de MITS, le 1er kit complet d'un micro-ordinateur. Pour 395 $, il était possible de commander le kit et de construire soi-même l'Altair 8800. Une version assemblée et testée était vendue plus chère, 650 $.

L'Altair 8800 propose :

- CPU : Intel 8080 2 MHz

- 256 bytes de RAM, jusqu'à 64 Ko (carte optionnelle)

- interaction par les switchs en façade

- slots d'extension : bus Altair qui donnera naissance au standard S-100

Popular Electronics publie une série d'articles décrivant la machine, son fonctionnement et comment le rendre opérationnel. MITS, le fabricant de l'Altair, propose plusieurs cartes optionnelles : mémoire, interfaces série et parallèle, interface K7. 

Deux étudiants y voint une opportunité : MITS cherchait des logiciels et un langage de programmation. Les jeunes Bill Gates et Paul Allen vont tenter un coup de bluff incroyable : proposer à MITS un interpréteur Basic pour l'Altair 8800 ! Pour écrire l'Altair Basic, ils seront trois : Allen, Gates et Davidoff. Quand Allen et Gates contactent MITS, l'interpréteur n'existe pas et ils n'ont pas accès à un Altair. En quelques semaines, ils développent la version Intel du Basic et Allen assure la démo dans les locaux de MITS. 

Quelques mois plus tard, Micro-soft est créé...

Catégorie actualité: 
Image actualité AMP: 

Alexa sauce IA encore retardé ?

17 février 2025 à 10:12

Depuis 24 mois, Amazon promet un Alexa tout neuf et optimisé à l'IA. Un événement est attendu le 26 février, mais selon le Washington Post, Alexa IA ne sera pas déployé avant fin mars, si tout va bien. L'enjeu est important : Alexa souffre d'une interaction limitée, de performances plus ou moins bonnes, de réponses manquant de pertinence, et degrandes difficultés pour comprendre et exécuter des demandes complexes.

Si Alexa nouvelle génération pourrait être dévoilée fin février, son déploiement réel attendra au moins un mois, voire plus.

Pour les assistants de type Alexa, l'intégration profonde de l'IA n'est pas simple et il faut pouvoir combiner le fonctionnement d'un assistant virtuel à une IA et pouvoir interfacer les deux, tout en assurant l'inférence des modèles SLM ou LLM liés à l'assistant.

Apple rencontre les mêmes difficultés techniques avec Siri IA. Ce nouveau Siri était prévu dans iOS 18.4 (sans doute au printemps 2025), mais finalement il pourrait apparaître qu'avec la 18.5. Cette version n'est pas attendue avant mai ou juin. Selon les rumeurs internes, Siri IA souffre de bugs et d'un fonctionnement instable, preuve de la complexité de l'intégration.

Catégorie actualité: 
Image actualité AMP: 

Android : des alternatives à l'OS Google et des Linux mobiles

17 février 2025 à 08:26

Il y a quelques jours, nous vous parlions de Murena durant la FOSDEM 2025. La grand' messe open source a été l'occasion de voir d'autres solutions open source sur les smartphones. Voici un petit inventaire :

CalyxOS

CalyxOS est un OS qui annonce respecter totalement la confidentialité et les données privées. Il intégre un firewall, des piles réseaux sécurisées et gratuites. Les services Googe sont remplacés par des alternatives. Par exemple, Play est remplacé par microG, tout comme sur la géolocalisation. Tous les mois, un patch de sécurité est déployé. Les WiFi et Bluetooth sont désactivés quand ils ne sont utilisés pour limiter la géolocalisation et les envois de données non autorisés, le firmware et le boot vérifient que l'OS n'a pas été modifiés à votre insu, tout USB non reconnu est bloqué. Site : https://calyxos.org/

FURILABS 

Au Fosdem, Furilab a présenté son tout 1er smartphone officiel, le FuriPhone FLX1. FuriOS dérive de Droidian Trixie, une distribution Linux adaptée au mobile. Il a pour ambition de remplacer Android sur tous les terminaux supportés. Le FLX1 embarque un Soc Mediatek, 6 Go de RAM, 128 Go de stockage, une GPU Mali, WiFi 6.

Site : https://furilabs.com/

Sailfish OS

Il s'agit d'un OS mobile alternatif, développé en Europe. Il existe depuis 10 ans. L'OS est un Linux avec une couche d'interface utilisant QML, le langage UI de Qt. Il supporte les apps Android. L'architecture est ultra complète. 

Site : https://sailfishos.org/

Mobian

Mobian est dérivé de Debian. Le but est de développer un Debian dédié aux terminaux mobiles. Il supporte différents mobiles dont Fairphone, PinePhone. 

Site : https://wiki.debian.org/Mobian

AsteroidOS

Cet OS se spécialise dans les montres utilisant les OS Samsung / Google. Il s'appuie sur Qt pour l'interface. Il embarque une dizaine d'apps par défaut. Pour faciliter le portage de l'OS, les développeurs utilisent libhybris mais AsteriodOS n'est pas une dérivé d'Android ni de WearOS. Les apps WearOS ne sont pas supportés. L'OS est open source.

Site : https://asteroidos.org/

Murena - FOSDEM partie 5 : https://www.programmez.com/actualites/murena-comment-integrer-et-adapter-le-launcher-dandroid-fosdem-2025-partie-5-37333

Retour du FOSDEM 2025 partie 6

Catégorie actualité: 
Image actualité AMP: 

React UI : quelles tendances pour les librairies UI en 2025 ?

14 février 2025 à 17:44

builder.io a publié panorama des tendances 2025 pour les librairies React UI. Parmi les évolutions majeures, nous trouvons l'accessibilité, l'intégration de l'IA, l'optimisation des performances notamment avec le lazy loading. Les librairies d'interfaces pour React étendent la compatibilité avec les outils de design tels que Figma, Sketch et Adobe XD. 

Selon builder.io, le top des librairie de composants est (une sélection) :

- Material UI : la personnalisation des composants par l'IA, support d'ARIA pour l'accessibilité

- Chakra UI : les animations, mode sombre personnalisable, l'IA pour aider le dév à améliorer le responsive design

- Radix UI + Tailwind : l'intégration entre les composants UI et le CSS, une compatibilité multi-navigateur optimale, éditeur pour gérer le design system

- Next UI : optimisé pour une utilisation avec Next.js mais aussi populaire avec React, rendu côté serveur, intégration facilité avec les principaux CMS

- React Aria : une librairie taillée pour les interfaces complexes. Support le web, le mobile et le desktop, gestion des gestes et de la voix

- Base UI : cette librairie n'a pas la notorité des autres libs mais elle propose une belle variété de composants

Publication source : https://www.builder.io/blog/react-component-library

Catégorie actualité: 
Image actualité AMP: 

REX : Dagger vire React pour déployer Go et WebAssembly

14 février 2025 à 12:24

Dagger a publié un REX intéressant sur comment et pourquoi le frontend React de Dagger Cloud a été remplacé par le duo Go et WebAssembly. Cette migration, techniquement importante, concerne la V3 du service cloud. Dagger expose plusieurs services : Cloud et CLI. Or, la partie CLI (Terminal UI) est écrite en Go alors que la partie Cloud (ante V3) l'était en React. Bref : deux codes sources à maintenir et à faire évoluer pour avoir des UI les plus propres possibles. 

Une des difficultés est le volume de données provenant notamment d'OpenTelemetry. Le front devait donc absorber cette masse de données et l'afficher. Sur le long terme, maintenir deux bases de code avec des technologies totalement différentes n'était plus tenable. Comme les 2 fronts remplissent les mêmes fonctions, il fallait implémenter deux fois les modifications et les évolutions. 

"Nous avons commencé à réfléchir à une nouvelle approche de Dagger Cloud, avec deux objectifs principaux :

- Unifier les bases de code, pour éliminer les doublons et rendre plus efficace la livraison de nouvelles fonctionnalités

- Tenir la promesse d'une interface utilisateur Web claire et réactive, à la hauteur de la vitesse et des performances de l'interface utilisateur du terminal"
L'objectif premier de ce changement technique était de pouvoir réutiliser le code entre Cloud et TUI. Il a été décidé que Go était le plus simple. L'équipe de développement avait déjà une forte compétence en Go et cela semblait plus naturel que de tout miser sur React et JavaScript. En plus de Go, WebAssembly a été choisi mais il y avait des inconvénients :
1 Go + WebAssembly n'est pas aussi mature que React et JS. L'équipe avait conscience qu'il fallait créer les composants nécessaires
2 Les apps WebAssembly sont limitées à 2 Go de mémoire, une contrainte liée aux navigateurs
Une fois le choix acté, comment faire pour construire le nouveau front ? "Nous avons décidé de créer la nouvelle interface utilisateur basée sur WebAssembly dans le framework Go-app. Go-app est un framework de haut niveau spécifiquement destiné aux applications Web progressives (PWA) dans WebAssembly. Il offre des avantages clés de Go, comme une compilation rapide et un typage statique natif, et il suit également un modèle d'interface utilisateur basé sur des composants, comme React, ce qui a facilité la transition."
Pour convaincre les autres équipes et surtout pour réduire les risques liés à une réécriture complète, durant un mois, des prototypes ont été développés pour éprouver les choix techniques. Le principal défi fut la contrainte mémoire : il fallait donc être très prudent sur la conception de l'architecture du front et réussir à optimiser le code.
De nombreuses informations ont été tirées de cette migration, dont :
- la gestion mémoire a été un défi tout au long du développement. Par exemple : afficher 200 000 lignes sans faire crasher le front
- Go WASM est assez lent pour parser une grande quantité de JSON, ce qui oblige à repenser le backend
- Initialement le WebAssembly pesait 32 Mo. En utilisant la compression Brotli, le fichier pèse - 5 Mo
- l'écriture des composants UI n'a pas été aussi difficile qu'attendu
- possibilité d'utiliser des paquets NPM dans le code Go si besoin
- l'outillage de Go-app est plus limité que celui de React et n'est pas intégré aux navigateurs, mais il fut suffisant
- Dagger Cloud est une PWA. Il était donc possible de créer une app native desktop et mobile
" Notre passage de React à WASM a permis une expérience utilisateur plus cohérente sur toutes les interfaces Dagger, ainsi que de meilleures performances globales et une utilisation de la mémoire plus faible, en particulier lors du rendu de traces volumineuses et complexes.
D'un point de vue technique également, les avantages pour notre équipe sont considérables. Les optimisations impliquent très souvent autant, voire plus, de travail que la mise en œuvre réelle de fonctionnalités. C'est donc formidable de ne pas avoir à passer du temps à optimiser l'interface utilisateur Web, puis plus de temps à optimiser l'interface utilisateur de test, et de se concentrer plutôt sur la fourniture de nouvelles fonctionnalités." conclut le REX.
Catégorie actualité: 
Image actualité AMP: 

CMS : mises à jour Wordpress, TYPO3

14 février 2025 à 10:14

Quoi de neuf chez les CMS ? Plusieurs mises à jour ont été annoncées ces derniers jours. N'oubliez pas de mettre à jour et vérifier les casses de compatibilité dans les notes de version. 

Wordpress 6.7.2

Mise à jour de maintenance avec 35 corrections de bug sur différents modules (éditeur de blocs, HTML API, etc.).

La version 6.8 devrait être disponible le 15 avril

Annonce : https://wordpress.org/news/2025/02/wordpress-6-7-2-maintenance-release/

PrestaShop 9 bêta

Version majeur. La bêta est ouverte. Support de Symfony 6.4, de PHP 8.4, nouveau API Admin en s'appuyant sur API Platform, nouveau thème Hummingbird, nouvelle page produits. Le core code a été largement optimisé et modifié avec l'arrivée de Symfony 6.4 et de PHP 8.4. Pour tester la bêta : il faut PHP 8.1 minimum, Composer 2, Node 20 et NPM 10

Annonce : https://build.prestashop-project.org/news/2025/prestashop-9-0-beta-release/

TYPO3 13.4.5 et 12.4.27

Deux versions mineures sont disponibles. Corrections de bugs.

Annonce : https://typo3.org/article/typo3-1345-and-12427-maintenance-releases-published

JOOMLA 5.2.3

Mise à jour de sécurité et bug fix : 3 vulnérabilités et 28 bugs

Annonce : https://www.joomla.org/announcements/release-news/5919-joomla-5-2-3-security-bugfix-release.html

DRUPAL 7 & 10.3.12

Attention : le support sécurité de Drupal 7 a pris fin le 5 janvier dernier. La version 10.3.12 corrige les bugs connus, idem pour la 10.4.2

Annonce : https://www.drupal.org/project/drupal/releases/10.3.12

Catégorie actualité: 
Image actualité AMP: 

Les apps mobiles sont-elles sécurisées ?

14 février 2025 à 08:08

Question qui revient souvent : les apps mobiles sont-ils sécurisées ? Les équipes du zLabs de Zimperium ont publié une étude sur cette question. Malheureusement, de nombreuses apps disponibles sur l'AppStore et Play, possèdent toujours de vulnérabilités ou sont elles-mêmes de fausses apps. Le comportement de certaines apps est pointé du doigt : pourquoi une messagerie prendrait une copie d'écran sans notifier l'utilisateur ? Pour accéder au presse-papiers ? Pourquoi les OTP sont stockés alors qu'ils sont normalement à usage unique ?

Le constat est amer : le simple fait de télécharger depuis un appstore officiel, même une application très populaire, n'est pas une garantie de sécurité.

"L’analyse des 50 applications les plus téléchargées sur l’App Store d’iOS et le Play Store d’Android dans les catégories Productivité, Affaires et Finance révèle qu’au moins une application par catégorie présente un score élevé de vulnérabilité en matière de sécurité ou de confidentialité. Ces résultats mettent en évidence des failles récurrentes dans la gestion de la sécurité et de la confidentialité des applications les plus utilisées, soulignant ainsi la nécessité d'un contrôle rigoureux en entreprise." commente le rapport. 

Une application de messagerie populaire : commodité vs sécurité

L’analyse d'une application de messagerie largement utilisée a révélé d'importants problèmes de sécurité et de confidentialité. Ses demandes excessives d’autorisation, notamment l'accès à la caméra, au microphone et aux services de localisation, vont bien au-delà des besoins d'une application de messagerie. De plus, elle a un accès illimité au presse-papiers du téléphone, ce qui peut exposer des informations sensibles comme des mots de passe ou des données confidentielles copiées par l’utilisateur. Elle dispose également d'une fonctionnalité permettant d’effectuer des captures d'écran, pouvant ainsi surveiller toutes les interactions de l'utilisateur avec l’application. En matière de sécurité, l'application présente des faiblesses dans son architecture. Un attaquant pourrait exploiter ces failles pour injecter du code malveillant, transformant ainsi l’application de messagerie en un outil sophistiqué de surveillance.

"Bien que les applications iOS présentent généralement moins de vulnérabilités liées aux fuites de données que leurs équivalents Android, elles souffrent davantage de faiblesses cryptographiques. Ce constat met en évidence un compromis fondamental entre les plateformes : si iOS applique des contrôles de confidentialité plus stricts dans certains domaines, la sécurisation cryptographique reste un enjeu majeur." poursuit le rapport. 

Catégorie actualité: 
Image actualité AMP: 

GitHub Copilot débarque sur Eclipse : c'est l'annonce du jour !

13 février 2025 à 15:20

Quoi ? Eclipse n'avait pas encore Copilot ? C'est désormais chose faite, ou presque : GitHub Copilot est officiellement disponible en préversion sur l'environnement Eclipse. Il est disponible sur la marketplace Eclipse. Attention à ne pas confondre cette extension officielle avec d'autres extensions non officielles. Pour le moment, Copilot sera disponible gratuitement 30 jours avec des limitations. Copilot Free n'est pas disponible sur Eclipse.

Il supporte la génération de code et la complétion de code mais Copilot Chat n'est pas encore disponible. Vous pourrez générer du code Java, PHP, JavaScript, Ruby, Go, C# et C++. 

Pour en savoir plus :

https://marketplace.eclipse.org/content/github-copilot

https://devblogs.microsoft.com/java/github-copilot-for-eclipse-code-completion-now-in-public-preview/

Catégorie actualité: 
Image actualité AMP: 

Index TIOBE : Python, C++, Java

13 février 2025 à 10:55

L'index TIOBE de février 2025 vient de sortir. Il confirme la grande popularité de Python dans les moteurs de recherches. C++ est 2e et Java 3e, le C perd 2 places puis suivent sans changement : C#, JavaScript, SQL et Go. Delphi est dans le top 10, en 9e place. 

Top 10 de février :

Python =

C++ +1 place

Java + 1 place

C -2 places

C# =

JavaScript =

SQL =

Go =

Delphi +3 places

Visual Basic -1 place

Pour appel : cet index est la population des langages dans les requêtes sur un ensemble de moteurs de recherches. Il n'indique pas l'usage réel du langage. 

A noter que Rust fait un bond de 5 places, tandis que PHP en perd 4. 

Catégorie actualité: 
Image actualité AMP: 

Jeu vidéo : grève en France ce 13 février

13 février 2025 à 10:24

Le STJV, syndicat des travailleurs du jeu vidéo, lance ce 13 février un mouvement social national dans le secteur du jeu vidéo contre les licenciements et les conditions de travail. Des rassemblements sont annoncés dans plusieurs villes françaises et les salairés des studios sont invités à faire grève et à manifester. 

Le secteur du jeu vidéo est en pleine crise :

- baisse mondial du marché

- fermeture de studios indépendants et restructuration de grande ampleur dans plusieurs grands studios

- des licenciements qui se mulitplient

- de nouvelles organisations des équipes et parfois forte réduction du télétravail

Après une période Covid qui a fortement soutenu le jeu vidéo et une période post-Covid tout aussi forte, les ventes sont en baisses depuis 2 ans et les grands studios souffrent des projets AAA coûtant de plus en plus chers et les retards qui s'accumulent. Cette grève illustre les problèmes d'un secteur que l'on pensait à l'abri. Les studios français subissent la baisse du marché sur fond de licenciements et de pressions pour faire avancer les projets. Le studio Don't Nod avait ainsi annoncé le licenciement de 22-23 % des effectifs provoquant une grève des équipes. 

Longtemps vu comme un "paradis", le secteur du jeu vidéo est finalement une domaine d'activité comme un autre. 

Catégorie actualité: 
Image actualité AMP: 

Hololens : Microsoft arrête et perd un contrat de 22 milliards $

13 février 2025 à 08:58

Après des mois d'attentes, de rumeurs et d'incertitudes, Microsoft arrête tous les développements matériels de son casque Hololens, présenté pour la 1ere fois en 2015. Hololens 2 avait déjà été arrêté en 2024. La rumeur d'une version 3 circulait depuis longtemps sans savoir où en était réellement le concept. Le responsable mixed reality chez Microsoft, Robin Seiler a confirmé l'arrêt à The Verge : "Nous nous éloignons progressivement du développement matériel, mais nous continuerons à fournir un support pour le matériel et les logiciels HoloLens2 jusqu'en 2027, comme annoncé en octobre. Nous restons engagés dans le programme IVAS et nous concentrerons nos efforts sur les technologies cloud et IA, qui serviront de base à IVAS en tant que plate-forme de connaissance de la situation."

Microsoft perd l'énorme contrat de l'armée américaine sur la réalité augmentée : 22 milliards. Ce contrat est repris par Anduril, une startup spécialisée dans les technologies de défense. L'ironie de l'Histoire est que son fondateur est Palmer Luckey, cofondeur d'Oculus VR. Anduril reprend le développement matériel et sa production. Les équipes profiteront des travaux déjà réalisés par Microsoft. Malgré les aléas du projet IVAS et problèmes des prototypes de Microsoft, l'armée américaine n'a jamais voulu arrêté. Microsoft continuera à travailler sur IVAS avec Anduril pour fournir le backend technique, les couches d'IA. 

Anduril connait les contraintes liés à la défense américaine. Les matériels miitaires sont très différents des versions "grand public". 

Est-ce une réorientation de la stratégie XR de Microsoft ? Cela y ressemble et sans les contraintes du matériel. 

Pendant ce temps, Google et Meta accélèrent sur les propres systèmes XR, en attendant qu'Apple rectifie sa stratégie actuelle avec le Vision Pro.

Catégorie actualité: 
Image actualité AMP: 

RISC-V : où en sommes-nous ?

13 février 2025 à 08:17

Une track RISC-V s’est déroulée durant la FOSDEM 2025, preuve de l’intérêt de cette architecture. Emil Renner Berthing (Canonical) évoque tout d’abord les 3 aspects matériels : le core, le SoC et la board. Le core est le cœur du processeur moderne. C’est là que s’exécutent les instructions de bas niveau. Il est écrit / décrit en Verilog, VHDL, c’est un design et non un programme. Le SoC, système sur puce, est un composant physique intégrant différents modules : les bus, les caches, le contrôle mémoire, la mémoire, les I/O, etc.

Enfin, la board, la carte, est le hardware que l’on va utiliser dans sa machine, notamment pour coder. Elle se compose généralement d’un SoC, des I/O, des connecteurs, etc.

Côté constructeurs de cartes, nous trouvons :

  • SiFive, l’un des constructeurs les plus actifs dans le monde RISC-V, avec les HiFive Premier P550 et les Unmatched Rev. B.
  • StarFive : division chinoise de SiFive.
  • Alibaba T-Head, Milk-V, Pine64, BananaPi, etc.

Les cartes RISC-V ont beaucoup évolué depuis les premières versions. Elles sont assez coûteuses, mais vous pouvez démarrer votre expérience RISC-V avec des cartes de type ESP ou Raspberry Pi, dont certains modèles intègrent des cœurs RISC-V ! De nouvelles cartes sont attendues en 2025 chez Andes et DeepComputing.

RISC-V, c’est aussi une architecture adaptée aux serveurs avec Ventana et Rivos. Mais par rapport aux desktops et IoT, le serveur a besoin de puces beaucoup plus puissantes.

L’un des avantages de RISC-V est son architecture open source, contrairement aux x86 et Arm. La Chine investit énormément dans cette architecture. La Fondation Linux supporte aussi cette architecture.

Deep Computing produit des ordinateurs RISC-V et voit cette architecture comme parfaite pour les produits de grande consommation. L’écosystème s’étend et se montre très dynamique, comme l’explique Yuning Liang dans la session "Unstoppable Force Behind Linux on RISC-V". Il rappelle que RISC-V n’est pas un design nouveau. Aujourd’hui, x86 domine les serveurs et le PC, **tandis qu'**Arm domine le marché du mobile. RISC-V peut-il être l’architecture de référence des années 2020-2030 ? Il met en avant son ouverture face aux architectures fermées des autres processeurs. L’autre avantage : RISC-V étant open source, il ne dépend pas d’une société ou d’un pays.

Pour réussir, RISC-V a besoin d’une offre matérielle, d’OS et d’applications. Sans apps, pas d’utilisateurs. Linux est l’OS de référence sur cette architecture. Ubuntu le supporte et le noyau Linux étend progressivement son support. Cependant, il faut aussi une toolchain complète et stable pour faciliter le développement et des PC RISC-V capables d’attirer les utilisateurs. Un des problèmes actuels est que le noyau ne supporte pas les dernières cartes, ce qui peut limiter son adoption, et les fabricants n’ont pas forcément un focus sur le noyau Linux. Le marché n’est pas encore aligné.

Deep Computing produit des laptops RISC-V avec Ubuntu préinstallé. Framework est un autre constructeur RISC-V. Pour 2025, Deep Computing prévoit plusieurs nouveaux modèles :

  • Framework 13’’ avec 4 cœurs.
  • 1er trimestre : modèle avec 64 cœurs.
  • Puce IA avec 8 cœurs optimisés.
  • 3e trimestre : nouveau laptop 4 cœurs, ROMA III.
  • Fin 2025 : ambition de sortir une puce 12-32 cœurs pour le HPC.

Le modèle IA, "AI PC", embarquera donc 8 cœurs, 64 Go de RAM et le support du 8K.

Pour en savoir plus, nous vous conseillons :

upstream embedded Linux on Risc-V : https://fosdem.org/2025/events/attachments/fosdem-2025-6342-upstream-embedded-linux-on-risc-v-the-good-the-bad-and-the-ugly/slides/237150/Upstream_8Uw0SkJ.pdf

Les autres résumés de la FOSDEM 2025

Reportage, partie 1 : https://www.programmez.com/actualites/fosdem-2025-reportage-1ere-partie-37310

Rust on Linux, FOSDEM 2025 partie 2 : https://www.programmez.com/actualites/fosdem-2025-partie-2-rust-linux-37315

The state of Go, FOSDEM 2025 partie 3 : https://www.programmez.com/actualites/fosdem-2025-partie-3-state-go-37316

Comment les navigateurs chargent réellement les pages web, FOSDEM 2025 partie 4 : https://www.programmez.com/actualites/comment-les-navigateurs-chargent-reellement-les-pages-web-fosdem-2025-partie-4-37320

Catégorie actualité: 
Image actualité AMP: 

Junie : l'agent IA de JetBrains est accès limité

12 février 2025 à 14:23

JetBrains annonce son agent de programmation, Junie. Il est disponible en accès EAP. Il s'agit d'un agent de programation utilisant l'IA de l'éditeur. C'est le principe de l'IA agentique. Il est là pour créer avec le développeur plus rapidement du code, lui confier les tâches répétitives ou aider dans des tâches plus complexes. On indique à Junie ce que l'on peut faire et l'agent prend la main. 

"Junie, l’agent de programmation assisté par IA de JetBrains, redéfinit la façon de travailler avec le code en s’appuyant sur l’IA agentique pour vous permettre de co-créer directement dans votre IDE. Vous pouvez déléguer entièrement vos tâches routinières à Junie ou collaborer avec lui pour l’exécution des tâches plus complexes. Grâce à la puissance des IDE JetBrains, couplée à des LLM fiables, Junie peut effectuer des tâches qui vous demanderaient normalement des heures de travail." précise l'éditeur. Selon un benchmark JetBrains, Junie serait capable de réussir les demandes en une seule fois, dans 53 %. 

Il est disponible sur IDEA Ultimate, PyCharm Professionnal, bientôt sur WebStorm. Seuls Linux et macOS sont supportés. Uniquement sur liste d'attente. 

Catégorie actualité: 
Image actualité AMP: 

k0rdent : Mirantis propose un environnement pour gérer les conteneurs

12 février 2025 à 12:00

Un des problèmes dans les infrastructures modernes est la gestion des conteneurs et des environnements Kubernetes. Pour gérer ces environnements complexes, les entreprises cherchent un outil de type DCME : Distributed Container Management Environment, que l'on peut traduire par :outil d'administration pour les conteneurs distribués, typiquement en contexte Kubernetes. 

« Les entreprises cherchent à accélérer le développement, réduire le délai de mise sur le marché, simplifier les opérations et gérer les risques de conformité, tout en devant faire face à une prolifération croissante des clusters Kubernetes », explique Randy Bias, vice-président de la stratégie open source et des technologies chez Mirantis. « k0rdent a été conçu pour créer des plateformes internes personnalisées pour les développeurs, propulsées par Kubernetes, qui facilitent la gestion des applications à grande échelle sur toute infrastructure, tout en offrant plus de choix, en accélérant l’innovation et en garantissant la conformité. » 

Cette solution est là pour :

- faciliter l'administration des clusters et donc des conteneurs déployés

- automatiser les déploiements

- gestion centralisée dans un unique outil

- gérer les règles et la conformité (par exemple : en contexte banquaire, les réglementations sont strictes)

Mirantis s'appuie sur Cluster API. Ce projet open source permet de créer et de déployer des cluster Kubernetes. L'outil permet donc de composer son infrastructure, de la déployer et de l'administration au quotidien. 

Site : https://k0rdent.io/

Catégorie actualité: 
Image actualité AMP: 

Murena : comment intégrer et adapter le Launcher d'Android - FOSDEM 2025 partie 5

12 février 2025 à 09:24

Durant la dernière FOSDEM, l'équipe de Murena animait la session : hijack Launcher3. Murena développe /e/os, un OS mobile alternatif à Android. Le projet est apparu en 2018. En 2022, la version 1 était disponible, puis la v2 en 2024. Développer un OS mobile prend beaucoup de temps et de ressources. /e/os est initialement un fork de LineageOS, qui lui-même est un fork de AOSP. AOSP est, pour faire court, la version open source d'Android que Google met à jour à chaque version. Un des projets les plus importants est le Launcher. Il s'agit de l'écran d'accueil / démarrage de l'OS pour accéder aux services et applications. Pour /e/os, le Launcher devient BlissLauncher.

BlissLauncher a été l'un des premiers projets lancés car sans lanceur, impossible d'utiliser simplement l'OS ! Le développement a débuté dès février 2018. Même si le projet s'inspire beaucoup du Launcher d'AOSP, il a été écrit depuis zéro. Les développeurs n'ont pas voulu suivre les mécanismes de lancement d'applications, la gestion des widgets, etc. D'autre part, un énorme travail de refactoring aurait dû être réalisé pour adapter le code existant à BlissLauncher. La v0 était très différente du Launcher de Google et de la version actuelle. Le code était instable et les plantages réguliers. Le placement des icônes était parfois imprécis et il fallait intégrer et stabiliser la gestion des gestes, gérer le switch entre les applications, intégrer le glisser-déposer, etc. Bref : tout ce que devait faire le Launcher.

La v3 de BlissLauncher a permis de faire un grand bond en avant dans l'usage, l'ergonomie, la stabilité. L'ergonomie a été profondément revue : agencement automatique des icônes, gestion du toucher long sur une icône, intégration du dossier, création d'une page widget, ajout d'effets, etc. La gestion du pixel scaling a été un des chantiers les plus difficilesà cause des différents formats d'affichage.

Les développeurs s'appuient sur les modules Kotlin, une architecture MVI, une reprise des fonctionnalités de Trebuchet Launcher d'AOSP (par exemple pour le défilement horizontal), le multilingue, etc. En 2024, BlissLauncher a intégré le mode tablette.

Une des difficultés de BlissLauncher est de suivre les évolutions d'Android, de mieux gérer les modes smartphones et tablettes et d'avoir un niveau de fonctionnalité le plus proche possible. Deux questions se posent aux développeurs : la disponibilité des widgets sur l'écran et un mode desktop.

La v3 a été développée par 2 développeurs durant environ 18 mois.

Catégorie actualité: 
Image actualité AMP: 

Visual Studio 2022 17.13 : Git, Copilot, debug, .Net 9

12 février 2025 à 07:52

Microsoft vient de distribuer la version 17.13 de Visual Studio. Cette mise à jour comprend des améliorations diverses sur la productivité du développeur, Copilot, analyses et debug, les outils Git, sur l'IDE, sur Azure et Docker, le Web. Il s'agit d'une importante mise à jour. 

Nous avons noté quelques nouveautés particulièrement intéressantes :

- la barre Code Search fait évoluer les capacités de navigateur avec :line. On peut ainsi naviguer plus facilement depuis la barre de recherche dans un document, une colonne, spécifier une ligne précise, etc. 

- la barre de défilement horizontale sur un éditeur est maintenant toujours visible et accessible même quand l'espace est réduit. Il faut utiliser les paramètres Editor horizontal scrollbar location

- VS permet de personnaliser l'encodage des fichiers : on peut indiquer le type d'encodage par défaut que l'on souhaite avec l'option Saved files with a specific encoding

- sur Copilot : sans surprise, les évolutions sont assez nombreuses sur le chat, la complétion automatique de codes, Edits à travers plusieurs fichiers en même temps

- Les outils Git se complètent avec la possibilité de commenter les pull requests, voir et gérer les Git tags

- Interface IDE : la préférence des polices peut être préservée même si on change de thème

- IDE : possibilité de gérer plusieurs comptes GitHub et permettre de choisir le compte GitHub que l'on souhaite utiliser

- La création d'un nouveau fichier markdown est facilité avec un template markdown file

- sur le développement desktop, la 17.13 introduit de nouveaux templates UWP .Net 9, amélioration des outils MSIX pour les apps UWP, support du dernier Windows SDK

- mise à jour du support d'Unreal Engine

- sur la partie C++ : support de CMake Presets v9, meilleur autocomplétion du code C++ avec Copilot

Note de version complète : https://learn.microsoft.com/en-us/visualstudio/releases/2022/release-notes

Catégorie actualité: 
Image actualité AMP: 

Ionic : fin des produits et services payants !

11 février 2025 à 18:29

Ionic annonce de profonds changements dans les produits et services commerciaux. L'équipe a annoncé l'arrêt des ventes à de nouveaux clients de Appflow, Identity Vault, Portals et de toutes les solutions payantes. Pour les clients actuels, Ionic travaillera avec eux pour arrêter dans la durée le support et la maintenance de ces produits. Ionic indique que le support ne sera pas arrêter à une date précise et que les clients seront tenus au courant. Ainsi, pour Appflow : l'accès sera assuré jusqu'au 31 décembre 2027.

Ionic précise que Framework et Capacitor resteront open source et grauits. Ils continueront à évoluer. Une roadmap sera dévoilée courant 2025. Ces piles techniques sont largement utilisées par OutSystems. Pour rappel, OutSystems avait acheté Ionic à l'automne 2022. Ce changement commercial vise sans doute à simplifier l'organisation des équipes et à se recentrer sur les projets les plus importants. 

Catégorie actualité: 
Image actualité AMP: 

SimpleStats : un Google Analytics pour vos apps Laravels

11 février 2025 à 17:31

Vous avez besoin de statistiques sur vos apps web écrites en Laravel ? Vous ne voulez pas utiliser Google ? SimpleStats est un outil dédié aux apps Laraval : il fonctionne côté serveur, il est RGPD et fournit les statistiques indispensables pour le suivi de vos trafics web. 

Son installation est rapide : une simple ligne de commande. A vous d'implémenter ce dont vous avez besoin : pour le suivi des visiteurs, le suivi des ventes, etc. Vous disposez de PKI pour mesurer les performances de votre site. Vous pouvez aussi utiliser SimpleStats en équipe. 

Côté tarif, le plan Free est limité à 1 projet, 5 000 utilisateurs, 1 000 paiements, 10 000 logins. Ce plan est parfait pour tester l'outil et voir s'il correspond à vos attentes. Pour un site marchant à audience moyenne, plan à 19 $ / mois est sans doute le meilleur choix.

La version 4 vient de sortir :

- mode sombre

- nombreuses améliorations de performances

- nouveaux filtres sur les données

- ergonomie revue pour une meilleure expérience d'utilisation

- nombreuses corrections de bugs 

Site : https://simplestats.io/

Catégorie actualité: 
Image actualité AMP: 

OnlyOffice 8.3 supporte iWork, Hancom Office

11 février 2025 à 11:18

La suite bureautique continue d'évoluer. La version 8.3 est sortie il y a quelques jours. Elle est disponible sur desktop (OnlyOffice Desktop) et sur le cloud. Parmi les nouveautés les plus importantes, le support des fichiers Pages, Keynote et Numbers d'Apple et de Hancom Office. Attention : le support se fait en lecture uniquement. Si vous voulez éditer et modifier, il faut convertir. "Si vous avez besoin d’éditer ces fichiers, ils seront convertis et enregistrés aux formats OOXML (DOCX, PPTX, XLSX). Toutefois, dans ce cas, la conformité totale du formatage n’est pas garantie." précise le projet. 

Sur la partie PDF, l'éditeur se complète avec la fonction Tampons et une meilleure gestion des PDF partagés. On peut maintenant sélectionner plusieurs pages PDF pour les supprimer ou les réorganiser. 

Note de version : https://www.onlyoffice.com/blog/fr/2025/02/onlyoffice-docs-8-3-disponible

Catégorie actualité: 
Image actualité AMP: 

Hello World en Erlang avec IntelliJ ou Visual Studio Code

11 février 2025 à 08:17

Post original de Michal Piotrowski

Erlang n'est pas un langage populaire ni très utilisé hormis dans certains sections critiques. Si vous êtes curieux/euse, il est possible de coder en Erlang directement avec son IntelliJ. 

1 ouvrir son IntelliJ

2 installation Erlang

3 installation du plugin Erlang dans l'IDE

4 redémarrer l'IDE pour prendre en compte le plugin

Pour créer un projet Erlang, il suffit de créer un fichier .erl, dans notre exemple : hello.erl

Le code du hello world est le suivant : 

-module(hello).
-author("michal.piotrowski").
 
%% API
-export([hello_world/0]).
 
hello_world() -> io:fwrite("hello, world\n").
Pour rappel, Erlang est un langage fonctionnel. La syntaxe est très différente d'un langage courant tel que Go ou Java. 
Avant de pouvoir exécuter ce code, il faut créer une configuration runtime avec Erlang Console comme un type. Et vous pourrez avoir besoin d'ajouter un build pour lancer le code. Normalement, la console Erlang apparait. Dans la console, tapez la commande hello:hello_work(). Le . est très important. Ne l'oubliez pas :-)
En sortie, la console devrait afficher :
hello, world
ok
2>
Si vous utilisez Visual Studio Code, un plugin existe : https://marketplace.visualstudio.com/items?itemName=pgourlain.erlang
Sous VS Code, vous devrez aussi faire un build et compiler le code avec erlc et d'utiliser le terminal pour lancer le fichier. Bien entendu, il faut installer Erlang sur son poste, le plugin ne le fait pas à votre place.
Catégorie actualité: 
Image actualité AMP: 

IntelliJ IDEA 2025.1 EAP 4 : Kotlin, mise à jour automatique des plugins

11 février 2025 à 07:36

JetBrains accélère le développement de la version 2025.1 d'IntillJ IDEA. Elle est actuellement disponible en EAP 4.

Cette version propose :

- le mode K2 supporte la conversion automatique des dépendances de Gradle Groovy DSL vers Kotlin DSL

- évolution de "création de fichiers" dans la fenêtre projet : plus d'options, champ de recherches

- possibilité de mettre à jour automatiquement les plugins en arrière-plan. Nécessite toujours une redémarrage de l'IDE mais l'utilisateur n'aura plus de notification supplémentaire de mise à jour 

- dépréciation des versions glibc antérieures à la 2.28 sur Linux

Note de version : https://blog.jetbrains.com/idea/2025/02/intellij-idea-2025-1-eap-4/

Catégorie actualité: 
Image actualité AMP: 

Retour au bureau vs télétravail : quelles tendances pour 2025 ?

10 février 2025 à 15:57

2024 a été marqué par un retournement des pratiques du télétravail dans de nombreuses entreprises : Microsoft, Zoom, Amazon, Salesforce. Ce mouvement est particulièrement visible aux États-Unis. Ainsi, le patron d'Amazon avait exigé en septembre dernier le retour des équipes 5 jours sur 5 dès janvier 2025. D'autres ont été plus souples en accordant une ou plusieurs journées en télétravail.

En France, mi-octobre, les salariés d'Ubisoft France étaient appelés à faire grève suite à la décision de la direction d'un retour des salariés à raison de 3 jours sur 5. Mais visiblement, rien n'est réellement réglé depuis 5 mois. Même mouvement dans un autre studio de jeux, Don't Nod. Selon des chiffres syndicaux publiés en décembre 2024, 25 % des salariés d'Ubisoft étaient prêts à partir si le télétravail à 100 % était supprimé.

En réalité, ce n'est pas tant la fin du télétravail qu'une nouvelle organisation et un réaménagement entre présence dans les locaux et télétravail. Une approche hybride se met en place dans de nombreuses entreprises, avec 2 à 3 jours de télétravail, le reste dans les locaux de l'entreprise. Il s'agit aussi de mieux encadrer certaines pratiques, par exemple l’installation du salarié en province ou à l'étranger sans prévenir l'employeur ou les RH, ce qui peut constituer une faute pour les prud'hommes et donc entraîner un licenciement.

Une étude Malakoff Humanis, Odoxa montre qu'en 2024, 36 % des salariés pratiquaient régulièrement le télétravail.

Pour 2025, nous aurons sans doute la même tendance qu’en 2024 : un télétravail identique ou réduit et sans doute un recul du télétravail à 100 %. Mais cela dépendra beaucoup de l'entreprise et de son activité.

Catégorie actualité: 
Image actualité AMP: 

Brave: custom scriptlets permet d'injecter du JavaScript

10 février 2025 à 11:33

Le navigateur Brave a dévoilé un fonctionnalité aussi puissante que dangereuse : custom scriptlets. L'idée est très simple : permettre de modifier le comportement d'un site web en injectant un script personnalisé, typiquement du code JavaScript. Le but est de modifier le comportement du site par exemple en forcant le mode sombre ou de modifier les paramètres d'un objet d'interface, etc. 

Pour Brave, beaucoup d'utilisateur veulent personnaliser les publicités et les bloqueurs d'annonces. Les équipes précisent tout de même que les scripts injectés sont stockés sur le navigateur localement et non sur le serveur ou directement sur le site web ! Heureusement. Brave prévient qu'il faut utiliser avec prudence cette fonctionnalité et le faire uniquement sur un site à soi et qu'il injectait du code uniquement fiable et vérifié.

C'est là que Brave se montre imprudent. Car custom scriptlets est possiblement un outil de hacking. Il est dommage que l'éditeur ne soit pas plus explicite sur les risques. Ce n'est pas un avertissement en rouge sur la fenêtre d'injection qui dissuader un hacker. 

Il faut activer le mode développeur et la fonction n'est pas directement accessible mais aucun mécanisme évitant un usage malveillant n'est prévu. 

Annonce : https://brave.com/privacy-updates/32-custom-scriptlets/

Catégorie actualité: 
Image actualité AMP: 

Comment les navigateurs chargent réellement les pages web ? FOSDEM 2025 partie 4

10 février 2025 à 10:05

Dans la track web du FOSDEM 2025, nous avions vu la session « Tight mode, how browser really load web pages ». Contrairement à une idée reçue : prenez une page web et chargez-la dans les principaux navigateurs (Chromium/Chrome, Safari, Firefox). Le temps de chargement ne sera pas identique et surtout, les mécaniques internes pour charger une page ne seront pas les mêmes ni dans le même ordre. Cela signifie que le comportement des navigateurs n'est pas identique, ce qui engendre un problème de cohérence et de performances.

Robin Marx, l’intervenant de la session, met en avant l’effet cascade. Dans les faits, le navigateur va charger en deux étapes les différents contenus avec des décalages temporels. Cet effet cascade explique pourquoi une page web ne s’affiche pas instantanément et d’un seul tenant. Il faut toujours avoir en tête qu’une page web classique contient en réalité des dizaines d’éléments différents : les protocoles et éléments serveurs (DNS, SSL), HTML, CSS, JavaScript, les images, les polices, les différents types de médias, etc. Quand on détaille encore plus, il y a le type du document, la taille, le temps de chargement et surtout la notion de priorité.

Ce qui est sidérant, quand on ne fouille pas dans les DevTools, c’est de voir le comportement radicalement différent pour charger une page HTML exactement identique. Le comportement de Chrome propose des cascades de chargement plutôt cohérentes, alors que Safari a un premier chargement frôlant les 3ms avant de charger le reste des éléments. Firefox cherche à charger un maximum d’éléments en même temps au risque de provoquer un long délai pour les éléments les plus critiques (+2,5 ms).

Par exemple, si votre code JavaScript est retardé dans son chargement et sa compilation, le rendu est automatiquement retardé, voire bloqué. Un des problèmes vient des priorités attribuées à chaque élément. Nous trouvons du low, du high et du highest. Dans un même bloc d’éléments, nous pouvons trouver plusieurs priorités.

L’analyse du <head> permet de voir que :

  • les CSS sont en priorité très haute
  • les scripts JavaScript varient de priorité basse à haute
  • les polices de caractères : priorité moyenne

Cela signifie que le navigateur prendra, théoriquement, les éléments les plus prioritaires en premier pour aller à la priorité la plus basse, au risque de bloquer le bon affichage à cause de l’ordre de traitement des éléments.

Comme le fait remarquer Robin, les serveurs n’écoutent pas ou pas assez les navigateurs. Souvent, le navigateur a une suite de traitements définie et claire, alors que les serveurs backend font un peu ce qu’ils veulent. Parfois, c’est une alternance d’éléments qui sont envoyés, provoquant un engorgement côté front, donc côté navigateur. L’exemple le plus criant est NodeJS : terrible pour les performances des pages. HTTP/2 et HTTP/3 tentent de remettre de l’ordre dans l’envoi des éléments d’une page…

Mais on comprend que le navigateur fait aussi ce qu’il veut : il récupère les ressources des pages, mais c’est lui qui va hiérarchiser les ressources et leur traitement et parfois, il ne tient pas compte des priorités ni de l’ordre imposé par le backend.

Le tight mode : indispensable mais le navigateur fait ce qu'il veut !

Pour tenter de corriger ce problème et améliorer les performances de chargement, il existe le Tight mode que l’on pourrait traduire par "mode serré". Il est disponible sur Chrome / Chromium et Safari, mais pas sur Firefox. Problème : ce mode se comporte différemment entre Chrome et Safari ! Officiellement : on vous simplifie la vie mais dans la réalité, pas trop…

En faisant simple : le tight mode réarrange les ressources à sa guise, il prend tout ce qui est marqué comme priorité très élevée / élevée et moyenne. Tout le reste est laissé de côté et non chargé dans le mode serré… jusqu’à ce que ce qui est traité par le tight mode soit réellement traité. Cela signifie que tout ce qui n’est pas pris en charge par ce mode est bloqué et ne se charge pas. C’est seulement après le chargement des ressources prioritaires que les ressources en priorité basse sont autorisées à être chargées et traitées ! Nous sommes donc dans la seconde cascade de chargement de la page web.

Dans la documentation du mode serré sur Chrome, il est dit ceci :

« Chrome charge les ressources en 2 phases :

  • Le mode serré est la phase initiale et contraint les ressources à priorité basse à être chargées quand tous les autres scripts et éléments présents dans le head sont exécutés
  • les ressources à faible priorité ne sont uniquement chargées que s’il y a moins de 2 requêtes en cours au moment où elles (les ressources basses) sont découvertes par le navigateur… »

Bref, le navigateur veut bien des priorités basses mais elles sont traitées quand le navigateur en a le temps… Depuis Chrome 117, le navigateur introduit 2 requêtes de priorité moyenne à s’exécuter en même temps.

Par exemple, si vous avez des scripts JS et des images, les scripts sont traités en priorité haute en parallèle. Les images seront chargées seulement après la fin de l’exécution des scripts. Dans l’exemple donné, les scripts prennent 2,74 secondes ! À la fin du traitement, le tight mode n’agit plus et laisse donc la place aux images qui sont en priorité basse… Sauf que… si vous avez des images en priorité moyenne et d’autres en priorité basse, les images en priorité moyenne rentrent dans le tight mode et seront donc chargées en parallèle des scripts prioritaires même si ces ressources moyennes ne sont pas chargées au même moment, il y a un effet de décalage qui se produit mais les images en priorité basse patientent.

Robin montre que pour une même page, le tight mode fonctionne très différemment sur Safari. Sous Safari, le tight mode permet aussi de charger des éléments à priorité basse mais les temps de traitement explosent : de 2,8 à 4,19 secondes pour les images PNG alors que sous Chrome, nous sommes à 148-161 ms !

Bref, le tight mode de Chrome est plus performant et intègre mieux les éléments de priorité basse et évite un temps supplémentaire de chargement. Safari est donc intrinsèquement plus lent à cause de son tight mode.

Une question de fetchpriority

Au lieu de laisser faire le navigateur, pourquoi ne pas forcer la priorité ? C’est ce que permet fetchpriority. Cependant, attention, vous pouvez attribuer des priorités de type high, low mais pas highest ou lowest. Et finalement, le navigateur aura le dernier mot. Et là encore, tout dépend du navigateur. Chrome permet un fetchpriority=high sur les images, les JavaScript différés et asynchrones, les JavaScript dans le haut du <body>. Safari se limite aux images. Bref, le comportement ne sera donc pas identique selon le navigateur ! Vous pouvez aussi attribuer low à votre fetchpriority sur des images, du JavaScript, le préchargement de polices. Sur Safari, ce n’est pas clair.

Firefox supporte le fetchpriority depuis octobre 2024. 

Mais les anomalies ne s’arrêtent pas là. Est-ce que les priorités imposées par le fetchpriority sont strictement appliquées ? Oui et non d’après Robin. Il donne plusieurs exemples, citons :

  • une police en high sera traitée en priorité haute par les 3 navigateurs
  • une police en low sera bien en low dans Chrome et Safari mais en lowest dans Firefox.

Sans fetchpriority, l’assignation des priorités par les navigateurs est bizarre :

  • une police préchargée sera en high sur Chrome et en moyenne pour Safari et Firefox
  • une police « standard » pourra être en priorité très haute sur Chrome, en moyenne sur Safari et en basse sur Firefox

Bref, rien n'est simple dans le monde du web et on comprend mieux pourquoi les pages web prennent parfois autant de temps à se charger.

Catégorie actualité: 
Image actualité AMP: 

GitHub Copilot : agent IA, Vision for Copilot, prompt files

7 février 2025 à 17:52

GitHub annonce plusieurs évolutions sur Copilot. Ces nouveautés sont disponibles dès maintenant dans Visual Studio Code si vous avez installé Copilot et mise à jour VS Code.

Les fonctionnalités sont :

  • Le mode “Agent” : permet à Copilot d'itérer sur sa propre production ainsi que sur les résultatspour réaliser l'ensemble des en une seule fois, reconnaître et corriger automatiquement les erreurs, suggérer des commandes de terminal et analyser les erreurs d'exécution avec des capacités d'auto-réparation. En préversion. 

  • Les suggestions de modifications suivantes accélèrent les changements de code en identifiant et en proposant automatiquement la prochaine modification basée sur le contexte des changements précédents. En appuyant simplement sur la touche tab, les utilisateurs peuvent instantanément implémenter des suggestions dans tout le fichier ouvert avec des insertions, des suppressions et des remplacements. Voir les nouveautés dans la mise à jour janvier 2025 de VS Code section Copilot Edits.
  • Les fichiers de prompt permettent de stocker et de partager des instructions réutilisables les workspaces VS Code. Cela peut inclure des fichiers markdown autonomes qui combinent des conseils en langage naturel, des références de fichiers et des extraits de code liés pour optimiser les tâches de programmation.
  • Vision for Copilot permet de donner vie à une maquette en fournissant à  Copilot avec une capture d'écran ou une image. Copilot génère l'interface utilisateur, le texte alternatif et le code pour passer de la vision à la réalité en quelques minutes.
  • Support de Gemini 2.0 Flash de Google et o3-mini d'OpenAI 

Vidéo de présentation des nouveautés :

En plus de ces nouveautés, GitHub annonce le projet Padawan pour supporter les agents SWE (SWE par Software Engineering. Une publication de Cornell évoque ces agents SWE et le contexte d'utilisation. "Nous étudions comment la conception de l'interface affecte les performances des agents de modèles de langage. À la suite de cette exploration, nous présentons SWE-agent : un système qui permet aux agents LM d'utiliser de manière autonome les ordinateurs pour résoudre des tâches d'ingénierie logicielle. L'interface agent-ordinateur (ACI) personnalisée de SWE-agent améliore considérablement la capacité d'un agent à créer et à modifier des fichiers de code, à parcourir des référentiels entiers et à exécuter des tests et d'autres programmes. Nous évaluons SWE-agent sur SWE-bench et HumanEvalFix, obtenant des performances de pointe sur les deux avec un taux de réussite de 12,5 % et 87,7 %, respectivement, dépassant de loin l'état de l'art précédent obtenu avec des LM non interactifs. Enfin, nous donnons un aperçu de la manière dont la conception de l'ACI peut avoir un impact sur le comportement et les performances des agents." explique la publication (https://arxiv.org/abs/2405.15793).

Annonce GitHub : https://github.blog/changelog/2025-02-06-next-edit-suggestions-agent-mode-and-prompts-files-for-github-copilot-in-vs-code-january-release-v0-24/

Catégorie actualité: 
Image actualité AMP: 

curl 8.12.0 : bug fix, retrait de Hyper écrit en Rust

7 février 2025 à 12:40

Curl est disponible en version 8.12.0. En quelques chiffres :

- 244 bugs corrigés

- 367 commits

- environ 100 contributeurs 

- 3 vulnérabilités comblées

Cette version propose des améliorations sur cmake, getinfo s'enrichit de quelques informations supplémentaires, support des clés et certificats de PKCS#11. Attention : cette version valide le retrait de la fonction hyper. Il s'agissait d'une librairie en Rust pour ajouter une alternative à HTTP backend / internals. Les raisons pour ce retrait (temporaire ?) ont été données par un des leads devs curl, Daniel Stenberg : "

« Il n'y avait tout simplement aucun utilisateur qui le demandait et il n'y avait presque aucun développeur intéressé ou suffisamment compétent pour travailler dessus. libcurl est écrit en C, hyper est écrit en rust et il y a une couche de colle de liaison C entre les deux. Il faut quelqu'un qui s'intéresse et qui est bon dans les deux langages pour creuser, comprendre les architectures, les défis et les protocoles pour mener à bien tout cela.
Mais sans demande des utilisateurs, pourquoi le faire ?
Il semble assez clair que les utilisateurs de rust utilisent hyper, mais peu d'entre eux veulent travailler à le faire fonctionner pour un projet C comme curl, et parmi les utilisateurs existants de curl, il n'y a pratiquement aucun intérêt pour hyper. Le chevauchement dans le diagramme de Venn des deux univers n'est pas assez important.Sans espoir de voir ce travail terminé à court ou moyen terme, le coût de maintien du code hyper est tout simplement jugé trop élevé. Nous gagnons en agilité de code et réduisons la complexité en supprimant cela. »

 

Catégorie actualité: 
Image actualité AMP: 

Visual Studio Code 1.97 : Copilot, LLM, UI, debug Python

7 février 2025 à 09:50

Visual Studio Code est disponible en version 1.97 (janvier 2025). Cette version apporte de nombreuses améliorations dont :

- un debug plus rapide sur Python en supprimant la configuration 

- possibilité d'acceptation automatiquement des réponses de Copilot

- possibilité de changer de place le panneau commande

Toujours dans Copilot, VS Code va faire évolution son Edit Suggestions. Cette fonction est en préversion qu'il faut activé. Copilot Next Edit Suggestions prédit l'emplacement de votre prochaine demande d'autocomplétion / modification, avec la touche tabulation vous allez vers cet emplacement. Quand on regarde les exemples, cela évoque le refactoring et permet d'aller plus vite dans les modifications, ajustements de codes. A noter que Copilot Edits est maintenant en disponibilité générale, cette fonction était en preview depuis octobre 2024.

Notons aussi que de nouveaux LLM sont disponibles : o3-mini d'OpenAI et Gemini 2.0 Flash de Google. 

Note de version de la 1.97 : https://code.visualstudio.com/updates/v1_97

Catégorie actualité: 
Image actualité AMP: 

FOSDEM 2025 partie 3 : the state of Go

7 février 2025 à 09:24

La FOSDEM est l'occasion de faire un point sur un langage, une technologie, une communauté. Go a été une track particulièrement active et populaire cette année. L'amphi pour la session The state of Go a été rempli en quelques minutes, soit plus de 600 personnes ! Le public présent était impatient d'en savoir plus... Maartje Eyskens nous a fait le point sur les principales évolutions depuis la version 1.22.

Deux versions sont sorties : 

1.23 en août 2024

1.24 en février 2025

25 versions majeures et mineureses de la branche 1.x sont sorties ! Le langage est rentré dans la phase de stabilité des API et de la librairie standard, une meilleure gestion des dépendances et les génériques qui s'étendent et se complètent. Deux changements importantes ont impacté le langage : l'amélioration des range et les génériques type alias. Ces derniers seront totalement supportés dans Go 1.24.

La partie Go Tool évolue régulièrement. Ainsi, go vet propose de nouveaux avertissements, par exemple quand on utilise une fonction plus récente dans la librairie standard que la version présente dans go.mod. Go 1.23 a introduit la télémétrie avec go telemetry, même si le sujet n'est pas nouveau. Une partie de la communauté n'a pas forcément bien accueillie cette fonctionnalité à cause des risques de données partant vers des serveurs extérieurs et sans croire aux affirmations de Google. Go précise que par défaut, les données sont stockées localement. Une des craintes était une activation par défaut de la fonction et des données collectées partant à l'extérieur. Dans Visual Studio Code, il demande maintenant si on veut ou non envoyer anonymement les données aux équipes Go. Go Telemetry existe pour envoyer les rapports de crashs et de bugs aux équipes pour améliorer le langage et fixer les bugs. 

Sur la partie librairie standard, les dernières versions ont ajouté de nouveaux helpers dans les fonctions iter. Dans la partie cryptographie, 3DES a été retiré (provoquant une casse de code) mais gagne le support de Encrypted Client Hello et de Quantum Proof Key Exchanges ou encore le rejet de toute clé faisant moins de 1024 bits (en utilisant GenerateKey). Dans Go 1.24, parmi toutes les nouveautés, citons dans la stack net / tcp, la possibilité de faire du mutlipath TCP avec un simple flag. 

Côté portage, Go supporte et retire des OS / processeurs :

1.23 : support expérimental OpenBSD / RISC-V 64

1.23 : nécessité du noyau Linux 2.6.32 minimum ! Ce kernel date de 2010...

1.24 : retrait de Windows sur Arm 32

1.24 : Linux 3.2 minimum (sorti en 2012)

1.25 : nécessité de MacOS 12 minimum

Au-delà des version 1.23 et 1.24, quelle vision pour Go 2.0 et les évolutions au-delà de 2025 ? Une piste a été évoquée : 

- les régions mémoires : support expérimental dans le ramasse-miet. L'objectif de cette approche est de réduire les ressources utilisées par / dans le GC et donner un contrôle plus large de la mémoire aux développeurs

Catégorie actualité: 
Image actualité AMP: 

FOSDEM 2025 partie 2 : Rust for Linux

6 février 2025 à 19:01

Rust for Linux était l'une des sessions que nous attendions le plus à la FOSDEM 2025. Elle s'est déroulée dans le plus grand amphithéâtre de l'Université libre de Bruxelles. Le projet Rust for Linux vise à ajouter la prise en charge du langage Rust au noyau Linux.

En réalité, plusieurs objectifs étaient listés et sont toujours les bases du projet :

- intégration complète du langage comme 2e langage de référence du noyau

- disponibilité par défaut de Rust et non comme ajout externe

- pas limité aux modules chargeables

- pas limité aux pilotes

L’un des principaux objectifs est d’améliorer la sécurité et la gestion de la mémoire, en combinant les paradigmes unsafe et safe memory. L’adoption de Rust permettrait de réduire les risques liés à la mémoire, les bugs, les data races dans le nouveau code, et d’avoir plus de confiance dans les patchs et contributions. Cela devrait aussi aboutir à des modules et pilotes plus simples à écrire (ce qui reste à prouver), et attirer de nouveaux contributeurs au noyau grâce à un langage plus moderne et une meilleure documentation.

L'intégration de Rust est un long voyage :

- La 1ere volonté d'intégration le langage apparaît en 2018, peu après la sortie de Rust 1.26.0.

- Le premier référentiel GitHub est en ligne en 2019.

- Les premières conférences sur le sujet se font en 2020.

- Les RFC (request for comments) sont organisés en 2021

- 1er Rust MC en 2022

- rust-for-linux.com est en ligne en 2023

- 2024 : collaboration étroite avec la communauté Rust, Rust CI est disponible, 1er support minimum du langage

La collaboration avec Rust a été un élément accélérateur en 2024. Cela a permis au projet de faire un point régulier du développement et surtout Rust for Linux a été un projet stratégique pour le 2e semestre 2024 incluant le langage, les librairies, le compilateur, la ligne de commande. Les deux communautés espèrent aussi éviter des changements au langage risquant de "casser" le fonctionnement du noyau. Il est acté que bindgen soit intégré à Linux, dans la Rust CI. Le support minimal de Rust a été officialisé dans Linux 6.11 avec une prise en charge de Rust 1.78.0. Reste à voir quand et comment la version du langage évoluera dans le noyau car Rust évolue très régulièrement. 

De nombreuses distributions supportent Rust : Arch Linux, Debian, Fedora, Gentoo, openSUSE, Ubuntu 20.04 / 24.10. 

Outre le langage, l'autre grand chantier de Rust for linux est la compilation du langage dans GGC. Le 1er commit du rustc_codegen_gcc remonte à l'automne 2020, les premières compilations partielles sont effectives 1 an. Automne 2023 : la compilation est réellement disponible. Quelques mois plus tôt, GCC 13.1 supporte de manière expérimentale Rust. GCC 14.1 stabilise les choses. 

"Nous continuons à corriger les bugs dans notre codegen et dans notre système de typage, que nous découvrons au fil du temps. Nous nous sentons très proches de compiler la bibliothèque Rust `core`, et espérons pouvoir le faire avec la sortie de GCC 15.1 ce printemps. Cela nous permettra de commencer à expérimenter Rust-for-Linux, que nous aimerions pouvoir tester au cours de l'été 2025." (Arthur Cohen, gccrs).

Catégorie actualité: 
Image actualité AMP: 

Windows Terminal 1.23 : pré-version disponible

6 février 2025 à 08:17

Windows Terminal 1.23 est actuellement en développement. Cette version propose plusieurs nouveautés et des améliorations diverses notamment sur l'interface, ainsi que des corrections de bug. 

A retenir :

- les paramètres accessibles via l'interface graphique seront plus nombreux mais la meilleure solution restera settings.json

- compatibility : nouveau paramètre qui sera supporté dans la 1.23 et la 1.22. Possibilité d'exécuter Terminal en arrière-plan ou encore d'activer le mode debug

- nouveauté dans le menu onglet : possibilité de personnaliser les onglets que l'on souhaite ouvrir par défaut ou comment les organiser

- apparence : possibilité de choisir la couleur de fond ou encore accès à une palette de couleurs élargie, nouveau Color Scheme, Ottoson

- affichage des textes en couleurs arc-en-ciel : heureusement cette option d'affichage est expérimentale

- plus utile : Path Translation. Le glisser-déposer de fichiers sur WSL va traduire automatiquement les chemins d'accès entre le classique C:\ de Windows vers le \ de Linux

- quelques évolutions du Virtual Terminal, par exemple support des protocoles S8C1T et S7C1T.

Release note : https://devblogs.microsoft.com/commandline/windows-terminal-preview-1-23-release/

Catégorie actualité: 
Image actualité AMP: 

ParisJUG : soirée troubleshooting en production, le 11 février

6 février 2025 à 07:33

Le ParisJUG propose le 11 février son prochain meetup : soirée troubleshooting en production. Au programme : 

1 / Comment debugger en production ?

Qui n’a jamais rêvé de rajouter une ligne de log à la volée sans redémarrer son application ? Ne pas avoir à attendre la fin de la CI puis du redéploiement des pods en prod ! Le cycle de vie des applications ayant beaucoup évolué ces dernières années, celui de l’investigation de problèmes (debugging/troubleshooting) n’a pas été facilité par ces évolutions.Cette présentation va montrer comment nous avons construit un debugger de production qui est utilisé au quotidien pour résoudre des problèmes de prod et même plus ! Par Jean-Philippe Bempel

2 / Trouver la vérité dans un océan de complexité

 “Houston, on a un problème de corruption de data sur nos jobs Spark ! Des rows qui manquent, des rows en double ! Help !” Ok, qu’est-ce que c’est que ça ? En plus, ça arrive au pire moment : en pleine migration de cluster. Forcément, c’est la première chose à laquelle les utilisateurs vont penser… et ils le font. Par William Montaz

Le meetup aura lieu chez Criteo. Accueil à partir de 19h

Inscription : https://www.parisjug.org/

Catégorie actualité: 
Image actualité AMP: 

Windows 11 : les musiciens vont aimer le Windows Midi Services

5 février 2025 à 19:59

Windows 11 Insider Preview Build 27788 intègre Windows MIDI Services. C'est la première fois que les nouveautés services Windows MIDI sont intégrés. Les équipes ont réécrit les fonctionnalités MIDI pour une meilleure expérience et une prise en charge optimale du matériel MIDI sur WIndows et les apps. MIDI est un standard depuis plus de 40 ans. Il a fait le bonheur des musiciens sur Atari ST. Windows MIDI Services est la nouvelle pile MIDI prenant en charge MIDI 2.0 et MIDI 1.0. Il travaille en 64 bits et supporte x86 et Arm. 

Les points foorts :

- MIDI 2.0

- meilleure communication 

- pilote MIDI USB plus performant supportant les versions 1 et 2

- possibilité d'utiliser un matériel MIDI avec plusieurs applications en même temps !

- notification amélioré lors de l'ajout et du retrait d'un matériel MIDI

- Windows MIDI Services Appp SDK et outils 

Tous les détails de la insider built : https://blogs.windows.com/windows-insider/2025/02/05/announcing-windows-11-insider-preview-build-27788-canary-channel/

Annonce du devblog : https://devblogs.microsoft.com/windows-music-dev/announcing-windows-midi-services-customer-preview-1/

Catégorie actualité: 
Image actualité AMP: 

FOSDEM 2025 : reportage, 1ere partie

5 février 2025 à 09:16

Le FOSDEM est le plus grand événement open source et des communautés ouvertes d'Europe : +600 sessions, +600 intervenants, 40 salles, +9 000 personnes ! Le FOSDEM est à la fois excitant et frustrant. Excitant car il représentel'état de l'art de l'open source et frustrant, car il est impossible de tout voir. Le campus de l'Université Libre de Bruxelles est très grand et il faut souvent passer d'un bâtiment à un autre pour les sessions. Programmez ! était sur place les 1er et 2 février. Nous proposons un reportage en plusieurs parties.

Lessons from rewriting systems software in Rust

Si Go suscitait un large engouement, avec +650 personnes durant la session State of Go 2025, la track Rust n'était pas à négliger. Nous sommes allés voir la session Lessons from rewriting systems software in Rust. Il s'agit plus d'un retour terrain que d'une séance de pur code. Pour leur projet de logiciel système, les équipes ont opté pour Rust et non pour du C. Un logiciel système est un logiciel sur lequel on construit une plateforme pour exécuter d'autres logiciels.

Faut-il le généraliser à tous les projets ? Comme le disait en introduction Ruben Nijveld, il faut choisir ses combats, tous les projets ne nécessitent pas une réécriture. Si vous optez pour une réécriture en Rust, plusieurs réalités tempèrent ce choix :

- une réécriture en Rust ne suffit pas à justifier le projet

- attention aux éléments négatifs que cela peut engendrer : diviser vos développeurs, les utilisateurs ne voient pas le changement

- mettre en avant le positif

- ne pas en faire un projet uniquement technique pour se faire plaisir

L'autre question qui arrive très vite : pourquoi tel projet et pas un autre ? Répondre à cette question permet de donner une priorité à un code ou une application par rapport aux autres. Mais de là vient une autre question : quel argument avancer pour justifier la nouvelle implémentation ? Bref : comment vendre votre réécriture auprès des équipes, de la direction et des utilisateurs si besoin ? L'argument "Rust réduit les problèmes de mémoire, il est considéré comme safe" n'est pas suffisant. La sécurité, la gestion de la mémoire sont des arguments valables, mais ce n'est qu'une partie du problème.

Rust est plus performant ? En soi, oui, mais peut-être que le code unsafe est tout aussi performant. Il faut trouver un équilibre entre sécurité, utilisabilité et performance. Si vous misez sur le safe code et les performances, vous devez mesurer et prouver cela par rapport au code actuel. Dire que cargo run --release est rapide, ce n'est pas suffisant.

La stabilité est un argument à manier avec prudence. Ruben dit que l'on peut penser aux fuites de mémoire pour justifier Rust, mais attention : est-ce que j'ai une stabilité de l'API sur la durée ou est-ce incertain ? Voici les deux approches opposées :

- je dois redémarrer le web worker au bout de 1 000 requêtes pour éviter les problèmes mémoires : c'est pas top !

- écrire un code sans fuites mémoires : c'est top !

Si vous décidez de réécrire, restez concentré sur l'objectif. Cela permettra de dynamiser le projet, d'avoir une direction claire et d'aider les autres développeurs. Soyez le moteur du changement, aidez les autres, documentez ce qui fonctionne, ce qui ne fonctionne pas.

Une réécriture, une nouvelle implémentation, est toujours un projet difficile qui peut vite déraper et échouer :

- fonctionner par itération pour évaluer l'avancement du chantier et voir les points de frictions

- prendre le temps nécessaire : une réécriture est toujours longue et difficile, un planning trop serré fera échouer le projet

- plusieurs points sont à surveiller : la documentation, les dépendances, la distribution / déploiement du code final

La documentation est importante : documenter le projet, commenter le code, générer régulièrement la documentation technique avec Rustdoc. Communiquez vers les utilisateurs pour les tenir au courant, les rassurer.

Ne sous-estimez pas la gestion des dépendances. Les dépendances sont les hell dll modernes ! Elles sont là pour vous aider, résoudre des problèmes à votre place. L'écosystème Rust est très riche en librairies : utilisez-les !

Mais attention : 

- prenez uniquement les dépendances nécessaires

- il y a risque de confiance et de sécurité : vérifier l'origine de chaque dépendance et avoir confiance envers les mainteneurs

- les dépendances sont indépendantes de votre vision, de votre chantier : elles vivent leurs vies de leur côté

Avoir confiance c'est bien mais VERIFIER c'est encore mieux ! N'oubliez jamais que les dépendances font parties de votre application et donc du cycle de vie de votre projet ! Ayez une stratégie de gestion claire des dépendances dès le départ. 

Voilà, mon app à la sauce Rust est prête. Il faut maintenant passer à la distribution, au déploiement. Est-ce que publier sur crates.io est suffisant ? NON ! Les utilisateurs ne sont pas des développeurs Rust. Et ils n'ont pas besoin de le connaître ni de manipuler une CLI ! cargo install n'est pas un mécanisme de distribution et d'installation pour les utilisateurs finaux. Vous devez donc penser binaires, fichiers d'installation pour distribuer facilement. Créez les packages nécessaires. vérifiez aussi que le nom soit disponible sur crate pour éviter toute mauvaise surprise. 

Catégorie actualité: 
Image actualité AMP: 

Programmez! n°267 est disponible : dossier junior, Rust, IA, Azure

5 février 2025 à 07:36

Le nouveau numéro de Programmez!, le n°267, est disponible en kiosque, sur abonnement, en version papier et en version PDF. Le dossier du mois est un spécial coding junior : le code c'est facile.

La rédaction veut sensibiliser les jeunes et les moins jeunes à la technologie et au code. Pour ce faire, nous vous proposons des retours d'expérience très concrets. Oui la technologie peut être ludique. Nous poursuivons par plusieurs articles : comment programmer sa TI-83, un rover et une micro:bit, ou encore créer des projets maker en MicroPython, utiliser Arduino et mBlock. Nous terminons ce dossier par créer un jeu de type Visual Novel avec l'excellent outil seccia.dev.

Les autres thèmes du 267 sont :

- Python aime beaucoup l'IA

- Zenoh : un protocole de communication écrit en RUST

- Blazor

- Voyager : l'agent IA qui joue à minecraft

- Azure

- Performances : voyage au mystérieux pays de la performance

- FastHTML

Vous pouvez commander ce numéro dès maintenant : https://www.programmez.com/magazine.php

Pour vous abonner à Programmez! : https://www.programmez.com/content/nos-formules-dabonnements

Catégorie actualité: 
Image actualité AMP: 

PyPi : de nouveaux malwares surfent sur le succès de DeepSeek

4 février 2025 à 15:28

PyPi, la référence des paquets Python, est une nouvelle fois confronté à des paquets malicieux. Profitant de la popularité de DeepSeek, des groupes de hackers déploient des paquets contenant du code malveillant en utilisant les noms deepseek, deepseekai, etc. Les équipes de Positive Technologies ont mis en évidence une campagne de malware trompant les développeurs afin de voler des données ou de corrompre un système. La société de sécurité indique avoir découvert et mis en quarantaine plusieurs paquets suspects. Plus de 220 développeurs ont installé ces paquets, mais cette attaque semble avoir été maîtrisée.

Tout est parti d'un paquet publié fin janvier 2025, alors que son créateur, bvk, n'était pas actif depuis 2023. Il est à l'origine de deux paquets malicieux.

Bref : il faut être prudent avant d'installer un paquet Python dont l'origine est incertaine.

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