• 20 Courses Completed
  • 23 Screencasts Watched
  • 250,850 Total Points

Path Status

Achievement Badges

Ruby: 8 Courses Completed


Rails for Zombies



Rails Best Practices

Learn Rails best practices with the most useful Rails patterns and techniques. If you're a Rails developer, consider this your new Rails programming playbook.

  • Controllers in Space

    Fat model/skinny controller, named scopes, scopes with lambda, default scopes, model creation scopes, skipping a filter

  • Controller Command

    Nested attributes, models without the database, using Presenters, rejecting SQL injection, Rails 3 responder syntax

  • Model Pitfalls

    Basic & compound indices, protecting your attributes, using default database values, using callbacks properly, improving validation, database seeding

  • Model Bert

    Optimizing n+1 queries, using counter_cache, batches of find_each, applying The Law of Demeter, using to_s and to_param in the model

  • Froggy Views

    Refactoring views, using helpers, rendering content with partials, handling empty strings, using content_for, meta yield


Rails for Zombies 2

Getting Started With Ruby on Rails

Learn more Rails with this sequel to the infamous Rails for Zombies course. Increase your Ruby on Rails knowledge with even more zombie learning.

  • From the Ground Up

    Installing Rails, creating a Rails app, database migrations, the command line, Ruby 1.9 hash syntax, Bundler, database configuration

  • Models Still Taste Like Chicken

    Named scopes, callbacks, has_one, relationship options, using Includes, has_many :through

  • Rest In Pieces

    Revisiting URL helpers, forms & input helpers, understanding REST, nested resources, view partials, other view helpers

  • Asset Packaging and Mailing

    Sending attachments in mail, asset tags, using the Asset Pipeline, CoffeeScript, creating and sending mail, SCSS, using the JavaScript manifest

  • Rendering Extremities

    Custom RESTful routes, creating AJAX links, rendering custom JSON, AJAXified forms, controller rendering options, sending server JavaScript, using JSON data


Try Ruby

Getting Started With Ruby on Rails

Learn the basic building blocks of Ruby, all in the browser.

  • All For One, One For All

    Get an introduction to numbers, Strings, properties, and methods.

  • There Are Always Two

    Learn about conversions, arrays, variables, and more methods.

  • Third Time's The Charm

    Review printing, brackets, and String manipulation.

  • Fourth and Short

    Take a shot at method chaining, hashes, keys, and values.

  • The Highest of Fives

    Study up on blocks, directories, and method arguments.

  • Sixth Sense

    Start building methods, libraries, popups, and HTML with Ruby.


Rails Testing for Zombies

Rails Testing

Learn Rails testing for your applications with these testing fundamentals. Brush up on testing best practices with Rails Testing for Zombies.

  • Test Unit

    Testing philosophies, overview of Test Unit, TDD (Test Driven Development), and using assertions

  • Model Testing

    Preparing the database, running tests, using fixtures, and testing relationships

  • Cleaning it up

    Writing custom assertions, using Test Helper, and introducing Shoulda

  • Mocks and Stubs

    Understanding and using mocks and stubs with Mocha

  • Integration Tests

    Rails integration commands, integration testing with Capybara, and writing and using helper methods

  • Using Factories

    Creating factories, adding associations between factories, and implementing factories in your tests


Testing with RSpec

Rails Testing

Learn to use this trusted testing framework for Ruby applications. Brush up on testing best practices with our Testing with RSpec course.

  • Introduction

    An overview of RSpecs basic syntax and installation.

  • Configuration & Matchers

    Setting up RSpec in a Ruby or Rails project and digging into some RSpec Matchers.

  • DRY Specs

    See how to organize your specs better making readability much easier.

  • Hooks & Tags

    Before hooks, shared examples and RSpecs use of metadata.

  • Mocks & Stubs

    A tour through how RSpec uses mocks and stubs.

  • Custom Matchers

    Walkthough the creation of a custom matcher from scratch.


Ruby Bits

Ruby Language

Learn the core bits every Ruby programmer should know. This Ruby tutorial builds upon the basics to keep enhancing your Ruby knowledge.

  • Expressions

    An overview of best practices for writing expressions in Ruby

  • Methods and Classes

    passing optional arguments, raising exceptions, using begin/rescue/end, attr_accessor vs. attr_reader

  • Classes

    Encapsulation, instance & private methods, inheritance, and refactoring

  • ActiveSupport

    Helpers that are built on top of the Ruby Language (arrays, dates, hashes, numbers, and strings

  • Modules

    Namespacing methods, Mixins vs. class inheritance, method hooks, ActiveSupport::Concern

  • Blocks

    Iterating and yielding, passing arguments, returning variables, Enumerable, and refactoring


Rails 4 Patterns

Intermediate Ruby on Rails

Learn helpful patterns and techniques for building and maintaining complex Rails applications. Make your application easily scale in size and complexity.

  • Models

    Use Models to encapsulate core business logic and avoid common ActiveRecord pitfalls.

  • Scopes and Class Methods

    Learn the intricacies of using class methods that run queries, and learn the benefits of using scopes.

  • Concerns

    Review how to extract reusable code into Model and Controller concerns.

  • Decorators

    Extract view logic out of Models with Decorators.

  • ActiveModelSerializers 1

    The basics of using ActiveModelSerializers to build a JSON API.

  • ActiveModelSerializers 2

    Use ActiveModelSerializers to simplify your JSON API.

  • FineTuning

    Speed up queries, secure user parameters and manage your processes.

Ruby: 10 Screencasts Watched

HTML/CSS: 4 Courses Completed


Functional HTML5 & CSS3

Learn to build functional sites with HTML5 & CSS3. Watch design video tutorials and take programming challenges with our Functional HTML5 & CSS3 course.

  • HTML5

    Learn about the new tags in HTML5

  • CSS3

    Review the new properties in CSS3

  • Header & Navigation

    Build a functional header and navigation area

  • Content

    Develop the content sections of a site

  • Placeholder Completion Badge

    Footer & Forms

    Learn about new form elements and build a functional footer


CSS Cross-Country

Intermediate CSS

Learn the fundamentals & foundational elements of CSS with CSS Cross-Country. Review all the web-styling necessities for front-end efficiency.

  • Frost-Proof Fundamentals

    Adding style, selectors, the cascade, and floats

  • Clear Carving

    Clearing floats, inheritance, and specificity

  • Box Bindings

    The box model, positioning, and z-index

  • Grooming Your Code

    DRY, display types, and centering

  • CSS Safety

    Protecting your layout and specificity problems

  • Image Issues

    Image use and image cropping

  • Sprightly Slaloms

    Image replacement and sprites

  • Pseudo Sitzmark

    Pseudo classes and pseudo elements


Journey Into Mobile

Intermediate CSS

Learn mobile web design with mobile-first, adaptive, and responsive web design concepts. Review the best practices with our Journey into Mobile course.

  • Foundations for Mobile

    The mobile web and relative font-sizing

  • Fluid Layouts

    Learn the foundations for creating scalable, fluid sites

  • Adaptive Adventures

    Create sites that adapt to a specific context

  • Responsive Adventures

    Create device-agnostic sites optimized for all viewports

  • Responsive Media

    Learn how to scale images, video, and work with retina graphics


Assembling Sass

CSS Preprocessors

Learn Sass and start improving your front-end CSS workflow. Try Sass on large-scale applications for efficient, time-saving styling.

  • Foundation

    An introduction to Sass, imports, comments, and nesting.

  • Variable

    Creation and use of recallable information.

  • Mixin

    Writing reusable styles mixed with optional arguments.

  • Extend

    Easily manage CSS class reuse and inheritance in the stylesheet, rather than HTML.

  • Directive

    A primer on the programmatic tools in Sass, including functions and each loops.

  • Math + Color

    Perform arithmetic and color alterations directly to stylesheet values.

  • Responsive

    Simplify and optimize your responsive design workflow via Sass.

HTML/CSS: 2 Screencasts Watched

JavaScript: 5 Courses Completed

  • Just Enough JavaScript

    Creating variables, dialogs, object & string functions, number-related operations, working with arrays.

  • Take Off

    Downloading jQuery, minified Javascript, loading jQuery, the DOM & jQuery selection, nested elements, pseudo-classes & direct descendants.

  • View from 30,000 Feet

    Direct manipulation with CSS, manipulating multiple attributes, adding & removing classes, toggling classes, hiding & showing content.

  • Contents may shift

    Retrieving & setting text content with text(), querying & setting DOM with html(), manipulating DOM with append() & prepend(), creating peers with :before & :after, adding & removing nodes.

  • Placeholder Completion Badge

    Fasten your Seatbelts

    Using document.ready, writing named functions, using click event listeners, keyboard events, animations, AJAX load()


jQuery Air: Captain's Log

Learn jQuery best practices & useful techniques of jQuery's efficient JavaScript library. Let jQuery Air: Captain's Log help you make the most of your code.

  • Events

    HTML & Text value, HTML5 data attributes, click events, binding & unbinding events, using multiple click handlers, live vs. delegate

  • Ajax

    $.ajax, error handling & callbacks, aborting AJAX & timeouts, receiving and parsing JSON, using JSONP, sending form data

  • Effects

    Chaining effects & adjusting speed, animating with CSS, effect easing, using a queue, adding a delay, stopping an effect

  • Placeholder Completion Badge


    Each & Map utility functions, creating your own utility functions, creating plugins, encapsulating your code, custom events, jQuery templates




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


Anatomy of Backbone.js

Client-side Frameworks

Learn Backbone.js and start building sophisticated and structured web apps. Try out Backbone’s JavaScript library with a RESTful JSON interface.

  • Introduction

    Learn the very basic of Models and Views.

  • Models

    More on Models, such as syncing to/from the server.

  • Views

    View events, templates, and customization.

  • Models & Views

    More on how Models and Views work together with event binding.

  • Collections

    Working with a set of models with Backbone Collections.

  • Collection Views

    Displaying a Collection with a Collection View.

  • Router & History

    Supporting pushState history and multiple URLs.


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: 4 Screencasts Watched

Git: 2 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.

  • Placeholder Completion Badge

    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

Electives: 1 Course Completed


Discover DevTools


Learn how Chrome DevTools can sharpen your dev process and discover the tools that can optimize your workflow and make life easier.

  • Elements

    Dig into the elements panel, learn how to make changes to the DOM and update styles.

  • Sources

    New workflows to speed up your development time.

  • Console

    Review the DevTools console and learn how to examine exceptions and use timesaving shortcuts.

  • Debugging

    Great workflows for debugging problems in your JavaScript.

  • Network

    Speed up your network interactions using the network tab and the page speed extension.

  • Profiles

    Get familar with your applications rendering performance and learn how to use CPU profiling to identity performance problems.

  • Memory

    Learn how to find and identify memory leaks in your application.

Electives: 5 Screencasts Watched

iOS: 1 Screencast Watched