Fermer

février 4, 2019

Développeurs et outils graphiques – Aimez-les ou détestez-vous?


En ce qui concerne les outils de développement, où va l'industrie? dans cette discussion en slack, les membres de notre équipe des relations avec les développeurs discutent avec leurs pensées.

Il y a beaucoup de rumeurs dans le secteur concernant les solutions dites "à code bas", "sans code" ou "à haute productivité". En règle générale, ces outils reposent sur une interface utilisateur graphique (GUI) pour aider à construire des outils sans code, parfois même à l'aide d'interfaces glisser-déposer pour créer des applications. Ces types d’outils ont une longue et quelque peu sordide histoire chez les développeurs, ce qui les a amenés à être légèrement méfiants par eux-mêmes .

Plusieurs membres de l’équipe des relations avec les développeurs de Progress ont décidé de tenir une discussion en direct avec Slack. jeter un coup d’œil sur l’historique de ces outils et la direction dans laquelle nous pensons qu’ils vont. Alors que (divulgation complète) Progress dispose d'un nouvel outil en cours de développement qui entre dans cette catégorie, nous avons essayé d'adopter un regard honnête du point de vue du développeur.


TJ VanToll : Bonjour à tous

] Cette rubrique est amusante pour moi car, lorsque j'ai commencé ma carrière en tant que développeur front-end, les outils d'interface graphique tels que Microsoft FrontPage et Adobe Dreamweaver étaient des logiciels sérieux utilisés pour créer des contenus sérieux. Mais de nos jours, ces outils sont en train de perdre leur popularité (c'est le moins qu'on puisse dire) et la plupart des outils frontaux sont désormais des bibliothèques basées sur des lignes de commande ou des terminaux. Dans cet esprit, notre programme approximatif pour la discussion d'aujourd'hui est le suivant:

  • Quels outils d'interface graphique avons-nous aimé utiliser au cours des années?
  • Quels outils d'interface graphique avons-nous non appréciés?
  • Où se trouve l'en-tête de l'industrie – plus d'outils de ligne de commande, ou de résurgence ou d'outils d'interface graphique?

Commençons par la première question.

Rob Lauer : Pas à ce jour, mais la première Outil graphique que je me souviens avoir utilisé était l'éditeur HTML intégré fourni avec Netscape!

TJ VanToll : OMG Netscape avait un éditeur HTML intégré? Les images existent-elles?

Rob Lauer : Netscape Composer Je crois que cela s'appelait? Il est finalement devenu une partie d'une distribution monolithique de Netscape. Hey, il pourrait modifier les tableaux .

Jen Looper : Rob, est-ce que est ce ce que vous avez utilisé?

 Mozilla Composer "data-displaymode =" Original "title =" Mozilla Composer "data-openoriginalimageonclick =" true "/> </a> </p>
<p> <strong> Rob Lauer </strong>: Oui ! ❤️ </p>
<p> <strong> TJ VanToll </strong>: La création de pages Web est facile! LOL sur le lien "À PROPOS DES ORDINATEURS". </p>
<p> <strong> <a href= Brian Rinaldi : J'admettrai cela J'ai commencé à apprendre le développement à l'aide de tous les outils d'interface graphique de FrontPage, puis de Dreamweaver et Flash, puis de Director et enfin de ColdFusion Studio, ce qui vous indique que: a) oui, je suis vieux et b) les outils d'interface graphique ne me posent aucun problème.

En fait, je dirais que j'ai souvent eu du mal à passer au développement basé sur la ligne de commande

Jen Looper : Je m'interroge un peu sur la première phrase de la déclaration préliminaire de TJ. Dreamweaver était-il considéré comme un outil sérieux, ou était-ce un moyen pour Adobe d'intégrer davantage de personnes dans leur pile via l'interface frontale?

Utilisez Dreamweaver et Flash, mais dès que vous avez ouvert le code pour voir ce qui se passait ou où se trouvaient les bugs, c’était une énorme masse de spaghettis. Je pense que c'est un problème chronique avec ces outils. Je suppose plus de Dreamweaver que Flash.

Rob Lauer : Jen soulève un point important – et la guérison par Achille de ces outils d'interface graphique.

Brian Rinaldi : Jen, D'accord. Bien que ce soit là où je pense qu’une distinction doit être faite. Certains outils de l’interface graphique fonctionnent par glisser-déposer, tandis que d’autres ressemblent davantage à un IDE doté d’outils supplémentaires dans l’interface utilisateur plutôt qu’à une interface de ligne de commande. Par exemple, vous pouvez utiliser Dreamweaver comme outil de glisser-déposer complet ou simplement en mode code.

Jen Looper : Flash était aussi autre chose, il s'agissait d'un studio complet pour créer toutes vos animations, interpolations et tout. En fin de compte, vous deviez vous plonger dans ActionScript.

Rob Lauer : À la défense de ces outils, c'est ainsi que j'ai appris le HTML. J'ai glissé-déposé une table sur mon canevas, puis je suis passé en mode code pour voir ce que était réellement généré. Le compositeur (et … aussi moi aussi … Adobe Pagemill) a créé un code HTML très propre, facile à lire et à utiliser.

Brian Rinaldi : Je me souviens d'avoir utilisé Flash Builder (pour le développement Flex). … Et, oui, nous avons déjà mentionné que je suis vieux) et il disposait d'une interface glisser-déposer qu'aucun de nous n'utilisait généralement.

 Flash Builder "data-displaymode =" Original "title =" Flash Builder "data-openoriginalimageonclick =" true "/> </a> </p>
<p> <strong> Jen Looper </strong>: L'idée de glisser et de déposer des tables… </p>
<p> <strong> Rob Lauer </strong>:> clic droit> ajouter une colonne C'est fait </p>
<p> <strong> Jen Looper </strong>: Hier soir, j'étais un peu dans ce monde en train d'aider ma fille à créer un site Web pour une campagne politique notre ville. Nous devions choisir entre Wix, SquareSpace et WordPress. Pas un soupçon de code en vue. </p>
<p> <strong> TJ VanToll </strong>: Et ont-ils bien fonctionné? </p>
<p> <strong> Jen Lo oper </strong>: Il est tombé à $$$ – comme dans, nous n'en avons pas. Alors Wix et SquareSpace sont sortis de la table. De plus, nous avons tous deux plus d'expérience avec WordPress et, honnêtement, le travail est fait. </p>
<p> <strong> Rob Lauer </strong>: Ces outils ont donc mal tourné quelque part. Je pense aux jours .NET 1.1 avec Visual Studio.NET et à ses fonctionnalités de glisser-déposer qui appliqueraient un positionnement absolu à <em> tous les éléments </em>. Génial pour le Web… </p>
<p> <strong> TJ VanToll </strong>: FrontPage est probablement le plus notoire pour la génération de bêtises. </p>
<p> <a href=  Code généré "data-displaymode =" Original "title =" Généré Code "data-openoriginalimageonclick =" true "/> </a> </p>
<p> <strong> Rob Lauer </strong>: En tant que complexité d'application, qualité du code? </p>
<p> <strong> Jen Looper </strong>: Peut-être </p>
<p> <strong> Rob Lauer </strong>: Vrai – oui les enfants, il y avait un jour où il fallait renifler pour IE vs Firefox vs Safari vs Chrome </p>
<p> <strong> Jen Looper </strong>: Je m'en souviens bien… </p>
<p> <strong> TJ VanToll </strong>: La seule chose qui me surprend à propos de la capture d'écran ci-dessus est que les noms de balises sont pas en majuscules. </p>
<p> <strong> Brian Rinaldi </strong>: Adobe a tenté de résoudre le problème de la conception sensible par glisser-déposer avec Edge Reflow. Ils l'ont abandonnée. </p>
<p> <strong> Rob Lauer </strong>: Adobe semble avoir l'histoire la plus riche en histoire, en particulier avec l'acquisition de Macromedia. </p>
<p> <strong> Brian Rinaldi </strong>: C'est ce qui caractérise la prise en main intégrale. and-drop tools, c’est que nous avons vu tellement d’échecs échouer au fil des ans. C'est comme s'ils finissaient par atteindre la limite de leurs capacités et une fois que les gens dépassaient cela en termes de complexité de site / d'application, l'outil semblait désuet. </p>
<p> <strong> Jen Looper </strong>: Je pense que l'impulsion derrière ces outils est la besoin de voir rapidement ce que vous construisez. Ce problème a été résolu ces jours-ci avec le rechargement rapide et agréable de modules (HMR). Je viens de voir un tweet sur Gatsby + Sanity.io qui vous permet d’avoir une collaboration en temps réel et des aperçus instantanés. </p>
<p> <strong> Brian Rinaldi </strong>: Oui, bien que la chaîne d'outils devienne complexe. </p>
<p> <strong> Jen Looper </strong>: Bien sûr! </p>
<blockquote class=

Utilisation de webpack pour mon application "Bonjour tout le monde" pic.twitter.com/MmnXTl0ebw

– Tomasz Łakomy (@tlakomy) le 20 février 2018

TJ VanToll : Le seul exemple moderne auquel je puisse penser Un outil de glisser-déposer qui est vraiment bon et généralement apprécié est le story-board dans Xcode. Je pense que cela montre que peut faire du glisser-déposer, mais que c'est vraiment difficile et que vous devez déployer beaucoup d'efforts techniques pour résoudre le problème.

Rob Lauer : Les meilleurs outils vous permettent-ils d'obtenir 80% du chemin? Ou les meilleurs outils sont-ils ceux qui sont très concentrés sur des tâches spécifiques?

Jen Looper : TJ, vous êtes obligé d'utiliser ces outils pour créer une application Apple Watch, pour la composition du Storyboard, la dernière fois. travaillait avec cette pile. Cela fonctionne bien, mais vous êtes vraiment bloqué dans Xcode, alors, si vous voulez publier cette application.

TJ VanToll : Ah bon point. Le verrouillage est une autre perte commune de ces outils.

Jen Looper : Peut-être que cela fait partie de la question de Rob. Je pense que le verrouillage est un problème pour une base de développeurs diversifiée.

Rob Lauer : L '"entreprise" ne semble toutefois pas avoir de problème de verrouillage. Peut-être devons-nous différencier les types de développeurs. toux "citoyen développeur" toux

Jen Looper : Vrai, vrai!

Brian Rinaldi : vrai! La question de Rob en disant que, selon mon expérience, les meilleurs outils reconnaissent les limites du glisser-déposer et vous permettent d'aller au-delà lorsque vous en avez besoin ou que vous êtes prêt.

TJ VanToll : D'accord. Flash répond à ce critère, tout comme Xcode.

Rob Lauer : Je pense que vous avez également raison.

Jen Looper : Idéalement, vous pouvez facilement accéder à votre code et c'est lisible. Honnêtement, c'est ce que fait WordPress.

Rob Lauer : Le meilleur outil me permettra donc de couvrir 80% du trajet, puis de prendre la relève. Mais est-ce une rue à sens unique? Plusieurs fois le code généré, qui est édité par la suite, ne peut pas être réédité dans l'outil d'origine

Jen Looper :

Brian Rinaldi : Je suis d'accord, même si je pense que l'aller-retour est généralement un problème avec les outils complets d'interface glisser-déposer.

Pour citer un autre exemple d'Adobe, Flash Catalyst allait être un moyen de concevoir des interfaces d'application Flex / Flash par glisser-déposer. laissez tomber. Tout le monde le voulait jusqu'à ce qu'ils l'obtiennent. L'absence d'aller-retour a tué le portail (ils l'ont finalement ajouté, mais je pense que c'était finalement trop limité ou trop tard).

Rob Lauer : Permettez-moi de vous proposer une implémentation réussie. de celui-ci – quoique quelque peu limité, et très intéressé par ce groupe. Ce serait NativeScript Playground . Il fournit des composants d'interface utilisateur par glisser-déposer, avec génération de code, mais le "canevas" est votre éditeur et votre interface utilisateur est reflétée sur le périphérique. Peut-être peut-être un peu en dehors de la portée de ce dont nous parlons bien

Brian Rinaldi : NativeScript? Dis m'en plus! 1965

Jen Looper : J'aime beaucoup le fait que le code soit juste devant vous dans NativeScript Playground, c'est le focus, pas le fond d'écran.

Rob Lauer : Alors quoi Les outils d'interface graphique, dans le passé / le présent, ont / ont au moins eu un succès commercial? Dreamweaver? Xcode? Android Studio?

Brian Rinaldi : Dreamweaver est toujours présent.

Rob Lauer :

Version initiale: décembre 1997; Il y a 21 ans

Jen Looper : Je vois que Dreamweaver est toujours là et j'ai envie de l'essayer à nouveau.

TJ VanToll : Curieusement, beaucoup de ces outils ne le sont pas. gagnez de l'argent directement, mais essayez de vous aider à vous aspirer dans leur écosystème, comme Jen l'a mentionné plus tôt. Xcode et Android Studio, par exemple, sont au moins gratuits.

Rob Lauer : Excellent point.

TJ VanToll : Le jeu NativeScript est également gratuit

Brian Rinaldi : Je pense que cela répond à votre dernière question, TJ:

Où va l'industrie – plus d'outils en ligne de commande, ou d'outils de résurgence ou d'interface graphique?

Rob Lauer : Il y a beaucoup de pendule oscillant dans la technologie. La CLI a été rejetée pendant des années, mais depuis 7 ou 8 ans, elle a connu une résurgence.

TJ VanToll : À mon avis, pour le monde frontal, les choses sont devenues de plus en plus complexes au cours de la dernière décennie, ce que je pense. Cela rendra les développeurs plus enclins à utiliser un outil qui cache une partie de cette complexité.

Brian Rinaldi : Il semble y avoir une divergence. La plupart des développeurs que je rencontre (bien sûr, je suis principalement dans l’espace de développement JavaScript et front-end) s’orientent vers une pile d’outils basée sur la ligne de commande. Cependant, le secteur semble vouloir de plus en plus fournir d’outils d’interface graphique sous les parapluies d’outils «haute productivité» ou «faible code / sans code».

Ces derniers semblent viser spécifiquement les grandes entreprises.

Jen Looper : Je pense à ce post de Chris Coyier que j'ai lu récemment au sujet de cette nouvelle industrie divisée entre ceux qui sont «ingénieurs UX» et ceux qui sont «ingénieurs JS». Les premiers sont peut-être plus enclins à utiliser les outils d'interface graphique et les derniers outils de ligne de commande.

Les ingénieurs UX que je connais semblent toutefois utiliser Sketch pour la plupart.

Rob Lauer : Ionic utilise depuis des années un outil d'interface graphique bien reçu (je suppose), d'abord appelé Codiqa, puis Creator, maintenant Ionic Studio. J'y vois certainement des avantages si vous êtes un développeur hybride. Cependant, vous êtes limité dans la manière dont vous disposez vos éléments (pile uniquement), ce qui pour moi est un tueur de deal.

Jen Looper : Des outils comme InVision vous permettent-ils de voir le code?

Rob Lauer : Je ne pense pas ainsi. , mais cela nous ramène au domaine des outils de conception -> génération de code. Comme aller de Sketch à NativeScript ou React Native
Parlez d'un code laid généré par …

Brian Rinaldi : Ces solutions sont définitivement en cours de développement.

Jen Looper : C'est ce qui a été fait dans la communauté, je ne l'ai pas personnellement essayé.

Rob Lauer : Le problème avec ces outils est généralement que vous obtenez un positionnement absolu de vos éléments. Cela conduit à beaucoup de code supplémentaire et à une complexité inutile.

Jen Looper : En regardant Sketch, il dispose d'un exportation de code – Je pense que pour des choses comme la génération SVG, cela pourrait être super utile.

Rob Lauer : BuilderX est un autre exemple: une interface de conception vraiment impressionnante, mais le code exporté est saturé d'éléments absolus. Peut-être que c'est moi, mais je passe 50% de mon temps à peaufiner les pixels dans mes mises en page.

Brian Rinaldi : Jen et moi avons tous les deux travaillé à la Sun Life et je me souviens qu'il existe un large éventail d'applications. au sein de l'entreprise. Certains étaient incroyablement complexes. D'autres ont résolu des problèmes moins importants, allant de la simple «application» intégrée à Access ou (bravo!) À Domino qui ne comptait souvent que quelques utilisateurs. Je peux donc en quelque sorte comprendre où ces outils, même du point de vue des développeurs sans code / citoyen, ont leur place dans une grande entreprise. Ce n'est pas comme si vous aviez besoin d'un seul outil pour résoudre tous vos problèmes.

Jen Looper : Je pense que ces outils peuvent briller lorsqu'ils aident à manipuler de petites parties de l'interface utilisateur, comme un élément SVG ou un élément canvas. Lorsque vous vous attendez à ce que, d'un trait, quelques gouttes et un clic, vous disposiez d'un site Web entièrement réactif, c'est là que le problème commence

Rob Lauer : C'est donc le "meilleur" outil graphique En tant que développeur, je serai celui qui me rendra plus productif, en exploitant mes magasins / services de données d'entreprise existants, ne me gênerai pas lorsque je voudrai éditer du code et me permettra de revenir dans un canevas de conception lorsque je voudrai fonctionnalité. Quelque chose comme ça ?

TJ VanToll : Voilà. Les outils graphiques sont les meilleurs et les pires! Un dernier mot?

Jen Looper : Moonshot, Rob! Je pense que nous devrions simplement revenir à ce compositeur de Netscape

TJ VanToll : Des temps plus simples.

Jen Looper : Je pense que ces outils ont aidé beaucoup de nouveaux les gens dans l'industrie à l'époque et ont contribué à faire avancer le concept de "bonne UI et UX".

Brian Rinaldi : Je dirais que le développement, même juste le développement Web, est aujourd'hui une voie plus grande et plus complexe que lorsque j'ai commencé, ce qui signifie qu'il y a de la place pour toute une gamme de solutions, car de nombreuses applications sont nécessaires et en cours de création. Les développeurs devraient utiliser ce qui les rend plus productifs dans ce qu'ils doivent construire.

Rob Lauer : Permettez-moi de terminer en disant ici à Progress que nous travaillons sur un nouvel outil que je pense gratte légitimement toutes ces démangeaisons!

TJ VanToll : Alerte spoiler!

TJ VanToll : Eh bien voilà. N'hésitez pas à poursuivre la conversation dans les commentaires avec les outils que vous avez appréciés (et que vous n’avez pas appréciés) au cours des années. Oh, et si vous souhaitez tester les outils super secrets sur lesquels nous travaillons chez Progress, voici les détails:

Nous lancerons bientôt un nouvel outil pour vous aider à créer des applications Web et mobiles. avec angulaire. Vous pouvez ajouter des robots de conversation personnalisés et vous connecter à l'infrastructure d'entreprise, à l'authentification et à d'autres sources de données sans écrire de code. Oh, et vous aurez toujours le contrôle total et la possibilité de modifier le code source angulaire. Intéressé? Venez construire des applications étonnantes avec nous. Inscrivez-vous à la liste d'invitation !

Rob Lauer : Adobe, si vous écoutez, ramenez Pagemill!




Source link