Below are the presentations given at JS.everywhere(2012) Europe. New videos are being added regularly!
JavaScript: Your New Overlord
by Douglas Crockford
First misunderstanding, then huge semipopularity, and now, respect.
Despite its many obvious deficiencies, Java’s stupid little brother has gotten something profoundly right. What does the future hold for this duckling?
Animation without JavaScript: Making it snow in Paris
by Estelle Weyl
A dead battery is a bad user experience.
Animating with JavaScript drains the CPU and the users’ batteries. Animating with CSS is smoother, and leaves the UI thread free for other, actually important tasks. Help ensure your users don’t hate you by animating with CSS. While not a panacea, CSS3 animations can be the solution.
With CSS3 transitions and animations you can recreate almost all of the effects previously reserved to the realm of plugins, without making your users hate you.
From the basics of animation keyframes to expert tips that will save you many a headache, Estelle takes you on a look at all you need to know to get you up and running with CSS3 transitions and animations.
Visualizing Information with JavaScript
by Dio Synodinos
The more information-rich our societies become, the more demand there is for representing information visually, and the HTML5 platform is one of the best ways to create visualizations and communicate a message. Either for making sense of quantitative data, displaying qualitative information or simply creating the next Mona Lisa, technologies like CSS3, SVG, Canvas, WebGL, etc., provide a very powerful toolbox for developers, designers and artists.
In this presentation we’re going to start off by examining all the enabling HTML5 technologies that we’ve mentioned, their features and how they are used in practice to deliver captivating user experiences. Then we’re going to move one level up and talk about the frameworks that make these powerful but sometimes overly complex technologies, more accessible to programmers. We’re going to see frameworks like Raphaël, Processing.js, D3.js, Fabric.js, etc, their features and their applicability. Finally, time permitting, we’re going to go over online examples that best demonstrate the power of the web platform for visualizations and analyze how they were created.
The next console generation will be the last
by Michal Budzynski
Back in the day, it wasn’t possible to imagine the gaming industry without consoles – it was commonplace to hear suggestions that they will displace the PC. Now we know that opposite is true – tablets, smartphones and browser games are applying massive pressure on home gaming systems. It’s a huge chance for JavaScript to lead in this movement – it’s our generation’s Apple II.
Appcelerator Titanium: Building Native Mobile Apps
by Boydlee Pollentine
Boydlee will present an introductory session on Appcelerator Titanium – what it is, how to use it, and how you can build mobile-native, enterprise grade mobile applications for both iOS and Android using only JavaScript. It will be a general overview of the platform, the standards being introduced, and a general rundown of how Titanium
works and how it can work for the developer.
Desktop Apps in HTML5 and JavaScript
by Domenic Denicola
Although Web and mobile apps are getting more capable every day, often your application makes the most sense on the desktop. In this talk, we’ll look at some recent technologies that have allowed significant desktop apps — like Barnes & Noble’s NOOK Study e-textbook reader, or Adobe’s Brackets IDE — to be written in HTML5 and JavaScript. Projects like the Chromium Embedded Framework, node-webkit, and AppJS provide an excellent native-to-JS bridge. With them in hand, you can bring the full power of the Node.js and front-end ecosystems to bear, while still gaining the advantages of running as a native app.
Decoupling Content Management with Create.js
by Henri Bergius
The current breed of Content Management Systems is largely monolithic: if you’re choosing a system based on its user experience, this will mandate the web development tools and languages to use, and often even the database where your content is persisted. Or if you choose it based on the web development tools, this will mandate the user interface and storage layers.
But now a new movement has started towards a more decoupled CMS landscape. Projects like Create and JCR spearhead it, giving CMS developers previously-unseen opportunities for cross-project collaboration.
Create is the next generation user interface for content management. It provides a fully client-side content editing experience built on tools and standards like RDFa and Backbone.js. With Create, end users can stop filling forms and start communicating with their audience.
The MIT-licensed Create library provides CMS developers with a set of widgets to easily build a modern user experience. It has been built as part of the EU-funded Interactive Knowledge Systems project, which aims to boost the state of Open Source Content Management by new tools built on semantic technologies.
This talk will explain how both Create works, and how it can be utilized in CMS development. It also shows how systems like Midgard, OpenCMS, and Symfony CMF already use the building blocks of Decoupled Content Management.
You can find out more about Create on http://createjs.org. The concept of Decoupled Content Management is described on
Building Beautiful and Interactive Windows 8 apps with JavaScript, HTML5 & CSS3
by Dr. Doris Chen
This session outlines some of what you can do with 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 Metro style app development on Windows 8.
Get started writing Metro style apps using your HTML5, JavaScript, and CSS skills today! 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 arm you with everything you need to know to start building Metro style apps with the skills you already have.
Entschuldigen you, parlez-vous JavaScript?!
by Sebastian Golasch
While JavaScript applications grow in size and complexity, there are still some white spots on the big map of Web applications: Internationalization & globalization! If you’re still thinking that switching strings in & out is the way to go, you’re definitely headed in the wrong direction. During this session we’ll get our hands dirty, no UTF-8/16/32 meta talking, this is all about spotting real world problems & solving them in the most elegant way.
You want to do WHAT with JavaScript!?!
by Sebastian Golasch
Born in the mid 90′s as the stepdaughter of Java applets in Netscape Navigator, JavaScript has come a long way. Once used to validate forms and to dynamically change the background color of Web pages, JavaScript is now the number one citizen in the interwebs. Why? Because you can do all kinds of crazy and fascinating stuff with it!
In this talk Sebastian will show what’s possible today: Video chats, controlling Arduino-based robots, wiring it all together and more… Just be surprised and follow Sebastian and JavaScript where no other programming language has gone before!
Testacular – the Spectacular JavaScript Test Runner
by Vojta Jína
This session will serve as an introduction to Testacular – a test runner that makes makes testing JavaScript applications in real browsers frictionless and enjoyable. 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 painstaking 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.
Ancho: A JavaScript framework for cross-browser extension development
by Matthew Gertner
Since the first release of Google Chrome in 2008, competition in the already contested browser market has become even more heated. Today, Internet Explorer, Firefox and Chrome all hold more or less equal market share, and Safari has smaller but significant share as well.
This state of affairs presents a daunting challenge for browser extension developers, inasmuch as extension APIs are entirely proprietary with no standardization or harmonization between browsers. The Firefox APIs are a hodgepodge of XUL (a custom markup language), XPCOM (a component model), C++ (for binary components) and JavaScript (for most other purposes). The corresponding Internet Explorer APIs require elite software engineering skills, deep mastery of the Windows Component Object Model (COM) and use of C++ or C#. Chrome APIs are the simplest and require use only of standard Web technologies such as JavaScript, HTML and CSS.
In this talk, we describe how we have used the complex and powerful Firefox and Internet Explorer APIs to implement Ancho, a cross-browser extension development framework based on the Chrome API. As a result, browser extensions implemented in pure JavaScript using the clean, modern Chrome API can run in all three major browsers (a Safari version is also planned). Without assuming any knowledge of Firefox or IE internals, we explain why we chose to use JavaScript and the Chrome API as our lingua franca and describe some of the more interesting challenges we faced in implementing Ancho.
We round out the talk with a brief survey of how popular JavaScript frameworks like Backbone and RequireJS can be used alongside the Chrome API to develop elegant software architectures for browser extensions that mirror some of the most up-to-date techniques favored by web application developers.
OrientDB: a New Collaborative Way to Develop Internet Applications Based on JavaScript and NoSQL
by Luca Garulli
OrientDB is a document-graph NoSQL DBMS that supports server-side functions, something like the well known RDBMS’s stored procedures, but in JavaScript. This opens a new world of possibilities, allowing you to mix code and data all together at the server side. OrientDB server talks directly in JSON over HTTP RESTful protocol, giving a brand new experience to developing Web applications in collaborative way. The new development age has just started.
ArangoDB – Using JavaScript in the Database
by Jan Steemann
ArangoDB is a NoSQL database server that leverages JavaScript as its main scripting language for retrieving and manipulating data. Furthermore, ArangoDB can be operated as an application server, allowing users to control the complete request/response handling and thus implement their own business logic in the database. An interactive JavaScript shell is also offered as a convenient means to communicate with the server. ArangoDB is written in C/C++, and Google’s V8 engine is used for the JavaScript bindings. This talk will give a brief overview of ArangoDB and show some examples of how JavaScript can be used to implement custom actions inside the database.
Apps on TV
by Tam Hanna
Even though many developers still refuse to see the reason for creating TV apps, the media industry and TV stations already fully believe in the concept. In the future, users will use their TV set not only for passively consuming content, but will also interact with TV shows.
This will give attendees a full and highly up-to-date overview of the market: In addition to explaining why and how apps on TV are interesting, developers will also receive an overview of the systems offered by major market players such as:
• Google (Android)
• Microsoft (Xbox)
• Samsung Smart TV
• LG Smart TV
• Opera TV Store
Both developers and “business” people can gain valuable insight from this talk, as understanding the concepts and driving forces behind TV-connected applications are at least as, if not more important than, getting a good grip of the development environments in question.
Seamless iFrames: The Future, Today
by Ben Vinegar
Get an introduction to the “seamless” attribute, an upcoming HTML5 browser feature that enables iframe elements to display seamlessly inside a parent document. Seamless iframes present new possibilities for embedding feature-rich third-party applications, like Twitter’s new embedded acitivity streams or Facebook’s ubiquitous “Like” button.
Of course, like many shiny new HTML5 features, seamless isn’t available in older browsers. Ben will demonstrate a series of fallback techniques for emulating seamless in those environments.
Augmented Reality Using a JavaScript API
by Wolfgang Damm
In this session we will cover the fundamentals of augmented reality on a smartphone and how to create augmented reality content (games, location finder, etc..) based on web technologies (JavaScript, CSS, HTML).
Hybrid Mobile App in Minutes, Not Days
by Corinne Krych and Fabrice Matrat
In minutes we will demonstrate how to develop a mobile hybrid Web app (jQuery Mobile, PhoneGap) with a back-end on the cloud. This will cover offline caching, local storage, synchronization, Phone Gap build, geolocation and event push. At the end, we will have a clone of Foursquare on your mobile, with a backend in Grails.
Mobile Web App Development with PhoneGap Build
by Michael Chaize
HTML has emerged as a powerful alternative to “native” to enable cross-platform mobile application development. In this session, Michael discusses when to use which technology (native or HTML), how to build hybrid mobile apps using HTML, and how to use PhoneGap to package your HTML application as a native app for distribution through the different public or private app stores. Thanks to PhoneGap Build, discover how to build your apps in the cloud.
Enhanced Usability for More Efficient Enterprise Solutions
by Dominique Burger & Sylvie Duchateau
While more and more companies use Web-based applications to accomplish daily tasks, such as connecting together, sharing documents, managing timetables, etc., the case of their accessibility is essential for the inclusion of people with special needs as well as to enhance those applications’ usability in difficult environments.
If these applications are made accessible, they will help:
- to integrate people with different abilities,
- to use various tools (input/output devices, automation tools, etc.)
- to use them from different locations.
While legislation around the world encourages the implementation of accessible public Web services in order to improve professional inclusion of all, such technologies have also shown their great competitive advantages.
This presentation will show with concrete examples how the use of accessible web applications can benefit to all people in their professional daily life.
Securing online services by seamlessly combining smart cards and web-based applications
by Olivier Potonniée
This talk will discuss challenges related to the utilization and protection of a user’s digital identity in the cyberspace. We will introduce MeHuNa, a Web-based online authentication framework that strikes a balance between security, usability, and portability. This architecture seamlessly combines the proven hardware security of smart cards with the universal ease of Web access through browsers, to provide a secure two-factor online authentication solution, without imposing the deployment and usability complexities generally associated with conventional smart card systems. MeHuNa relies on a proprietary browser plug-in, which provides a JavaScript API to interact with smart cards connected to the user terminal. This technology draws a new trend in the development of smart card-based Internet security solutions that go well beyond user authentication. Additional security services such as email encryption, document signature, or online smart card content management, etc., can be delivered using the familiar Web browser interface. The plug-in used in the MeHuNa framework is only a temporary solution to overcome the lack of standard API to access smart cards. The W3C is currently setting up a working group, to which Gemalto will be actively contributing, to standardize this missing API. The talk will include a small demonstration of the MeHuNa framework.
Designing JavaScript APIs for Usability
by Rodney Rehm
At some point or another, you will find yourself writing JavaScript code that exceeds the couple of lines of a jQuery plug-in. Your code will do a a whole lot of things. It will – ideally – be used by many people. These people aren’t you, so they approach your code differently. They have different needs, knowledge of code, and expectations. This talk covers the most important things you need to consider before and while writing your own utilities and libraries. We’ll focus on how to make your code accessible to other developers.