3 points par GN⁺ 2025-08-25 | 2 commentaires | Partager sur WhatsApp
  • Positron est un IDE de nouvelle génération dédié à la data science que Posit, l’éditeur de RStudio, développe actuellement
  • Cet IDE prend en charge nativement R et Python et constitue une plateforme multilingue (polyglot) conçue pour les environnements de data science où plusieurs langages sont utilisés conjointement
  • Sur le plan architectural, il repose sur Code OSS de VS Code, offrant un environnement familier et une grande extensibilité, tout en intégrant des fonctions spécialisées pour les data scientists comme les graphiques, variables, aide et explorateur de données
  • Grâce au nouveau kernel R Ark et à la prise en charge de la grammaire R via Tree-sitter, il améliore nettement l’exécution du code, l’autocomplétion, le débogage et la navigation dans la documentation, avec même la possibilité de déboguer du code mixte R et C++
  • RStudio reste maintenu et pris en charge de manière stable, mais Positron, grâce à son approche multilingue, son extensibilité et son architecture moderne, devrait à long terme devenir un environnement central pour le développement en data science

Présentation de Positron et pourquoi il est nécessaire

  • IDE dédié à la data science, il offre une expérience adaptée aux tâches centrées sur l’analyse de données, contrairement aux IDE généralistes de développement logiciel
  • Il privilégie une approche code-first plutôt qu’un outil basé sur une interface graphique, afin d’améliorer la productivité et la reproductibilité
  • Il dépasse les limites des IDE existants (RStudio, Spyder, MATLAB, etc.), souvent centrés sur un seul langage, pour mieux correspondre aux workflows réels où plusieurs langages sont combinés

Principales caractéristiques

  • Prise en charge multilingue : actuellement R et Python, avec une architecture permettant d’étendre le support à d’autres langages
  • Interface familière et extensible : structure à 4 panneaux semblable à RStudio (source, console, variables, graphiques), avec l’extensibilité de VS Code
  • Moteurs par langage (Language Packs) : Python et R fonctionnent comme des extensions indépendantes, ce qui préserve la stabilité de l’IDE et évite qu’un crash ne bloque l’ensemble de l’application

Ark pour la prise en charge de R

  • Ark (An R Kernel) : nouveau kernel Jupyter pour R, offrant exécution du code, autocomplétion, diagnostics et débogage
  • La prise en charge de la grammaire R via Tree-sitter a été développée spécialement et peut aussi être utilisée pour la recherche de code sur GitHub ou dans d’autres IDE (Zed, Neovim, etc.)
  • Innovation dans le débogueur : possibilité d’entrer directement pas à pas du code R vers du code C++, maximisant l’efficacité du débogage pour le développement de packages basés sur Rcpp/cpp11

Fonctionnalités spécialisées pour la data science

  • Explorateur de données (Data Explorer) : va au-delà d’une simple grille en proposant statistiques de synthèse, détection des valeurs manquantes, filtrage multiple et sparklines d’histogrammes
  • Panneau des variables (Variables Pane) : exploration possible des noms de variables, types, aperçus et expansion des dictionnaires
  • Panneau des graphiques (Plots Pane) : prend en charge l’accumulation et la comparaison de résultats visuels, ainsi que l’export dans divers formats (PNG, SVG, PDF, etc.)
  • Panneau d’aide (Help Pane) : en saisissant ? après un nom de fonction, il est possible d’afficher immédiatement la documentation et des exemples, apportant aussi aux utilisateurs Python un avantage apprécié de RStudio

Base technique et architecture

  • Contrairement à RStudio, il n’adopte pas une architecture monoprocessus, mais une architecture multicouche basée sur Code OSS de VS Code
  • Utilisation de protocoles standard :
    • exécution du code → Jupyter Protocol
    • assistance au code (autocomplétion, vérification syntaxique) → Language Server Protocol
    • débogage → Debug Adapter Protocol
  • Cette standardisation permet l’interopérabilité avec divers environnements comme Jupyter Notebook ou Zed IDE

Communauté et extensibilité

  • De nombreuses extensions compatibles VS Code sont disponibles via la place de marché Open VSX (à l’exception de GitHub Copilot)
  • Les fonctionnalités peuvent être étendues via des extensions comme Quarto, Shiny ou les connexions à des bases de données
  • Renforcement de la personnalisation utilisateur avec thème sombre, modification de la disposition, compatibilité avec les raccourcis RStudio, etc.

Relation avec RStudio

  • RStudio continue d’être maintenu et pris en charge, avec comme points forts sa stabilité et sa maturité, et restera probablement utilisé par de nombreux utilisateurs pendant encore un certain temps
  • Positron constitue une nouvelle option expérimentale et très extensible, qui trace à long terme une voie d’évolution pour les IDE de data science

Pour quels utilisateurs Positron est-il adapté ?

  • Utilisateurs de VS Code : s’ils estiment que les fonctionnalités dédiées à la data science sont insuffisantes
  • Utilisateurs de JupyterLab et des notebooks : s’ils souhaitent passer à un IDE plus puissant et plus complet
  • Utilisateurs de RStudio : s’ils veulent renforcer la personnalisation et l’extensibilité de leur IDE
  • Utilisateurs multilingues : s’ils exploitent, en plus de Python et R, Rust, C++, JavaScript, Lua, etc.
  • Utilisateurs orientés IA : s’ils recherchent des fonctions d’intégration IA spécialisées pour la data science

Perspectives

  • Une intégration avec Posit Workbench et Cloud est prévue, et des fonctions collaboratives (partage en temps réel, partage d’espace de travail) sont également à l’étude
  • Le renforcement du support des données volumineuses, ainsi que l’intégration de DuckDB et Arrow, font partie des plans pour améliorer les capacités de traitement de données sur disque
  • Grâce à ses atouts que sont le multilinguisme, l’extensibilité et l’usage de protocoles standard, Positron a de fortes chances de s’imposer comme le standard de prochaine génération des IDE de data science

2 commentaires

 
GN⁺ 2025-08-25
Avis Hacker News
  • Je trouve regrettable qu’ils utilisent pyright et jedi pour les fonctionnalités avancées ; à mon avis, il vaudrait mieux utiliser basedpyright. jedi offre un support du langage Python plus faible que pylance ou basedpyright. C’est certes open source, mais les limites sont évidentes, donc la manière dont c’est présenté ne me plaît pas non plus. Dans mon entreprise, nous avons utilisé R Connect Server / Posit Server, puis nous avons finalement migré vers une autre solution parce que le prix était énorme rien que pour activer une authentification sur une appli interne. Nous avons fini par trouver une alternative qui a satisfait l’équipe sécurité, mais cela a été vraiment très pénible et les utilisateurs se sont beaucoup plaints. Depuis, j’évite les produits commerciaux de Posit, et dans ce cas aussi, cette frontière ambiguë me fait beaucoup hésiter

    • Je serais curieux de savoir quelle était la solution de remplacement. Les tarifs de Posit sont franchement impossibles à justifier. Même dans le milieu universitaire, ils demandent des sommes énormes, et je me demande si cela les vaut vraiment
  • Le produit a l’air bien conçu, donc je n’ai pas envie de le démolir gratuitement, mais je ne comprends pas l’idée de faire un IDE pour la data science sans vrai client SQL. C’est peut-être un biais personnel, mais SQL est une partie vraiment essentielle du workflow. Rien que pour ça, je pense qu’il est déjà derrière PyCharm ou Visual Studio (pas Code, le vrai VS). Je sais qu’un IDE complet est un outil lourd, mais si c’est juste pour éditer, autant utiliser vim ; et pour le vrai travail, mieux vaut un outil puissant

    • Je suis développeur sur Positron. Je ne suis pas entièrement en désaccord avec le premier commentaire. Nous proposons des fonctionnalités de gestion des connexions en Python et en R : connections pane. Nous avons de grandes ambitions pour étendre le support SQL à partir de ce que nous avons déjà construit, comme l’explorateur de données et les connexions Observable via Quarto. Nous prévoyons d’investir dans ce domaine à partir du quatrième trimestre de cette année

    • On dirait que ce produit est construit sur vsc. Il doit bien exister au moins une extension de client SQL correcte

  • Le problème, c’est que ce n’est pas open source : il est écrit qu’on ne peut pas « fournir le logiciel à des tiers comme service hébergé ou géré permettant aux utilisateurs d’accéder aux fonctions principales du logiciel ou à une partie substantielle de celles-ci »

    • Si une licence comporte des restrictions, cela signifie-t-il qu’on ne peut pas considérer le logiciel comme open source ? Quelle licence faut-il absolument avoir ?
  • On dit que c’est construit sur l’open source de VSCode, mais sur la page du projet, il est très peu clair de savoir quelles fonctionnalités ou dépendances ne sont pas open source ou ne sont pas gratuites (abonnement payant, plan entreprise, compte premium, etc.). J’aimerais qu’ils expliquent clairement comment leur modèle économique est structuré sur ce point. Le fait d’intégrer un assistant GenAI dans l’IDE me semble aussi être un signal assez clair qu’il y a ce type de « conditions ». C’est dommage que la FAQ n’aborde pas du tout ces aspects

    • Je suis développeur sur Positron ! Je recommande de consulter la FAQ. En résumé, l’application desktop, y compris les sessions SSH distantes, est gratuite avec une licence permissive, sans compte, sans abonnement, et utilisable aussi à des fins commerciales. En revanche, si vous voulez l’utiliser en mode serveur, un abonnement payant est nécessaire
  • Emacs est pour moi le seul véritable IDE de data science de nouvelle génération, et bien sûr aussi un IDE de la génération précédente

    • Je serais curieux de savoir quels paquets et quel workflow tu utilises concrètement. J’ai l’impression qu’il manque des ressources d’initiation faciles et bien maintenues, donc cela m’intéresserait comme référence

    • Je serais curieux que tu développes un peu plus

  • J’ai l’impression qu’on est désormais condamnés à ne plus jamais échapper aux forks de vscode

    • Ça me fait penser au site « Days Since Last VSCode Fork ». Le site est ici, mais il semble abandonné

    • Je pense que l’équipe Monaco a vraiment accompli quelque chose d’impressionnant. Je ne sais pas bien, dans toute la complexité de VS Code, ce qui est réellement indispensable, mais si quelqu’un créait une version allégée offrant 90 % des fonctionnalités avec 10 % du code, cela transformerait l’environnement d’édition autant que VS Code l’a fait. Ce serait parfait si elle était en plus portable, même s’il semble difficile d’éviter les dépendances HTML+JS+CSS. J’aimerais aussi mentionner des tentatives comme les extensions Dear ImGui

  • J’utilise RStudio au quotidien dans le milieu universitaire, et Python dans VS Code. J’ai essayé Posit il y a quelques mois, mais ce n’était pas assez stable pour un usage quotidien et tous les paquets dont j’avais besoin n’étaient pas disponibles. Je compte réessayer bientôt. Mes habitudes sont tellement différentes entre R et Python que, pour des gens comme moi, le passage prendra sûrement du temps. J’ai utilisé R dans VS Code pendant environ une semaine, mais quelque chose ne collait pas. Si le panneau de connexion fonctionne vraiment de manière fluide, cela me donne beaucoup d’espoir

  • Positron est aussi le nom d’une imprimante 3D ultra-compacte. Un produit appelé Positron3D a redéfini le segment des imprimantes 3D ultra-compactes, et le nom d’un système moteur appelé « Positron drive » m’est aussi familier. Parmi les produits apparentés, il y a JourneyMaker-Positron. Il existe aussi Lemontron, une version à coût réduit de JourneyMaker, dont le châssis peut être imprimé directement en 3D sans pièces usinées CNC

  • Cet outil et son écosystème ne prennent pas en charge Julia. Pour un outil multi-langage orienté data science aujourd’hui, je pense que se limiter à R et Python ne suffit plus. Je ne comprends pas pourquoi Julia n’est pas pris en charge

    • Je suis développeur sur Positron. Nous suivons les demandes de support de Julia dans une issue ici, donc n’hésitez pas à y laisser votre avis

    • Julia n’a jamais vraiment atteint une adoption grand public, et elle est même plutôt sur le déclin maintenant

  • Cela ressemble très fortement à l’IDE Spyder fourni par Anaconda ou WinPython. Il y a tout ce qu’il faut : éditeur de code, REPL, inspecteur de variables, graphiques inline, etc.

    • Je suis développeur sur Positron. Pour la data science uniquement en Python, Spyder peut être un très bon choix. En revanche, si vous utilisez souvent plusieurs langages comme Python+C, Python+Rust ou Python+JavaScript, ou si vous voulez un IDE plus personnalisable et extensible, je pense que Positron est un meilleur choix
 
kayws426 2025-08-25

Jupyter n’est donc pas intégré nativement ?