Je touche de près ou de loin au développement web depuis environ 15 ans maintenant, et le moins que l'on puisse dire est que le milieu a bien évolué.
Il y a 15 ans, des connaissances limitées en CSS, HTML et PHP était presque suffisant pour mettre un projet convenable en ligne, il était possible d'acquérir ces connaissances seules et commencer directement à hacker. Maintenant, qu'en est-il ?
Côté back, les projets en "Php vanilla" sont exceptionnels, cela va faire au moins 6 ou 7 ans que je n'ai rien codé from scratch. Pour s'en sortir, une bonne connaissance de plusieurs frameworks (symphony, laravel, rails, express, …) et langages (PHP, Ruby, Node) est un au minimum.
Côté front, je crois que les choses sont encore pires, la généralisation et multiplication des préprocesseurs ont transformé le nécessaire pour afficher un simple "Hello world" sur une page web. Avant, il suffisait d'ouvrir son éditeur, écrire quelques balises, et ouvrir son fichier dans un navigateur. Maintenant, il faut installer nodejs, web pack, choisir la stack de son projet et configurer correctement les loaders, etc.
Je sais que cette partie peut sembler "vieux con rétrograde" mais comprenez bien que je ne dis pas là que c'était "mieux avant" (Sass, Webpack et Vue c'est trop bien, avouons le), simplement que c'était plus simple avant. Toute cette complexité vient avec un prix à payer : les connaissances "de base" à obtenir avant de pouvoir travailler sur un projet moderne sont énormes et peuvent vite devenir décourageantes, que vous soyez un jeune qui sort tout juste de l'école ou un développeur vieille école qui n'a pas vu le temps (et les technos) passer.
Il est bien entendu possible de décider de vivre à l'ancienne, écrire du PHP/CSS/HTML comme à la grande époque, et passer ses projets en ligne avec un FTP, tout comme il est encore possible d'utiliser un poste cassettes pour écouter de la musique car les lecteurs CD sont trop complexes. Sauf qu'un jour, vous vous rendrez compte que les cassettes n'existent plus, que les CD n'existent même plus non plus, et que tout le monde écoute de la musique "en streaming", quoi que cela veuille dire. Les temps changes et les laisser partir devant n'est pas forcément la bonne solution.
Heureusement, il existe quand même des solutions : les services comme Codepen et Glitch. Ces services vous proposent un environnement en ligne gratuit dans lequel vous pourrez découvrir, hacker et essayer toutes ces nouvelles technologies sans avoir à les installer et configurer avant. Bien sur, le coup d'entrée en matière d'apprentissage est toujours bien présent, mais au moins vous pouvez apprendre dans de bonnes conditions.
Je me rends compte que mon introduction est un peu longue, passons donc à notre sujet du jour sans attendre : CodeSandbox.