Comment les sites Web ont évolué au cours des deux dernières décennies (pour un gourou de l'informatique Ars)

20ème anniversaire d'Ars Technica

  • C'est ce que j'appelle Ars Technica, volume 1: Histoires préférées des 20 ans d'Ars
  • Vingt batailles juridiques qui se démarquent au cours des 20 ans d'Ars à les couvrir
  • Comment les sites Web ont évolué au cours des deux dernières décennies (pour un gourou de l'informatique Ars)
  • Nous enverrons des musées de cartes postales, des musées de flipper, le CERN et d'autres voyages préférés de l'Ars
  • Où ira la NASA dans 20 ans? Cela peut dépendre de l'espace privé et de la Chine
Voir plus d'histoires

J'étais un vrai nerd qui a grandi dans les années 1980 - pas à la mode hipster, mais dans le numéro de 10 livres deComputer-Shopper-sous le bras (ces choses étaient sérieusement énormes). À 10 ans, j'étais complètement accro aux BBS (systèmes de babillard électronique). Peut-être n'est-il pas surprenant que je sois devenu directeur technique d'un site scientifique et technique.

En fait, je ferais une distinction directe entre la gestion de votre propre BBS (alias SysOping) et la gestion d’une infrastructure Web moderne. Et comme tout le monde autour de Ars regarde en arrière compte tenu du 20e anniversaire du site, clarifions cette ligne. Ce ne sera pas un historique exhaustif des sites Web, mais voici comment mon expérience en matière de gestion de sites Web a évolué au cours des deux dernières décennies, et comment les outils et la pensée ont également évolué au fil du temps.

LOAD “*”, 8, 1

Ma première expérience SysOp a été optimisée par un Commodore 128 (bien sûr en mode 64) exécutant le logiciel Color 64 de Greg Pfountz. J'ai envoyé mon chèque à Greg, mon la maman vérifiez et recevez en retour une seule disquette de 5,25 pouces ainsi qu'un manuel imprimé à la main avec une matrice de points. C'était sur.

La couleur 64 constituait un exploit incroyable en ASCII ANSI, contrairement à la plupart des logiciels BBS disponibles à l’époque, qui étaient des textes fades et incolores. Avec Color 64, vous avez l'impression de créer une expérience utilisateur. Je ne me souviens plus du nom de mon BBS, mais je peux vous assurer que le thème était lié au dragon et / ou au kung-fu. J'ai vaguement honte d'admettre que ma poignée était DragonMaster, mais je faisais ma part pour consolider les stéréotypes de nerd.

Malheureusement, mon infrastructure réseau consistait en une seule ligne téléphonique, ce qui voulait dire que je devais désactiver toutes les sonneries (lis: débranchez le téléphone suspendu à cadran rotatif) et opérez entre 23h et 5h. Cela signifiait également que le BBS n'était pas très interactif. Avec une seule ligne et un seul lecteur de disque Commodore 1571, les utilisateurs ne peuvent ni discuter ni télécharger plus d'un jeu à la fois.

Dans mes rêves, je courrais bientôt un réal BBS, comme le fameux Fear & Loathing à Las Vegas, sur lequel j’étais un numéroteur très fréquent. J'aurais 10 lignes afin que les utilisateurs puissent discuter en temps réel, tous connectés à 1200-non! -2400 baud modems. Et il y aurait une quantité infinie de jeux stockés sur le mythique disque dur de 10 MB Lt. Kernal.

Hélas, tout cela était loin de ma portée, mais j’avais été définitivement mordu par un nouveau type de bogue qui incluait le désir inhabituel de construire du numérique des endroits où les utilisateurs pourraient se rassembler.

Années 1990

J'ai continué à bricoler le logiciel BBS, y compris un précurseur très intéressant du langage HTML avec Excalibur BBS. Jetez un coup d'œil à cette recherche d'images Google pour avoir une idée de la longueur d'avance de ce logiciel.

$: cd ~ / public_html

Au milieu des années 90, je me suis familiarisé avec HTML au collège lorsque je composais des devoirs et que je les chargeais dans mon répertoire personnel public, où les professeurs pouvaient les visualiser à leur guise avec Netscape ou Mosaic. Le bonus de +10 points pour "l'utilisation de la technologie" était un excellent facteur de motivation.

Apache + Perl + XML + Hébergement mutualisé

L'une des premières «applications» que j'ai écrites en tant que développeur Web était une salle de presse pour une entreprise de télécommunications. La technologie sous-jacente était une pile commune à l'époque: Apache en tant que serveur HTTP, Perl pour le langage côté serveur et une base de données à fichier plat. À ce stade, je ne connaissais pas les bases de données réelles, mais je savais écrire et analyser des fichiers XML. Tout cela était hébergé sur une plate-forme partagée étonnamment capable où toutes les règles de service dont j'avais besoin pourraient être incluses dans un fichier .htaccess. J'ai vite appris que .htaccess donnait à mes mains inexpérimentées beaucoup trop de pouvoir!

Alors que l'hébergement partagé a fait l'affaire, les développeurs de l'époque étaient à la merci des administrateurs en ce qui concerne les versions et les extensions logicielles. Vous deviez également vous inquiéter de ce que faisaient vos voisins au sein de ces mêmes ressources partagées, y compris diverses entreprises peu recommandables. Un piratage dans une seule machine pourrait facilement compromettre des centaines de sites.

IIS, extensions FrontPage et accès

Finalement, l'agence dans laquelle je travaillais a eu assez de clients pour avoir besoin de son propre serveur. À mon grand dam, il s’agissait d’une machine Windows exécutant IIS (Internet Information Services). C’était un terrain complètement étranger pour moi, mais après avoir lancé l’environnement Frontpage IDE (environnement de développement intégré), j’ai été épaté de voir à quel point Microsoft avait simplifié la tâche habituellement complexe consistant à enregistrer des entrées validées dans une base de données. (Sérieusement,incroyable.) Cela m’a envoyé sur une tangente recherche de l’IDE ​​graphique parfait, y compris une brève et regrettable alliance avec Macromedia Dreamweaver. J'ai vite appris que les outils qui génèrent du code pour vous ont tendance à produire une quantité importante de spaghettis seulement être démêlé par le même outil.

La gestion d’IIS sous Windows NT 3.51 semblait également dangereusement facile pour une personne venant d’un fond Unix. En même temps, il semblait limitant: où étaient les fichiers .conf qui permettaient des personnalisations granulaires (et des ratés phénoménaux)?

Cela est devenu ma plate-forme pendant un certain temps, car nous avons construit un certain nombre de CMS (systèmes de gestion de contenu) personnalisés pour les clients, sans jamais envisager de gestion prospective d'une base de code commune, d'une maintenance à long terme ou même d'un contrôle de version.L'horreur.

Début des années 2000, à commencer par ColdFusion

Je me rends compte à ce stade, je vais me aliéner, mais je vraiment aimé Allaire a utilisé l’environnement ColdFusion pendant au moins quatre ans pour créer des applications et des intranets à assez grande échelle. Le langage sous-jacent était CFML (langage de balisage ColdFusion). C'était un peu comme le HTML, mais cela simplifiait l'interrogation de bases de données et l'intégration à des technologies externes telles que les servlets Java ou les composants CORBA. ColdFusion avait beaucoup d'ennemis, mais j'ai toujours été assez agnostique avec la technologie, en choisissant ce qui ferait le travail plus rapidement.

Entrez les cadres Web

La très faible barrière à la productivité de ColdFusion lui a valu l’infamie en tant que langage simple qui a amené des programmeurs mal formés, comme le PHP. Bien que je ne puisse pas discuter avec cela, il est ironique que ma première exposition réelle à un bon Cadre web est venu sous la forme de Fusebox. Fusebox a d'abord été un moyen d'organiser votre application avec des conventions simples de nommage des fichiers et de disposition des répertoires. Cela semble évident, mais comme la plupart des développeurs Web de l’époque, j’ai tendance à adopter une approche personnelle en constante évolution de la présentation des applications et à lutter contre la séparation des problèmes tels que les requêtes de base de données et les composants d’affichage. J'avais bricolé avec Struts, mais comme Java n'était pas une option pour mon travail quotidien, je ne l'ai jamais complètement avalé. Cependant, Fusebox m'a ouvert les yeux sur le paradigme transcendant le langage des frameworks MVC (model view controller). C’était des années avant la stupéfiante démonstration de 15 minutes du blog Ruby on Rails par David Heinemeier Hansson.

Ces jours-ci, je n’envisagerais jamais de démarrer une application volumineuse sans choisir un framework, et il existe de nombreuses options intéressantes à choisir. Laravel est un favori personnel pour PHP.