Ben Ward


  • 17 Courses Completed
  • 90 Levels Completed
  • 11 Screencasts Watched
  • 220,715 Total Points

Master Status

Achievement Badges

JavaScript: 12 Courses Completed


Shaping Up With AngularJS

Client-side Frameworks

AngularJS allows your application to have an expanded HTML library. Learn to add behavior to your HTML and speed up your application’s responsiveness.

  • Flatlander's Gem Store

    Get comfortable with expressions by beginning to build a gem store.

  • Built-in Directives

    Use directives to add a gallery and tabs to the gem store.

  • Forms

    Give the gem store review functionality by using AngularJS forms.

  • Custom Directives

    Create custom directives for more organized and maintainable AngularJS code.

  • Services

    Create a new module and learn to use the $http service to get real data into the gem store.


JavaScript Road Trip Part 1

JavaScript Language

An introduction to the very basics of the JavaScript language. Build a foundation of JavaScript syntax and learn how to use values, variables, and files.

  • The Cliffs of Value

    Learn to manipulate values on the console.

  • Variable Valley

    Review how to store and use data with variables.

  • Files Falls

    Create JS files and source them within HTML code.


JavaScript Road Trip Part 2

JavaScript Language

A continued introduction to the very basics of the JavaScript language. Learn common programming mechanisms like loops, conditionals, functions, and arrays.

  • The Labyrinth of Loops

    Understand and build loops for repeated code with 'while' and 'for' syntax.

  • Conditional Canyon

    Use conditions to execute different branches of code with if-else blocks.

  • Built-In's Bluff

    Learn to use the basic JavaScript dialog box functions 'prompt', 'alert', and 'confirm'.

  • The Desert of Declarations

    Understand functions and building custom functionality.

  • The Array Archipelago

    Learn to build and manipulate the array data structure.


JavaScript Road Trip Part 3

JavaScript Language

Continue building intermediate skills within the JavaScript web programming language. Master function expressions, closures, hoisting, objects, and the use of prototypes.

  • Forest of Function Expressions

    Learn how to use and manipulate functions as expressions.

  • Cold Closures Cove

    Explore the binding of external variables into local scopes.

  • Hoisting Hills

    Build an awareness of the pitfalls of load order within a scope.

  • Ocean of Objects

    Create, fill, and manipulate the generic JavaScript object literal.

  • Plains of Prototypes

    Using the magic of object inheritance, explore classes, constructors, prototypes, and properties.


JavaScript Best Practices

JavaScript Language

Become a more informed, conscientious user of JavaScript as you explore time-tested, useful techniques that will improve legibility, performance quality, and safety in your scripts.

  • The Sword of Syntax

    Discover useful alternate syntax for conditionals and assignment.

  • The Pendant of Performance

    Explore techniques to improve execution speed and measure performance.

  • The Crystal of Caution

    Examine common JavaScript pitfalls and the best ways to avoid them.

  • The Mail of Modularity

    Learn how to organize code and protect data with a simple Module pattern.


Try jQuery


Learn the basics of jQuery 2.0, a JavaScript library, to modify elements on the page and improve user interaction.

  • Introduction to jQuery

    A gentle introduction to what jQuery is, and what it can do.

  • Traversing the DOM

    Search & walk through the DOM with selectors and traversing.

  • Working with the DOM

    Add & remove from the DOM, more traversing, and user events.

  • Listening to DOM Events

    Listen for events, handle them, and change the default event behavior of web browsers.

  • Styling

    Before landing, tame CSS with jQuery and animate elements on the page.


jQuery: The Return Flight


Learn Ajax and add more interactivity to your projects. Discover how to organize your code using jQuery Plugins and Promises.

  • Ajax Basics

    Learn what Ajax is and how it can be used.

  • JavaScript and jQuery

    Organize your jQuery and JavaScript.

  • Ajax With Forms

    Learn about how to send data to the server and work with JSON.

  • Utility Methods

    Learn about some handy utility methods including $.each and $.map while working with complicated JSON data.

  • jQuery Plugins

    Create your own reusable jQuery plugin.

  • Promises

    Use promises to make your Ajax calls reusable and organized.


Real-time Web with Node.js

Server-side Frameworks

Discover how the Node framework can help you write server-side code and build lightweight, scalable network applications.

  • Intro to Node.js

    An overview of Node.js, blocking vs. non-blocking code, reading files, issuing requests

  • Events

    Event emitters, event requests, event listening

  • Streams

    Reading, writing, piping, solving backpressure

  • Modules

    Exporting, npm installing, dependencies, and semantic versioning

  • Express

    Routes, rendering, layouts, url building, express servers


    Listening for, broadcasting, and answering questions, saving client data

  • Persisting Data

    Redis, working with lists, persisting, emitting, and limiting questions


Building Blocks of Express.js

Server-side Frameworks

Express provides more robust features to your web application. Learn how to build Web APIs in Node using Express.

  • First Steps

    Installing Express and building some first routes.

  • Middleware

    Understanding middleware and building a custom logger.

  • User Params

    Reading user-submitted parameters.

  • Body Parser

    Adding routes for creating and deleting resources.

  • Refactoring Routes

    Using route instances and extracting code to route files.


Staying Sharp With AngularJS

Client-side Frameworks

Learn how to use this modular and speedy language to create flexible directives and reusable services throughout your app.

  • Getting Started with Routes

    Start your AngularJS app off right by wiring together your templates and controllers with ngRoute.

  • Directives with Scope

    Create flexible directives to be used in any situation by using $scope, scope{}, and link!

  • Services

    Learn about the 5 available service recipes AngularJS provides. Then wrap your data calls in one and reuse throughout your ever enhancing app.

  • Reusable Directives

    Share directive controller functionality with other directives and create service classes for your external libraries.




Learn CoffeeScript, the powerful little language that compiles into JavaScript. Take a sip of our CoffeeScript tutorial & learn to get more done with less code.

  • Variables and Functions

    An overview of variables and functions

  • Applied jQuery

    Converting jQuery to CoffeeScript

  • Conditionals & Operators

    Conditionals, chained comparisons, switch cases, and existential operators

  • Arrays, Objects, Iterations

    Using arrays, object literals, loops, list comprehension, and splat arguments

  • Applied jQuery II

    Understanding and using jQuery object notation

  • Object Orientation

    Classes, class inheritance, property arguments


Accelerating Through Angular

Client-side Frameworks

Create the future of web applications by learning how to build with Angular.

  • Angular Ignition

    Get an introduction to Angular and create your first module and component with a template.

  • Template Traction

    Start with a few structural directives and then transform your view with pipes.

  • Tuning It Up

    Make your code more maintainable by organizing it into multiple components, separating your HTML and CSS, creating a data model, and splitting your data into a mock file.

  • Data Binding Boost

    Explore how to send data from JavaScript to HTML and HTML to JavaScript using one-way data binding, and then learn how to do both at the same time with two-way binding.

  • Service Fuel Injection

    Learn how to create your own services and then how to use the HTTP library to call out to the internet.

JavaScript: 6 Screencasts Watched

Electives: 1 Course Completed


Try R


Learn the R programming language for data analysis and visualization. This software programming language is great for statistical computing and graphics.

  • Using R

    A gentle introduction to R expressions, variables, and functions.

  • Vectors

    Grouping values into vectors, then doing arithmetic and graphs with them.

  • Matrices

    Creating and graphing two-dimensional data sets.

  • Summary Statistics

    Calculating and plotting some basic statistics: mean, median, and standard deviation.

  • Factors

    Creating and plotting categorized data.

  • Data Frames

    Organizing values into data frames, loading frames from files and merging them.

  • Real-World Data

    Testing for correlation between data sets, linear models, and extending R with additional libraries.

Electives: 1 Screencast Watched

HTML/CSS: 1 Course Completed


Front-end Foundations

Getting Started With HTML and CSS

Learn the fundamentals of HTML and CSS, while building a strong foundation for more advanced front-end development.

  • HTML

    Format text content and links with HTML.

  • CSS

    Change the way that content is displayed with CSS.

  • Classes and Layout

    Reuse CSS across multiple pages and layout content in well-defined sections.

  • Images

    Add content and background images to your site.

  • Fonts and Forms

    Customize fonts and add forms that accept different types of user input.

HTML/CSS: 2 Screencasts Watched

Git: 3 Courses Completed


Try Git


Learn how to use Git by reviewing the basic concepts of Git version control. Try out this introductory course that was created with GitHub.

  • Discover Git

    Discover the basics of Git, including how to initialize a repo. Learn how to add, commit, and push your code to GitHub.


Git Real


Learn more advanced Git by practicing the concepts of Git version control. Increase your Git knowledge by learning more advanced systems within Git.

  • Introduction

    Learn the basics of Git

  • Staging & Remotes

    Add and remove changed files, and work with remote repositories

  • Cloning & Branching

    Clone repositories and learn how to work with multiple branches

  • Collaboration Basics

    Work simultaneously with multiple users

  • Branching

    Work with remote branches and reference commits

  • Rebase belong to us

    Optimize merging and fix merge conflicts

  • History and Configuration

    Learn how to configure and view commit logs


Git Real 2


Learn advanced Git by practicing Git version control with Git Real 2. Continue to increase your Git skills by learning more advanced systems within Git.

  • Interactive Rebase

    Edit your commits through the use of interactive rebase

  • Stashing

    Not quite ready to commit? Git stash is the perfect solution

  • Purging History

    Accidentally commit something sensitive? Purge it!

  • Working together

    Make Git work together on multiple operating systems

  • Submodules

    Ever wanted to use another repository inside of another?

  • Reflog

    Undo almost anything and find lost commits using reflog

Git: 1 Screencast Watched

Ruby: 1 Screencast Watched