HTML5 Developer Conference header

October 2012 Sessions

Be sure to check back for updates on the next HTML5 Developer Conference!

<<<<<<< HEAD ======= >>>>>>> f8b78f216f96518dd482de6783da9addc5fc102f

"Webapp Workflow & Yeoman" :: Click here for Slides
(Click for video)

Speaker: Paul Irish - Google

We rarely talk about the actual mechanics of how we develop webapps, but in this session, we'll get into some new techniques people use to improve their experience. Iterating faster, avoiding bugs through tools, and improved automated testing are great ideas, but in this talk we'll see how to really incorporate them into a functional and realistic developer workflow.

"Cache is King" :: Click here for slides

Speaker: Steve Souders - Google

40-60% of users visit your site with an empty cache at least once each day. 58% of resources don't have caching headers, even though 38% of them go unchanged for weeks. The browser cache is small. We're told localStorage is bad for performance. Is it? Does it depend on how it's used? Application cache is full of gotchas. It's really hard for web developers to test caching in the lab AND in the real world. And yet caching is critical for making a fast web app. Join Steve as he clarifies the problem and various solutions to make your web app leverage the most out of caching.

"The Beauty of Constraints"

Speaker: Faruk Ateş

Making any product is an exciting as well as challenging endeavor, especially in technology and software. As humans we are prone to let our creativity run free — but freedom is not always the best solution to solving problems. Sometimes we need constraints more than anything else to truly ignite our creativity.
In his session, Faruk will talk about the values and lessons learned from imposing (sometimes arbitrary) constraints on projects, applied against UI, software, and API design.

"Broken promises of HTML5 and what's next?"
(Click for Video)

Speaker: Christian Heilmann - Mozilla

HTML5 has been quite the buzzword for a while now and as developers we are stuck in between a massive demand and a lack of technical support. Devices and hardware that promised to be the bright future of HTML5 are not allowing us to do the things we want to. In this talk Chris Heilmann of Mozilla will show how we can juggle our demands and move forward towards a world where HTML5 is not a cool "nice to have" but the standard it set out to be. There is a lot to be defined and many great things brewing - we just need to push where movement is needed rather than going in lots of different directions.

"HTML5: Postcards from the Bleeding Edge"

Speaker: Peter Lubbers - Google

In this fast-paced and demo-rich talk, Peter will take a look at some of the most cutting-edge HTML5 features and related developments. Warning: these features may only work in nightly builds of a browser, or with experimental flags turned on, but life is more exciting when you live on the edge, right?

"Stop using native HTML5" :: Click here for slides
(Click for video)

Speaker: Kyle Simpson - Getify Solution

No, don't stop using HTML5, just stop using the native HTML5 JavaScript API's directly. They're still in flux, there's still bugs that need to be shim'd, etc. Your code needs to use these features, but it needs to be more robust. What you need is to use in your apps is a thin facade (wrapper API) around those features, so that as things change, bugs come and go, etc, all that needs to change is the internals of your facade, and not your actual app code. H5API is a project to build these thin facade APIs for the various HTML5 native APIs. We'll examine why we need something like this, and how H5API will help us build more robust HTML5 apps.

"Keeping the Dream Alive"
(Click for Video)

Speaker: James Pearce - Facebook

The Web's place in history as a flexible & fluid way to store documents is well assured. But in a post-PC world, it's got work to do, and it's looking a little out of its depth. The Web's best hope for the future is if we think about it a little differently and admit what we must do to address its shortcomings.

"Workshop with Enyo"

Speaker: Art Dahms - Enyo

After Dave Freeman’s Enyo Deep Dive talk on Monday, join us on Tuesday to experience working with Enyo yourself. Art Dahm will be there to answer any of your questions about Enyo and we’ll go over some prepared code snippets in jsFiddle (jsfiddle.net) that demonstrate some of Enyo’s core concepts that you can play around with and modify.

"Using Node.js to Build Great Streaming Services" :: Click here for Slides

Speaker: Tom Hughes-Croucher - Jetpacks for Dinosaurs

Much of what we build these days is about shuffling bits of information around. Learn how to use Node.js to become an expert at bit-shuffling. This session will cover the basics of why Node is great at working with streams, how to make your application more awesome with stream and where Node.js stream support is heading in the future.

""Develop HTML5 Windows 8 apps with HTML5, CSS3, & JavaScript:
What Web Developers Need to Know"
(Click for video)

Speaker: Doris Chen - Microsoft

This session will start with the introduction on new HTML5 and CSS3 features introduced in Internet Explorer 10. Internet Explorer 10 is the browser for rendering modern (HTML5/CSS3) standards-compliant websites. It is also one of the foundations for Windows 8 app development.
You already have a Web app on the Internet and want to reach customers with a new, targeted experience on Windows 8. Come get practical guidance and best practices on how to reuse your Web assets. Come dive into the specifics of this exciting platform and see how you can use your Web skills to build deeply-integrated Windows apps.

  • You’ll discover how this mirrors or differs from traditional Web programming and how to harness the rich capabilities of Windows 8 through JavaScript and the Windows Runtime.
  • You'll learn techniques for turning your HTML5, CSS and JavaScript into a great Windows app including touch-enablement, adopting the Windows look and feel, and system integration.
This session will jump start you with everything you need to know to start building Windows 8 apps with the skills you already have.

"Pushing The Onion's Website into the Future" :: Click here for slides

Speaker: Michael Wnuk - The Onion

At the Onion, we're building a device agnostic (responsive) site that works great on every device, loads super fast, looks great on a retina screen, loads near instantly* & hardest of all satisfies our advertisers. I'll discuss the lessons we've learned along the way and talk about how building HTML5 based iOS apps changed how we think about the web.

"HTML5 Video Full Throttle"

Speaker: Andrew Hager

HTML5 continues to dominate non-native rich media experiences in mobile and is increasing used for rich desktop media experiences. We face major engineering challenges in delivering consistent media experiences across wild variations in device capabilities, bandwidth constraints and platform limitations. In this talk we explore the tools and techniques used to deliver an optimal experience across a wide range of integration contexts and dynamic feature sets. We open the tool box of iframe sandboxing, cdn backed resource loading management, modular player plugins, device feature mapping and adaptive layout techniques. We show how we pull them all together to build a scalable HTML5 video platform; enabling us to deliver a full set of HTML5 player services with page rendering time comparable to a raw video tag.

"Maintainable Workflow with Sass" :: Click here for slides

Speaker: Jina Bolton - Do

Whether you're working alone or on a large team, having a solid CSS architecture is incredibly rewarding and essential for good development, design, and business. As continuous integration gains traction in today's web application development workflows, living style guides and CSS preprocessors like Sass help keep everything in check. Learn how Sass can enable you to create smarter, forward-thinking maintainable web interfaces.

"Web Application Architecture – Lessons Learned from Adobe Brackets"

Speaker: Brian Rinaldi - Adobe

Using the architecture of Brackets, the open source code editor created by Adobe, as a guide, this session will examine some best practices for architecting well designed, modern applications using HTML, CSS, and JavaScript. We’ll examine how this large-scale, open-source project built with web technologies was architected to handle contributions from a significant number of developers and what kind of lessons you can apply to your own development projects. In addition, you’ll learn how you can contribute to the development of this code editor for web technologies.

"I'm Sorry, but HTML5 Mobile Games DO Work!" :: Click here for Slides

Speaker: Joe Monastiero - Ludei

There's a lot of controversy revolving around HTML5 and whether or not it is ready for prime time, especially around mobile gaming. In this session, we'll recap what the issues are, who's pointing fingers and what the real story is.

"Building an HTML5 Video Player" :: Click here for slides

Speaker: Steve Heffernan - Video.js

This session demonstrates how to develop from scratch your own interface for HTML5 video, including embedding a video using HTML5, building custom controls using the JavaScriptAPI, fallback strategies for older browsers and devices, and fixing known playback bugs on the iPhone and Android.

"WebSocket Applications and Vision for the Future" - Panel Discussion

Panelists: Ilya Grigorik - Google, Matt DeBergalis - Meteor, Peter Moskovits - Kaazing
Panel Chair: Frank Greco - Kaazing

We rarely talk about the actual mechanics of how we develop webapps, but in this session, we'll get into some new techniques people use to improve their experience. Iterating faster, avoiding bugs through tools, and improved automated testing are great ideas, but in this talk we'll see how to really incorporate them into a functional and realistic developer workflow.

"#{$N} Things You Didn't Know Sass & Compass Could Do"

Speaker: Chris Eppstein - Caring.com

Sure you know the basics, maybe you've read the docs, you think you can do this Sass thing. But what you may not know may surprise you and save you boatloads of time. Chris Eppstein is the creator of Compass and has helped design and implement the Sass language since 2009. He will show you some of his favorite and often lesser-known features of Sass and Compass that will help you understand this language and framework more intuitively. He'll also show you some of the awesome new features coming in Sass 3.2 and Compass 0.13.

"Adventures in Single Page Web Apps"
(Click for video)

Speaker: Mikito Takada - Zendesk

Developers writing single page web application these days apply a set of familiar patterns and techniques, including MVC, namespaced modules and templating libraries. However, we've hit some limitations and challenges with these techniques.
In this talk, I'll try to provide some food for thought by taking a fresh look at single page applications and arguing *against* some of the current best practices. Things that work with simple Javascript apps don't necessarily work that well in single page applications.

"U.S. Debut of Realtime’s xRTML … HTML5’s New Best Friend" :: Click here for Slides

Speaker: Sergio Costa - Realtime

Realtime, recently launched in the US, has over 2,000 clients using its Messaging System and Framework and Sergio Costa, the company’s Developer Evangelist has been involved with most. Join Sergio as he introduces for the first time in the US, the Realtime tools (http://www.realtime.co/users/xrtml) that allow developers to quickly start building their real-time, cross-platform, cross-browser applications and websites using a one-to-one/one-to-many/many-to-many pub/sub-messaging system. The Framework handles all the dirty work for developers allowing them to focus on building applications. HTML5's best friend will help you build the next-generation web and mobile applications today.

"Hands-On Workshop - Developing with Realtime’s xRTML"

Speaker: Realtime.co

Working with Realtime's Developer Evangelist, Sérgio Costa, you’ll leave with the solid foundation needed to begin adding real-time apps to your website and mobile projects regardless of platform or browser you use. During the two-hour workshop, you'll learn about Realtime’s Framework scalability, get an in-depth knowledge of the security layer, understand how xRTML can further speed up the development process and everything else you need to know to start building your prototypes and full-fledged applications immediately. Bring your laptop with a web server (IIS, Apache or XAMPP works great) and your favorite HTML editor installed, so you can get your hands on the future of the web today.

"1 Hour Mentor Session w/ Zendesk Engineering Team - Fundamentals of Ember.js"

Speaker: Zendesk Engineering Team

Learn how to build a simple web app using Ember.js from the engineering team at Zendesk. For the first half, we'll walk through a tutorial showing you how get started with Ember.js. The second half, attendees can ask our experts anything related to Ember.js.

"Monads, Monoids, and Make Believe" :: Click here for slides

Speaker: Brian Lonsdorf - loop/recur

Come with me on a magical journey through functional programming's most useful typeclasses. We'll examine the mighty functor, gawk at those silly applicatives, watch a group of monoids combine, and observe how some monads behave when placed in a new habitat. I'll be writing in javascript and speaking in english. Bring 3D glasses.

"Touch Forward: Developing Awesome Cross-Browser Touch Interactions" :: Click here for slides

Speaker: Bill Fisher - Hot Studio

Bill Fisher will discuss cross-browser touch interactions on mobile phones, tablets and laptops. He will explain why you should enhance your applications with touch events, how to provide consistent experiences across current and emerging platforms, and where touch will be going in the future. He will also show how hardware-accelerated CSS3 animations are essential to providing the best user experience.

"SPDY and the Road Towards HTTP 2.0" :: Click here for Slides

Speaker: Ilya Grigorik - Google

The HTTP working group is working at full speed on HTTP 2.0 and SPDY is the foundation of the many upcoming improvements. Curious to know what lies ahead for HTTP 2.0, how it will affect and improve performance of our web applications, what problems it solves, and what you need to do to prepare and make the best use of these upcoming changes? Then this is the session for you.

"Solving Performance for 2D and 3D Web Apps - Finally" :: Click here for Slides
(Click for video)

Speaker: Steve Newcomb & Mark Lu - famo.us

There has been much debate about HTML5 mobile apps and performance. This Summer, Facebook announced it’s pulling out of HTML5 and moving back to native because of performance issues. What does this mean for the future of Web Apps? After nearly 2 years of focused research on the underlying causes of web app performance problems, Steve Newcomb, shares his team’s key findings in a frank, pragmatic and informative discussion designed to help developers get their arms around the key issues. In addition, Steve will be sharing a demo that breaths new life into what web app performance can look like if these key issues are addressed.

"Accelerating HTML5 Adoption with Porting Tools"

Speaker: Pablo Garralda - Intel

This is a technology demo of a tool that helps developers with porting iOS applications into HTML5 apps (on Microsoft Windows* 8). During the session, I will demo a proof of concept for the technology, and offer mentoring on app porting.

"What you Could have Built with HTML This Whole Time"
Click here for Slides :: Click here for Video

Speaker: Stephen Blum - PubNub

What you've never realized is the amazing power you hold in your hands when you wield the HTML5 toolset. Did you know that iTunes is written in HTML? You have full control of every pixel on the web, yet you've neglected to take the advantage of these opportunities. And yet more amazing, this ability was available to you for years before HTML5. You should join me, Stephen Blum, CTO and Founder of PubNub Inc. as I tell you about my experience creating the #1 app in Australia, Yahoo! Fango, and how you've missed the opportunity to create cross platform HTML, CSS and JavaScript applications that work everywhere. I will give you tips on how to accomplish a successful real-time HTML application product by telling you what to avoid in the HTML toolset while maintaining full pixel-level control over the design and workflow. We will discuss data transport techniques that blanket HTML+ JavaScript frameworks; such as those available in PubNub Transport and JSONP.

"Enabling the Real-Time Web on Any Device, Anywhere"

The web is changing, users no longer want to just be social they want to interact and participate in real-time. They want to chat, vote, play and see results instantly. Delivering real-time web and mobile apps that work seamlessly across all devices, browsers and networks anywhere in the world is hard and can costs millions of dollars - just ask Skype, WebEx or Facebook. This session will use a live app built with HTML5, JavaScript and PubNub to demonstrate how to overcome the real-time web challenges!

"Introduction to Testacular"
Testacular :: GitHub

Speaker: Vojta Jína - Google

Testing is not optional when one is building a JavaScript application that must work across many browsers and devices. However executing tests in all of these various environments is hard. Testacular turns this typically pain-staking task into a piece of cake. It allows you to execute JavaScript tests in real browsers or devices such as your phone or tablet directly from the comfort of your terminal or your favorite IDE.

"Deep Dive Into Backbone.js Internals + Underscore.js." :: Click here for slides

Speaker: Mauvis Ledford - Pathbrite Inc.

Never has so much been made out of so little. In this session we take a deep dive into all 800 lines of the Backbone.js framework—the platform used to power some of the most popular sites and mobile sites today. We analyze line-by-line the code that forms the building blocks of the framework and how they interact with underscore.js, Backbone's helper library, throwing in some tips and tricks on the way. Suitable for new and advanced Backbone users.

"HTML5 Games Reality Check" :: Click here for slides

Speaker: Jiri Kupiainen - Rocket Pack

A hype-free look at HTML5 as a game development platform today. Common pitfalls and ways to avoid them, real-world adoption numbers and estimates based on long-term trends, silly anecdotes from over 2 years of only building games with HTML5. If you're considering using HTML5 for your next project, this is the session to go to.

"Using Client Side Storage Today" :: Click here for Slides

Speaker: Parashuram Narasimhan - SneeqPeeq

"SASS, Compass & the new Webdev tools" :: Click here for Slides

Speaker: Dirk Ginader - Yahoo!

Developing and maintaining CSS projects can become a tedious task full of repetition. Especially taking care of all the vendor prefixes necessary to make your shiny gradients, drop shadows and rounded corners work in all the many Browsers out there seems so hard that many developers simply give up and go all -webkit-. As it turns out there's absolutely no reason for that. CSS preprocessors like SASS with Compass take the pain out of CSS development and bring the fun back in! Additionally tools like Livereload or CodeKit speed up development even further! I can happily say that my web development work-flow has never been more fun than in the last year. Let me show you why :-)

"An Introduction to Parallel Programming in JavaScript with River Trail"

Speaker: Stephan Herhut - Intel Labs

Parallel hardware is ubiquitous yet web developers are missing out as JavaScript so far has been stuck in the sequential past. With River Trail we are bringing parallel programming to JavaScript and enable web developers to exploit the additional performance promised by parallel hardware.
In this session, we will discuss the need for parallel programming on the web, explore the design space and, most importantly, give an introduction to parallel programming with River Trail.

"NodeJS + Cocktails: Scaling Yahoo!" :: Click here for Slides

Speaker: Diego Ferreiro - Yahoo!

In this talk we will see how and why we migrate Yahoo!'s web stack to NodeJS and Cocktails platform:

We will do a performance analysis between PHP and NodeJS on Yahoo's infrastructure.

We will see how we can leverage the power of Cocktails to improve and automate all engineering processes at large scale: Writing apps for multiple devices using Mojito (MVC framework on top of NodeJS), continuous integration (docs, jslint, unit tests), package sharing using npm, and deploying to the cloud.

"WebGL for Game Development" :: Click here for Slides

Speaker: Tony Parisi

This workshop with Web3D pioneer and 3D expert Tony Parisi will introduce WebGL development concepts in a hands-on session. Attendees will learn how to build a full, working WebGL application by creating a simple online game. Topics covered include graphics, animation, interactivity, 2D/3D integration, production tools and deployment. WebGL is the new standard for 3D rendering on the web. With WebGL, developers can create games, animations, data visualizations, product displays and more using only Javascript, a web browser and a standard web technology stack.

"Seamless iframes: The Future, Today!" :: Click here for slides
(Click for video)

Speaker: Ben Vinegar - Disqus

In this talk, I give attendees their first glimpse at HTML5's "seamless" iframe attribute. This feature lets iframes inherit certain attributes from their containing document, and promises to be a powerful tool in the future of third-party development. Since seamless only has limited browser support today (only Chrome version 22 implements it), I demonstrate a number of practical techniques for replicating the seamless feature set for older "modern" browsers.

allowfullscreen>

"It's Alive! Live Coding HTML5 Like a Mad Scientist"
Tributary :: Click here for Slides

Speaker: Ian Johnson - Mainstream Collective

Gentleman, behold! Ladies too. We have many powerful web standards for developing graphics on the web, SVG, Canvas and WebGL. We also have many libraries for making them easier to use such as d3.js, raphael.js, processing.js and three.js. Yet we still write the code that powers rich graphical experiences as if we are developing for the command line! Well, I don't, because I'm working on an open source project called Tributary which lets you watch your graphics code come to life in the browser.

Tributary is based on the techniques introduced in Bret Victor's Inventing on Principle talk (if you haven't seen it, go watch it! https://vimeo.com/36579366) and implements them with a combination of various open source javascript libraries. In this talk I'll show you how I code like a mad scientist rather than an engineer and bring graphics to life faster than you can say "hello world!". My hope is that after the talk you will be inspired to zap your own graphics to life and have the tools to do so, no matter what library or web standard you are working in!

"The Future Is Responsive" :: Click here for Slides

Speaker: Matt Kelly - ZURB & HotChalk Inc.

The future is here, and the future is responsive. With the explosion of devices that can access the Web, we have to adjust how we design our websites and our digital products. In this talk, we delve into the evolution of responsive design - where we've been and how we got here. We examine the progress we've made so far in creating the tools and methods that allow us to design responsively. We also take a peek into where responsive design is going in the coming months and years. The best way to meet this bold future and create better online products is to prototype and build faster. We'll talk about how you can do just that and the tools within your reach.

"Node Streams: The What and Why" :: Click here for slides

Speaker: Marco Rogers - Yammer

The Stream pattern is one of the most important concepts in node. It's used throughout the system to represent streaming asynchronous data. I'll explain what this pattern is and how library modules and applications should take advantage of it.

"The Fox and the Stork: Serving Code for other People's Sites"

Speaker: Sylvain Carle - Twitter

There's a whole team at Twitter working on HTML code that is NOT for Twitter.com, we call it Twitter for Websites. We will present a few of the challenges we had to overcome in shipping embeddable timelines that should work anywhere in realtime and scale from the desktop down to not-so-smart phones used worldwide. From decisions on where to render what part of the code code (clientside or server-side?) to surviving iframe hell, from templating to busting CDN caching, we have seen a few hairy issues and will share some of the insights we have been able to gather (and scars too).

"Ads after content! Deliver Ads Asynchronously"
(Click for Video)

Speaker: Derek Brans - Krux

99% of ads rely on synchronous remote scripts and document.write to insert themselves into the DOM as the HTML is parsed by the browser. This practice bloats page load times and delays the user seeing any content. In an effort to mitigate the effect of ads on user experience, document.write emulators allow you to deliver your ads asynchronously.

"Building the Web of Tomorrow: A Case Study" :: Click here for Slides
(Click for video)

Speaker: Bear Travis - Adobe

Web developers are aware of when new features are available, but what is not obvious is how these features become specifications or get into browsers to begin with. Through the prism of CSS Regions and Exclusions, we shall explore how features are proposed, adopted, and ultimately implemented across browsers.

"Edge Animate: Animation & Interactivity Using Web Standards" :: Click here for slides

Speaker: Paul Trani - Adobe

Creating compelling content using web standards usually means dealing with lines of CSS, HTML and JavaScript to attain desired results. Edge Animate simplifies the creation of dynamic animation and interactivity, allowing you to create visually and intuitively. In this session Adobe Web Evangelist Paul Trani will take you through the creation of dynamic, animated and interactive content quickly. You will leave feeling empowered and ready to apply what you've learned to any web content.

"Say Goodbye to Your Localhost" :: Click here for Slides

Speaker: David Yasar - Koding

We will demonstrate how you can build an application that uses 10s of servers without you caring about setting up servers, scaling, load-balancing or any other infrastructure management problem, just using your browsers javascript and relying on services that's built by the community. You can use the same infrastructure when you're ready to deploy to Amazon, Heroku or any other cloud provider. Yes, we will show you how the applications of the future will be built, just using your browser, together with your team.

"Put some Backbone.js in your Apps"
(Click for video)

Speaker: Sidney Maestre - StackMob

When developing HTML5 application, your code is bound to get more complex over time. Employing design patterns like MVC are important for separating concerns and creating more modular and reusable code. Backbone.js is one of the more popular JavaScript frameworks to help you do this. Unfortunately, like most open source, the documentation is a work in progress. Don't worry, I'll walk you through a series of examples that build on each other as I show how the moving parts work together. As a bonus, we'll add the StackMob JavaScript SDK to persist you data in the cloud in minutes.

"Mobile Strategies with HTML5" :: Click here for Slides

Speaker: Tomomi Imura - Nokia

Building a mobile web no longer means dumbing down an existing desktop website. With ever-evolving HTML5 and smartphone capabilities, now you can create amazing web apps running on mobile browsers. In my talk, I will cover the adaptive and responsive design approach to support multiple form-factors from desktop to mobile phones, also the mobile-specific approach with HTML5 APIs, including device APIs that make communication between a browser and hardware possible, and enable web to have "native" like experiences.

"Using Multithreading to Increase Performance of Real Time High Performance Web Applications"
Click here for Slides

Speaker: Corey Clark, PhD - DeVry University

This presentation will focus on using hardware acceleration and multithreading to increase the performance of your Real Time High Performance HTML5 Applications. Specifically various web worker architectures will be discussed as well as implementing a 2-Tier Thread Management system that allows for generating child process outside of the main thread thereby increasing performance of handling/merging data. New additions to the Web Worker API, Transferrable Objects, will also be discussed and demonstrated to show how utilizing this can affect overall performance. Multiple examples of multithreading techniques and performance will be shown as well as final demo of a 3D Game (Omega Resistance) using WebGL, WebSockets and WebWorkers with Multithreaded Physics and Artificial Intelligence.

"Content vs. Configuration: HTML5 in a CMS" :: Click here for Slides

Speaker: Jen Lampton - Jeneration Web Development

There are many different kinds of websites out there, and each one may need to use HTML5 in slightly different ways. When designing a Content Management System that can support any type of website, where can you assume which tags should be used, and where do you need to build a user-interface for selecting specific tags?

Come hear about some of the challenges encountered when updating Drupal 8 to use HTML5, and see some of today's solutions for making the markup for this CMS a little smarter. Since we're currently designing a new user-interface for the next release of this popular CMS, I'd also like your feedback on how much configuration is too much, and where it's essential for the user interface to provide different choices.

"Language Learning Innovation With the Js Web Stack" :: Click here for Slides

Speaker: Adam Christian - Sauce Labs

This talk is about my process of learning a (spoken) language from scratch, and then building a web application (using nodejs and html5) to solidify those techniques into a media rich immersion experience. The butter is actually the challenges I faced turning concepts and receptive methods into usable web application features.

"UI, Me, & Data" :: Click here for Slides

Speaker: Harrison Shoff - Airbnb

Why you need a frontend engineer on your data infrastructure team.

"A Deeper Look at the Enyo JavaScript Framework"

Speaker: Dave Freeman - Palm

In this session, we will explore the ideas behind the Enyo framework, a new JavaScript framework that takes the ideas of encapsulation and reusable code objects into the web application and mobile worlds. We will also explore the ecosystem of new libraries build on the Enyo core, especially the Onyx user-interface system which was designed to be beautiful and usable across multiple platforms.

"Kicking Ass Continuously"

Speaker: Adron Hall - Tier 3

In this presentation I cover the idea, practices and tools used to implement a continuous delivery effort in the development of software. I start off by introducing the topic, but am sure to provide a “checks and balances” approach to what we as developers can’t forget when moving forward with continuous delivery. Then I leap into the tooling that makes continuous delivery workable and how to set it up with various languages all while providing examples with existing continuous delivery setups.

"Markup Driven Interaction & Lu" :: Click here for slides

Speaker: Robert Martone

Over the past year web development at LinkedIn has undergone great changes. In this session we’ll discuss the open source javascript library developers from LinkedIn have created as an answer to that changing landscape. Spoilers: It allows HTML authors to create rich interactivity purely through markup.

"Tactical HTML & CSS" :: Click here for Slides
(Click for video)

Speaker: Shay Howe - Groupon

There are a million ways to write HTML and CSS, and everyone has their own, but is there a best way? Code needs to be written in an organized manner, well structured, and performance driven. Working with code should be a joyful experience, not an absolute terror. Using principles from OOCSS and SMACSS methodologies learn how to write tactical HTML and CSS, and build maintainable websites.

"Using Open-Source Tools and Libraries to Build Living, Breathing Systems in Your Browser"
(Click for Video) :: Click here for Slides

Speaker: Julie Ann Horvath - GitHub

I've seen the future, and it's not in that layered .psd your designer just handed you. As designers and developers, we build things. And we do it often. But we don't build websites or apps. We build systems. Systems that evolve and grow with a company, its users, and both of their needs. The way we design and build these systems should reflect the living, breathing things we want to create and additionally, leave room for them to grow. The question is how do we make this happen with static assets?

The answer is we set them all on fire. And start in the future. We start in the browser.

Learn how to use GitHub and other open-source tools and libraries to build living, breathing systems in your browser.

"Finding Closure from jQuery: Steps to Begin Closure Tools"
Click here for Slides :: Click here for Demo

Speaker: Rhys Brett-Bowen - Catch.com

This talk will take you through some of the fundamentals of using Closure Tools and how to easily get started. Closure Tools is a set of tools open sourced by Google in 2009. It has been used to build large applications and was designed for large teams working together. Now you can use it for smaller projects using your existing jQuery and MV* knowledge. Setup is made easy using Plovr, jQuery like interface to DOM functions through "the G" and MV* operations through PlastronJS - and it all compiles in advanced mode giving you more code for less bytes down the wire.

"Identity Crisis: Why GUID is not Trustworthy"

Speaker: Eric Elliott - FightCaps

It’s 7:15 AM, and a fresh retail startup is about to get featured on Good Morning America. The ops team is ready. 25 extra web servers have been fired up to handle the extra volume. The feature starts to air, and the traffic pours in. 2,000 simultaneous connections. then 3,000. Five minutes later there are 6,000 simultaneous connections, and thousands of stuffed shopping carts. The only problem is, items are suddenly being added to the wrong shopping carts. The support staff gets flooded with calls and complaints.

What just happened? The extra web servers were generating hundreds of pseudo-random GUID per millisecond to identify each new shopping cart, and there wasn’t enough entropy across the different hosts to protect against id collisions. The team ended up with duplicate shopping cart identifiers, so when the app had to retrieve a shopping cart by ID, it served up the wrong one.

"JavaScript Libraries: Choose to Reuse!" :: Click here for Slides

Speaker: Jeremy Kahn - YouTube

No problem should have to be solved twice. In the battle for code reuse, libraries are your secret weapon. But how do you build a JavaScript library? What patterns should you use to organize library code that grows over time? This talk will focus on patterns that were developed in practice while while writing actual open source JavaScript libraries. We'll go over testing, documentation, deployment optimization and more.

"HTML5 Drag and Drop Anything" :: Click here for Slides & Demo

Speaker: Sean Hess - i.TV

This session will demonstrate how to take advantage of HTML5's ability to drag and drop any element on a page, or even between web pages and native applications. While there are many jQuery plugins that provide specific drag and drop functionality, we will provide simple Javascript examples that will allow you to create custom drag and drop, from dragging an image from the desktop to a web page or divs into containers.

"From Links to API's: the Future Web of Applications" :: Click for Slides

Speaker: Brett Van Zuiden - Filepicker.io

The internet as we know it was built on top of the notion of links between static documents - with the rise of HTML5 and true Applications on the internet, there's a need for a whole new set of protocols and semantics to create the next Web of applications. We'll take a look at what's coming down the pipe and what still needs to happen to combat walled gardens and create a platform for interoperability.

"HTML5: The Pieces Begin to Coalesce"

Speaker: Bill Pearson

HTML5 is a hot buzzword – any more popular and we might start to see “HTML5 Cola” and a cereal with the tag line “HTML5: Breakfast of Coders!” But, alas, as with most new and emerging technologies, some aspects of the ecosystem are still coming together. Intel, as a platform-neutral supporter of HTML5, sees great promise in the Cross-Platform development approach. And, to help move past the early exuberance state into the “I wrote an HTML5 app that works” state, we are starting to add pieces to the puzzle on the table to make it easier for developers to both start learning about HTML5 and get going with real HTML5 applications. We are also working with other industry leaders to further support developers in this nascent space.

"Mobile Development Options"

Speaker: Patrik Patel - TripLingo

Mobile development is hot - and there's a bevy of options for developing mobile apps. If you're looking at cross-platform solutions, there's a multitude of options to choose from. In this session we'll explore the three basic categories for developing mobile apps: native, cross-platform-to-native, and mobile web. We'll discuss the sweet spot for each of these three approaches and the benefits and drawbacks of each. Technologies discussed include Android, iOS, HTML5/CSS3, Phonegap, Titanium, and jQuery Mobile.

"Those Who Control The Past Control The Future - The HTML5 History API"
Click here for Slides

Speaker: Sean Adkinson - Jama Software

So you finally created your fancy AJAX web application, but now one wrong mouse button click, or a misplaced Backspace key sends users back to google and away from their location in your site. Well no more! In this talk we'll go through how to utilize the power of the HTML5 History API to control the browser Back and Forward buttons, as well as save state on your site for when a user Backs up back to you. We'll look at example applications, how-tos, strategies, and how you can start using it today.

"Ember.js"

Speaker: Nathan Rapheld - Zendesk

Interested in building a single-page web app? Want to employ a framework that will help keep code organized and manage the DOM automatically? Come check out Ember. We'll explore the basics of Ember through the construction of a simple web app including handlebars templates, MVC framework, and routing.

"Single Page Web Applications: JavaScript End to End" :: Click here for Slides

Speaker: Josh Powell

The next big thing on the web is developing sites and web applications as single page web applications.

Web 1.0: Sites request pages from the server one at a time. Each interaction with a page means another round-trip. Slow, awkward, and easy.

Web 2.0: AJAX . Individual elements change without updating the whole page. Great idea, but a lot more work on both the server and the client.

Enter the modern single page web application (SPA). With the near universal availability of capable browsers and powerful hardware, you can push most of the web application to the browser; including HTML rendering, data, and business logic. The only time a client needs to communicate with the server is to authenticate or synchronize data. This means users get a fluid, comfortable experience whether they're surfing at their desk or using a phone app on a sketch 3G connection.

In this talk you'll learn to build modern browser-based apps that take advantage of stronger client platforms and more-predictable bandwidth. You'll learn the SPA design approach, and then start exploring new techniques like structured JavaScript and responsive design. You'll learn to capitalize on trends like server-side JavaScript and NoSQL data stores, as well as new frameworks that make JavaScript more manageable and testable as a first-class language.

"Single Page Web Applications: JavaScript End-to-End (The Hard Stuff)"
Click here for Monday Slides :: Click here for Tuesday Slides

Speaker: Mike Mikowski & Josh Powell

The presentation covers concepts and JavaScript techniques you need to know to develop Single Page Web Apps that are scaleable, modular, maintainable, effective, and fast.

"That's Web? Extreme Optimization for the Mobile Web!"

Speaker: Glan Thomas & Karlene Nguyen

Faster! On the mobile web, faster is better. While the constraints of mobile devices and networks are more constraining relative to the desktop, the tech at our disposal is generally higher tech, enabling us to make the most of limited resources. Come learn the tricks (as well as their limits!) the pros use to make native-like interfaces using HTML5.

"Browserify - Use Node Modules in the Browser"

Speaker: James Halliday - SubStack

npm has a crazy amount of value being created every day. npm modules are usually written just for node but many of these packages work fine in the browser too with a few tricks that browserify offers. I will talk about how we can harvest value from npm to export it to browser land and will reveal some new tools to make this approach even more feasible and useful.

"Dart Today and Beyond"
(Click for video) :: Click here for slides

Speaker: Gilad Bracha - Google

Google's Dart programming language is intended to provide a civilized web programming experience, balancing dynamism with software engineering support and performance. We'll review the essentials of Dart and update you on where we plan to take it down the road, focusing on mixins, reflection, and asynchrony.

"Automate All The Things: Haml, Sass, CoffeeScript" :: Click here for Slides

Speaker: Christopher Webb - Groupon

Learn how to write beautiful markup with Haml, faster CSS with Sass, and better JavaScript with CoffeeScript. We'll walk through the benefits of these compilers and learn how you can incorporate them in your project. Intended for anyone interested in more expedient tools.

"Hampton's 6 Rules of Mobile Design"

Speaker: Hampton Catlin - Moovweb

What makes a good mobile interface? What makes a bad one? Mobile design is drastically different than desktop design. I'll take you through the design process I used for m.wikipedia.org and give you Hampton's 6 Rules of Mobile Design. Also, and most importantly, the mobile development process can give you huge insights into your other interfaces.

"HTML5 Video Full Throttle" :: Click here for Slides

Speaker: Michael Dale - Kaltura

HTML5 continues to dominate non-native rich media experiences in mobile and is increasing used for rich desktop media experiences. We face major engineering challenges in delivering consistent media experiences across wild variations in device capabilities, bandwidth constraints and platform limitations. In this talk we explore the tools and techniques used to deliver an optimal experience across a wide range of integration contexts and dynamic feature sets. We open the tool box of iframe sandboxing, cdn backed resource loading management, modular player plugins, device feature mapping and adaptive layout techniques. We show how we pull them all together to build a scalable HTML5 video platform; enabling us to deliver a full set of HTML5 player services with page rendering time comparable to a raw video tag.

"HTML5: The Pieces Start to Coalesce" :: Click here for Slides

Speaker: Paul Fischer - Fischer

HTML5 continues to dominate non-native rich media experiences in mobile and is increasing used for rich desktop media experiences. We face major engineering challenges in delivering consistent media experiences across wild variations in device capabilities, bandwidth constraints and platform limitations. In this talk we explore the tools and techniques used to deliver an optimal experience across a wide range of integration contexts and dynamic feature sets. We open the tool box of iframe sandboxing, cdn backed resource loading management, modular player plugins, device feature mapping and adaptive layout techniques. We show how we pull them all together to build a scalable HTML5 video platform; enabling us to deliver a full set of HTML5 player services with page rendering time comparable to a raw video tag.

Lightning Talks

"Code Clones and Pixel Plagiarism - Open source and the Start-up"

Speaker: Chance Roth

Modern startups depend on open source technologies to get products out the door. Nobody wants to reinvent the wheel every time a new feature needs to be added. When a start-up integrates this code, how much disclosure and credit should ethically (not only legally) go the original coders? We'll explore this area and talk about "parasitic" vs. "symbiotic" use of open source.

"Scalable Frontend Architecture using SaSS" :: Click here for Slides & Demo

Speaker: Aaron Reisman - SeatMe

SaSS is a CSS compiler that makes creating and maintaining loads of CSS easier. But writing lots of SaSS comes with its own set of challenges too - this talk will cover a series of tricks, approaches and lessons learned. http://sass-lang.com/

"A Coder's Playground: Modular Javascript Design Patterns"

Speaker: Dan Lynch

Modular patterns as a recipe to build a scalable front-end infrastructure on top of a RESTful API, keeping layouts and views decoupled and the focus on your data.

"Control your Browser from your Text Editor with Xiki"

Speaker: Craig Muth

Use wiki-like syntaxes in your text editor to make your browser do various things. Demos will include running javascript, applying css, viewing and appending html snippets, simulating button clicks, browsing and modifying the dom and creating bootstrap layouts in a few lines of code. Add these lightweight, incremental techniques to your web dev repertoire. Xiki is open source.

"Starting with WebSockets: A Workshop" :: Click here for Slides & Demo

Speaker: Jack Lawson - Airbnb

WebSockets have entered the scene to allow efficient real-time client-server communication. We'll build a simple chat app in Node with Socket.IO, and expand on features as time allows in an interactive workshop.

"How Mobile/HTML5 can help your backend and frontend performance" :: Click here for slides

Speaker: Kiran Prasand - LinkedIn

"Nuby-Express: Building Industrial Scale Rad With Node and Express"

Speaker: David Edelhart - Personal Capital

nuby-express is designed to enhance the development experience for producing large scale applications while minimizing the diseconomies of scale that can be the consequence of functional style programming. If you want to produce large systems with self contained resources, or are looking for a way to exploit file based configuration the way MVC apps have been doing in systems like Rails and Zend Framework, nuby-express is for you.

"Node.js for Embedded Systems" :: Click here for Slides

Speaker: David Kordsmeier - Razoortooth Communications

David will give a brief overview of options for bringing up Node.js on ARM-based embedded platforms (armv5, armv5, and armv7) for both Linux (ArchLinux ARM, Debian, OE) and Android-based handsets. David will cover the rationale for building embedded JS apps and Web Services with Node.js, discuss build/install options, review toolchains, and present several target devices to use for your own projects. David will also discuss a real product he is working on using Node.js on ARM.

"Developing A Web-Accessible Widget with HTML5’s ARIA" :: Click here for Slides

Speaker: Dennis Lembree - PayPal

This presentation gives a brief introduction to HTML5’s ARIA (Accessible Rich Internet Applications) and web accessibility, then goes into an overview of creating and testing an accessible dropdown menu button. Topics discussed include ARIA roles, progressive enhancement, screen readers, and keyboard accessibility.

"Cultivating Your Developer Community" :: Click here for Slides

Speaker: Diane Bisgeier - Mozilla

A successful open source project is one part code and all parts people. Come to learn some basic lessons from Mozilla's community, which allows it to play David to the Goliaths of Microsoft, Apple and Google.

"Touch me if you can!"

Speaker: Jeff Burtoft - Microsoft

From phones to tablets to desktops, touch is a standard interface for the web and for apps. This session will provide an in-depth technical review, code snippets and best practices of popular touch models, and an introduction to the latest Pointer approach proposed by Microsoft with IE10 and Windows 8 Apps.

"Rendering Plain HTML5 Using Node.js Javascript"

Speaker: Harald Rudell - All Good Apps

This lightning talk shows off an implementation of dual-side plain-html5 rendering in JavaScript.

1. JavaScript server side opens for dual-side rendering. Offering a browser-based Web service, there is a need to render html5 server-side for initial page display and Web crawlers. It is also desirable to modify and add to a page already displayed in the browser using page fragments. With dual side rendering, the very same code can accomplish these two tasks executing as JavaScript either server side or in the browser.

2. Since the 90's templating has been a popular way for html rendering. Templates extend html5 with non-markup directives. In many cases a separation between declarative html5 and imperative JavaScript is to prefer over templates. One alternative is to add data and styling to plain html5 providing such clean separation.

Webfiller and tagfinder are two open-source node.js npm modules providing an implementation for dual-side rendering of plain html5. Webfiller can be easily used with Express 2 and 3, and of course with any code intended to render html5. Rendering of plain html5 is a very clean way of rendering Web pages and fragments.

"First Time For Everything: Lessons Learned in JavaScript" :: Click here for Slides

Speaker: Ipsheeta Furtado - FTW Group

I'll go over some stumbling blocks (and tips!) in writing JavaScript applications involving Backbone.js. From a junior backend developer's perspective, JS can be a bit unwieldy, it took some time for me to be its friend. Helpful for someone exploring frontend development for the first time or who's being brought up to speed on an existing application.

"Accelerating Your Development with dotCloud"

Speaker: Gabriel Grant - dotCloud

dotCloud is the world's most advanced web application platform. For back-end-heavy apps, the platform handles configuration, deployment, scaling and other management tasks to let you focus on development. But with many rich web applications, the server-side code has become simply a data pipe, with most of the intelligence in the client. In these cases, dotCloud lets you eschew writing server-side code all-together, by giving your browser-based JavaScript direct access to powerful back-end services. With user authentication, data storage, client-to-client synchronization, and a variety of 3rd party APIs, dotCloud.js gives you everything you need to get your HTML5 app off the ground.

"Slaying the Beast: How to Stop Supporting Old Versions of Internet Explorer"

Speaker: Kent Brewster - Pinterest

In which we discuss the best ways to approach your boss about halting support for IE, and discover a very easy way to do it.

"Best Practices for Building Tools That Output to the Web" :: Click here for slides

Speaker: Jonathan Deutsch - Tumult

Tumult Hype, lets designers express themselves creatively and balances being able to work across a wide range of browsers taking advantage of bleeding edge HTML5 and CSS3 features. I will dive into many of the challenges we've faced and solutions we've developed for:

  • Precise Timing and Flexibility in Animated Content
  • Dealing With Audio/Video Across Different Browsers and Devices (Including Discussion of the New Web Audio API)
  • Lack of Javascript Apis for Many Css Features
  • User Constraints Such As Size of Output Code and Editability
  • Unique and Puzzling Bugs Certain Browsers Face

"~/ on the Range"

Speaker: Kit Cambridge - Voxer

What do download accelerators, streaming video, and the HTML 5 <audio> element have in common? They all rely on range requests to transmit data efficiently. Range requests are HTTP's brilliantly simple answer to the question, "How do I download just a portion of a given file?" Although they're supported by most web frameworks, Node doesn't handle range requests out of the box. To that end, we'll be going down to the bare metal as we examine the relevant portions of the HTTP/1.1 spec, learn how to handle such requests correctly, and discuss why they're so useful.

"Best Practices for JS Testing" :: Click here for Slides

Speaker: Karl Mendes - EventBrite

Testing client-side JavaScript code presents a unique set of challenges. An abundance of tools are available to aid in testing, but it can be intimidating to figure out which are the most appropriate for your workflow. In order to understand which tools you need, first you have to figure out what problems you're trying to solve. In this talk, I'm going to present some of the problems we're trying to solve on the Eventbrite web team and talk about the technologies and techniques we use to solve them.

"Rendering Documents in the Browser using HTML5"

Speaker: Peter Lai - Crocodoc

Although documents once needed to be downloaded before being viewed, using new HTML5 standards, documents such as PDFs and PowerPoints can be now be displayed within your browser. Come discover what is possible using today's technology, as well as what will be possible once the newest standards are adopted.

"Using HTML5 and Amazon S3 to build Server Free Global Databases..."

Speaker: Tony Sukiennik

Find out how you can scale to Millions of Users without ever have to even think about a Server Farm much less scaling one out… A large set of Social Data problems can be solved without any Server Code… Isn’t that one of the things HTML5 is all about?

"Parallel This: OpenCL in js"

Speaker: Vance Feldman - FashionBuddah Studio

Go beyond simple worker processes with data parallelism in js using Intel's River Trail, an open source project that bridges the gap between js and OCL. Kernels, n-bodies and physics, oh my! See the intense demos and peek under the hood. Running an n-body 3-D flocking algorithm, we were able to achieve 8,000 n-bodies at 30-40 FPS in parallel compared to 1-2 FPS in vanilla javascript. N-bodies differ from normal particles in that every single body computes math against every other body, making the computational space 64 Million * each operation every frame. Also, learn how make a rigid body physics engine work in parallel and check out the indie game we made with the new open source engine. At runtime, your JS is compiled into OpenCL kernels that run native on the CPU, cross platform.

"Designing Javascript APIs" :: Click here for slides

Speaker: Liyan Chang - Filepicker.io

As web applications become more important, javascript libraries for APIs are going to be serious business. We'll be talking about some of the things we've learned along the way about javascript API design: performance, design patterns, and versioning.

Sponsors
We have branding, tables, and sessions available.
Contact us
for more info.

Realtime logo Yammer logo Enyo logo Zendesk logo Intel logo Filepicker logo dotCloud logo Teespring logo Yahoo! logo Mozilla logo Ludei logo Aquent & Vitamin-T logo Playphone logo Adobe logo Sugar Inc. logo Live Nation Labs logo Koding logo Crocodoc logo EventBrite logo PubNub logo R/GA logo Carnegie Mellon University San Francisco Manning logo Parisoma logo Careers 2.0 by Stack Overflow logo

Get the HTML5 Developer Conference App by:

Joyvent logo Get it on Google Play Get it on the App Store
Newsletter Signup
Signup for our newsletter today!