V8 makes it fun to write native C++ modules for node.js. During this talk, I'll walk through creating a binding to a third-party C/C++ library. I'll discuss when it actually makes sense to create your own module, the different methods for programming asynchronously in C/C++, memory management and how to adapt a C interface so that it "feels" like JavaScript. You'll also learn about various pitfalls of the v8 API to make sure your module runs both stable and fast.
PDFs are traditionally rendered using native code plugins. Often enough those native code viewers turn into unintentional native code execution platforms. I will talk about Mozilla's new PDF.js pure JavaScript PDF render. Flashy demos aside I will in particular focus on performance tricks we use to make rendering fast (we just-in-time compiler PDF content!), and report on limits of the canvas API, and how we plan to fix those since we conveniently also make a popular browser: Firefox. Have you...
Marak Squires – How to be an open-source gangster More info: http://jsconf.eu/2011/how_to_be_an_open-source_gangs.html
You have never heard of Raphaël? Prepare to be amazed. You know everything about this library? You know nothing about 2.0. 60% of library have been rewritten for a good reason. New animation, transformation and event APIs. I will explain what has changed and more importantly why.
Yeah, yeah. I'm the Sammy Guy. I've spent a lot of time thinking about client side tooling and frameworks and building some sizable apps. I have come to the conclusion that they all suck. Maybe even one step further - frameworks in general are not always the correct solution for your problem. That doesn't, however, mean that they're irrelevant. It just means that its not so cut and dry, one is not really better than the other, they all present tradeoffs and all have their strong points. I'll t...
jsPerf makes it easy to create performance test cases and run benchmarks across different browsers and devices -- but it also makes it very easy to do it wrong. Incorrect test cases lead to incorrect results, and we don't want to spread misinformation when it comes to JavaScript performance. In this presentation, we will be taking a look at some common mistakes in jsPerf tests, and we'll learn how to avoid them for great justice. Slides: http://www.slideshare.net/mathiasbynens/using-jsperf-cor...
dyn.js project born from the idea of leaving the past behind, and starting from scratch, using dynamic language jvm native support (present on JDK7). This means that we can get free performance improvements, get a concise codebase, and steal ideas^H^H^H get inspiration from other JS implementations, without worrying with backwards compatibility. http://jsconf.eu/2011/dynjs_-_100_invokedynamic_java.html
Polyfills, a term coined by Remy Sharp back in 2010, are scripts that mimic a future API providing fallback functionality to older browsers. The rise of HTML5, CSS3 and ES5 resulted in various polyfills being written by developers all over the world to fill in the gaps of browser support, so we can use new standards before they are universally adopted by browser makers. In this talk, we will explore various techniques commonly employed in good polyfills and shims, so you can start writing your...
Emscripten is an open source LLVM to JavaScript compiler. It lets you take code written in C or C++ and run it on the web. It can also be used to compile entire language runtimes, like CPython, letting you run code in those languages on the web as well. Currently a major focus of work in Emscripten is connecting with 'normal' JavaScript code. In other words, making it easy to compile some existing C++ library, then use it from your handwritten JavaScript on the web. More Info: http://jsconf.eu...