• 17 Courses Completed
  • 87 Levels Completed
  • 30 Screencasts Watched
  • 201,505 Total Points

Achievement Badges

Ruby: 9 Courses Completed


Rails for Zombies



Rails Best Practices


  • 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

  • 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


  • 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.


Rails for Zombies Redux

Getting Started With Ruby on Rails

Learn Ruby on Rails, an open-source framework for the Ruby programming language. Rails for Zombies will teach you all the Rails basics with a zombie flair.

  • Deep in the Crud

    How we work with a database in Rails by using Create, Read, Update, and Destroy (CRUD).

  • Models Taste Like Chicken

    We'll learn about ActiveRecord models, validations, and relationships.

  • The Views Ain't Always Pretty

    Get experience linking between views, using conditionals, and how to lookup documentation on common view helpers.

  • Controllers Must Be Eaten

    Sitting between our Models and Views are the Controllers, which use instance variables to keep our code organized.

  • Routing Into Darkness

    Learn how to direct requests to your app to the correct controller actions.


Rails 4: Zombie Outlaws

Intermediate Ruby on Rails

Learn to build faster and more secure web apps with Rails 4. Review the Rails updates that will help get your apps up to speed on Rails 4 best practices.

  • A Bloody Tale of Revenge

    Support for Ruby 1.9.3, ThreadSafety, and Routes

  • The Hangman's Daughter

    Changes to the ActiveRecord API, and more on ActiveRecord and changes to ActiveModel

  • Dead Man Walking

    Whitelisting user parameters with Strong Parameters and using Remote Forms. Reviewing new syntax for controller Filters, working with Session & setting Custom Flash Types

  • Concerning the Events of Santa Maria

    Reviewing new view helpers & the Ruby template handler

  • The Killing Fields

    Learning the new test structure

  • The Undead Express

    Declarative ETags, the new Dalli memcache client, and working with Cache Digests

  • Why's and Wherefores

    Streaming with ActionController::Live and faster page loading with Turbolinks


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


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.

Ruby: 9 Screencasts Watched

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

  • Fasten your Seatbelts

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

  • 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

  • Organization

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

JavaScript: 2 Screencasts Watched

HTML/CSS: 2 Courses Completed

  • 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

  • Footer & Forms

    Learn about new form elements and build a functional footer


Fundamentals of Design


Improve the visual competency of any website or application by keeping design in mind. Learn the fundamental design principles of typography, color, and layout.

  • Typography

    Learn to recognize beautiful and functional type.

  • Colors

    Review color theory and application principles.

  • Layout

    Familiarize yourself with visual hierarchy and balance.

Git: 1 Course Completed


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

Python: 1 Course Completed


Try Python

Getting Started With Python

​Explore the basics of Python and learn what it means to store and manipulate numbers and words as well as make decisions with your program.

  • Birds & Coconuts

    Get started with Python by calculating how many swallows it takes to carry a coconut.

  • Spam & Strings

    ​Learn how to store characters in a string to combine, dissect, and slice words.

  • Conditional Rules of Engagement

    Explore conditionals in Python to see how your program can make important decisions.

Database: 2 Courses Completed




Learn basic database manipulation skills using the SQL programming language.

  • The Ins and Outs of Databases

    Learn about databases from the inside out, as well as how to perform simple data queries and filter data with special query tools in SQL.

  • Managing Data

    Find out how to add, revise, and remove data in an existing database.

  • Managing Databases and Tables

    Discover basic concepts for creating and altering databases and tables.


The Sequel to SQL


​Learn the most important parts of the SQL language so you can create tables with constraints, use relationships, and write powerful join queries.

  • Aggregate Functions

    Learn how to use SQL aggregate functions, including COUNT, SUM, and AVG, to do calculations on groups of data.

  • Table Constraints

    Add constraints — like NOT NULL, UNIQUE, FOREIGN KEY, and PRIMARY KEY — to your tables to increase data integrity.

  • Normalization and Relationships

    Apply normalization rules to create tables without duplicate data and build the appropriate relationships.

  • Inner Joins, Aliases, and Outer Joins

    Explore writing a single query to pull data from multiple tables and using aliases to create succinct queries.

  • Subqueries

    Dive deeper as you learn how to write queries within queries.

Database: 1 Screencast Watched