Light Table : l'environnement de développement du futur ?

Les rubriques (actu, forums, tutos) de Développez
Réseaux sociaux


 Discussion forum

Le , par Hinault Romaric, Responsable Actualités
Chris Granger, un ancien gestionnaire de programme pour Microsoft vient de dévoiler dans un billet de blog un nouveau concept d’environnement de développement.

Le projet Light Table est une surface de développement et de simulation d’application qui élimine tous les outils et fonctionnalités encombrants dans les IDE actuels.

« Malgré le changement radical à la simplification des interfaces logicielles, le monde des outils de développement continue à réduire notre espace de travail avec de nouvelles fonctions dans chaque version » écrit Granger « Nous sommes coincés dans un monde de fichiers et d’organisation forcée. Pourquoi devons-nous rechercher un peu partout les choses dont nous avons besoin pour coder ? Pourquoi tout est juste du texte statique ».

Partant de ce constat, Granger propose une nouvelle plateforme de développement fondée sur les principes suivants :

- Le développeur ne devra jamais avoir à chercher la documentation : en passant juste le curseur au-dessus d’une fonction, l’aide s’affichera automatiquement à droite. Cela implique que le développeur n’aura plus jamais à se soucier des choses comme l’ordre des arguments.



Le développeur devra être capable de faire toutes ses recherches d’aide sur place.



- Les éditeurs peuvent être partout et tout montrer, pas seulement le texte : le principe ici est de pouvoir intégrer par exemple un jeu de course sur la surface de travail, ensuite être capable de lui poser des questions et voir l’environnement y répondre.



- Les changements doivent produire des résultats instantanés : par exemple, lors de la saisie de (+ 3 4) le code est évalué et le résultat est affiché instantanément sans autre action.



L’évaluation et la visualisation des résultats en temps réel créent un débogueur permettant de corriger les bugs et avoir un aperçu rapide du fonctionnement de son programme.



- Ecriture du code avec un mode lumière : ce mode permettra à Light Table d’afficher les fonctions utilisées à l’intérieur de celle que le développeur est en train d’écrire, ainsi que leur code source sur le côté.



- Les fichiers ne sont pas la meilleure représentation du code, juste une sérialisation pratique :

« Un peu avant de quitter l’équipe Visual Studio, je suis arrivé à la conclusion que les fenêtres ne sont pas une abstraction de ce que nous faisons. D’autres ingénieurs ont des grandes tables ou ils peuvent disperser plusieurs outils. Une table à dessin est une meilleure abstraction pour nous. Nous ne devons pas nous limiter à un mode où la plus petite unité mobile est le fichier » conclut Granger.

[ame="http://vimeo.com/40281991"]Light Table[/ame]

Un nouveau concept d’IDE assez intéressant qui permettra au développeur de se concentrer uniquement sur son code avec des gains en temps importants.

Source : Blog Chris Granger

Et vous ?

Que pensez-vous de ce nouveau concept d'IDE ?


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de Traroth2 Traroth2
http://www.developpez.com
Expert Confirmé Sénior
le 20/04/2012 17:02
La fonctionnalité de visualisation du flux d'information en temps réel est révolutionnaire. Comme l'analyse syntaxique en temps réel a permis d'obtenir du code qui compile tout le temps ou presque (un des apports les plus importants des IDE), cette nouvelle fonctionnalité pourrait déboucher sur du code qui fonctionne dès la première fois.

Le problème, ça va être de réussir à le faire marcher dans tous les cas et pour les systèmes vraiment complexes. Dans un programme Java un peu évolué, où on utilise différents serveurs d'applications, frameworks et bibliothèques, le nombre d'indirections entre le main() du serveur d'application et le code applicatif peut facilement s'élever une trentaine. Difficile de tout faire apparaitre, et si on le fait, difficile de s'y retrouver dans cette masse d'informations. Et avec des frameworks qui suivent le principe de Hollywood, comme les frameworks d'injection de dépendance (Spring, Guice...), difficile de déterminer ce qu'il est pertinent de faire apparaitre.

Mais si on y arrive, ça peut potentiellement décupler la productivité et la qualité du code.
Avatar de kolodz kolodz
http://www.developpez.com
Expert Confirmé
le 20/04/2012 17:36
La fonctionnalité de visualisation du flux d'information en temps réel est révolutionnaire.

Je n'en suis pas si sûr. Dans beaucoup de cas, ce n'est simplement pas possible. Car dépend d'un certains nombre d'objet instancier et modifier au file du programme.
D'ailleurs, je ne sais pas vous, mais je n'ai pas une bête de course au travail. Si je fais un développement sur une une fonction grondement en ressources, je préfère autant ne pas lancer le débogueur et coder avec mon éditeur et mon cerveau.
Je ne parle même pas des évaluation de code qui réalise des ajouts en base.(ou suppression)

J'apprécie par contre l'affichage par fonction et non par classe. Bien que cela pose un problème pour les commentaires type javadoc qui se trouve avant une fonction ou pour les variables de classe.
Avatar de kisitomomotene kisitomomotene
http://www.developpez.com
Membre confirmé
le 21/04/2012 15:53
La production des résultats instantanés c'est un peu comme des "tests en ligne" non?
Si c'est le cas c'est que l'exemple choisi est trop simpliste, car dans des cas vraiment pratiques, on a très souvent un "setup" à effectuer pour remplir des préconditions de la fonction à tester. Où va t'on écrire le code du "setup" dans ce cas? et après il faudrait également écrire un code pour "teardown" afin de redonner à l’environnement son état "stable".
Je reste un peu sceptique..
Avatar de Gunny Gunny
http://www.developpez.com
Membre confirmé
le 23/04/2012 10:14
La plupart des fonctionnalités existent dans les IDE actuels, certes, mais la façon de les mettre en place est assez intéressante. Visual Studio, Eclipse & cie sont des logiciels très puissants, mais on ne peut pas dire que les devs se soient foulés niveau ergonomie... Je pense qu'on a grandement besoin d'IDE différentes !
Avatar de Traroth2 Traroth2
http://www.developpez.com
Expert Confirmé Sénior
le 25/04/2012 14:52
Citation Envoyé par kolodz  Voir le message
Je n'en suis pas si sûr. Dans beaucoup de cas, ce n'est simplement pas possible. Car dépend d'un certains nombre d'objet instancier et modifier au file du programme.
D'ailleurs, je ne sais pas vous, mais je n'ai pas une bête de course au travail. Si je fais un développement sur une une fonction grondement en ressources, je préfère autant ne pas lancer le débogueur et coder avec mon éditeur et mon cerveau.
Je ne parle même pas des évaluation de code qui réalise des ajouts en base.(ou suppression)

J'apprécie par contre l'affichage par fonction et non par classe. Bien que cela pose un problème pour les commentaires type javadoc qui se trouve avant une fonction ou pour les variables de classe.

Tu vois les choses à trop court terme. Bon, normalement un développeur devrait avoir une bête de course, justement. Mais même si ce n'est pas le cas, c'est une question de 2 ou 3 ans pour que des machines d'entrée de gamme soient capables de faire tourner ce genre de fonctionnalité sans aucun problème.
Avatar de MiaowZedong MiaowZedong
http://www.developpez.com
Expert Confirmé
le 25/04/2012 15:33
Citation Envoyé par kolodz  Voir le message
Je n'en suis pas si sûr. Dans beaucoup de cas, ce n'est simplement pas possible. Car dépend d'un certains nombre d'objet instancier et modifier au file du programme.
D'ailleurs, je ne sais pas vous, mais je n'ai pas une bête de course au travail. Si je fais un développement sur une une fonction grondement en ressources, je préfère autant ne pas lancer le débogueur et coder avec mon éditeur et mon cerveau.
Je ne parle même pas des évaluation de code qui réalise des ajouts en base.(ou suppression)

J'apprécie par contre l'affichage par fonction et non par classe. Bien que cela pose un problème pour les commentaires type javadoc qui se trouve avant une fonction ou pour les variables de classe.

On dirait que le language de l'exemple n'est pas choisi au hasard: l'outil semble marqué par la philosophie des languages fonctionnels.
Avatar de Bousk Bousk
http://www.developpez.com
Modérateur
le 25/04/2012 15:37
Citation Envoyé par Traroth2  Voir le message
Tu vois les choses à trop court terme. Bon, normalement un développeur devrait avoir une bête de course, justement. Mais même si ce n'est pas le cas, c'est une question de 2 ou 3 ans pour que des machines d'entrée de gamme soient capables de faire tourner ce genre de fonctionnalité sans aucun problème.

Ha que j'aimerais bien.
Seulement ce que je constate quand je demande à mes collègues et où je suis passé c'est qu'une entreprise sera prête à mettre des dépenses folles pour équiper les commerciaux de la dernière tablette à la mode, alors que les développeurs se font incendier quand ils demandent ce qu'ils foutent sous un windows XP avec un bi-proc 1.4Gh et 2Go de ram.
Avatar de DonQuiche DonQuiche
http://www.developpez.com
Expert Confirmé Sénior
le 25/04/2012 16:23
Citation Envoyé par Bousk  Voir le message
Ha que j'aimerais bien.
Seulement ce que je constate quand je demande à mes collègues et où je suis passé c'est qu'une entreprise sera prête à mettre des dépenses folles pour équiper les commerciaux de la dernière tablette à la mode, alors que les développeurs se font incendier quand ils demandent ce qu'ils foutent sous un windows XP avec un bi-proc 1.4Gh et 2Go de ram.

Que veux-tu, certaines entreprises adorent jeter l'argent par la fenêtre. Et je parle davantage des dévs sous-équipés que des commerciaux qui jouent au flamby.
Un PC pour développeur ça se change tous les deux ans au max et sans trop lésiner sur la dépense. Et on garde des exemplaires des trois précédentes générations pour les tests de performance et stabilité.
Avatar de el_slapper el_slapper
http://www.developpez.com
Expert Confirmé Sénior
le 25/04/2012 16:35
Citation Envoyé par DonQuiche  Voir le message
(.../...) Un PC pour développeur ça se change tous les deux ans au max et sans trop lésiner sur la dépense. Et on garde des exemplaires des trois précédentes générations pour les tests de performance et stabilité.

Réponse d'ingénieur : ça dépend. Par exemple, ici, je fais du cobol sous un terminal. Avant, j'ai fait du VB sur machines virtuelles. Dans les deux cas, mon PC de bureau n'est pas vraiment une limitation, il peut être une brouette - l'important, c'était les serveurs. Par contre, mon ex-collègue qui ne rebootait jamais parceque sa brouette mettait 4 heures à charger le projet java sous eclipse, lui, il avait des raisons légitimes de gueuler pour avoir une machine plus puissante(il est resté 11 mois sans rebooter. Authentique. Avec sa nouvelle machine, il n'avait plus besoin que de 30 minutes pour charger le projet).
Avatar de gtraxx gtraxx
http://www.developpez.com
Membre éprouvé
le 10/05/2012 10:33
C'est moi ou sa ressemble fort à sublime texte 2 ?
Avatar de SNatoon SNatoon
http://www.developpez.com
Membre du Club
le 30/01/2013 4:28
L'avenir de la programmation est une programmation fondée sur «multieditor» (http://softconstructors.com/en/techn...alprogramming/). Non Light-Table.
Offres d'emploi IT
DÉVELOPPEUR(SE) PHP (H/F)
CDI
Page Personnel - Nord Pas-de-Calais - Métropole Lilloise
Parue le 05/11/2014
Développeur web
Stage
STRATIS - Provence Alpes Côte d'Azur - Toulon (83000)
Parue le 19/11/2014
Leader technique - développeur mobile ios et android
CDI
Hurryman - Ile de France - Paris (75000)
Parue le 31/10/2014

Voir plus d'offres Voir la carte des offres IT
 
 
 
 
Partenaires

PlanetHoster
Ikoula