GothamJS 2013

Broadway is the Home of Excellence

Broadway is well-known for performers who are masters at their craft, whether it be singing, dancing, acting, and now of course, JavaScript! For 2013, the GothamJS team has assembled a great cast of JavaScript experts preparing some fantastic performances for your enjoyment. You won't be disappointed with this lineup!

Schedule

08:45-09:15

Registration and Continental Breakfast Sponsored by Adobe

09:15-09:30

Welcome and Introduction

09:30-10:00

Strong Type System Withdrawal? Methadone for JavaScript Confidence

by John K. Paul

10:00-10:30

Ember.js: The Architecture Advantage

by Luke Melia

10:30-10:50

Coffee Break Sponsored by Domo

10:50-11:30

Animated Music Videos with CSS3 Animations and HTML5 Audio

by Rachel Nabors

11:30-11:40

Break

11:40-12:10

Crowdsourcing Heroku's Node Buildpack

by Zeke Sikelianos

12:10-12:40

Loving HTML Again with AngularJS

by Dave Geddes and Merrick Christensen

12:40-01:55

Lunch in the City

01:55-02:15

RespDriven WebPonents (Because Responsive Design + Server Side Web Components Isn’t Catchy)

by Filipe Araujo

02:15-02:45

Building iD, an OpenStreetMap Editor in d3

by Tom MacWright

02:45-02:55

Break

02:55-03:25

ES6: The Awesome Parts

by Domenic Denicola

03:25-03:55

Mobile Web Patterns with Backbone.js

by Nick Gauthier

03:55-04:15

Snack Break Sponsored by Heroku

04:15-04:45

Things We Learnt Building Stripe's API

by Alex MacCaw

04:45-04:55

Break

04:55-05:15

Game Development

by Jesse Freeman

05:15-05:45

Excessive Enhancement - Are We Taking Proper Care of the Web?

by Phil Hawksworth

05:45-07:30

Post-Conference Party Sponsored by Sungard

Console Quality Cross Platform HTML5 Canvas Games

by Jesse Freeman

Jesse demostrates how we are redefining console games with HTML5. For almost 2 years he has been talking about HTML5 gaming, helping to raise the awareness of it potential for HTML5. In this talk, you'll see a glimpse of how big it can eventually be.

Jesse Freeman is a Technology Evangelist at Microsoft focusing on Windows 8 and HTML5 Gaming. His job is to help developers build amazing apps and games for Windows 8. He has been a Web developer for over 13 years as well as a mobile app developer for the better part of the last 4 years. He moved back to NY in 2002 and has worked with some of the city’s top companies such as MLB, the New York Jets, HBO, Tommy Hilfiger, Bloomberg and even internationally for clients such as VW. Through his career he has seen all sides of development from independent contractor, government, consultant, agency and product. It has been a crazy ride and an amazing one that helped make him the developer he is today.

Jesse has also been a speaker, author and blogger for the past 6 years. Through all of his work he has always had a passion for making games and over the past year he has been focusing on HTML5 game development. He recently wrote a book for O’Reilly called Introducing HTML5 Game Development using the ImpactJS framework. He has always used his passion for making games to help himself learn new programming languages and this passion is one thing he hope to help share with others.

You can follow Jesse on twitter at @jessefreeman

Excessive Enhancement - Are We Taking Proper Care of the Web?

by Phil Hawksworth

We all love to see exciting and innovative 'interface shizzle' driven by JavaScript and the ever increasing rendering capabilities of modern browsers, but are we getting these at the expense of the Web? This talk will explore the good, the bad, and the fugly of rich interfaces, while examining how and why we should take care not to damage the Web.

Phil Hawksworth is a JavaScript developer who has been developing web applications since the late 90s. These days in his role as a Technical Director at R/GA in London, working for clients like Nike, Nokia and Getty Images, he focuses on technical architectures, wrangling developers and designers, and banging on about things like unobtrusive JavaScript, open web standards and tasty browser shenanigans. Some say that his Instagram feed contains more photos of cats than might be considered healthy for a grown man, but he's convinced that he doesn't have a problem.

Strong Type System Withdrawal? Methadone for JavaScript Confidence

by John K. Paul

We’re all looking for confidence in our code. No matter how many “ninjas” are hired or how many times we read _Clean Code_, there’s always the itching feeling that we are doing something wrong. For some, the only way out of this feeling comes from a strong and static type system. In JavaScript code bases, the usual substitute for a strong type system is a thorough testing suite, but this goal is not turnkey. It takes time to build up enough testing to regain trust in your code, but I’d like to offer you many more methods to find confidence in your code and wean yourself and your team away from strong type systems.

The JavaScript community has produced many useful static analysis tools to add into any continuous integration process. From linting to beautification to syntax validation, I will be categorizing many techniques and tools that you can use to maintain the quality of your code. I’ll be discussing how to decide which tools are useful for your project as well as how to integrate them into your development workflow. Once you semi-secretly install your first precommit hook onto all of your team member’s machines, I promise that you’ll never go back to your old addictions.

John K. Paul John K. Paul is the lead technical architect of Conde Nast's platform engineering team and former lead front end software engineer at TheLadders.com. He is a contributor to numerous open source projects including learn.jquery.com. He has spoken to various startups around NYC about front end development, and scalable engineering practices, in particular, unit testing javascript. Additionally, he has taught JavaScript and jQuery fundamentals to teams throughout the NYC area.

Loving HTML Again with AngularJS

by Dave Geddes and Merrick Christensen

HTML was never designed for complex web applications. As a result our client-side code is often messy, full of boilerplate, and difficult to test. Enter AngularJS, a framework by Google that lets you build tiny to massive apps in a concise, declarative, futuristic approach. This presentation will give you an overview of Angular's building blocks, and demonstrate the shocking potential of the web. API Versioning and backwards compatibility.

Dave Geddes and Merrick Christensen are Open Web Architects at Domo.

Dave enjoys helping people learn and love JavaScript, Node, and the web. Dave's background includes running a successful freelance business, building real-time web applications for the U.S. Air Force, and consulting for hundreds of projects to improve user experience, performance, organization, modularity, and developer productivity. He lives and breathes JavaScript and loves using it to create beautiful things on the web.

Merrick is passionate about giving back to the web. He enjoys educating and helping others. He runs the JSJabber podcast, contributes to many open source projects, and builds tools and user experiences that his startups rely on to be successful.

Things We Learnt Building Stripe's API

by Alex MacCaw

Building a world-class REST API is hard; there are many nuances that are important to get right, and you have to get them right from the beginning. I'm going to take you through some of the principals we've learnt building Stripe's card payments API, which includes the following parameter naming and endpoints, authentication, error handling, sessions and CSRF, and API Versioning and backwards compatibility.

Alex MacCaw is the author of a few O’Reilly books, and created the MVC framework Spine.js. He enjoys Ruby, JavaScript, and around-the-world trips.

Ember.js: The Architecture Advantage

by Luke Melia

This talk will cover in detail how Ember.js supports the development and maintenance of large, ambitious Javascript apps. Shallow explorations of Ember.js like ToDoMVC or getting started tutorials make it too easy to miss the amazing experience of scaling functionality in an Ember app.

We'll explore the division of responsibilities within the layers of an Ember app, how data and event flow is organized, the power of 'Truth in Javascript', how the uniform access principle empowers refactoring, and more.

Luke Melia is co-founder and CTO of Yapp, a NYC-based mobile startup. He has been building Ember apps and contributing to Ember since its inception. He organizes the Ember.js NYC Meetup, whose monthly events are jam-packed evenings of fun and learning. Luke has been writing software professionally for almost 20 years, and lives in Chelsea with his wife and 2 kids.

Building iD, an OpenStreetMap Editor in d3

by Tom MacWright

In the past seven months, a small team built a map editor - a tool to draw buildings, move roads, and improve OpenStreetMap, a collaborate world map, from scratch. Unlike previous efforts, it was built in pure Javascript, with the help of the d3 library for visualization. This will be a review of the experience building iD as a very large project in d3 and the minimal design patterns that helped make it possible.

Tom MacWright is a software developer at MapBox where he works on visual and cartographic code.

Animated Music Videos with CSS3 Animations and HTML5 Audio

by Rachel Nabors

Award winning cartoonist and front-end developer Rachel Nabors will show you how to make an animated music video using CSS3 animations, HTML5 audio, and JavaScript. Animate images and backgrounds with CSS3. Load assets, loop music, and fire events using JavaScript. This talk is an excellent introduction to CSS3’s shiniest features and HTML5’s audio API. Even if you never need to animate a music video, you’re sure to come away with a head full of ideas.

Rachel Nabors is a front end developer, CSS animations fanatic, and award-winning cartoonist. A serial tea abuser, she can be found, late at night, inking comics about github or drawing her own loading spinners. You can follow her work at rachelnabors.com and @rachelnabors

Mobile Web Patterns with Backbone.js

by Nick Gauthier

Mobile web is a harsh environment with low processing power, low bandwidth, and high latency. In this talk we'll look at a handful of performance optimizations in Backbone.js with a focus on mobile applications. From transparently caching objects to avoiding unnecessary calls to render, we'll optimize our mobile app for usability.

Nick Gauthier is a web freelancer focusing on Ruby on Rails and JavaScript. His experience spans from SQL to Sass and he always tests, all the time. He wrote Recipes with Backbone with Chris Strom and recently released his most recent eBook Mobile Web Patterns with Backbone.js. Aside from freelancing Nick runs B’More Awesome, a Baltimore-based web training organization, and he also co-founded Exobrain, an online mind-mapping tool.

ES6: The Awesome Parts

by Domenic Denicola

The next version of JavaScript, ES6, is starting to arrive. Many of its features are simple enhancements to the language we already have: things like arrow functions, class syntax, and destructuring. But other features will change the way we program JavaScript, fundamentally expanding the capabilities of the language and reshaping our future codebases. In this talk we'll discover the awesome black magic of proxies, the myriad possibilities of generators, the many tricks you can pull of with template strings, and more. We'll wrap up with discussion of ways you can use, or at least explore, these features today.

Domenic Denicola loves using JavaScript for everything, from frontend work to desktop applications to Node.js servers to Windows 8 apps. He's passionate about things like software craftsmanship, the next version of JavaScript, and making the standards process more transparent to developers, and is known as one of the co-authors of the Promises/A+ open specification. Domenic works at Lab49 here in New York City.

RespDriven WebPonents (Because Responsive Design + Server Side Web Components Isn’t Catchy)

by Filipe Araujo

Responsive Design over the past 3 years has proven to be very difficult to master, spanning from dimension to grids to images and feature testing. Current client side approaches have involved loading a feature detection library, polyfilling functionality, and conditionalizing logic to present the client a uniform experience. However, this forces the download of code that will never be applied or run at the cost of the client bandwidth, processing and time.

In this talk, Filipe Araujo will talk about the introduction of recent new technologies such as Shadow DOM, templates, custom elements, and html imports and how they can be utilized with server side technologies to deliver responsive design optimized for the very device that requests it.

Filipe Araujo is a Lead Senior Consultant at Sungard Consulting Services. He has been writing quality Javascript, CSS, and HTML for over 10 years now. Filipe is an evangelist for responsive design and clean, testable code that is well architected and easy to maintain.

Crowdsourcing Heroku's Node Buildpack

by Zeke Sikelianos

Buildpacks are where all the magic happens in the Heroku deploy process. In this talk I'll discuss some techniques I've used to let the open source community determine the future of the Node.js buildpack.

Zeke Sikelianos Zeke is a hacker and designer at Heroku in San Francisco, where he writes open-source software with Ruby and JavaScript. Zeke believes information wants to be free, and that you can use computers to create beautiful things.