|For the essay that used to be here, view revision #468751 of this page.|
Just got started learning to program, or want to start now? Then these may be more relevant for you instead.
|Code.org||Code.org||start here »|
|jQuery Code School||jQuery Foundation / Code School||2014||start here »|
|jQuery Learning Center||jQuery Foundation||read it »|
|Learn Programming||Khan Academy||2014||start here »|
|Learn Web Fundamentals||Codecademy||2013||start here »|
|You Don't Know JS||Kyle Simpson||2014||read it »|
|Fixing These jQuery (Debugging front-end applications)||adam j. sontag||2010||start here »|
- Optimization killers in V8: Pitfalls the bluebird library encountered.
- Grokking V8 closures for fun (and profit?) (September 2012), @mraleph.
See http://mrale.ph/ for more resources that give a good understanding of how V8 optimizations work internally.
- v8-perf: Notes, slides and videos about inner workings of V8 (including GC and JIT).
- Jank Free, a collection of "must-see" resources to pinpoint bottlenecks, and eliminate stuttering from animations and scroll rendering.
- "Not optimized" warnings explained (2014), Paul Irish, Chrome Dev Tools
- Chrome's timeline feature: File:Demonstration of Chromium's timeline feature.webm.
- chrome2calltree allows you to use the excellent KCachegrind profile viewer, which has call graphs, relative call frequency, grouping by file & other useful features. It works with profiles generated by V8, including Chrome.
- nodegrind makes it really easy to profile node projects by just calling 'nodegrind script.js' instead of 'node script.js'. It produces KCachegrind-compatible output.
Check out DevDocs. It provides a central (and offline) interface for documentation of many Web APIs and libraries (MDN, Node.js, PHPUnit, and more).