Florian Traverse (@temsa , http://pullrequest.org) et Mickael Daniel (@mklabs , http://blog.mklog.fr/)
enregistré le 07/08
2min45: présentation
4min15: java est malade!
5min55: Comment tombé ds JS
Utiliser "the good parts" (reférence à Javascript: The Good Parts : http://www.amazon.com/exec/obidos/ASIN/0596517742/wrrrldwideweb de Douglas Crockford : http://www.crockford.com/)
prototype : http://www.prototypejs.org, jQuery : http://jquery.com
Code quality tool:
http://www.jslint.com/lint.html
http://jshint.com/ 6min: ArchetypeJS / 2006. énormément de code coté client, fwk RIA.
Langage JS qu'on ne prend pas la peine d'apprendre:
Lien vers http://eloquentjavascript.net/, The Good Parts : http://www.amazon.com/exec/obidos/ASIN/0596517742/wrrrldwideweb, jQuery fundamentals : http://jqfundamentals.com/, Learn.appendTo : http://learn.appendto.com, Essential JavaScript Design Patterns For Beginners http://addyosmani.com/resources/essentialjsdesignpatterns/book/, http://promotejs.com/
NodeJS - 15min28
http://nodejs.org/ || http://www.joyent.com/
Design node:
2009: Ryan Dahl: Node.js : http://blip.tv/jsconfeu/ryan-dahl-node-js-2918890
2010: Ryan Dahl - Less is More with Node.js : http://blip.tv/jsconf/ryan-dahl-less-is-more-with-node-js-3755032
2010: YUI Theater — Ryan Dahl: “Introduction to NodeJS” : http://www.yuiblog.com/blog/2010/05/20/video-dahl/
~ 17 * Communauté node : https://github.com/joyent/node/wiki/Community * Liste impressionnante de modules non exhaustive : https://github.com/joyent/node/wiki/modules
19min35
Hébergement:
joyent no.de : https://no.de/
nodester : http://nodester.com/
cloudfoundry : http://cloudfoundry.org/
nodejitsu : http://www.nodejitsu.com/#/home
amazon ec2 : http://aws.amazon.com/fr/ec2/ Un tuto (http://rsms.me/2011/03/23/ec2-wep-app-template.html) pour s'y mettre très rapidement (source : https://github.com/rsms/ec2-webapp)
Liste exhaustive
~22min40 * npm : http://npmjs.org - http://search.npmjs.org/ https://github.com/isaacs/npm
~24
réutilisation de code, porter des librairies coté serveur.
du moment que la librairie n'est pas lié a des manipulations DOM, ceci est possible (et même si ca l'est, jsdom : https://github.com/tmpvar/jsdom).
ex: globalize : https://github.com/jquery/globalize, underscore : http://documentcloud.github.com/underscore/, backbone : https://github.com/jquery/globalize
Technique utilisé par underscore pour s'exposer en fonction de l'env : https://github.com/documentcloud/underscore/blob/master/underscore.js#L51-60
Chez backbone : https://github.com/documentcloud/backbone/blob/master/backbone.js#L18-25
Un autre pattern, plutôt sympa :) (https://github.com/hij1nx/weld/blob/master/lib/weld.js#L452)cela repose sur une closure, une fonction anonyme executée immédiatement à laquelle on passe le bon objet, selon l'env (window ou exports) utilisé ainsi via ce param (https://github.com/hij1nx/weld/blob/master/lib/weld.js#L1), qui vaut window coté client (donc exposé niveau global).
commonjs : http://www.commonjs.org/
http://andyet.net/blog/2011/feb/15/re-using-backbonejs-models-on-the-server-with-node/
http://amir.unoc.net/how-to-share-backbonejs-models-with-nodejs
~28min * async : https://github.com/caolan/async
Why ? : http://promotejs.com/
Best tech talk ever : http://jsconf.eu/2010/communityjs_by_chris_williams_1.html