You are viewing details from a past event. Please check our upcoming event schedule if you are looking for current content.

Danny Brian

Danny Brian

Designer, Developer, Mentor

Danny Brian got his programming start as a backend developer, wrangling Perl to do all sorts of things for which it was never intended. He wrote some books on software development and document-oriented databases. Eventually he found his true calling: Front-end development. In this “new career” Danny has worked as a designer, Flash developer, and application architect. Today Danny's projects include mobile game development with both HTML5 and the Unity platform. His goal? “To build stuff that people actually like, that stick around for more than a few years, and to help others do the same.”

Presentations

High Performance JavaScript Patterns

3:15 PM MDT

JavaScript frameworks are great, but you don't need to rely on them to create maintainable, high performance applications. In fact, the more code you can create independent of a framework, the more reuse you'll get from it, regardless of the frameworks being used. Understanding these patterns (and antipatterns!) will help you write maintainable, high performance code for both client and server, regardless of which libraries and frameworks you use.

You will leave this workshop armed with a toolbox for building and profiling JavaScript to run anywhere. We will examine:

  • Basic JavaScript patterns.
  • Efficient (and non-efficient!) iteration patterns.
  • Closures, anonymous functions, immediately-invoked expressions, and scoping.
  • Objects, prototypes, modules, and mixins.
  • Pubsub patterns.
  • The right ways to write and wrangle asynchronous code, including promises and async libraries.

High Performance JavaScript Patterns

5:00 PM MDT

JavaScript frameworks are great, but you don't need to rely on them to create maintainable, high performance applications. In fact, the more code you can create independent of a framework, the more reuse you'll get from it, regardless of the frameworks being used. Understanding these patterns (and antipatterns!) will help you write maintainable, high performance code for both client and server, regardless of which libraries and frameworks you use.

You will leave this workshop armed with a toolbox for building and profiling JavaScript to run anywhere. We will examine:

  • Basic JavaScript patterns.
  • Efficient (and non-efficient!) iteration patterns.
  • Closures, anonymous functions, immediately-invoked expressions, and scoping.
  • Objects, prototypes, modules, and mixins.
  • Pubsub patterns.
  • The right ways to write and wrangle asynchronous code, including promises and async libraries.

Full Stack JavaScript with HTML5, Node.js and MongoDB

9:00 AM MDT

You don't need Node.js or MongoDB to build “full-stack” solutions, but they sure help! This stack is popular for its scalability, its promise of developer productivity, and the capability to develop all components with a single programming language. Not all use cases are a great fit for JavaScript on the server. But love it or hate it, there are valuable lessons and use cases here for all developers.

We'll examine a complete multiuser end-to-end app using HTML5, CSS, and JavaScript. We'll connect it to a simple Node.js instance using WebSocket. We'll wire up a simple document-oriented persistence layer with MongoDB. And we'll do it all using mostly-vanilla JavaScript to illustrate concepts that don't depend on particular frameworks.

You'll leave this session convinced that full-stack JavaScript has “teeth”, and that it's not all just hype. And whether you intend to use JavaScript, Java, Ruby, or a mix of various frameworks on the server, the architecture of a dynamic HTML5 app will be made transparent and straightforward.

Hybrid Mobile Apps with HTML5: Easier Than You Think

11:00 AM MDT

You don't need massive frameworks to build mobile apps responsive to touch events, that contain fluid animations, or that are easily deployed to app stores. All you really need is a solid grasp of the JavaScript, CSS3, and HTML5 features and APIs that enable a compelling experience.

In this session, I will show some examples of mobile apps built with HTML5 that offer instantaneous handling of touch events such as pan gestures. I'll demonstrate best practices using CSS3 transitions to implement card and panel design patterns typical of mobile user interfaces. And I'll show just how easy it is to extend the device features available to HTML5 using Cordova, packaging a mobile app for app store deployment.

Build Modular, Standards-Based Progressive Web Apps

1:30 PM MDT

Web Components change the way you build web applications and think about front-end architecture. Finally, web developers have a sane way to scope and modularize not just their JavaScript, but also the HTML5 and styling. The approach is elegant, encourages compatibility between frameworks, and piggybacks on the web browser's success as an open and extensible runtime. The Polymer framework demonstrates how frameworks can and should evolve in a Web Components world.

In this session, I'll provide an overview of Polymer, and demonstrate the creation of Web Components using the framework. Data binding, true encapsulation of code and style, and dynamic HTML imports are all ready for your use. You will leave with a solid understanding of Polymer basics, and real-world examples of Polymer being used in production today. You will be able to guide your current development to better align with upcoming web standards, and to understand how they will change the way we build and deploy web applications. I'll also show you examples of a large personal project using Web Components to build an entire iOS application.

If the web browser is growing up, then Web Components are the browser leaving home. Finally.

An Introduction to Video Game Development

1:30 PM MDT

With many AAA video games in its portfolio, Unity has become a powerhouse within the game development and simulation industry. But Unity is more than a game engine — it's a complete ecosystem of tools, workflows, and integrations. Very small development teams and even individual hobby developers can create great games with Unity, for any platform, 3D or 2D.

In this workshop, I'll give an overview of tools and techniques for building games for desktop and mobile using the Unity. We will break down a real game for iOS, from asset creation, to building scenes, to scripting in C# (on Windows and Mac), to animation, to testing and finally publishing a game. You will leave this workshop with an understanding of the power of Unity, and the knowledge necessary to start building games. Game development is a thrill, and all developers can benefit from a knowledge of the cutting edge tools.

An Introduction to Video Game Development

3:15 PM MDT

With many AAA video games in its portfolio, Unity has become a powerhouse within the game development and simulation industry. But Unity is more than a game engine — it's a complete ecosystem of tools, workflows, and integrations. Very small development teams and even individual hobby developers can create great games with Unity, for any platform, 3D or 2D.

In this workshop, I'll give an overview of tools and techniques for building games for desktop and mobile using the Unity. We will break down a real game for iOS, from asset creation, to building scenes, to scripting in C# (on Windows and Mac), to animation, to testing and finally publishing a game. You will leave this workshop with an understanding of the power of Unity, and the knowledge necessary to start building games. Game development is a thrill, and all developers can benefit from a knowledge of the cutting edge tools.