Presentation of JSConf.eu

Embed Size (px)

DESCRIPTION

I went to JSConf.eu 2009 and was asked to present a "summary" of my take aways from the conference at Gothenburg DotnetForum in December 2009.

Citation preview

  • 1. JSConf.eu JavaScript Berlin 7-8 Nov 2009

2. [email_address] j Solutions n Solutions i Solutions Java .NET IBMi 3. JSConf.EU 4. JS in Browser Performance

  • Yahoo!

5. Google 6. Velocity (conf) 7. Rules and tools 8. YSlow & Page Speed 9. Stairway to heaven 10. High Performance Web Sites

  • 14 regler
  • fewer http requests

11. use a CDN 12. expires content-cache 13. gzip 14. stylesheets at top 15. scripts at bottom 16. ... 17. Even Faster Web Sites

  • web 2.0 - front end
  • Responsive webapps

18. Splitting initial load 19. Loading w/o blocking 20. Coupling async scripts 21. Writing efficient js 22. Optimize images 23. Flush document early 24. Simplify CSS selectors 25. Loading JS - LABjs

  • Olika tekniker
  • XHR Eval

26. XHR Injection 27. Script in Iframe 28. DOM Element 29. Script Defer 30. document.write Cavemen can do it! 31. BAD BAD BAD 32. What is good? 33. LABjs - LoadingAndBlocking 34. Objektorienterad CSS

  • CSS
  • easy to break existing code

35. immature profession variables 36. prototypes 37. mixins 38. CSS Wish List - Variables @variables hex{ facebookBlue : #3b5998; highlight : #ff9933; } h2, h4, h6 { color:hex . facebookBlue ; } @variables { : } 39. CSS Wish List - Mixins @mixin .clearfix{ zoom:1 } .clearfix :after { content: "."; display: block; height: 0; clear: both; visibility: hidden; } 40. CSS Wish List - Including .introduction { include:.clearfix ; } .introduction {zoom:1} .introduction:after { content: "."; display: ...; } 41. node.js - Evented I/O for V8

  • Most popular servers are doing it wrong

42. Most APIs are synchronous 43. The world is async 44. node.js is all async 45. node.js - DNS example var dns = require("dns"); var resolution = dns.resolve4("www.google.com"); resolution.addCallback( function(addresses, ttl, cname) { puts("addresses: "); puts(JSON.stringify(addresses)); } ); 46. JS - from birth to closure

  • Genomgng av JavaScript

47. Conditionals, Comparison, Data Types, Functions, Function Arguments, Objects, Inheritance, Scope, Function Scope, Closure, Namespacing, Syntax 48. Using dojox.*

  • dojox.gfx

49. dojox.charting stunning portable cross-browser real-time 2D graphics 50. Party! 51. ECMAScript 5

  • repair the language
  • block problem

52. variadic functions 53. syntactic sugar IBM - IEEE 754r 54. Close Patent Office 55. SDC 2010 56. Douglas Crockford Just because something is astandard doesnt mean it isthe right choice forevery application. Like XML, for example. 57. HTML5

  • web forms

58. 59. 60. offline apps prop: navigator.online events: online, offline window. applicationCache 61. The Future of Web-Apps

  • Everything's amazing and nobody's happy

62. Many devices - lots of propietary APIs 63. The stuff the user does is SACRED 64. Nielsen gller nnu: 0.1, 1.0, 10 sekunder 65. Tack, frgor och cred flickr.com/ipom/ flickr.com/janlehnardt/ labjs.com nodejs.com stubbornella.org stevesouders.com javascript.crockford.com