DCSIMG
MIX11 First Day Sessions Summary - Gil Fink's Blog

Gil Fink's Blog

Fink about IT

News

Microsoft MVP

My Facebook Profile My Twitter Profile My Linkedin Profile

Locations of visitors to this page

Creative Commons License

Disclaimer
The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.
© Copyright 2012 Gil Fink

Hebrew Articles

Index Pages

My OSS Projects

English Articles

MIX11 First Day Sessions Summary

MIX11 First Day Sessions Summary

In the first day at MIX11 conference I attended the following sessions:MIX11 First Day Sessions Summary

Hot from the Labs – HTML5 WebSockets

The first session after the keynotes was about HTML5 Web Sockets which has a Microsoft first draft implementation on HTML5 Labs. The concept of “Real Time Web” is very crucial and hard to implement (using push or polling messages to and from the client). In order to address the problem of client server communication (Bidirectional, Single TCP socket, In & Out of the browser and more) the HTML5 Web Sockets specification was created. The Specifications contain two specification groups: IETF WebSockets protocol and W3C WebSockets API. After the introduction Paul Batun showed the audience how to use the API from HTML5 Labs WebSockets implementation (using the WebSocketsService base class, overriding the OnMessage method and building a WebSocketHost in console application) and built a Hello World demo. Paul also showed the WebSockets URI conventions and a little bit about the client server handshake. It was a very interesting session.

Visit HTML5 Labs for more details and start working with the WebSockets prototype.

50 Performance Tricks to Make Your HTML5 Web Sites Faster

Jason Weber talked about things like an inside look at browser performance and how it is important to understand it, principles for web performance, and then gave a deep dive into 50 specific rules for performance tuning in a web site. Here is the list of 50 best practices he suggest:

  • Quickly respond to network request
    • Careful about redirect, avoid metadata refresh
    • Minimize the server time for requests
    • Use CDNs (Content Distribution Network)
    • Maximize concurrent connections
    • Reuse connections
  • Minimize Bytes Downloaded
    • GZIP compress network traffic
    • Provide cacheable content
    • Send conditional requests (If-Modified-Since header)
    • Cache data requests in browser cache
    • Standardize on file capitalization convention
  • Efficiency Structure Static Markup
    • Load pages in latest browser mode (HTML5)
    • Use HTTP header to specify legacy IE modes (for example X-UA-Compatible meta tag)
    • Link Style sheets at top of page
    • Never link style sheets at bottom of page
    • Avoid using @import for hierarchical styles
    • Avoid embedded and inline styles
    • Only include necessary styles
  • Optimize Media Usage
    • Image Formats: PNG (by default), JPEG, JPEG-XR
    • Use native image resolutions
    • Avoid death by 1000 images (don’t download ton of images)
    • Use image sprites
    • Create your sprites by hand
    • Replace images with CSS3 gradients
    • Replace images with CSS3 border radius
    • Embed small images through DataURI (specify an image as a 64 byte string)
    • Replace large images with inline SVG
    • Avoid complex SVG paths
    • Video: user preview images
    • Leverage CSS3 transforms
    • Proactively download your next resource
  • Write Fast JavaScript
    • Avoid linking JavaScript in head
    • Avoid inline JavaScript
    • Link JavaScript at end of file
    • Use the defer attribute when head is the only option
    • Remove duplicate code
    • Standardize on a single framework
    • Don’t include script to be cool
    • Minify your BLOCKED SCRIPT character removal
    • Minify your BLOCKED SCRIPT compaction
    • Minify your BLOCKED SCRIPT inlining
    • Initiate JavaScript on DOMContentLoaded event
    • Initialize JavaScript on demand
    • JSON is always faster than XML for data
    • Use native JSON methods
    • Use regular expressions sparingly (never include regular expression in page load)
    • Ceil/Floor your double precision floats
    • Minimize DOM interactions
    • Built in DOM methods always more efficient
    • Use .innerHTML to construct your page
    • Batch markup changes
    • Maintain a small and healthy DOM (keep the elements number below 1000)
  • Know What Your Running Application is Doing
    • Understand JavaScript timers (setTimeout, setInterval)
    • Minimize and align timers
    • Align animation to the display frame (16.7)

Pragmatic JavaScript, jQuery & Ajax with ASP.NET

Damian Edwards talked about Ajax Control Toolkit which got an update on 1 April ,jQuery and Nuget support for jQuery versioning , how to build a simple jQuery plugin (by showing a isDirty plugin), Unobtrusive and JQuery UI, Comet implementation with a HTTP Handler, a little bit about Knockout js and Amplify js. A lot of information in one hour session.

That is all for today.

Posted: Apr 13 2011, 03:28 AM by Gil Fink | with no comments |
תגים:, , ,

Comments

No Comments