Une présentation de Christophe Porteneuve à Codeurs en Seine 2014
var christophe = {
age: 37.06297056810403832
city: 'Paris',
company: 'Delicious Insights',
trainings: ['JS Total', 'Node.js', 'Git Total'],
webSince: 1995,
claimsToFame: [
'Prototype.js',
'Ruby On Rails',
'Bien Développer pour le Web 2.0',
'Prototype and Script.aculo.us',
'Paris Web'
]
};
nxoc01.cern.ch
Emprunte son système de modules à Modula 3. Il faudra attendre 2000 pour Python 1.6 et 2.0 (très inspiré de Haskell), et le décollage en règle du langage.
Tu peux pas test : serveur créé par Robert McCool !
Le premier fait exploser la popularité du web, notamment en innovant avec l'ajout d'images et de formulaires. J'ai moi-même démarré avec, à l'automne 95.
Au fait, JS tournait aussi sur les produits serveurs de Netscape.
ECMAScript, ECMA, ECMA-262, TC-39, standard ISO/IEC 16262
(browser next-gen en Java : Javagator, évidemment abandonné). Servira de base à ServerJS / Narwahl, et fournit du JS dans la JVM. Langage de script par défaut dans Java 6 (Sun Microsystems).
S (Simple) est d’un cynisme terrifiant. WS-* = “WS Death Star”
Restera dormant jusqu’en 2009.
(en décembre ; ajoute notamment la gestion des exceptions). Début de 8 ans de gel sur ES, avec un ES4 invivable.
(Super Bowl XXXIV : 16 start-ups à 2M$ pour 30” de spot…). Début de la fin : fusion AOL / Time Warner. De mars 2000 à octobre 2002, la capitalisation des dot-coms perd 5 000 000 000 000 US$.
L'année d'après, FreeNet, Gnutella, LimeWire et eDonkey2000
lui emboîteront le pas (Kazaa en 2001).
dont le logo est manifestement une larme de développeur… En revanche, la communauté Drupal est réputée super sympa, peut-être parce que les tranchées, ça soude les gens.
La version finale arrivera 7 ans plus tard, en 2008.
même si beaucoup de old-school continueront looongtemps :-/
Premier browser basé WebKit, lui-même issu de KHTML.
mais se verra retirer le titre pour dopage en 2012
Ils seront rachetés par Google 2 ans plus tard.
Bombe atomique, “killer app” pour Ruby
pas encore nommé ainsi, dans un article de Cameron Adams.
Il faudra attendre 2010 pour que ça prenne son essort.
Au final personne ne fera du XML avec, hein…
script.aculo.us le suivra en juin.
Mais il faudra attendre GitHub, en 2008, pour que ça décolle.
(sans doute la plus importante màj de l'histoire de Flash)
Avec un EDI basé sur Processing. La Arduino Uno deviendra rapidement une carte de référence pour le mouvement de démocratisation du hacking hardware et de la robotique.
(si ! si tôt ! mais passait sous le radar…)
Inspiré par Prototype.js. En 3 ans, il va dominer le marché des libs légères front. On y trouve les bases de QUnit.
Il faudra attendre 2012 pour les modèles commerciaux !
Il faudra 1 an pour le premier appareil commercial.
Premier templating en JS, par Justin B. Meyer (JavaScriptMVC…)
Il faudra 7 ans pour la TR, là où le WHATWG avait mis 3 ans…
V8 servira de base pour Node.js.
Premier framework populaire de tests JS pour le browser.
et fait décoller Git. J'étais inscrit le 25/03 :-p
30% seulement de royalties, les devs mobiles voient la Vierge.
avec CSS2.1 (passe Acid2) et 3 corrections au DOM. ES3 foireux.
sous la plume d'Eric Evans. CAP plutôt qu’ACID. Année de sortie pour MongoDB, Redis, Riak, Apache Cassandra…
head
.
300 geeks hardcore JS sur le cul.
Début des scripts loaders
1ère version depuis 1999. Enrichit considérablement la partie objet, notamment les définitions de propriétés et de prototypes.
HTML + CSS + JS → applis mobiles natives pour tout un tas de plates-formes, via une API JS unifiée. Rachat Adobe 10/2011.
Début des cryptomonnaies numériques, émergence des block chains (au 25/11/14, un BTC vaut environ 300€).
Assez pourri à la base mais a mis les préprocesseurs CSS et leurs concepts-clés sur le radar, car SASS restait largement méconnu.
Défonce royalement LESS, mais il faudra attendre Rails 3.1, un an plus tard, pour que SASS et HAML deviennent populaires.
qui va donc crever en à peine 1 an, comme tout rachat HP.
C'est cette année-là que la part de marché smartphones d'Android décolle (22,5%).
Pendant ce temps, à force de rater le train, RIM (BlackBerry) commence à sombrer et ne reviendra plus (moins de 0,5% du marché en 2014).
Pour rappel, dans les pays émergents, le web est majoritairement mobile.
Firefox lui emboîte le pas. Début des browsers evergreen.
Deferred
(≈ promesses)
(Yehuda Katz veut une version nettement boostée de Mustache). Utilisé notamment par Ember 1.x et Thorax.
100% ES5, Canvas hardware, du HTML5 et CSS3 (100% Acid3).
P2P inter-devices pour les pages web. Énorme potentiel.
Lance notamment le travail sur plein d'APIs Device et sur les Manifestes de Web Apps (actuellement en Draft au W3C).
Bon boost en déc 2012 via Modern.IE. « Seulement » Live au début, et sur des émulateurs (mais avec Local Testing).
Premier gros EDI moderne en ligne, intégré avec tout le monde.
Modèle B ($35). Le modèle A sortira un an plus tard.
2 semaines avant la sortie de Grunt, il enterre déjà ce que sera Grunt 2 ans plus tard.
Lance le marché des builders / task runners basés Node.
Toutes les libs (q, then/promise, rsvp, bluebird…) vont débarquer
Les esprits commencent à bouger autour de JS et du web front : un dev front est clairement une licorne (ou tout du moins un Rainbow Dash). Des plats de nouille jQuery ne suffisent plus, on commence à faire du JS de qualité.
Automated Browser, Automated Mobile, connecteurs JS et Sauce Connect. Exploitable par Karma, Mocha, etc.
Déjà pas mal implémentée dans les browsers modernes
en < 4 ans, le 10ème million n’ayant pris que 48 jours.
PayPal, LinkedIn, Walmart, Uber, Medium, Groupon, eBay, Microsoft (Azure Mobile Services, etc.), Yahoo!, Storify, Trello, Voxer, Zendesk… Mais aussi AppFog, Bocoup, Ghost, Koding, LearnBoost, JSBin, Rdio, Shutterstock, SitePen…
et va étendre aux autres plate-formes.
et augmente à raison d'environ 212 nouveaux modules/jour. Les écosystèmes les plus vivants derrière sont GoDoc (104), puis Packagist (83) et MavenCentral (78).
5ème au classement global, juste derrière PostgreSQL et loin devant Cassandra (10ème), Redis (12ème) et CouchDB (21ème).
ou en janvier 2015.
et commencent à être exposées comme modules plutôt que dans les namespaces globaux (DOM, Storage, ServiceWorker…)
Déjà largement pris en charge par les runtimes. Promesses, modules, POO classique, proxies, affectation déstructurée…
Très, très peu compatible avec AngularJS 1.0, et pas d'upgrade path propre (contrairement à Ember). Retente le coup du langage dédié avec AtScript, que beaucoup voient comme le successeur de Dart.
quitte à passer par du transpiling
et du Physical Web / IoT / objets connectés (dont BlueTooth LE)
ES7 prévu en 2016
(sorties annuelles à compter du 6)
Object.observe, async/await, SIMD…
The Birth and Death of JavaScript
de 1995 à… 2035 (Gary Bernhardt) • À voir absolument
Christophe Porteneuve
Retrouvez les slides sur bit.ly/wowmuchweb