Category: Développement

Veav : Un moteur de navigateur web expérimental aux fonctionnalités limitées

2025-05-18
Veav : Un moteur de navigateur web expérimental aux fonctionnalités limitées

Veav est un moteur de navigateur web expérimental prenant en charge la plupart des types d'affichage (à l'exception de la grille), le comportement en cascade CSS standard, la pagination à l'aide des règles @page, la sortie d'impression au format PDF et toutes les unités CSS. Il charge les documents HTML et XHTML, mais ses capacités réseau sont très limitées, ne prenant en charge que les protocoles http:// et file://. Des informations détaillées sur la compatibilité sont disponibles sur sa page d'état WPT. Des instructions d'installation (utilisant Arch Linux comme exemple) sont fournies, nécessitant plusieurs dépendances et le compilateur `clang-prefixed-release`. Un diagramme d'architecture (format tldraw) est également disponible.

Développement

FFmpeg critique le décodeur rav1d en Rust : une prime de 20 000 $ enflamme le débat

2025-05-18
FFmpeg critique le décodeur rav1d en Rust : une prime de 20 000 $ enflamme le débat

FFmpeg, un framework multimédia open source largement utilisé, a récemment remis en question les performances de rav1d, un décodeur AV1 basé sur Rust, le comparant défavorablement à dav1d basé sur C. Le commentaire de FFmpeg, "Rust est si bon que vous pouvez être payé 20 000 $ pour le rendre aussi rapide que C", a déclenché un débat sur les compromis entre performances, coût et sécurité mémoire. Bien que Rust gagne du terrain pour sa sécurité mémoire et ses performances, même soutenu par la Maison Blanche, son intégration dans le noyau Linux rencontre une résistance. Cette controverse souligne la tension continue entre les considérations de performance et de sécurité dans le choix des langages de programmation.

Développement décodeur AV1

Interface graphique RISC OS 3.11 : un bureau remarquablement avancé

2025-05-18

Cet article explore l’interface utilisateur graphique (GUI) unique de RISC OS 3.11, lancée en 1992 par Acorn Computers. Contrairement à ses contemporains tels que System 7 d’Apple, RISC OS 3.11 présentait une disposition d’écran distincte avec un tableau d’affichage et une barre d’icônes, des interactions innovantes avec une souris à trois boutons et un système de menus intégrant parfaitement les boîtes de dialogue. Son approche non conventionnelle de la gestion des fenêtres, y compris la mise au point et l’ordre de superposition, ainsi que sa gestion des fichiers par glisser-déposer et sa prise en charge des types de fichiers personnalisés, sont remarquables. L’utilisation intelligente des boutons de la souris par le système a réduit la dépendance aux touches de modification du clavier. L’interface graphique de RISC OS 3.11 reste un exemple fascinant de conception non conventionnelle qui offre des leçons précieuses encore aujourd’hui.

Développement

Model2Vec en Rust : inférence 1,7 fois plus rapide

2025-05-18
Model2Vec en Rust : inférence 1,7 fois plus rapide

La crate `model2vec-rs` fournit une implémentation légère en Rust pour le chargement et l'inférence des modèles d'embedding statiques Model2Vec, offrant une vitesse 1,7 fois supérieure à la version Python. Elle prend en charge le chargement de modèles pré-entraînés depuis Hugging Face Hub, propose une interface en ligne de commande et permet des arguments d'encodage personnalisés. Les benchmarks montrent que la version Rust traite 8000 échantillons par seconde contre 4650 pour la version Python.

Développement Embedding de texte

Au revoir, applications de prise de notes payantes : création de ma propre voûte de connaissances sécurisée et privée

2025-05-18
Au revoir, applications de prise de notes payantes : création de ma propre voûte de connaissances sécurisée et privée

Fatigué des problèmes de confidentialité et des coûts élevés liés aux applications commerciales de prise de notes, l'auteur a décidé de créer son propre système de gestion des connaissances personnelles (PKMS) sécurisé, privé et durable. Il partage son parcours, d'Obsidian à un PKMS auto-hébergé, en soulignant la sécurité et le contrôle des données. Le système utilise la plateforme open source Directus et stocke les notes au format Markdown, permettant un accès facile entre les appareils et la migration des données. Bien que cela puisse sembler complexe, l'auteur affirme que le processus est étonnamment simple et encourage d'autres à créer leur propre coffre-fort de connaissances pour une meilleure gestion des connaissances.

Répétition Espacée : Maîtriser la Mémoire grâce à la Puissance des Algorithmes

2025-05-18

Les systèmes de répétition espacée (SRS) tirent parti des effets de test et d'espacement pour améliorer considérablement la mémorisation. Le SRS, pionnier de Supermemo et popularisé par Piotr Wozniak, va au-delà de l'apprentissage par cœur, facilitant la compréhension conceptuelle. Ces systèmes font de la mémorisation un processus délibéré, et non plus aléatoire, et se révèlent remarquablement efficaces pour retenir de grandes quantités d'informations.

Buckaroo : Un tableau de données moderne pour Jupyter

2025-05-18
Buckaroo : Un tableau de données moderne pour Jupyter

Buckaroo est un tableau de données moderne pour Jupyter qui simplifie les tâches les plus courantes d'analyse exploratoire des données. Il offre un tableau de données performant, avec tri, formatage des valeurs et défilement infini. Au-delà du tableau principal, il propose des fonctionnalités supplémentaires telles que des statistiques sommaires, des histogrammes, un échantillonnage intelligent, un nettoyage automatique et une interface utilisateur low-code. Toutes les fonctionnalités ont des valeurs par défaut raisonnables qui peuvent être modifiées pour personnaliser l'expérience en fonction de votre flux de travail. Buckaroo prend en charge les DataFrames Pandas et Polars et fonctionne dans divers environnements, notamment JupyterLab et Jupyter Notebook.

Développement Tableau de données

Le Laboratoire de Logiciel Ouvert (OSL) recherche une durabilité à long terme

2025-05-18
Le Laboratoire de Logiciel Ouvert (OSL) recherche une durabilité à long terme

Après une année de financement, le Laboratoire de Logiciel Ouvert (OSL) de l'Oregon State University recherche activement une durabilité à long terme. Il fait face à deux défis majeurs : trouver un nouveau centre de données et du matériel économiques pour remplacer son infrastructure vieillissante de plus de 20 ans, et obtenir des engagements de financement pluriannuels pour couvrir les opérations et les futures mises à niveau. L'OSL recherche activement des espaces dans les centres de données et des dons de matériel, et lance un appel aux entreprises et aux particuliers pour obtenir un soutien à long terme afin de garantir la continuité de ses services à la communauté open source.

Développement

Débarrassez-vous de vos mauvaises habitudes Vim avec Hardtime.nvim

2025-05-18
Débarrassez-vous de vos mauvaises habitudes Vim avec Hardtime.nvim

Fatigué de dépendre de hjkl et de la souris ? Hardtime.nvim vous aide à vous débarrasser de vos mauvaises habitudes et à améliorer votre efficacité avec Vim. Il restreint les frappes de touches répétées, fournit des conseils pour des mouvements Vim plus rapides et génère un rapport de vos mauvaises habitudes les plus courantes. Apprenez les sauts relatifs, les mouvements de mots, les combinaisons opérateur + mouvement, et plus encore. Personnalisez les paramètres pour désactiver les touches, les types de fichiers et choisissez votre méthode de notification. Améliorez votre flux de travail Vim dès aujourd'hui !

Développement

Utiliser les correctifs Git dans Apple Mail : un flux de travail étonnamment simple

2025-05-18

Ce guide explique comment gérer les correctifs Git par e-mail dans Apple Mail sur macOS. Tout d’abord, créez une boîte aux lettres « Correctifs » dédiée. Déplacez les e-mails contenant des correctifs dans cette boîte aux lettres et exportez-la vers un dossier local. Enfin, utilisez la commande `git apply` dans votre terminal pour appliquer le correctif. Bien que cela simplifie le processus dans Apple Mail, l’application réelle du correctif s’effectue via le terminal. N’oubliez pas de nettoyer régulièrement votre dossier local « Correctifs ».

Développement Correctifs

BrowserBee : Votre assistant IA intégré au navigateur

2025-05-18
BrowserBee : Votre assistant IA intégré au navigateur

BrowserBee est une extension Chrome open source qui privilégie la confidentialité et vous permet de contrôler votre navigateur à l'aide du langage naturel. Il combine la puissance d'un LLM pour l'analyse et la planification des instructions, et Playwright pour une automatisation robuste du navigateur afin d'accomplir des tâches. BrowserBee s'exécutant entièrement dans votre navigateur (à l'exception du LLM), il peut interagir en toute sécurité avec les sites Web connectés, tels que vos comptes de médias sociaux ou votre messagerie électronique, sans compromettre la sécurité ni nécessiter d'infrastructure backend. Il prend en charge les principaux fournisseurs de LLM tels qu'Anthropic, OpenAI, Gemini et Ollama, et offre une large gamme d'outils de navigation, d'interaction, d'observation et de gestion de la mémoire, apprenant des séquences d'utilisation d'outils efficaces pour les tâches futures.

Développement extension navigateur

Craft Basic 1.7.1 : Un interpréteur BASIC rétro pour Windows

2025-05-18

Craft Basic 1.7.1 est un interpréteur BASIC gratuit pour Windows 95 et versions ultérieures. Apprenez la programmation, créez des jeux simples, écrivez du code interactif, effectuez des calculs complexes, affichez des graphismes sympas, créez des formulaires, écrivez des scripts utiles et bien plus encore. Des commandes simples vous permettent de dessiner des bitmaps et de lire des fichiers WAV ; il gère les formulaires pour le texte statique et les boutons ; et de nombreux exemples de programmes sont inclus pour vous aider à démarrer. Compatible avec Win9X, Win2K, WinXP, Win10 et Win11.

Développement interpréteur BASIC

Configuration d'un broker MQTT hautement disponible natif de Kubernetes

2025-05-18

Cet article détaille une configuration entièrement déclarative et native de Kubernetes pour un broker MQTT hautement disponible utilisant Eclipse Mosquitto et Traefik. Il exploite les primitives Kubernetes principales (Deployments, Services, ConfigMaps et RBAC) pour créer un broker principal et un broker secondaire, assurant un basculement quasi sans temps d'arrêt. Un contrôleur personnalisé surveille le broker principal et redirige le trafic vers le broker secondaire en moins de 5 secondes en cas de panne, maintenant la continuité des messages. Le bridging MQTT interne assure une propagation transparente des messages entre les brokers, même lors d'un basculement.

Développement

Introduction à la programmation pour les partitions et les compositions d'entiers

2025-05-18
Introduction à la programmation pour les partitions et les compositions d'entiers

LeetArxiv a publié le chapitre 1 de sa nouvelle série, "Ce que tout programmeur doit savoir sur la combinatoire énumérative", une introduction aux partitions et compositions d'entiers. L'article utilise une approche accessible, guidant les programmeurs à travers ces concepts grâce à l'observation et à la reconnaissance de motifs. Du code C est fourni pour générer des compositions faibles, en les énumérant efficacement à l'aide de coefficients binomiaux et de la recherche binaire.

Développement

Microsoft corrige enfin la mise à jour de sécurité qui a cassé le démarrage dual

2025-05-18
Microsoft corrige enfin la mise à jour de sécurité qui a cassé le démarrage dual

En août dernier, une mise à jour de sécurité visant à corriger une vulnérabilité du chargeur de démarrage GRUB a involontairement cassé le démarrage dual de Windows et de Linux sur les systèmes compatibles avec le démarrage sécurisé. Cette vulnérabilité permettait aux acteurs malveillants de contourner les mécanismes de sécurité du démarrage sécurisé. Neuf mois plus tard, le 13 mai 2025, Microsoft a discrètement publié un correctif (KB5058385) pour résoudre ce problème. Ce correctif atténue les problèmes en affinant la manière dont le ciblage avancé du démarrage sécurisé (SBAT) interagit avec les systèmes de démarrage dual, empêchant le blocage des chargeurs de démarrage Linux légitimes et évitant les erreurs de "Violation de la politique de sécurité". Ce correctif s'applique aux versions de Windows concernées, telles que Windows 11 23H2, 22H2, 21H2 ; Windows 10 21H2 ; et Windows Enterprise 2015 LTSB, Windows Server 2022, 2019, 2016, 2012, 2012 R2. Le correctif est appliqué automatiquement via Windows Update.

Développement démarrage dual

Arbres de décision : une approche diviser pour régner pour l’apprentissage automatique

2025-05-18
Arbres de décision : une approche diviser pour régner pour l’apprentissage automatique

Ceci est le premier d’une série d’articles sur les arbres de décision en apprentissage automatique. Les arbres de décision partitionnent récursivement les données en régions basées sur une série de questions, conduisant à une prédiction. L’article explique clairement la définition mathématique des arbres de décision, les types d’arbres de décision (arbres de classification et de régression), les algorithmes courants (ID3, C4.5 et CART) et les fonctions objectives (impureté de Gini, entropie et perte quadratique). Il explore également les avantages et les inconvénients, le compromis biais-variance, l’« effet escalier » et l’algorithme glouton utilisé pour construire les arbres de décision.

Développement Arbres de Décision

Surchargez vos projets Java avec Rust : Un guide pratique d'intégration JNI

2025-05-18
Surchargez vos projets Java avec Rust : Un guide pratique d'intégration JNI

Cet article explore l'intégration de code Rust dans les projets Java pour améliorer les performances et l'efficacité. Il détaille l'utilisation de JNI (Java Native Interface), la gestion de la mémoire, la journalisation et les appels asynchrones. Le projet open source rust-java-demo montre comment empaqueter les bibliothèques Rust spécifiques à la plateforme dans un seul JAR, unifier les journaux et mapper les erreurs Rust aux exceptions Java. Il explique également comment utiliser CompletableFuture pour gérer les appels de fonctions Rust asynchrones, évitant ainsi le blocage des threads Java.

Développement

Concurrence sans peur en Python : le projet Lungfish

2025-05-18

L’équipe du projet Verona développe Lungfish, un nouveau modèle de propriété pour Python conçu pour fournir une gestion sûre et efficace de la mémoire et de la concurrence. Dans un premier temps, ils ont créé des prototypes de concepts de propriété basés sur des régions à l’aide d’un langage jouet, FrankenScript, et ont partagé leurs résultats avec l’équipe Faster CPython. Actuellement, ils mettent en œuvre progressivement un modèle d’immuabilité profonde, incluant l’immuabilité profonde dans CPython, la gestion des ordures immuables cycliques et l’intégration avec la messagerie entre sous-interprètes. Cela ouvrira la voie à l’application du modèle de propriété basé sur les régions à Python, dans le but final de simplifier la programmation concurrente et d’éviter les pièges de la concurrence. Le projet s’inspire fortement de langages comme Rust, mais utilise des vérifications dynamiques pour s’adapter au typage dynamique de Python.

Développement Modèle de propriété

Langages de programmation et leurs domaines d'excellence

2025-05-18

Un article soutient que chaque langage de programmation a besoin d'une application phare pour réussir. L'auteur propose un raffinement : au lieu d'une « application phare », il est plus précis de parler de « domaine d'excellence ». Par exemple, C pour les noyaux, C++ et Rust pour la programmation système bas niveau, Java pour les applications d'entreprise et Android, Python pour le calcul scientifique et l'apprentissage automatique, et JavaScript pour les interfaces web front-end. L'expérience de l'auteur montre qu'utiliser un langage en dehors de son domaine d'expertise est beaucoup plus difficile et souvent impraticable.

Développement domaines

La maison intelligente étonnamment désordonnée d'un ingénieur principal de Home Assistant

2025-05-18
La maison intelligente étonnamment désordonnée d'un ingénieur principal de Home Assistant

Frenck, ingénieur principal de Home Assistant, révèle la vérité sur sa maison intelligente : ce n'est pas la configuration extravagante que vous pourriez imaginer. Au lieu de cela, c'est une expérience chaotique avec des centaines d'appareils, plusieurs instances de Home Assistant, des automatismes incohérents et des tableaux de bord désastreux. Sa famille a même accepté la nature instable du système. Il avoue le désordre et promet de l'améliorer, en visant une expérience de maison intelligente réellement optimisée pour sa famille.

Développement

Construire le pire lecteur vidéo avec Three.js : un jeu nostalgique pixel-perfect

2025-05-18
Construire le pire lecteur vidéo avec Three.js : un jeu nostalgique pixel-perfect

Cet article détaille le parcours de l’auteur dans la création d’un lecteur vidéo créatif à l’aide de Three.js et d’un moteur physique. Au lieu d’un lecteur traditionnel, il s’agit d’un jeu de type arcade où les utilisateurs doivent insérer des pièces virtuelles pour regarder la vidéo, ne gagnant que trois secondes de lecture par pièce. Les joueurs doivent faire glisser et déposer les pièces dans une fente, ce qui exige de la précision pour continuer à regarder. Cette conception nostalgique et amusante remet en question la conception traditionnelle des lecteurs vidéo et met en évidence les possibilités infinies du développement web.

LLRT : Runtime JavaScript sans serveur ultrarapide

2025-05-18
LLRT : Runtime JavaScript sans serveur ultrarapide

AWS Labs présente LLRT, un runtime JavaScript léger, développé en Rust et conçu pour les applications sans serveur hautes performances. Surpassant les autres runtimes JavaScript sur AWS Lambda avec un démarrage plus de 10 fois plus rapide et un coût jusqu'à 2 fois inférieur, LLRT utilise QuickJS comme moteur JavaScript pour une utilisation efficace de la mémoire et un démarrage rapide. Bien qu'expérimental, LLRT prend en charge le déploiement via des runtimes personnalisés et des images conteneur, inclut des outils de test robustes et offre une excellente compatibilité avec AWS SDK v3. Il ne s'agit pas d'un remplacement de Node.js, mais plutôt d'un complément pour les fonctions sans serveur critiques pour les performances, idéal pour des tâches telles que la transformation de données et le traitement en temps réel. Son API basée sur Node.js assure une transition facile depuis d'autres solutions.

Développement

Expert vs. Novice : Efficacité dans la résolution de problèmes

2025-05-18
Expert vs. Novice : Efficacité dans la résolution de problèmes

Cet essai utilise l'analogie d'un labyrinthe pour illustrer la différence flagrante d'efficacité entre les experts et les novices dans la résolution de problèmes. Les experts, grâce à leur expérience et à leurs stratégies efficaces, surmontent les défis rapidement. Les novices, en revanche, se retrouvent souvent embourbés dans des complexités auto-créées, perdant du temps sur des tâches non pertinentes. L'auteur souligne que les novices ne sont pas intrinsèquement moins capables, mais manquent d'expérience et d'une vision globale du problème. Les novices ont besoin des conseils d'experts pour identifier les décisions cruciales et éviter les erreurs en cascade dues à de mauvaises décisions. Ils doivent explorer activement le domaine, cultiver la confiance et relever les défis.

Développement

Fortran pour les programmeurs C : Un guide de démarrage rapide

2025-05-18

Ce guide concis fournit des informations essentielles pour permettre aux programmeurs C/C++ de se lancer rapidement dans Fortran. Il couvre des aspects importants du langage, notamment ses deux formes de source (forme fixe et forme libre), les règles de typage implicites, les fonctions intégrées, la programmation modulaire et les opérations d'entrée/sortie. Le guide souligne les différences entre Fortran et C/C++ en termes de types de données, de tableaux, de pointeurs et d'appels de fonctions, et signale les pièges potentiels, tels que la priorité des opérateurs et l'évaluation en court-circuit. C'est un excellent point de départ pour les programmeurs C/C++ intéressés par l'apprentissage de Fortran.

Développement

Stream vs. Batch : Il s'agit en réalité de Push vs. Pull

2025-05-18

Le débat courant « Stream vs. Batch » est trompeur. De nombreux systèmes de streaming utilisent en interne le traitement par lots pour améliorer les performances, mais la véritable distinction réside dans la sémantique du traitement des données : les systèmes « push » fournissent des données en temps réel, offrant une vue complète et à jour ; les systèmes « pull » interrogent les données périodiquement, risquant de manquer des mises à jour et des suppressions. Bien que « push » soit plus complexe, son avantage en temps réel est convaincant. Une fois que vous avez expérimenté la magie de la fraîcheur des données à la seconde près, vous ne voudrez plus jamais revenir en arrière. En pratique, les deux approches se complètent, le traitement par lots étant souvent utilisé pour la rétroaction dans les systèmes de streaming.

Développement traitement par lots

FreeBASIC : Un compilateur BASIC puissant et open-source

2025-05-17

FreeBASIC est un compilateur BASIC gratuit et open-source (GPL) pour Windows, DOS et Linux. Hautement compatible avec QuickBASIC, de nombreux programmes QuickBASIC compilent et s'exécutent avec des modifications minimales en mode 'QB' de FreeBASIC. Cependant, le mode par défaut de FreeBASIC offre des fonctionnalités améliorées et prend en charge les paradigmes de programmation procédurale, orientée objet et métaprogrammation. Il génère des exécutables console et GUI, des bibliothèques dynamiques et statiques, et offre une prise en charge des bibliothèques C et C++ partielles. Sa vitesse rivalise avec des outils classiques comme GCC.

Développement Compilateur BASIC

Stack Overflow se rebrand face à la chute du trafic due à l'IA

2025-05-17
Stack Overflow se rebrand face à la chute du trafic due à l'IA

Face à une baisse spectaculaire de 64 % du trafic due aux alternatives basées sur l'IA, la société mère de Stack Overflow, Stack Exchange, entreprend une opération de changement de marque. Malgré la rentabilité continue, la baisse de l'engagement des utilisateurs représente une menace existentielle. L'entreprise vise à passer d'un seul axe Q&A à un modèle à trois piliers englobant la communauté, les carrières et le Q&A, tout en développant des outils assistés par l'IA et en améliorant ses services de recrutement. Cette décision a suscité des débats parmi les utilisateurs, certains affirmant que le changement de marque n'est pas la solution et que la plateforme actuelle est suffisante.

Développement

arXivLabs : Collaboration communautaire sur les fonctionnalités d'arXiv

2025-05-17
arXivLabs : Collaboration communautaire sur les fonctionnalités d'arXiv

arXivLabs est un cadre permettant aux collaborateurs de développer et de partager de nouvelles fonctionnalités d'arXiv directement sur le site Web. Les participants adhèrent aux valeurs d'arXiv : ouverture, communauté, excellence et confidentialité des données utilisateur. Vous avez une idée pour améliorer la communauté arXiv ? En savoir plus sur arXivLabs.

Développement

Xata : Redéfinition de la plateforme PostgreSQL pour l'échelle

2025-05-17
Xata : Redéfinition de la plateforme PostgreSQL pour l'échelle

Xata a lancé une nouvelle plateforme PostgreSQL conçue pour relever les défis auxquels les équipes sont confrontées lorsqu'elles utilisent Postgres à grande échelle. Cette plateforme propose une ramification Copy-on-Write instantanée, l'anonymisation des données, un déploiement indépendant du cloud et une séparation du stockage et du calcul, ce qui se traduit par des améliorations significatives des performances et des coûts. En intégrant les projets open source pgstream et pgroll, Xata simplifie le flux de travail des développeurs et permet des modifications de schéma sans temps d'arrêt. Que ce soit pour le développement, les tests ou la production, Xata offre une solution efficace, sécurisée et conforme, avec un modèle de déploiement BYOC (Bring Your Own Cloud) pour un contrôle total.

Développement Cloud natif

Espanso : un outil d’expansion de texte multiplateforme en Rust

2025-05-17
Espanso : un outil d’expansion de texte multiplateforme en Rust

Espanso est un outil d’expansion de texte multiplateforme écrit en Rust. Il détecte les mots clés et les remplace par du texte prédéfini, augmentant ainsi la productivité. Ses fonctionnalités incluent le gain de temps de frappe, la création de snippets de code système, l’exécution de scripts personnalisés, l’utilisation facile des emojis et une large compatibilité (Windows, macOS, Linux, la plupart des applications). Il prend en charge les images, une barre de recherche puissante, l’expansion des dates, les scripts personnalisés, les commandes shell, les configurations spécifiques aux applications, les formulaires, l’extension de paquets, un gestionnaire de paquets intégré, une configuration basée sur des fichiers, des déclencheurs d’expressions régulières et un support expérimental de Wayland. Ce projet open source gratuit, créé par Federico Terzi, est sous licence GPL-3.0.

Développement expansion de texte
1 2 84 85 86 88 90 91 92 214 215