Sessions at JSConf EU 2010 with video

Your current filters are…

Saturday 25th September 2010

  • Using the Web to deliver the next wave of computing experiences

    by Ben Galbraith and Dion Almaer

    With the mobile world becoming more complex with platforms like Palm webOS, iOS, Android, Blackberry, and Symbian all with growing user bases, how can you build applications that target a wide variety of devices? In the past, the solution was J2ME (boo! ;), but now the common denominator for the smartphones of the world is WebKit, the HTML5-based engine that's powering today's smartphones.

    The Web has the opportunity to be the unifying platform, but really? How can you actually create a Web application that spans all of the platforms? There is an exciting new world brewing. A world that isn't about a "browser" but is about a global runtime. Learn how the computing game has changed, and how you can disrupt the industry using productive and fun technology.

    At 9:30am to 10:15am, Saturday 25th September

    Coverage video

  • HTML5 APIs - The New Frontier

    by Robert Nyman

    HTML5 is upon us and it offers a wide range of exciting possibilities when it comes to developing rich web interfaces. This talk will introduce you to a number of them and hopefully inspire you to create amazing things!

    At 10:15am to 11:00am, Saturday 25th September

  • Your library sucks, and why you should use it

    by Peter Higgins

    JavaScript Frameworks, Libraries, and Loaders -- there is no shortage of options. Each are wrong. Each have their own philosophies, usefulness, targets, and flaws. Continuing on the "It's Just JavaScript" theme we'll take a subjective look at the current offerings, what problems they intend to solve, and the reasons you should be using one of them anyway.

    Either roll your own or adopt a major library, but know the caveats and benefits therein. Embrace JavaScript as the elegant, loosely-typed language that it is and leverage it's ubiquity for the forces of good. This is not your average framework-comparison presentation; there will be no charts or performance tests. There will be, however, lively discussion of the current state of affairs in the JavaScript landscape, client and server side. And of course beer.

    At 10:15am to 11:00am, Saturday 25th September

  • Creating Interactive Data Visualizations for the Web

    by Nico Garcia Belmonte

    The Web has never been more open to everyone. Open Data services exist in almost every web application: from social networking apps to governmental pages and the news, all this data can be instantly accessed by exposed APIs. However, although most of this data is offered in a simple interchange format, its structures are quite complex, ranging from complex networks to time-based information, hierarchical data or heavy graphs. Displaying this data in a manner that enables the viewer to gain some insight can be challenging, especially if we aim at providing some interaction and doing it in a cross-browser/cross-device manner. The JavaScript InfoVis Toolkit creates interactive data visualizations for the Web. It's based solely on Web Standards, leveraging the power of native browser technologies to provide insights on complex data. In this talk you will learn about the JavaScript InfoVis Toolkit and how it can help you create advanced data visualizations for the Web.

    At 11:15am to 11:45am, Saturday 25th September

  • JavaScript + Web Standards II: The Quickening

    by Jenn Lukas

    Straight from the JSConf.us talent pool comes the wonderful Jenn Lukas. If you missed her talk in the US, go watch it on blip.tv (when it is released :) because here comes part 2:

    "Part one of this series spanned a broad overview of where JavaScript and Web Standards meet. I also explored examples of how to support progressive enhancement without sacrificing functionality or alienating users. The sequel to that talk will continue on that track and delve deeper into specific examples of JavaScript gone wrong! I will talk about common JavaScript enhanced mistakes that prevent users from enjoying the site experience and provide solutions on how to overcome those. Accessibility and usability should always be on the forefront of your code; this talk will cover take-away tips and general theory all while keeping those goals of best practices in mind."

    At 11:15am to 11:45am, Saturday 25th September

  • If it moves they will watch it

    by Stephan Seidt and Sebastian Deutsch

    Doing animations in the dark ages of the internet led you to technologies like Flash, or even Java Applets. Early arcane magicians tried bending the will of the DOM to create shiny stuff. It felt wrong.

    With HTML5 two technologies arrived to fix that: Say hi to Canvas and SVG!

    Our talk will cover basic usage and use cases of both technologies. By showing demos and real world examples we'll try to give you an understanding of when to choose what. Eventually we will show you libraries based on Canvas or SVG which should save you some time.

    At 11:45am to 12:15pm, Saturday 25th September

  • Techniques and Tools for Taming Tangled Twisted Trains of Thought

    by Tim Caswell

    One of the biggest challenges to the otherwise wonderful programming model of JavaScript is handling complex logic that involves lots of async functions and things that emit events. The inversion-of-inversion-of-inversion-of-control often needed is hard to read, write, and just plain understand.

    With pre-empetive multi-threading you delegate all control to the operating system and it handles concurrency for you. This comes at a great performance cost. However with JavaScript this simply isn't the model, there is one thread and finite snippets of code executed. There is nothing like being able to tell a computer exactly how much code to run and under what conditions and it just works under extreme load and/or concurrency.

    Be prepared to have your mind warped and molded as you are trained to not only accept this fact of life, but embrace it. You'll even be thinking in callbacks by the time this talk is over.

    At 11:45am to 12:15pm, Saturday 25th September

  • Aves Engine: High performance browser games

    by Paul Bakaus

    Graphically intensive and fast paced browser games written in pluginless JavaScript largely do not exist yet, for a very specific reason - Performance issues. Only recently, browser engines started to give us enough quirks and hacks to power full motion graphics, animation and real time interaction. With unprecedented depth, you'll learn why Canvas isn't the obvious choice, why you should write JavaScript in front- and backend, why HTML5 really is just a buzzword and how to leverage CSS hardware accelerated to create true platform independent games. Dive in to the world of JavaScript gaming!

    At 12:15pm to 12:45pm, Saturday 25th September

    Coverage video

  • Server-side JavaScript the untold story

    by Ulrike Mueller

    Did you know that London 2012 olympics shop runs on server-side JavaScript? Did you know that you can buy a Burton snowboard, a Puma sneaker or latest fashion from Nine West, all with the help from server-side JavaScript. All these web sites run on Demandware's commerce platform, where customization from business logic to pages is done with JavaScript. The talk gives an introduction how JavaScript is used on the Demandware platform and talks about the history, the decision made along the way, the learning and the DOs and DON'Ts with server-side JavaScript in a system, which is provided in a platform-as-a-service model.

    At 12:15pm to 12:45pm, Saturday 25th September

    Coverage video

  • CSS Lint for Massive Sites

    by Nicole Sullivan

    You like the idea of Object Oriented CSS, but your website has out-of-control CSS bloat. You know your performance is being impacted, but how do you move from organic CSS with no particular architecture to something lighter, more logical, and easier to maintain? How do we automate some of the heavy-lifting and stop wasting our own time?

    CSS is typically the most difficult layer to automate, but a more clearly defined CSS architecture makes lint much more powerful. In this session, Nicole will show you how she improved the CSS at Facebook and demo tools that you can use to test your own CSS.

    At 1:45pm to 2:30pm, Saturday 25th September

    Coverage video

  • node.js + CouchDB == Crazy Delicious

    by Mikeal

    For a variety of reasons CouchDB and node.js are a perfect fit. This talk will focus on node.js tools and utilities for accessing CouchDB, writing Couchapps and responding to _changes events.

    At 1:45pm to 2:15pm, Saturday 25th September

    Coverage video

  • Dirty NoSQL

    by Felix Geisendörfer

    Felix was supposed to speak at JSConf 2010 in Washington, DC, but then there was a volcano!

    What would happen if your database would have no network interface, no query abstractions and less than 250 lines of node.js code? You would end up with a very flexible in-memory database that is wonderfully suitable for dirty tasks such as rapid prototyping or performing millions of GET/SET operations per second.

    This talk is about rethinking current database technology and exploring situation-based CAP tradeoffs.

    At 2:15pm to 2:45pm, Saturday 25th September

  • PhoneGap: Love the Web and Lose the SDK

    by xnoɹǝʃ uɐıɹq

    Building native mobile applications across platforms with PhoneGap is super easy but developers are still required to install a dizzying array of SDKs for: iOS, Android, Blackberry, webOS, Symbian, MeeGo and Windows Phone. At JSConf.eu the PhoneGap team is releasing a special sneak peak at two new projects which aim to solve this problem. Unlike our previous sessions which have been information dense lightened up with pixel art and 4chan pictures this session will be more code intense: with pixel art and 4chan pictures!

    At 2:30pm to 3:15pm, Saturday 25th September

  • node.js in production use: tempalias.com

    by Philip Hofstetter

    In order to find out whether node.js is ready for production use and to scratch an itch, tempalias.com was started as a fun project.

    The service allows anybody to create a temporary email alias with a limited validity (either time- oder usage based). Mail sent to that alias within the validity constraints is then forwarded to any address of your choice.

    The talk gives a behind-the-scenes look on how the (free software) project was built and how its architecture works. On the process, we'll learn how to build a web application without dynamically generating a single byte of HTML on the server side, how SMTP works, and how to implement a bookmarklet without destroying arbitrary target pages. And we'll learn how to design a daemon in a way sure to bring your server down under load :-)

    The whole service reeks of JavaScript all over: Webserver? Javascript. SMTP-Server? Javascript. Web-Application? Javascript (and a bit of HTML).

    Aside of the technical issues, we'll also have a look at how to be a good citizen in the open source community by providing upstream with usable and easily applied patches. And as it's the case with all cool free services, we'll learn how to deal with Spammers.

    At 2:45pm to 3:15pm, Saturday 25th September

  • Lessons learnt pushing browsers to the limit

    by Ben Firshman

    Applications that were once on the desktop are now appearing on the Web, bringing a whole new set of performance challenges. After writing a console emulator in JavaScript, I have a few tips to share that might be applicable to your more sensible applications. I will talk about the differences in performance between modern browsers, tweaks that can have a huge impact on the speed of your code, and some fun hacks.

    At 3:30pm to 4:00pm, Saturday 25th September

  • Rapid Prototyping for Multiple Platforms with JavaScript

    by Joe McCann

    This topic will cover the concept of what rapid prototyping is, why it is important in the design and development process, and how you can not only leverage the power of JavaScript to rapidly develop proof of concepts and prototypes, but build them with multiple devices in mind.

    Digging Deeper
    The area of Research and Development (R&D) in software, web and user interface engineering is making quite a statement in many large and small scale organizations lately. With such a vast amount of data and web service APIs available to developers, coupled with a huge demand for multiple systems integrating seamlessly across several platforms and devices, it should come as no surprise that companies are creating "Labs" departments left and right to create the "next big thing."

    In order to cultivate innovative products and services, designers and developers need to research, ideate, and collaborate to develop creative approaches to current products or services, or even fill voids for users for products or services that have not been created. Developers need to quickly build out prototypes of these ideas in order to not only implement the ideas and prove the value of the concept, but to also provide new products and/or services for the business itself (and keep the R&D department alive!).

    Rapid prototyping is exactly as it sounds: creating a prototype of a concept or an idea in a very short amount of time. For years, such rapid prototyping and development of various simulations was heavily dominated by the Flash and Actionscript world. Now, with the speed and power of current JavaScript interpreters and its ubiquity across arguably the most used piece of software known to man (the web browser), JavaScript, in harmony with HTML and CSS is quickly becoming a go to resource for hashing out proofs of concepts.

    From My Presentation, You Will Learn...
    What rapid prototyping is and why it is important.
    Some actual results of rapid prototyping (case studies) with JavaScript.
    What tools you can use right now to build rapid prototypes (including Titanium Desktop, Phonegap, CouchDB, Node.js, JavaScript Templating, Webview for Android and plain HTML5 and CSS3).
    Tips on baking in ideas like performance, scalability, and maintenance into the prototypes and why you should avoid them.
    How to utilize a single codebase for usage across various devices and platforms including the desktop browser, the mobile browser and mobility products (e.g. Ipad).

    At 4:00pm to 4:30pm, Saturday 25th September

  • The jQuery Divide

    by Rebecca Murphey

    Project managers, bosses, and teams are picking jQuery as their go-to JavaScript library at an ever-increasing pace. Nobody wants to choose a loser, and as demonstrated by super-meaningful Google graphs and surveys that count my grandfather's blog alongside leading web sites, jQuery is leaving all the other libraries in the dust. Plus, it's easy! And there's a plugin for everything! And with all those sites using it, finding someone who can write thoughtful, maintainable code with it will be totally no big deal. Right?

    This talk is a call to arms. This is not just JavaScript -- it's JavaScript, damnit, a language worthy of respect and, *gasp*, knowledgeable developers. When well-meaning but uninformed deciders and developers see jQuery as the be-all-end-all answer, conflating a knowledge of jQuery with a knowledge of JavaScript, we all lose. As a community, we owe it to the language -- and ourselves -- to give those deciders and developers the context they need to make well-informed decisions. Maybe jQuery is the right answer; but first, they need to truly understand the question.

    At 4:30pm to 5:00pm, Saturday 25th September

  • Chakra: Building A New JavaScript Engine For Internet Explorer

    by Pete LePage

    nteractivity to a key driver for innovation on the web. A new generation of applications such as Gmail and Office Web Applications use thousands (or hundreds of thousands) of lines of JavaScript to deliver functionality and complexity similar to traditional desktop applications. With the advent of AJAX and script libraries, nearly every new site today makes use of JavaScript. These changes have also pushed browsers and script engines to evolve rapidly to keep up with user and developer needs to have fast, responsive applications and sites.Internet Explorer 9 introduces a new JavaScript engine, codenamed Chakra, which fundamentally changes the performance characteristics of JavaScript inside Internet Explorer 9. We'll dive into what's new in Chakra, including the new compiler that compiles JavaScript source code into high-quality native machine code, a new interpreter for executing script on traditional web pages, and improvements to the JavaScript runtime and libraries like ECMAScript 5 support.

    At 5:15pm to 6:00pm, Saturday 25th September

    Coverage video

  • Proxy Objects

    by BrendanEich

    Proxy Objects are going to an amazing new addition to the next version of ECMAScript. You will be able to allow a proxy to intercede any method or internal within the ECMA specification, allowing you to wrap everything in the JavaScript object domain. This is super powerful for logging, debugging, operation inversion, and if you can wrap the entire DOM and record timestamps, this might be the magic bullet that will allow you record and replay DOM interactions. We are bringing metaprogramming or Meta Object Programming to JavaScript and this will be your first peek at this awesome technology.

    At 6:00pm to 6:45pm, Saturday 25th September

Sunday 26th September 2010

  • loopage

    by Douglas Crockford

    Software development is hampered by a specific set of design mistakes that were made in the first programming languages and repeated in everything that has been done since. And, somewhat miraculously, JavaScript is going to make it right, radically transforming the way we write applications. Again. In the Loop of History, it has all happened before, but it has never happened like this.

    At 10:00am to 10:45am, Sunday 26th September

    Coverage video

  • The hitchhiker's guide to client side persistent data storage

    by Jens Arps

    Plugin-independent client side data storage, like HTML5 powered localStorage or IndexedDB, is becoming more relevant every day, though it had been there for ages. In fact, IE 5.5 was the first browser to offer data persistence in other forms than cookies. However, today, as we are online most of our time, handling offline situations has become important for many web apps. And for mobile dev, storage is crucial: You wouldn't want to pull some hundred k of data via a slow connection again and again.

    "This talk will take a tour around existing client side storage mechanisms. We'll start with cookies and see why it's a bad place to stay. Then we'll quickly move on to the good neighbours, visiting ancient places as well as futuristic ones and investigating their ins and outs. And we'll also stop by the frameworks/wrappers that give easy access to them. To make things more interesting, we'll then board a submarine and dive into the crazy world of mobile devices, it's special demands and see what options exist over there. Finally, we'll have a look at performance and security concerns. Don't forget your towel!"

    At 11:00am to 11:30am, Sunday 26th September

  • The State of HTML5

    by Paul Irish

    HTML5 and friends have been getting implemented in browsers at an impressively quick pace. But that leaves us as web developers wondering, "Great, but how am I supposed to build cross-browser applications with these features when I still have to support IE".

    We'll take a look at what the landscape of implementable features are, detailing best practices of implementation and fallback solutions where appropriate. For example, how do you pair WebSockets with a standard comet stack and what do you have to watch out for.

    We'll also review your available feature set if you're only targeting webkit mobile, or if you've already given IE6 the boot.

    The data will be up-to-the-day accurate, covering all major browsers and filled with best practices from topic experts.

    At 11:00am to 11:30am, Sunday 26th September

  • Techniques for a single stack world

    by ryah

    After last year's standing ovations performance, he is back. His last talk's video was viewed 12 thousand times. We're excited what will happen this year.

    Node.js presents the same non-blocking, single execution stack programming model of client-side Javascript. However, Node is arguably aiming at more complex problems than browsers have faced: massively concurrent servers that may shell out to many different processes, that might need to execute many sequential file system operations. Can this programming model support such systems or does the code degenerate into a spaghetti of callbacks? This talk will present an emerging set of patterns being used in this new domain.

    At 11:45am to 12:15pm, Sunday 26th September

  • Getting Functional with (fab)

    by Jed Schmidt

    (fab) is an HTTP framework for that eschews the conventionally muddled web stack of middleware, routers, and handlers for a cleaner, more functional approach. By stressing convention over code, (fab) enables any web app to be recursively composed of other web apps, using a chained pattern that enables the full power of javascript but the simple readability of a site map. In this presentation, Jed will show you how to use (fab) to get up and running with your own reusable apps on both the client and server.

    At 12:15pm to 12:45pm, Sunday 26th September

  • Introducing Unify - A Framework for Cross Platform Applications

    by Sebastian Werner

    Mobile applications are a huge trend at the moment. But there is one major drawback: You need to develop them from scratch for every-single-platform. That hurts. Web technology seems like a natural choice to develop cross platform and fundamentally increases efficiency during development. This talk is about the richness of Unify applications, the focus of the project and our future plans.

    At 12:15pm to 12:45pm, Sunday 26th September

  • Don't write spaghetti code in server side JavaScript

    by Tom Hughes-Croucher

    Sever Side JavaScript (especially Node.js) is a hot topic right now, but we are still figuring out what good SSJS code looks like. It isn't enough that we can write JavaScript on the server, or even that it is well written JavaScript. It's essential that we write maintainable JavaScript for the server environment. This talk will examine different coding styles for event driven, non-blocking SSJS and which styles are most successful.

    We'll take a look at strategies that other languages and frameworks with similar attributes such as Clojure, Erlang, Python/Twisted and Ruby/Event Machine use. From these languages we'll take a look what has worked well and what hasn't. We'll explore how these models can apply to JavaScript to create patterns that can be used to make code more maintainable.

    Since JavaScript is already an event driven language there is already a lot of support for events, and developers are used to developing code with the event driven browser. However, how we use these features on the server with it's additional freedom can either help or harm the long term use of our code. One of the obvious code defects created by poor use of the evented model in JavaScript is Pyramids. Pyramids are huge chains of nested, dependant anonymous callbacks piled one on top of another until you end up with a pyramid of code, left to right. Pyramids are one of the first, obvious, mistakes people tend to make when beginning SSJS. We'll also discuss some of the less obvious ones and explore ways of avoiding them.

    At 12:45pm to 1:15pm, Sunday 26th September

  • Socket.IO: WebSockets for everyone

    by Guillermo Rauch

    The realtime web is right around the corner, and JavaScript is here to help, both on the server and the client side. The WebSocket protocol promises to solve the problem of bidirectional communication once and for all, but can we leverage it today?

    Socket.IO provides an API that enables WebSocket for every browser (IE5.5, IE6, IE7, IE8, Safari, Chrome, Firefox 3-4, Opera 10) and multiple mobile devices (including the iPhone and the iPad).

    I'll talk about how you can get started using Socket.IO today, how people are using it in production environments, and how to create realtime web applications with just a few lines of code.

    At 12:45pm to 1:15pm, Sunday 26th September

  • Bespin: The JavaScript Programmer's Editor

    by Joe Walker, Patrick Walton and Kevin Dangoor

    We're really proud to have a large number of Bespin devs at JSConf.eu. Three of them will give us a heads up on their work:

    The Mozilla Labs Bespin project has created a customizable code editor that's built on the HTML5 capabilities present in the rapidly expanding list of "modern browsers". The project has evolved to support the notion of "coding in any cloud", as it's easy to build an editor to include in your own web applications. You can use Bespin in bookmarklet form to improve the editing experience at any site you visit. Finally, the JavaScript-based desktop and server packages allow you to edit code on your local machine or in your own, personal or small group cloud.

    In this talk, the Mozilla developer tools team will run through what Bespin can do for you, how you can customize it and where the project is headed.

    At 2:15pm to 3:00pm, Sunday 26th September

    Coverage video

  • Pirating the Semantic Web

    by Thomas Steiner

    The term "Semantic Web" has been around forever (well, almost, at least in Internet terms). This talk will provide an introduction to the Semantic Web as it evolves these days, with a strong focus on how to make use of semantically enriched data with JavaScript. We will show real world state-of-the-art examples, and also give an outlook on bleeding edge research on the topic, e.g. the JavaScript RDFa DOM API.

    At 2:15pm to 2:45pm, Sunday 26th September

    Coverage video

  • The Art of Deep Linking and AJAX Crawling

    by Rostislav Hristov

    Meet the person that made deep linking into things that used have no URIs possible:

    "Do you want to take your AJAX powered website to the next level by making it easily accessible through deep links? And how about making all the dynamic data available to the major search engines? Come and learn more about all the existing and evolving techniques, the best practices and details that you should have in mind."

    At 2:45pm to 3:15pm, Sunday 26th September

    Coverage video