HTML5 Powered with CSS3 / Styling, and Semantics
Next Meeting

Supporting Architecture for React.js by Brandon Mason

@UAT Room 206/207 September 17th, 2014. 6:30-8:30. Pizza Provided by State Farm.

We'll be continuing the discussion around Facebook's React, digging more into supporting technologies. We'll look at an example front end architecture and how it enables real time data to be displayed to the user.

Past Meetings

Building Web Apps with Ember, Ember Data and Ember CLI By Greg Babiars

@UAT Room 206/207 August 20th, 2014. 6:30-8:30. Pizza Provided by State Farm.

Ember.js describes itself as "A framework for creating ambitious web applications". It embraces conventions that allow you to focus on your application specific logic rather than trivial architecture decisions or boilerplate code. Ember Data is a persistence framework that provides the functionality and flexibility that a data layer in complex apps require. Ember CLI is a set of command line tooling that allows you to quickly create, test and build your application. We'll see how we can use these technologies to rapidly build a web application that connects to an existing JSON api. As we build it out, we'll discuss different Ember concepts and see how they fit into the whole of Ember.

Facebook's React by Joe Fleming

@UAT Room 206/207 July 16th, 2014. 6:30-8:30. Pizza Provided by State Farm.

React bills itself as "A Javascript library for building user interfaces." It was created by Facebook and uses a "virtual DOM" for ultra-high performance. It also uses some internal magic to batch changes and keep your UI fast - their goal is making your application run at a full 60fps. React's API is also pretty small, making it very easy to start using. I'll talk about the how React works and where it fits into the front-end MV* stack, walk through some examples of React components and show you how to create your own. You'll leave with a solid understanding of how React works and the knowledge to start using it to build blazing fast interfaces in the browser.

Welcome to Gulp by Rob Richardson (Gulp Core Contributor)

@UAT Room 206/207 June 18th, 2014. 6:30-8:30. Pizza Provided by State Farm.

Gulp is a JavaScript build system similar in purpose to Grunt. Unlike Grunt, its core principles are configuration as code to make it easier to understand and debug, and using Node streams to avoid temp files and make it faster. We'll start with a look at streams, the technology behind Gulp, wander through a Gulp hello world, dig into the Gulp API in great depth, build a few Gulp projects, build a Gulp plugin, and discuss best practices. Got Gulp questions? Bring them and let's solve them together. Got a particularly cool gulpfile? Come demo it to us as we open the discussion up to show-n-tell.

Rob Richardson is a software craftsman building web properties in ASP.NET and Node. He's a frequent speaker at conferences, user groups, and community events, and a diligent teacher and student of high quality software development. You can find this and other talks on his blog at and follow him on twitter at @rob_rich

Bower and Yeoman Show-and-tell

@UAT Room 206/207 May 14th, 2014. 6:30-8:30. Pizza Provided By State Farm.

In this meeting we're going to do a show-and-tell for Bower - the package manager for front-end web development. If you haven't seen Bower before, you're in for a fun ride! We can also talk about Yeoman and other similar tools that facilitate Bower or are alternatives to it.

Dhruv Patel from Omazing Creations, then Tim Sullivan from PayPal will kick the meeting off with an introduction to Bower including setup with Yeoman, installing specific front-end components and libraries, Importing/Testing components, and grunt-bower

Then the floor is open to all members who want to show off their favorite tips, tricks, and components. If you'd like to present something, try to make it short and sweet since we might have several presenters. Also you don't have to schedule anything with me to speak, but a mention of what you're going to talk about in the comments below would help me plan and also help prevent overlapping topics

Enterprise JavaScript – A Beginning, By Justin Dragos (State Farm)

@UAT Room 206/207 April 16th, 2014. 6:30-8:30. Pizza Provided.

State Farm is starting to look at JavaScript as an first-rate enterprise level language, and we’d like to share some of the experiences we’ve had with the community. We’ll be talking about many of the different JavaScript frameworks we’ve looked at – what we liked and what we didn’t. Additionally we’ll be looking at examples of how we’re doing some of the core enterprise code features with JavaScript (unit test, end to end test, CI, code coverage, build, etc.) The presentation will be very conversational as we’d love to discuss the decisions we’ve made, and are interested to hear the approaches others have taken.

Dojo 10 is 2 by Dylan Schiemann (Co-creator of Dojo)

@UAT Room 206/207 March 19th, 2014. 6:30-8:30. Pizza Provided By State Farm.

The Dojo Toolkit will celebrate 10 years of existence this year. This talk will provide an introduction of the key features of the Dojo Toolkit, and the exciting plans for Dojo 2.0. It will also go into depth about Intern, a Dojo and AMD-based tool for efficiently testing your JavaScript applications, and other Dojo packages.


Gist on Intern

Sublimetext Editor: Power User/Open Presentations

@UAT Room 206/207 Feb 12th, 2014. 6:30-8:30. Pizza Provided.

Sublime Text Editor has become very popular in the last few years - partially due to it's huge amount of features, shortcuts, workflow integration, and extensions. For this meeting we will be inviting anyone (you don't have to tell me ahead of time) to show off your Sublime Text skills and teach everyone your favorite things.

Its' free to download and try - without trial expiration. It works on Mac, Win, and Linux. Oh yea, and you configure it's settings with JSON - how cool is that!

Continuous Integration with Travis CI and Gulp by Rob Richardson

@UAT Room 206/207 Jan 15th, 2014. 6:30-8:30. Pizza Provided.

JavaScript has come of age, and with it, the maturity of the software development lifecycle. Whether you're building client-heavy web apps or full-stack JavaScript applications, or just publishing to npm or bower, you'll need to ensure a consistent build. We'll discuss standard CI best practices and techniques, and walk through two approaches to Continuous Integration in JavaScript: Travis CI and gulp.

Rob Richardson is a local software craftsman building web properties in ASP.NET and Node. He's a frequent speaker at user groups and community events, and a diligent teacher and student of high quality software development. You can find this and other talks on his blog at and follow him on twitter at @rob_rich.

Intro to MongoDB by Stephen Ward

@UAT Main Auditorium Downstairs Dec 4th, 2013. 6:30-8:30. Pizza Provided.

JSON (JavaScript Object Notation) is a lightweight data interchange format. It's used extensively in JavaScript powered webpages. MongoDB stores native JSON objects directly, thus making it an ideal platform for storing and providing data to web based applications.

I'll develop a simple (CRUD) REST application in Node JS using MongoDB . I’ll also preview using Mongo's JavaScript shell to create a database, collections, documents. To wrap it up I'll create a web based form to interface with the Rest service.


Presentation Code

Testing & Specification in Node.js and the Browser with Mocha by @WeAreFractal

@UAT Main Auditorium Downstairs October 9th, 2013. 6:30-8:30. Pizza Provided.

Testing is a contentious topic in programming. Everyone does it in one form or another ("hack and pray" in production is still a form of testing, technically). Some developers and thought-leaders have very specific ideas on best practices, leading to never-ending debate. In this session we'll walk through a brief history of ideas and methodologies in testing & program specification, get some hands on basics with mocha in node.js and explore the value in test/spec-driven development. Time permitting we will take mocha for a spin on the client side as well. Requirements to follow along: node.js & console

Twitter Flight by Brandon Mason

@UAT Main Auditorium Downstairs September 12th (Thursday), 2013. 6:30-8:30. Pizza Provided.

Flight is a lightweight, component-based JavaScript framework that maps behavior to DOM nodes. Twitter uses it for their web applications. Brandon will demonstrate how to use Twitter Flight to create testable and reusable UI components.

Note that this meeting is on a Thursday (Not on our usual Wednesdays)

AngularJS by Jeff Cross (From Google)

@UAT Main Auditorium Downstairs August 7th, 2013. 6:30-8:30. Pizza Provided.

Jeff Cross, a core member of the AngularJS team at Google, will be discussing the philosophy of Angular, how to get started with building an app with Angular, and what's coming soon in the framework.

Also, a big thanks to Jeff and the Google team for providing Angular t-shirts (lots of them) which I will give out in person at the meeting

Using the Chrome Developer Tools with Javascript by Brian Murphy

@UAT Main Auditorium Downstairs July 10th, 2013. 6:30-8:30. Pizza Provided.

In this talk I'll assume you know the basics of inspecting HTML and CSS with the chrome developer tools. We'll dive into debugging JavaScript with focus on the various ways to set breakpoints and how to view stack traces. I'll also show how source maps are used to debug minified JavaScript on your production site. The talk will be based on the production version of Chrome. If time permits, we may venture into features seen in Chrome Canary so you can see what is on the horizon.



Require.js with a side of Backbone by Joe Fleming

@UAT Main Auditorium Downstairs June 4th, 2013. 6:30-8:30. Pizza Provided.

Asynchronous Module Definition, or AMD for short, is all the rage in the Javascript world. It's essential to code organization, and it has the added bonus of speeding up your site. Yet, many people still don't know what it is, how it's useful or why they should care to learn it. The goal of this presentation is to change that by showing you how to use Require.js, one of the most popular AMD libraries. In this presention, I'll walk through the use of Require.js with Backbone.js, as well as how to use r.js (Require's compilation tool) to produce fast loading, production-ready code. While the focus of the talk isn't on Backbone, I will be covering some of its concepts to make sure everyone understands what is going on. And there will be a healthy dose of live coding, so you'll get to see it all in action.

As an added bonus, I'll also be showing off Bower ( and Grunt ( as part of the process. Bower is a simple to use and extremely helpful tool for managing front-end javascript libraries like jQuery (and many plugins), Bootstrap, modernizr, normalize, Angular, Backbone, Underscore and many, _many_ others (over 2000 packages in the repo currently). Grunt is a tool for automating your javascript build process, which will save you a ton of time and make things like linting, concatinating, minifiying, compiling and testing your code a snap. These simple tools will make your web development so much easier and are worth the price of admission on their own!

jQuery Demystified (Beginner Level) by Brad Westfall

@UAT Room 206/207 (this is one room) May 8th, 2013. 6:30-8:30. Pizza Provided.

jQuery is a tool that every web developer should have in their toolbox. Some find jQuery to be much easier to program in than native JavaScript alone. However with so many different ways to accomplish the same task, these multiple techniques can be intimidating for beginners. I remember it was for me when I first started.

This presentation will teach you how to avoid the common pitfalls and how to employ some of jQuery's best practices. You will leave this presentation with real world code in your hands and knowledge of how to use it. Hopefully by the end you won't feel that jQuery is a mysterious black box tool anymore.

jQuery Starter Pack by Marcos Gonzales

@UAT Room 205 Apr 17, 2013. 6:30-8:30. Pizza Provided.

This presentation will be an introduction to unobtrusive client side Javascript using jQuery library. We will be doing two jQuery meetings back-to-back where this one will be considered the "more beginner" version and the meeting in May will be built off of this one. If you are new to jQuery this will be a must-see presentation! If you are new to programming in general, you might want to brush up on some basic skills before this meeting as this presentation will expect you to at least know basic programming concepts. Show up early if you think you'll need extra help. As always we will have pizza at the meeting.

Start Using the HTML5 Canvas Tag by Chris Smith

@UAT Room 205 Mar 20, 2013. 6:30-8:30. Pizza Provided

Come to learn the power of the <canvas> tag. Canvas gives you the ability to draw graphics to the screen like you would find in a plugin like Flash or Silverlight, but it's native in the browser! I'll share some tips that make working with Canvas easier and we'll compare <canvas> to it's evil twin <svg>.


Slides And Demos

JavaScript MVC with Backbone.JS by Rob Richardson

@UAT Room 205 Feb 20, 2013. 6:30-8:30. Pizza Provided

Separation of concerns server-side has led to higher quality, easier to maintain, loosely coupled code. Patterns such as MVC facilitate separating the presentation from the calculation. Client-side is no different, and graduating from a big blob of spaghetti in a button click event handler will yield more maintainable, higher quality code. Let's explore the various components of Backbone, a light-weight, unopinionated JavaScript MVC-like library that provides great pub/sub eventing, declarative DOM event binding, one-way model binding, client REST mechanisms for data persistence, and in-page view navigation.

Intro to Node.js by Chris Cowan

@UAT Room 205 Jan 16, 2013. 6:30-8:30. Pizza Provided

Learn the basics of Node.js by covering the basics, how to deal with nested callbacks, how to create your own modules, and walk through a node.js project.



An opinionated look at CoffeeScript and similar tools by Joe Fleming

@UAT Room 208 Dec 5, 2012. 6:30-8:30. Pizza Provided. Workshop: 6:00-6:30 Same Place

Abstraction tools have been becoming increasingly popular for a few years. Its website says "CoffeeScript is a little language that compiles into JavaScript". While people will always debate the efficiencies of these types of tools, Joe wants to offer you his straightforward opinions on why he loves CoffeeScript regardless of any debates.

Brad Westfall will also be doing a beginner level workshop on how to use jQuery to make a custom plugin.

Wildcard Presentations

@UAT Room 208 Nov 7, 2012. 6:30-8:30. Pizza Provided. Workshop: 6:00-6:30 Same Place

I want to try something a little different for this meeting. Bring in your code for a quick presentation and show it to the group (5-10 mins). Teach the group about an innovating method of solving JavaScript, HTML, and CSS common problems, present your custom plugin or algorithm, or show something your working on and get your questions answered. Presentations can (and probably will) range from beginner to advanced.

Please let me know ahead of time if you want to present something. Those who do will get first slots. Slots will be limited:

For the workshop, I want to give a small presentation on how to better use CSS and HTML. I'll show how you only need to know about 10 CSS properties to do almost everything you need.

JavaScript Design Patterns

@UAT Room 208 Oct 10, 2012. 6:30-8:30. Pizza Provided. Workshop: 6:00-6:30 Same Place

Software Design Patterns are the building blocks on which professional applications are built. jQuery, Dojo, Node, Backbone etc... are all based on various well established patterns. Knowing the patterns will help you know the framework!

Also, I'd like to invite newer JS people to come at 6 for a workshop. If this works, we'll probably have such workshops regularly from 6 to 6:30 before the official meeting starts. Please email me if your are interested in attending If you are unfamiliar with the following terms or concepts, you should come (as they are essential for understanding the patterns talk)

OOP, JSON, Constructor, Namespace, Event Handlers