Suivre

Je me demande si je passe à côté d'un truc à ne pas « m'investir » dans les frameworks front genre vue.js, react & co...

J'ai toujours un peu de mal à comprendre en quoi ça va m'aider à faire du bon logiciel ? Quel problème de mon quotidien ça va résoudre ?

Si vous avez des idées, avis, pointeur vers un article, ça m'intéresse !

· · Web · 11 · 5 · 3

@yaf
Pour la hype du CV ?
Pour pouvoir faire des Talks à des Meetups ?
😁

@yaf Apriori ce qui est intéressant c'est d'une part le paradigme de composant qui est un peu une sorte d'orienté objet appliqué au web/front-end (?) et permet de structurer ton code.

Et d'autre part le paradigme MVC qui fait que, lorsque tu as des apps complexes, tu as directement la mécanique de "modifier une variable propage directement le changement sur les bouts de vue affecté"

Ça et puis tous les modules qui tourne autour pour gérer la trad, les fonctionnalités pour simplifier le dev, etc...

Tu utilises quoi si tu n'utilises pas Vue/React en fait ? (Après, ça dépends aussi du genre de truc que tu dev)

@aleks Ben je travaille avec l'équipe qui s'occupe de rdv-solidarites.fr et on fait du Rails. On fait des pages web avec du HTML et du CSS et un peu de JS dedans. Historiquement, on traine du Bootstrap qu'on aimerait bien virer, mais ce n'est pas une prio pour le moment...

@aleks
Depuis le temps que je fais du web, je n'ai pas trop ressenti le besoin de ces histoires de composants… Sauf au tout début (en 1999) où j'ai participé avec mes collègues à bricoler un framework à composant :grin: Mais après coup, je n'en ai pas ressenti le besoin... Et je m'inquiète de finir comme un vieux con qui n'évolue pas dans sa vision de la techno :)

@yaf Mais genre même pour des apps un peu complexes ? (par complexes jveux dire + que une dizaine de vues)

Tu utilises quand même des framework JS "plus petit" style jQuery ou bien ? Quid du CSS ?

@aleks Ben dans RDV-Solidarités, nous avons un paquet de vue, je dirais... et nous n'avons que tu HTML, CSS et un peu (trop ?) de JS. Et du bootstrap.

Et ça me convient. Et comme ça me convient, je me pose la question sur le fait de passer à côté d'un truc ou pas puisque j'entends beaucoup parler de tous ces frameworks, sans comprendre pourquoi ils attirent autant

@yaf Spoiler : ça va t’apporter plus de problème que ça ne va en résoudre. Ça refait en JS ce que ton navigateur est supposé faire en natif. Tout ça « parce que c’est plus mieux », avec des pratiques qu’on pensait avoir oublié depuis PHP5…

@yaf Honnêtement je n’arrive pas à comprendre la hype autour de ces technos. Les gens s’arrachent la tronche sur webpack & cie pour faire tourner ça, avec des scripts JS de dorénavant plusieurs 100aines de Mo sinon plus pour un hello world…

@yaf Tout ça pour espérer vaguement simuler les anciens clients lourd…

@aeris @yaf Ce qui est sûr, c’est que la lourdeur n’est pas simulée, elle :blobcatpeek:

@aeris C'est vaguement l'impression que j'ai.

Et en même temps, j'ai peur de finir comme un vieux con qui ne change pas d'avis :D

Et je n'ai pas envie de changer d'avis si c'est uniquement pour suivre la mode...

@yaf les frameworks ça permet d'avoir clé en main un ensemble de techno packagé, testé, paramétré qui tiens la route et qui est standard.

Dans une logique de code industriel, c'est ce qu'il y a de mieux : au lieu d'avoir une soupe perso sur laquelle un nouveau contributeur/employé serai obligé de se former / apprendre les limitations / etc, tu as un standard où le scope/qualité/ensemble de fonctionnalités est parfaitement clair et défini avant même de travailler sur l'implémentation qui l'utilise.

Personnellement je suis justement passé sur Angular quand je me suis rendu compte que j'étais en train de débugger mon empilement perso de techno (modules JS, transpilation TS et SASS, isolation et injection de deps, etc) plutôt que de prendre un standard qui avait déjà fait tout ce travail pour moi et le gardais stable dans les mises à jours des différentes évolutions (du framework et surtout de ses dépendances).

@NicolasConstant Mais si tu ne fais que des pages HTML simple, avec du CSS et un peu de JS natif, est-ce que ce n'est pas suffisant ?

@yaf si bien sûr, comme on dis : "il n'y a pas de silver bullet", et ce genre de choses n'est pas adapté à une page web "de base".

Par contre, dès que tu t'aventure dans le monde de la WebApp, ne pas prendre un framework est une erreur : tu va juste réinventer la roue en moins bien, en prenant plus de temps et en ayant un code (et son nœud de dépendances) moins bon à la fin.

@yaf
Le truc qui a de fait de l'avenir, c'est être formé à l'écoconception.
Dans les consignes qui en ressortent, il faut qu'un logiciel soit utilisables sur des terminaux ayant 5 ans, et reste utilisable sur des terminaux qui sortiront dans les 5 prochaines années. Il faut donc utiliser des standards robustes.
Ça répond à tes interrogations car si dans 5 ans une technologie révolutionnaire est toujours là et largement adoptée alors ça vaut le coup de s'y former.

@coq Si je reformule pour voir, ça vaut la peine de se mettre à utiliser vue.js ou react parce que d'ici 5 ans, ça sera tellement intégré au navigateur que ça sera « idiot » de faire autrement ?

@yaf
Si ça vient tout juste de se déployer non, ça nécessite d'attendre 5 ans pour voir si c'est supporté sur tous les terminaux cibles, si un standard en garantie l'interprétation, et si ce standard garantit que 5 ans plus tard les nouveaux terminaux sauront en faire quelque chose.

@yaf
En sachant que si c'est lié au navigateur, alors ça implique d'aller plus loin en vérifiant que le navigateur lui-même est utilisable sur un terminal âgé de 5 ans et le restera 5 ans plus tard.

@yaf
L'intérêt étant de ne pas forcer la mise au rebut de terminaux anciens par une obsolescence technique, et donc de réduire l'empreinte environnementale du numérique.

@yaf le prblème que vue.js m'aide à résoudre, c'est de la visualisation de données de jira sous forme graphique dans le sens attendu par mes projets... mais je suis nul en js de base et sorti de un peu de python et de ahk je ne programme plus du tout

@teebo Merci pour cet exemple très concret et les informations qui vont autour !

Est-ce que tu dirais que vue.js a été plus simple à apprendre / comprendre que HTML / CSS ?

Et peut-être que tu n'as pas regardé HTML et CSS (sans doute avec un peu de d3js dedans pour l'affichage de donnée... mais je m'écarte) :D

@yaf HTML, CSS, je connais un peu, mais pour faire une timeline un peu graphique, je ne voyais pas comment attaquer le problème.

d3js, je pense que c'est une meilleure solution pour faire un truc bien directement, mais moins abordable pour moi qui ne fait plus du tout de technique à part quelques scripts. Je sais aussi qu'un de mes dev JS avait préféré utilisé Vue.js pour être plus rapide qu'avec d3js (même genre de sujet, roadmap graphique à partir de Jira).

@yaf passé un certain point ces framework permettent d'avoir une meilleure organisation de ton code, une manière standard de s'organiser, et évitent de réinventer la roue (en faisant des erreurs au passage).

Donc c'est un gain de temps parfois, mais ça dépends bien sûr de ton projet. A titre perso, j'ai été un peu dégouté par la complexité qu'apportent parfois ces outils, donc il faut bien jauger si le jeu en vaut la chandelle !

@yaf Avec les avancées en js et HTML tu peux déjà faire plein de trucs effectivement, donc avant de sortir la grosse artillerie c'est cool de se poser la question.

Aussi, dans les outils qui m'ont changé la vie je pense à Elm, qui demande un temps d'apprentissage mais qui a le bénéfice de faire du code quasiment exempt de bugs (je n'exagère pas : c'est fortement typé, fonctionnel et compilé).

Si ça compile, alors ça fonctionne. Ça m'a enlevé une épine du pied que j'avais oubliée

@yaf Je souscris à ce que dit @almet. Ça dépend fortement de la complexité de ton projet côté JS : ça peut t'aider à organiser ton code (et les paradigmes type Vue sont très plaisants à prendre en main), mais la contre-partie est une complexité de maintenance plus grande. Je pense que dans beaucoup de cas, les gens se simplifieraient la vie avec des solutions plus légères.

Si t'as vraiment peur de passer à côté de quelque chose, le mieux est d’essayer sur un petit projet pas critique.

@yaf si tu fais déjà du Rails, je te conseillerais de creuser plutôt du côté de hotwired.dev/

(Le principal souci étant que DHH est complètement en roue libre…)

@dav @yaf tiens, je m'apprête à relire rework ça m'intéresse de savoir pourquoi tu dis qu'il est en roue libre ?

@dav @yaf merci j'avais pas vu. Je vais lire ça. Des bises de Nantes !

@dav @yaf merci je viens de lire les articles que tu m'a lié.

Effectivement y'a quelques trucs choquants (des arguments bien degeu et bien connus par rapport à l'intersectionalité), mais je suis pas non plus alarmé outre mesure par ses écrits.

Par contre oui, le fait de bannir les discussions politiques de sa boîte c'est... 🤐

@dav @yaf (à propos de dhh) bon, j'ai lu d'autres articles et j'avoue que je suis pas très enclin à continuer.

J'y lis plein de justifications pour écraser les autres, ne pas se remettre en question, développer le culte du pouvoir.

Bref, je passe mon tour, effectivement.

Merci d'avoir pointé ça du doigt.

@almet après, si tu sépares l’œuvre de l'artiste, stimulus et turbo sont vraiment biens :) @dav @yaf

@aspyrine @almet @yaf le pire étant que ce n’est pas lui qui a créé et maintenu ces technos mais les personnes qui se sont barrées l’année dernière…

@dav ouais :/ je me dis que si ça prenait une direction pourrie, y a trop de gens qui s'en servent pour que ça fork pas à un moment @almet @yaf

@dav @yaf l'avantage c'est que c'est open source ! Même si les outils sont pilotés par des boîtes ça me rassure sur la pérennité de ces projets. Et comme tu dis @aspyrine au pire ça va forker.

D'ailleurs je pensais à Nextcloud il y a peu qui est l'un des rares fork qui a tenu dans le temps que je puisse nommer (et qui détrône owncloud de loin).

Je suis preneur d'autres exemples si vous avez ? 🤓

@dav @yaf @aspyrine

@vjousse @dav @yaf @aspyrine ah oui du coup y'en a effectivement quelques uns 👍 !

Ça le donne envie de creuser pour découvrir les dénominateur communs dans leur succès 🤔

@vjousse @dav @yaf @aspyrine bel exemple Mariadb : « En 2009, à la suite du rachat de MySQL par Sun Microsystems et des annonces du rachat de Sun Microsystems par Oracle Corporation, Michael Widenius, fondateur de MySQL, quitte cette société pour lancer le projet MariaDB »

Ya des gens qui ont de la suite dans les idées 👏

@dam_alex @almet @dav @yaf @aspyrine
- Jellyfin est un fork de Emby (maintenant propriétaire)
- Ubuntu est un fork de Debian 😜
- Mpv est un (sublime) fork de Mplayer
- Xonotic est un fork de Nexuiz

Aucune idée pour les dénominateurs communs à part qu'ils forkent tous un projet peu actif (sauf Ubuntu/Debian).

@dav @yaf Plus je creuse hotwired, plus ça me satisfait. Un des points qui m'avait attiré au début, c'est que le pattern fonctionne très bien également quand JavaScript est désactivé.

(Mais oui, DHH... :blobglare:)

@dav j'ai ça en tête là oui... et le principal souci aussi 😅

@yaf moi aussi je suis une vieille bique :)

Et idem, je passe à côté de react, vue et consorts. Sur les apps sur lesquels je bosse, je privilégie les lib JS légères et qui ne nécessitent pas une machinerie ingérable pour faciliter le travail (genre stimulus).

En même temps, vu que j'ai dans l'idée de raccrocher les crampons, je vais quand même pas investir dans des nouvelles technos hein.
#jeNeSuisPasLeBonExemple

@yaf je regarde cette question sous l'angle d'un choix d'architecture
Ces frameworks n'ont de sens que si tu prends la direction SPA
et ya beaucoup de projets pour lesquels la question "SPA ou pas SPA ?" n'a jamais à se poser

Pour savoir si tu passes à côté d'un truc, je me poserais la question : est-ce que c'est pertinent que je/on mette en place une SPA sur les projets actuels/futurs ?
Si la réponse est non, tu peux tranquillou ignorer le sujet jpense

@yaf Personnellement je ne vois l'intérêt que pour des applications ayant besoin de fonctionnalités avancées niveau interface, comme des graphes, des schémas modifiables, des lecteurs de musique, des tableaux etc.
Sinon je reste sur des applications sans framework JS avec le minimum de JS possible, parce que je vois mal le gain par rapport à l'ajout en terme de développement.

Inscrivez-vous pour prendre part à la conversation
Framapiaf

Le réseau social de l'avenir : pas de publicité, pas de surveillance institutionnelle, conception éthique et décentralisation ! Gardez le contrôle de vos données avec Mastodon !