8. If VC’s are talking about WEB apps SPEED that means the problem is mainstream
9. What SPEED means for WEB? Facebook created PHP HipHop to speedup=F****ing 50% savings! Web would have been a great place if everything worked like a Google Instant Lot’s of bad PR and Loose users! Tip : Do join us at Facebook Developer Garage Bangalore on 24th, September for indepth discussion on HipHop.
10. But Why You Should Worry? because It is about User Experience and Engagement Slow = High Bounce Rates = No users Average users are mostly likely to quit a slow page than geeks It affects your SEO – think Google Instant but IRCTC still works in India
11. AND… Only DOGS can sleep while pages are loading
12. AND… When was the last time you were waiting for the page to load without cursing it?
13. What’s a Good Page Speed? F**K this Page 10 seconds SPEEED is not a feature, it’s a KILLER! 5 seconds 2.5 seconds Google loads in 823 milliseconds* * : Yotta report
14. God once said SPEED first EVERYTHING next * : Whom should I quote here?
18. Murphy's Law is usually more applicable than Moore's Law Premature optimization is the root cause of all evils - Knuth
19. What Should I Do to SPEED UP? Lets optimize JAVA/.NET/PHP CODE = FUCK it I think APACHE is better than IIS = FUCK it Lets get Intel XYZ7 processor = FUCK it Lets move to Cloud = FUCK It
20. The 80-20 Rule Let’s not worry much Problem is HERE To Speed Up To Scale Up
24. And the browser woes… Number of connections per host = every browser does it’s own way! Maximum numberof connections from browser. JavaScriptengines suck! So many cool effects – I need more JAVASCRIPT HTTP was built in B.C and we need SPEEDY! Enough SHIT lets get to the POINT >>
25. Good news – lot’s of tools Page Speed Speed Tracer Y slow Firebug Webpage SpeedTest Dynatrace Ajax and many more are there!
26. The Golden Rules 1. Do LESS : Reduce HTTP requests – combine JS files, CSS files, Use Image Sprites 2. Do SMALL : Smush.it/PNG Crush Images, Minify JS/CSS, Remove fugly code 3. Do COOL : Cache JS/CSS/Images, Google “optimize” options for your server 4. Do MORE : Parallel connections, Order your stuff, Unblock JS & Use Google ajax libs 5. Do GEEKY : XHR use JSON, Flush() early, Gzip, Dump Etags, Cache on Server & CDN 6. Do SMART: Lazy load, Upgrade your JS libs, Cleanup JS files & Get of rid of comments/code – the EVIL Tell me other 4 rules
27. Thumb Rulesfor 90% Use Google Closure Compiler – easiest way to optimize your JS. Play with Cuzillionto learn how to order Images, inline/external Javascripts/CSS Upgrade your jQuery/others libs regularly – faster and less memory Do basic optimization of your JS code, just google – ton of resources
28. Thumb Rulesfor 90% Don’t put JS libraries on your server unless required – Use Google or MS public CDN’s Burst the Cache on updates – use ? or include versioning in build script Use SpritesMeand learn image sprites – saves you a ton of load. Lazy load/Pre-fetch if have too much stuff after page load or anticipate next page – XHR, JSON : Love jQuery
29. If you have just wordpress Try one of those cache plug-ins like w3-total-cache
32. How to do Async JS loading? RequireJS– Awesome way to load JS async and also handle dependencies
33. How to Measure Ajax actions? Dynatrace Ajax – If John Resig is impressed then you should also be
34. How to Measure Ajax actions? Chrome Speed Tracer – This is a kick-ass
35. How to Measure Ajax actions? Chrome Speed Tracer – This is a kick-ass
36. Geeky: How to do JS payload split? Why load all the JS code upfront when you only need some of it? Doloto - http://msdn.microsoft.com/en-us/devlabs/ee423534.aspx
37. Word of caution A/B and Multivariate scripts will have impact on performance Choose user screen captures tools carefully – can get really sluggish Get rid of asp.net ajax libs, bloated and lousy! Choose your social or JS framework plug-ins carefully – most are lousy! and Look at your server logs – gives you ton of data on requests/responses Do backend profiling – if you have high loads on the system
39. The Future looks brighter! Web workers – run multiple JS threads! Hardware acceleration in Browsers – faster rendering/scaling/layouts The awesome HTML 5 – Async/Defer, local storage/app cache, Web SQL & more! Expect better JS engines – run highly optimized and native vm code May be SPEEDY/Web Resource Bundles Soon!
40. Hope All Browsers will have auto update, love you Chrome! Can we do something for IE 6? – the death funerals haven’t worked yet
41. Follow Leaders The Yahoo Developer Network Performance Section Google Performance Engineering Site Steve Souders((@souders) Facebook Engineering Blog Performance Planet John Resig High Scalability InfoQ Nicole Sullivan(@stubbornella) Phillip Tellis((@bluesmoon))
42. Let’s make WEB faster! May god bless the speed Vijay Rayapati Product@GizaPage @amnigos
44. Credits It’s due wherever I used images from Flickr CC, FindIcons.com and Google Images Search Thanks to Pallav (FusionCharts ) for the background theme.