Category: Développement

Arch Gateway : Gestion sécurisée et efficace des invites pour les applications GenAI

2025-03-05
Arch Gateway : Gestion sécurisée et efficace des invites pour les applications GenAI

Arch Gateway, développé par les contributeurs d'Envoy Proxy, simplifie et optimise le développement d'applications d'IA générative. Il utilise des LLM spécialement conçus pour gérer les invites, offrant un routage basé sur l'intention, une sécurité robuste (prévention des jailbreaks), l'intégration d'API et une observabilité complète. Arch Gateway prend en charge plusieurs LLM et utilise Envoy pour des performances et une évolutivité élevées. Une interface CLI conviviale et une documentation détaillée sont fournies, avec un guide de démarrage rapide montrant la création d'un agent IA simple, tel qu'un agent de conversion de devises.

Développement

Mullenweg, co-fondateur de WordPress, reste en poste et cherche un successeur

2025-03-04
Mullenweg, co-fondateur de WordPress, reste en poste et cherche un successeur

Alors que des appels à sa démission ont été lancés suite à une bataille juridique houleuse avec WP Engine, le co-fondateur de WordPress et PDG d'Automattic, Matt Mullenweg, a confirmé son intention de rester en poste. Il planifie activement la succession, cherchant à trouver un PDG successeur, et non un comité, pour continuer à gérer la communauté WordPress. Le conflit avec WP Engine, une entreprise construite sur WordPress, tourne autour de la conviction de Mullenweg qu'elle n'a pas suffisamment contribué au projet open source. Il a également discuté de l'avenir d'Automattic et du succès de son modèle, soulignant le rôle de WordPress.com dans l'introduction de plus de 100 millions de personnes à WordPress. Mullenweg prévoit un avenir où le successeur agira davantage comme un 'maire' qu'un PDG, responsable envers la communauté.

Visualisation du graphe de dépendances de PyPI : découverte de clusters de paquets cachés

2025-03-04

En visualisant le graphe de dépendances de plus d’un demi-million de paquets Python open source sur PyPI, l’auteur construit un graphe réseau massif. Après le nettoyage des données et l’utilisation du logiciel Gephi, l’auteur révèle avec succès les relations de dépendance entre les paquets et découvre des phénomènes intéressants : certains paquets forment des clusters serrés, comme le cluster de paquets de calcul scientifique autour de NumPy ; d’autres sont des clusters anormaux contenant des paquets suspects, ce qui suggère le potentiel des méthodes de visualisation pour détecter les paquets malveillants. De plus, les paquets de grandes entreprises comme Triton et Odoo se regroupent également en raison de leurs dépendances internes. Cette recherche offre une nouvelle perspective pour explorer l’écosystème PyPI et démontre la puissance de la visualisation de données dans l’analyse des paquets.

Développement

Statistiques de temps d'exécution des exercices SICP

2025-03-04
Statistiques de temps d'exécution des exercices SICP

Ce tableau de données enregistre le temps d'exécution de l'interpréteur pour chaque exercice de Structure and Interpretation of Computer Programs (SICP). Le tableau montre une grande variation du temps d'exécution entre les exercices, allant de quelques millisecondes à des secondes. Cela reflète l'impact de l'efficacité algorithmique et des techniques de programmation sur les performances du programme. Certains algorithmes récursifs montrent une croissance rapide du temps d'exécution, tandis que leurs homologues itératifs sont plus efficaces. Ces données fournissent des informations précieuses pour apprendre et comprendre les algorithmes et les structures de données présentés dans SICP.

Onyx : Plateforme IA open source pour la recherche d'entreprise

2025-03-04
Onyx : Plateforme IA open source pour la recherche d'entreprise

Onyx (anciennement Danswer) est une plateforme IA open source qui connecte les documents, applications et personnes de votre entreprise. Elle offre une interface de chat riche en fonctionnalités et prend en charge plusieurs LLM. Intégration transparente avec plus de 40 connecteurs, dont Google Drive, Slack et Salesforce, en maintenant la synchronisation des connaissances et des contrôles d'accès. Créez des agents IA personnalisés avec des invites, des bases de connaissances et des actions uniques. Déployez Onyx en toute sécurité à n'importe quelle échelle : ordinateur portable, sur site ou dans le cloud. Une édition communautaire est disponible gratuitement sous licence MIT, tandis qu'une édition Entreprise offre des fonctionnalités améliorées pour les grandes organisations.

Développement Recherche d'entreprise

GitSyncPad : Micro-clavier pour commandes Git en un seul clic

2025-03-04
GitSyncPad : Micro-clavier pour commandes Git en un seul clic

GitSyncPad est un micro-clavier innovant conçu pour simplifier le contrôle de version Git. Exécutez des commandes comme git add, git commit et git push en appuyant sur un seul bouton. Aucune installation de logiciel n'est requise ; connectez-le simplement à votre ordinateur via USB et appuyez sur le bouton pour exécuter facilement les commandes Git. Seulement 10 unités disponibles !

Développement micro-clavier

Vidformer : Révolutionner le traitement vidéo pour la vision par ordinateur

2025-03-04
Vidformer : Révolutionner le traitement vidéo pour la vision par ordinateur

Développé par le laboratoire OSU Interactive Data Systems Lab, Vidformer fournit une infrastructure pour les interfaces natives vidéo et accélère la visualisation de la vision par ordinateur. Il transforme efficacement les vidéos, permettant une annotation, une édition et un traitement plus rapides des données vidéo, sans compromettre les performances. Utilisant un format de spécification déclarative, Vidformer offre une optimisation transparente et une exécution différée, offrant une lecture quasi instantanée. Construit sur des technologies ouvertes telles que OpenCV, Supervision, FFmpeg, Jupyter et Apache OpenDAL, Vidformer propose une interface cv2 pour une intégration facile avec les flux de travail Python existants. Bien qu'il ne soit ni un éditeur vidéo ni une base de données, Vidformer complète les bibliothèques de vision par ordinateur et les modèles d'IA, ce qui le rend idéal pour diverses tâches liées à la vidéo.

Développement

anon-kode : Assistant de codage IA basé sur le terminal

2025-03-04
anon-kode : Assistant de codage IA basé sur le terminal

anon-kode est un assistant de codage IA basé sur le terminal qui utilise n'importe quel modèle compatible avec l'API de style OpenAI. Il corrige les codes défectueux, explique le comportement des fonctions, exécute des tests, et plus encore – similaire à Claude-code. Après l'installation et la configuration initiale, il suffit de commencer à taper. La gestion des versions, la compilation et la publication sont automatisées par GitHub Actions, permettant des déclenchements de publication manuels avec sélection de version patch/minor/major.

Développement Correction de code

Les chefs d'équipe en ingénierie devraient-ils écrire du code ? Cela dépend de votre définition de « coder »

2025-03-04
Les chefs d'équipe en ingénierie devraient-ils écrire du code ? Cela dépend de votre définition de « coder »

Cet article explore si les chefs d'équipe en ingénierie devraient écrire du code. L'auteur soutient que tous les chefs d'équipe devraient être « dans le code », comprendre la base de code et le fonctionnement de leur équipe, mais pas tous les chefs d'équipe ont besoin d'être les principaux auteurs de code. Les chefs d'équipe doivent se concentrer sur l'amélioration de l'efficacité de l'équipe, comme le recrutement, la planification stratégique, la prise de décision, la création d'une culture, le mentorat, etc. Cependant, dans le contexte économique actuel, les chefs d'équipe sont confrontés à des exigences d'efficacité plus élevées et doivent trouver un équilibre entre être « dans le code » et remplir leurs autres responsabilités de gestion. L'article suggère des méthodes permettant aux chefs d'équipe d'être « dans le code », telles que la planification de temps de codage dédié, la programmation en binôme avec les collaborateurs, les revues de code et l'augmentation de la participation au codage à des occasions spécifiques (par exemple, la création de prototypes ou la gestion des incidents). En fin de compte, l'auteur conclut que l'essentiel est de savoir si les chefs d'équipe sont « dans le code », et non s'ils écrivent principalement du code.

Une startup soutenue par YC recherche un ingénieur fondateur en scraping web

2025-03-04
Une startup soutenue par YC recherche un ingénieur fondateur en scraping web

Une startup soutenue par YC recherche un ingénieur fondateur en scraping web pour construire une infrastructure de crawling web à l'échelle d'Internet, capable de gérer des millions de domaines et des défenses anti-bot en constante évolution. Le poste exige une expérience experte en scraping et crawling web à grande échelle (Selenium, Puppeteer, Playwright, Scrapy, etc.), une connaissance approfondie des stratégies de détection anti-bot et une expérience prouvée en résolution de CAPTCHA, gestion de proxy et nettoyage de données. La plateforme vise à fournir des tests de bout en bout pour les agents web, incluant un Browser Gym pour l'optimisation pilotée par RL.

AppStat : Surveillance des performances des applications en temps réel

2025-03-04

AppStat est un outil gratuit de surveillance des performances des applications qui fournit une surveillance en temps réel des métriques CPU, mémoire, disque et threads. Son interface graphique claire aide les développeurs à identifier rapidement les goulots d'étranglement des ressources, les fuites de mémoire et les pics de performances sans interrompre leur flux de travail. Les fonctionnalités incluent les modes clair/sombre, une option toujours au-dessus et des journaux exportables pour l'analyse d'équipe.

arXivLabs : Projets expérimentaux avec les collaborateurs de la communauté

2025-03-04
arXivLabs : Projets expérimentaux avec les collaborateurs de la communauté

arXivLabs est un cadre permettant aux collaborateurs de développer et de partager de nouvelles fonctionnalités arXiv directement sur notre site web. Les individus et les organisations travaillant avec arXivLabs ont adopté et accepté nos valeurs d'ouverture, de communauté, d'excellence et de confidentialité des données utilisateur. arXiv est engagé envers ces valeurs et ne travaille qu'avec des partenaires qui les respectent. Vous avez une idée de projet qui ajoutera de la valeur à la communauté arXiv ? En savoir plus sur arXivLabs.

Développement

Mise à jour postmarketOS de février 2025 : nouveau nom, prise en charge audio et plus encore

2025-03-04
Mise à jour postmarketOS de février 2025 : nouveau nom, prise en charge audio et plus encore

Février 2025 a marqué des progrès significatifs pour le projet postmarketOS. Un changement de nom est en cours, avec une demande d'apport de la communauté. La prise en charge audio pour MSM89x7 a été améliorée, et davantage de dispositifs Xiaomi ont rejoint le support communautaire. Des audits de sécurité ont été effectués, et des améliorations de l'infrastructure, notamment les systèmes de sauvegarde et d'intégration continue (CI), ont été mises en œuvre. De nombreuses mises à jour du noyau et des mises à niveau de paquets ont été publiées, améliorant ainsi la stabilité et les performances.

Développement

Petits Documents : Le Secret d'une Rédaction Technique Efficace

2025-03-04

Tout comme les petits commits de code sont privilégiés dans le développement logiciel, une documentation concise et ciblée améliore la clarté, l'accessibilité et l'efficacité de la révision. Cet article préconise la rédaction de documents concis abordant une seule idée, fournissant un contexte complet et évitant les simplifications excessives. Les documents plus longs doivent être divisés en parties plus petites et indépendantes. Une organisation efficace, des liens croisés et une maintenance régulière sont essentiels pour éviter la fragmentation de l'information. L'objectif final est des révisions plus rapides, une communication plus claire et moins de stress pour tous les intervenants.

Développement gestion de documentation

Le coût de performance de l'abus de panic/recover en Go

2025-03-04

Cet article compare les performances entre l'utilisation de `panic` et `recover` en Go pour l'itération de tableau par rapport à une boucle traditionnelle. Les résultats montrent une pénalité de performance significative pour l'abus de `panic`/`recover` pour le contrôle de flux dans les ensembles de données plus petits. Ceci est attribué à l'inhibition des optimisations du compilateur, telles que l'intégration en ligne et l'élimination des vérifications de limites. Bien que `panic`/`recover` puissent offrir des gains d'efficacité dans la gestion des erreurs internes, l'auteur met en garde contre une utilisation excessive et souligne l'importance de maintenir ces mécanismes internes à un package, loin des API publiques.

Développement

Dépasser la limite des 2 Go : E/S asynchrones pour les fichiers volumineux dans WebAssembly

2025-03-04
Dépasser la limite des 2 Go : E/S asynchrones pour les fichiers volumineux dans WebAssembly

L'auteur avait précédemment implémenté setjmp dans WebAssembly, contournant la dépendance de WASI libc à la proposition de gestion des exceptions. Cependant, cette approche était limitée aux fichiers de moins de 2 Go. Cet article détaille comment utiliser l'API File et le type Blob pour créer un système de fichiers basé sur la mémoire afin de gérer des fichiers plus volumineux. L'E/S web étant asynchrone tandis que les langages système sont généralement synchrones, Asyncify a été utilisé pour relier les paradigmes. L'auteur a rencontré des problèmes d'optimisation avec wasm-opt, qu'il a résolus en créant un faux wasm-opt. Enfin, en utilisant intelligemment un pointeur de fonction volatile, il a contourné l'hypothèse incorrecte d'Asyncify concernant la fonction `asyncjmp_rt_start`, réussissant ainsi à gérer de manière asynchrone les fichiers volumineux.

Développement Gestion des fichiers

Exécuter Windows NT sur une GameCube/Wii : Une aventure folle

2025-03-04
Exécuter Windows NT sur une GameCube/Wii : Une aventure folle

Un projet incroyable est en cours pour porter Windows NT 3.51 et les versions ultérieures sur GameCube et Wii ! Cela implique un piratage important, notamment un firmware ARC personnalisé, des pilotes et une chaîne d’outils. Le projet prend en charge GameCube, Wii et Wii U (vWii uniquement), en détaillant le processus d’installation, y compris le partitionnement, l’installation des pilotes et les problèmes potentiels. Bien que ce soit une tâche difficile, il montre le potentiel du matériel de console de jeu et l’ingéniosité du développeur.

Développement

GPL : Avantage ou inconvénient pour WordPress ?

2025-03-04
GPL : Avantage ou inconvénient pour WordPress ?

Daniel Jalkut de Red Sweater Software soutient que la licence GPL entrave la participation et l’adoption de WordPress. Cet article réfute cet argument en affirmant que la communauté florissante de plugins et de thèmes de WordPress est une conséquence directe de la GPL. L’auteur utilise son expérience personnelle pour montrer comment la GPL protège les libertés des utilisateurs et, en fin de compte, favorise un écosystème prospère plutôt que de nuire au développement. Tout en reconnaissant les limites de la GPL, ses principes fondamentaux de partage et de réciprocité sont essentiels pour construire une communauté et un écosystème solides, surpassant largement les préoccupations liées à la licence.

(ma.tt)
Développement Licence open source

smallpond de DeepSeek : Un framework de calcul distribué léger basé sur DuckDB

2025-03-04
smallpond de DeepSeek : Un framework de calcul distribué léger basé sur DuckDB

DeepSeek a publié smallpond, un framework de calcul distribué léger basé sur DuckDB pour gérer des ensembles de données massifs. Il utilise l'évaluation paresseuse et Ray pour le calcul distribué, prend en charge plusieurs stratégies de partitionnement et s'intègre efficacement avec le système de fichiers 3FS propriétaire de DeepSeek. Bien que la dépendance à Ray et 3FS ajoute de la complexité, smallpond équilibre la facilité d'utilisation avec les performances, offrant aux ingénieurs de données une nouvelle option pour traiter des ensembles de données à l'échelle du téraoctet. Comparé à des frameworks lourds comme Spark, smallpond est plus léger, plus facile à apprendre et particulièrement adapté aux petites entreprises qui n'ont pas besoin de gérer des requêtes excessivement complexes.

Développement calcul distribué

Construire sa propre pile TCP/IP en espace utilisateur : des trames Ethernet à ARP

2025-03-04
Construire sa propre pile TCP/IP en espace utilisateur : des trames Ethernet à ARP

Cet article de blog, premier d'une série, détaille la construction d'une pile TCP/IP minimale dans l'espace utilisateur de Linux. L'objectif est d'apprendre la programmation réseau et système de manière pratique. Il couvre l'utilisation des dispositifs TUN/TAP pour intercepter le trafic réseau, une analyse approfondie du format et de l'analyse des trames Ethernet (adresses MAC, champ ethertype, CRC), et une explication complète du protocole de résolution d'adresse (ARP), y compris le format des paquets et l'algorithme de résolution. L'article se termine par la vérification de la fonctionnalité de réponse ARP de la pile personnalisée à l'aide d'arping.

Développement

Le Dilemme de Conception de RCL : Le Défi des Nombres à Virgule Flottante

2025-03-04

L'auteur a rencontré un défi lors de la création du nouveau langage de configuration RCL : la gestion des nombres à virgule flottante. En tant que sur-ensemble de JSON, RCL doit trouver un équilibre entre la sémantique de JSON, le système de types et la lisibilité du code. L'article explore les compromis entre les types entiers et à virgule flottante, tels que la distinction entre ces types et la gestion de l'égalité numérique et de la conversion de types. Finalement, l'auteur a opté pour un seul type numérique, « Number », afin de simplifier la conception du langage et d'améliorer l'expérience utilisateur. Cette solution est implémentée dans RCL 0.8.0.

Visualisation interactive d'arbre de processus dans Jupyter Notebook

2025-03-04
Visualisation interactive d'arbre de processus dans Jupyter Notebook

Le Centre de défense cybernétique du DNB a développé un outil de visualisation interactive d'arbre de processus dans Jupyter Notebook pour améliorer l'efficacité de la réponse aux incidents. En utilisant des technologies telles que anywidget, marimo, ibis, Apache Spark et dependentree, il transforme les journaux d'événements de création de processus des EDR comme Microsoft Defender for Endpoint en un arbre interactif. Les utilisateurs peuvent filtrer les événements, explorer la hiérarchie des processus et sélectionner des processus individuels pour une inspection détaillée. L'outil fonctionne dans le navigateur pour faciliter le partage et la démonstration.

Développement réponse aux incidents

Google améliore la découvrabilité des widgets sur Google Play

2025-03-04
Google améliore la découvrabilité des widgets sur Google Play

Google met à jour Google Play pour améliorer la découvrabilité des widgets d'applications. La mise à jour comprend un nouveau filtre de recherche de widgets, des badges de widgets sur les pages de détails des applications et une page éditoriale organisée présentant d'excellents widgets. La chef de produit Yinka Taiwo-Peters souligne que cela répond aux défis liés à la découvrabilité des widgets et à la compréhension des utilisateurs, en soulignant l'importance de l'adoption par les utilisateurs pour les développeurs. Ces améliorations arriveront "bientôt".

Développement Widgets d'applications

Composants Fuchsia vs. Conteneurs Linux : Une plongée profonde

2025-03-03
Composants Fuchsia vs. Conteneurs Linux : Une plongée profonde

Le nouveau système d'exploitation de Google, Fuchsia (non-Linux), présente un framework de composants remarquablement similaire aux solutions de conteneurs Linux telles que Docker. Les deux récupèrent des blobs adressés par leur contenu depuis le réseau, les assemblent dans des systèmes de fichiers isolés contenant toutes les dépendances, et lancent des processus avec espaces de noms dont ce système de fichiers est la racine. Cependant, cet exposé se concentre sur les divergences entre ces technologies, en explorant comment leurs cas d'utilisation et leurs exigences différents conduisent à des forces et des faiblesses distinctes.

Développement Conteneurs Linux

Un bug étrange causé par le mécanisme de cache de Chrome : Un voyage de débogage sinueux

2025-03-03

Lors du débogage d'un visualiseur Parquet, l'auteur a découvert un bug lors de l'accès au stockage S3. Après enquête, le problème ne résidait pas dans le code de l'application, mais dans le mécanisme de cache de Chrome. Lors du traitement des requêtes de plage, Chrome optimise le cache, mais lorsque le serveur renvoie une erreur 403, Chrome renvoie toujours des données partielles, ce qui provoque le blocage de l'application. L'auteur a signalé le problème à l'équipe Chromium, mais l'équipe l'a considéré comme une fonctionnalité et non comme un bug. Finalement, l'auteur a choisi de corriger le problème dans OpenDAL. Cette histoire nous rappelle que trouver la bonne limite de confiance peut accélérer considérablement le débogage.

Chirp : Transfert de données basé sur le son

2025-03-03
Chirp : Transfert de données basé sur le son

Chirp est une application qui permet de transmettre des données via le son. Elle utilise un schéma de codage simple pour convertir du texte en fréquences audio, qui sont reproduites par les haut-parleurs et captées par un microphone. Elle offre une visualisation en temps réel des fréquences, une transmission de texte en son et une réception de son en texte, utilisant des signatures de début et de fin distinctes. Développée avec Node.js, React, TypeScript et Vite, en tirant parti de l'API Web Audio pour le traitement audio.

arXivLabs : Expérimentation et collaboration communautaire

2025-03-03
arXivLabs : Expérimentation et collaboration communautaire

arXivLabs est une plateforme permettant de développer et de partager de nouvelles fonctionnalités arXiv directement sur le site web, favorisant la collaboration entre individus et organisations. Les participants doivent adhérer 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

Le Dilemme Académique et la Transformation d'un Programmeur

2025-03-03

Un programmeur senior enseignant dans une université britannique, après six ans de carrière académique à plein temps, se sent étouffé par le système actuel et incapable d'utiliser pleinement son talent. Il a décidé de passer à un poste à temps partiel pour avoir plus de temps à consacrer à ses projets de passion en programmation et en écriture. Il prévoit de compléter ses revenus par du conseil et du financement participatif, cherchant un soutien pour échapper à sa situation actuelle de médiocrité et redécouvrir sa passion et sa créativité. Il estime que l'environnement académique actuel est excessivement axé sur les mesures, négligeant la qualité et la valeur, ce qui entre en conflit avec ses propres valeurs. Sa transformation vise un meilleur équilibre entre vie professionnelle et vie privée et une contribution plus importante à la société.

Développement difficultés académiques

Hacking de l'hyperviseur Xbox 360 : l'exploit de mauvaise mise à jour

2025-03-03
Hacking de l'hyperviseur Xbox 360 : l'exploit de mauvaise mise à jour

Cet article de blog détaille le parcours de l'auteur pour exploiter les vulnérabilités de l'hyperviseur Xbox 360, aboutissant à un nouvel exploit baptisé « Bad Update ». Des années après les premières tentatives, en tirant parti de son expertise nouvellement acquise en ingénierie de la sécurité, l'auteur a minutieusement procédé à la rétro-ingénierie de l'hyperviseur, en se concentrant sur les appels système et les allocations de mémoire chiffrées. En manipulant intelligemment le chiffrement et en exploitant une condition de concurrence au sein d'une routine de décompression LZX dans une charge utile de mise à jour du système, il a réussi à obtenir l'exécution de code au niveau de l'hyperviseur. Le processus a nécessité de surmonter de nombreux obstacles, notamment des problèmes de cache et des défis de synchronisation des threads, démontrant des techniques innovantes dans la recherche de vulnérabilités.

Développement Exploit d'hyperviseur
1 2 146 147 148 150 152 153 154 214 215