Computer programs are the most complicated things that humans make. They must be perfect, which is hard for us because humans are not perfect. Programming is thought to be a “head” activity, but there is a lot of “gut” involved. Indeed, it may be the gut that gives us the insight necessary for solving hard [...]
The open mobile revolution is upon us! Thanks to HTML5 and open web standards, mobile web apps can compete head to head with native applications by using features such as geolocation, offline caching, web storage, canvas and CSS3 transitions among many others. In this session we will cover the basics of mobile web apps creation, [...]
Windows 8 is Windows re-imagined. Learn how to work with all new touch-centric user experience to create fast, fluid, and dynamic applications that leverage the power and flexibility of the core of Windows. Hear how the UI was designed to work seamlessly with a diversity of devices and form factors. Learn how to build Metro [...]
Complex applications need a persistent database to store, search and join data: until now a dedicated server was needed to do this, and no offline usage of the app was possible. With the introduction of HTML5 and the concept of localStorage and Web Databases, we don’t need an external server anymore: everything is stored within the user browser and thus the [...]
When back in 1996 Macromedia introduced Flash, no one suspected that this plugin will revolutionize the world of the Internet and move an open, Web-based technologies into the background. Today, after more than 15 years, situation slowly reverses – finally creating interactive websites, games or advertisements is possible without using any browser plugins. But is [...]
Tools like Express and NoSQL-databases have made it easy to write web applications using Node.js. But what if we don’t need to serve HTML? What if we don’t need to do templating, CSS and pretty animations? What if we only want to provide an HTTP-interface to our data? This talk will be about tips and [...]
Windows 8 is Windows re-imagined. Join this session to learn about the new platform for building Metro style applications. Get an understanding of the platform design tenets, the programming language choices, and the integration points with the operating system and across Metro style apps.
How many of you have ever used Google Docs? Does all the apps feels “strange”, when you can’t see what your colleagues are doing? Would you like to build similar apps? Learn the basics of Operational Transformation, an algorithm family which allows people all over the world to collaborate on the same time on a [...]
What is node.js and when should you care about it? Why is it different from the systems you are used to and how does it perform so well on a single CPU core while handling thousand of concurrent network connections? Let’s talk thru these points with code. Asynchronous programming is a new concept to most [...]
CSS3 brought a huge number of features that enable visually stunning web sites and applications. However the revolution is not finished yet. There are new kids on the block waiting impatiently to take over the stage. In this session you will learn about some of the latest CSS3 features (and the story behind them) that [...]
Our early attempts at doing client side rendering in tuenti.com brought us many performance problems, not only for the usual offenders (IE6 and IE7) but also for fast browsers like Chrome. We tried to solve most of those using a technology to render client side that ended up being faster on IE7 than Chrome, but [...]
I have worked for over a year at startups based on Node.js. I will share some of the challenges encountered and how we dealt with them.
Having your very own robot butler is finally possible! HUBOT from GitHub is an easy to setup and highly extensible automation assistant for your everyday needs. Use HUBOT to order food, grab directions, deploy code, and even open the door! Sure, he may take over the world someday, but in the meantime we might as [...]
Pushing data from the server to the client as events happen has not really been possible on the web so far. While there have been some workarounds for this issue, most of these were hacks. Luckily, there is an upcoming W3C WebSockets standard. This talk will discuss use cases for WebSockets, show you compatibility issues/fallbacks [...]
The coupling of multi-touch gesture devices with hardware accelerated 3D presentation and animation support in HTML5/CSS3 expands the traditional concept and role of the web user interface on modern portable devices. In this presentation, we will examine the capabilities of the hardware and software on current devices and develop an understanding of how to utilize [...]
HTML5; it’s new, it’s awesome, and it’s powerful, but can it take down the champ of video distribution, Flash? Which technology’s got the ability to bring cat video to the next level. This talk will cover the many challenges of both HTML5 and YouTube adapting to change video distribution on the web.
This is the story of the glory and struggle of bringing a high quality YouTube experience to the mobile web. Once upon a time there was a web developer who wanted to play videos on the web. So he filmed a cat and wrote a Flash and a HTML5 player. He spent many hours making [...]
Most mobile web development frameworks are targeting the built-in web browsers on iPhone and Android only; however, jQuery mobile has in a different vision, one that will reach the largest distribution of devices (both desktop and mobile) as possible. Leveraging the ways of progressive enhancement, your website can be viewed in raw HTML on old [...]
This talk will cover how to build your first mobile app with Sencha Touch 2. During the talk we build a first mvc based Sencha Touch 2 app. For that we will set up the mvc app structure and learn which source files we have to use in which case. We’ll build list and form [...]
Although a great number of changes and additions in HTML5 are “under the hood”, certainly one of the most visible new capabilities is the integration of browser-native multimedia, allowing for the use of video and audio in your pages without the need for any messy plug-in-based solution. Add some of the 2D drawing capabilities of [...]
Even though many developers still refuse to see “sense” in Apps on TV, the media industry and the 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 the TV shows shown.
Loving the unthinkable, exploring new patterns, proposing unconventional coding. How would your customers develop their own applications? Awfully, sure. But… their mindset can inspire something new: breaking rules? We introduce early concepts of Experience Oriented Programming (EOP): programming of the new experience and the new experience of programming. We unveil our new framework and its [...]
There was once a time where gaming in the browser meant Flash. That time is no more. Based on OpenGL ES, WebGL brings the 3D world to the browser without any plugins. Three.js, a scenegraph library for WebGL, allows us to make creating 3D web apps easier by abstracting away many of the low-level API [...]
I’d talk about various use cases of a very powerful and yet not very well known feature of canvas element: it’s ability to be treated as a buffer. I’d to cover such topics as: – few words of introduction to canvas element (really few words) – our first buffer: drawing from one canvas to another [...]
Use Mozilla’s Addon SDK to quickly create Firefox extensions to improve your web browsing experience and integrate with Social Media. We will show you how to use your JS, HTML & CSS skills to modify a target web-site and integrate it with Firefox using the unique capabilities of the SDK.
Hyperaudio is new way of interacting with audio, it’s an open media that takes audio and integrates it fully with the web for a much richer experience. In this talk we look at how we can closely tie audio with other web page elements. We look at making audio more searchable, shareable, navigable and accessible. [...]