<?xml version="1.0" encoding="UTF-8"?>
<talk>
  <created-at type="datetime">2009-06-12T16:18:19+00:00</created-at>
  <event-id type="integer">130</event-id>
  <id type="integer">1182</id>
  <info>As Phil Karlton said, &#8220;there are only two hard things in Computer Science: cache invalidation and naming things.&#8221; Despite enormous advances in the field of web development over the last five years, it remains difficult to use caching to allow sites to scale for expanding user bases. Fortunately, the last few years have also seen the rise of JavaScript libraries that take a lot of the pain out of client-side programming. In this talk, we&#8217;ll explore techniques for making your sites feel faster, without resorting to complicated caching schemes, while maintaining strict separation of content, style, and behavior.

Using a sample Rails app, we'll look at client side code to do the following:

* Reduce initial load time
* Render content inline via AJAX
* Increase responsiveness
* Background-load content
* Isolate bottlenecks
* Eliminate blocking operations

The goal is that the talk will serve three purposes: to explain some of the psychology behind user impressions of website performance, to introduce unobtrusive javascript to the uninitiated, and to describe some novel techniques to more experienced web developers.</info>
  <location></location>
  <series-id type="integer" nil="true"></series-id>
  <slides-url></slides-url>
  <slideshare-key nil="true"></slideshare-key>
  <talk-url>http://rubynation.org/speakers#david_eisinger</talk-url>
  <title>Optimizing Perceived Performance</title>
  <updated-at type="datetime">2009-06-12T17:12:05+00:00</updated-at>
  <when type="datetime">2009-06-13T11:30:00+00:00</when>
  <average-rating type="decimal">4.09</average-rating>
  <event>
    <created-at type="datetime">2009-06-12T01:46:15+00:00</created-at>
    <creator-id type="integer" nil="true"></creator-id>
    <description>RubyNation is an annual Ruby conference serving the Virginia, West Virginia, Maryland, and Washington, DC areas.</description>
    <end-date type="datetime">2009-06-13T00:00:00+00:00</end-date>
    <event-url>http://www.rubynation.org</event-url>
    <hashtag nil="true"></hashtag>
    <id type="integer">130</id>
    <location>Reston, VA</location>
    <series-id type="integer" nil="true"></series-id>
    <start-date type="datetime">2009-06-12T00:00:00+00:00</start-date>
    <title>RubyNation</title>
    <updated-at type="datetime">2009-06-12T01:46:15+00:00</updated-at>
    <average-rating type="decimal">3.66</average-rating>
  </event>
  <speakers type="array">
    <speaker>
      <biography>When his high school teacher introduced him to an experimental new language called &quot;PHP,&quot; David's interest in programming officially moved to the web. After completing his B.S. in Computer Science at Duke, David worked for his alma mater for two years, building web applications for various groups on campus. It was during his time at Duke that David fell in love with Ruby on Rails, and when Viget moved to Durham, he knew it was a match made in nerd heaven.

When he's not working with the latest web technology, David enjoys photography, coffee, the various Law &amp; Order franchises, and hanging out with his parrot, [Tad][]. 

  [tad]: http://www.flickr.com/photos/deisinger/3554317506</biography>
      <company>Viget Labs</company>
      <company-website>http://www.viget.com/</company-website>
      <id type="integer">2</id>
      <linkedin-url>http://www.linkedin.com/in/deisinger</linkedin-url>
      <location>Durham, NC</location>
      <name>David Eisinger</name>
      <personal-website>http://www.davideisinger.com/</personal-website>
      <title>Web Developer</title>
      <twitter-username>deisinger</twitter-username>
      <average-rating type="decimal">3.84</average-rating>
      <avatar-url>/avatars/2/thumb/self.jpg</avatar-url>
    </speaker>
  </speakers>
</talk>
