Running untrusted code is always a difficult problem to deal with. This talk will explore some of the potential problems with result from doing this including: resource starvation, data security, remote code execution, and unintended network access. It will then explore some of the design decisions of Node.JS and show how these can be used to help control provide methods to sandbox code to prevent these types of attacks, ending with an explanation of some of the limitations of this technique and possible other solutions.
Geoffrey Plitt, active standup comedian, former Google engineer, and CTO of comedy discovery engine Laffster.com discusses tips, tricks, and pitfalls his teams have learned while using technologies such as KnockoutJS, HeadJS, CoffeeScript, Slim, SASS, Middleman, various jQuery plugins, and Amazon Web Services. Plus he's funny
How do we determine the sentiment of text in a world where syntax and grammer are thrown out of the window? Utilizing Node and Natural, a NLP (Natural Language Processing) toolkit, we'll go through a few techniques ranging from manual polarity determination to machine learning classification, all the while highlighting the challenges of analyzing text in a "post-grammatical" world.
Backbone.js is often discussed alongside the many other popular client-side frameworks like Ember, Knockout, et cetera. This talk will discuss how Backbone.js is less like those opinionated frameworks and more like a set of glue libraries to build your own framework, and will also cover some useful patterns you can use in your own Backbone application.
D3 is perhaps the most powerful tool available for displaying realtime data on the web. By defining its own level of abstraction, being closer to the DOM than charting tools (e.g. highcharts), and being higher level than drawing primitives (e.g. Raphael), you can create amazing data driven visualizations. This talk will cover the basics of D3, and best practices for integrating D3 visualizations with Backbone.js and realtime websocket data.
I usually find technologies that interest me, experiment with them, publish demos I do and eventually use them in a commercial project. With WebGL it was different - my first contact with this technology was through a client project. I had to learn WebGL on the go. It took me a few months to actually start apperciating it, but once the project was over and I thought I know everything about it, I decided to write my own engine that I baptized simply J3D. After a good start, I realized I didn't know that much about WebGL after all... Since then I spent many day & nights (mostly nights) learning and creating what I believe is a good tool for other developers to start creating 3D applications in the browser. In my presentation I talk about specific challenges when working WebGL projects and how J3D addresses them. I will also take you on a short walk-through of it's features and present some demos.
Mojito is a sweet (and minty!) MVC application framework built on YUI 3 that enables agile development of Web applications. Gamaiel Zavala will be presenting an introduction to Mojito including set up, routing, controllers, models, addons, binders, and configuration. Gamaiel has been building Media sites at Yahoo! for 6 years and is currently working on Media's migration to Mojito.
Splitting up your architecture into tiny processes that talk to each other over the network is useful for many of the same reasons that unix utilities are useful: they can focus on doing one thing well and it's trivial to glue a bunch of tiny processes together to serve some more complicated end goal. It can be difficult to write and deploy applications this way, but I've written some libraries such as dnode, upnode, seaport, and fleet to make this much easier to manage. In this talk I'll show how you can glue tiny processes together and split bigger ones up with these tools.