cm21

cm21

Member Since March 5, 2014

Tenure-track full-time Computer Science faculty at a two-year college. 👍

150,854

Total Points

Points are earned whenever you take an important action on Treehouse.
Learn more about when and how points are earned.

Skills & Experience

  • Spoken Languages

    • English
  • Awards

    • Academic Excellence Award (Western Governors University, July 2018)

1966 Achievements

  • Styling Images
  • Styling Boxes
  • Styling Text
  • Mobile-First CSS Layout
  • Welcome to Basic Statistics for Data Analysis
  • Technical Interviewing
  • Telling the Story
  • Designing for your User’s "To-be"
  • Understanding your User’s “As-is” Scenario
  • Becoming Acquainted with Your User
  • Becoming a Design Thinker
  • How to Have 1:1's
  • Preparing Design Files for Developers
  • Designing with Developers
  • Tools and Techniques
  • The Deeper Negative Impacts on Society
  • Tricky Interfaces & Dirty Data
  • Introduction to Ethical Design
  • Build an Accessible Form
  • Welcome to Basic Math for Data Analysis
  • Retrieve Related Data in Sequelize Queries
  • Create Related Data Using Sequelize Models
  • Data Relationships in Sequelize
  • Understand Data Relationships
  • Validating Data
  • The Importance of Data Validation
  • Introduction
  • Going Beyond & Best Practices
  • Introduction to User Onboarding
  • Give and Receive Feedback
  • Clean Routes and Custom Validation
  • Accessing Data using Resources
  • Laravel CRUD operations
  • Seeding the Database
  • Multidimensional Arrays
  • Loop Through Arrays
  • Store Multiple Values in an Array
  • Working with 'for' Loops
  • Simplify Repetitive Tasks with Loops
  • Testing for Accessibility
  • Mobile Accessibility
  • Accessible UI Patterns
  • Semantic HTML and WAI-ARIA
  • WCAG 2.0 (and Other Standards)
  • Access for Everybody
  • Loop Through Objects
  • Object Basics
  • Imposter Syndrome
  • MVC (Model)
  • MVC (View)
  • MVC (Controller)
  • Application Navigation (Routing)
  • Getting Started With Laravel
  • Interaction Design in Practice
  • Theories and Psychology
  • Making Decisions in Your Code with Conditional Statements
  • Working With Strings
  • Cookies
  • Arrow Functions
  • Pass Information Into Functions
  • Create Reusable Code with Functions
  • Voice and Tone
  • User Interface Library
  • Visual Design Language
  • Material Design Components
  • Designing for iOS
  • Working With Human Interface Guidelines
  • Working With Material Design
  • Understanding Design Systems
  • Storing and Tracking Information with Variables
  • The Math Object
  • Working with Numbers
  • Hello, JavaScript!
  • React Component Patterns
  • Going Further with Type
  • Laying Out Type
  • Web Typography
  • How to Choose and Use Fonts
  • Introduction to Typography
  • PHP Inventory
  • Analysis
  • Interviewing
  • Recruiting Participants
  • Filtering Inputs and Escaping Outputs in PHP
  • $_GET and $_POST
  • PHP Includes
  • Bringing It All Together
  • Templating Languages
  • Searching Names
  • Sorting Algorithms
  • Setting Up Authorization in PHP
  • Building Authentication in PHP
  • Running Apps On a Device
  • Creating a Data Model
  • Improving our User Interface
  • Collections and Random Numbers
  • Views and View Controllers
  • Getting Started With iOS Development
  • Branches
  • Branches on Git Hosting Services
  • LTV Analysis by Example
  • Programming AJAX
  • Practicing Getters and Setters
  • Practice Functions
  • Prototyping with a Design System
  • Practicing Classes
  • Material Design Basics
  • Understanding Design Systems
  • AJAX Concepts
  • Practicing Object Basics
  • Regular Expressions
  • Principles of Design
  • Elements of Design
  • Getting to Know Tuples
  • The Cash Flow Statement
  • The Balance Sheet
  • The Profit & Loss Statement
  • Introducing Financial Statements
  • Sequence Operations
  • Sequence Iterations
  • Packing and Unpacking
  • Getting Info In and Out of Functions
  • Introduction to Functions
  • JSON Web Tokens
  • Iterating and Packing with Dictionaries
  • Introducing Dictionaries
  • Adding the Game Logic
  • Exploring pandas
  • Meet pandas
  • Making the Game Interactive
  • Performing CRUD Operations
  • Defining Models
  • Getting Started with Sequelize
  • Rendering the Game
  •  Building Constructor Methods and Generating Objects
  • Checking Out and Returning a Book
  • The Role of Selectors in JavaScript
  • Pseudo-classes and Combinators
  • Improving Quality Assurance Practices
  • Bug Reporting
  • Exploring Async/Await
  • If Statements
  • Numbers
  • Strings
  • Methods
  • C# Syntax
  • Understanding Promises
  • React Router and Authentication
  • Implementing Basic Authentication
  • Introducing the Authentication Project
  • Asynchronous JavaScript with Callbacks
  • Hierarchy and Layout
  • Writing Copy
  • Testing Existing Projects
  • Test Driven Development
  • What is Asynchronous Programming?
  • Introduction to Unit Testing
  • Remote Branches
  • Merging
  • Executing Tests
  • Writing Manual Test Cases
  • Why We Test
  • Selector Basics
  • Practical Jenkins
  • Pipelines
  • How Jenkins Works
  • Implementing UX Content
  • Refactoring and Modularizing a REST API
  • Create, Read, Update, Delete
  • Managing Data and Asynchronous Code
  • Getting to Know REST APIs
  • Creating UX Content
  • Starting with Some Methods
  • Errors and Exceptions
  • Asynchronous Code in Express
  • The Rough Plan
  • Endpoints and Routing
  • REST API in Slim
  • Quantitative Methods
  • Common Commands
  • Directories and Files
  • The Command Shell
  • Usability Studies
  • Java Maps
  • Stateful Components and Lifecycle Methods
  • Stateful Components
  • Managing State and Data Flow
  • Interactivity in Adobe XD
  • Java Lists
  • Prototyping Designs in Adobe XD
  • Introducing Adobe XD
  • Qualitative Studies
  • Generics in Java
  • Building an MVC Project
  • Interfaces in Java
  • Model View Controller
  • Selecting Relevant Data
  • How to Critique Design
  • Handling Bad Data
  • “Clean” or “Dirty” Data
  • UX Content Attributes
  • UX Content Basics
  • Putting It All Together
  • Embracing the Process
  • Curating the Work
  • Portfolio Goals
  • Demystifying the Portfolio
  • Java Inheritance
  • Measuring Your Designs
  • Introducing Props
  • Build Modular Interfaces with Components
  • Thinking in Components
  • First Steps in React
  • Merge Sort and Linked Lists
  • Introducing IntelliJ and Unpacking Packages
  • The Merge Sort Algorithm
  • Building a Linked List
  • Exploring Arrays
  • How to Make Wireframes in Adobe XD
  • How to Make Wireframes in Sketch
  • How to Make Wireframes in Balsamiq
  • Recursion and Space Complexity
  • Algorithms in Code
  • How to Make Wireframes on Paper
  • Time Complexity
  • What is Wireframing?
  • Introducing 'Four in a Row'
  • Playing a Counting Game
  • Additional Scraping Tasks
  • A World Full of Spiders
  • Introducing Data Scraping
  • Array Programming
  • Array Organization
  • Applying IA
  • Evaluating IA
  • Getting the REST You Need 2
  • Main Principles
  • Planning Your Users’ Journey
  • Meet NumPy
  • Strategy: Determining Goals for your Product
  • Understanding Our Users
  • Intro to User Experience (UX) Design
  • What is Information Architecture?
  • Persuasive Patterns
  • UI Patterns
  • JavaScript Objects and Conditionals
  • JavaScript Arrays and Loops
  • JavaScript Functions
  • Data Types and Variables
  • Designing with Patterns
  • Refactoring Using Codable
  • Dark Sky API Client
  • Connecting Room to the UI
  • Working with Room
  • JavaScript Frameworks, Libraries, and Developer Roles
  • Data Persistence Basics
  • JavaScript Outside of the Browser
  • Downloading JSON Data Asynchronously
  • Fetching Data From the Web
  • Modeling Forecast Data
  • Building a Flashcard App
  • Sweeping Vues: Loops, Methods, Directives
  • What a Beautiful Vue!
  • Introducing Vue
  • Connect the Data
  • Adapters and ViewHolders
  • Displaying Lists of Data
  • Updating the Data Model
  • Parsing Different JSON Structures
  • Segmenting and Protecting Data
  • Adding User Sign-In and Sign-Out
  • Adding User Registration
  • Introducing ASP.NET Identity
  • Sinatra Layouts
  • HTML Forms
  • Practice ERB Templates
  • Getters and Setters
  • Object Basics
  • Dynamic Keys and Inheritance
  • Using Lists
  • Meet Lists
  • JavaScript Tools and Workflows
  • JavaScript is Everywhere
  • All Together Now
  • Functions and Looping
  • Types and Branching
  • Meet Python
  • WebDriver Input Actions
  • WebDriver Waits
  • Use Selenium with Testing Frameworks
  • Hooking Up the Model to the View
  • Building the Weather UI
  • Working with JSON
  • Concurrency and Error Handling
  • Networking
  • Exploring an API
  • Working with Classes in JavaScript
  • Introduction to Object-Oriented JavaScript
  • Error Handling
  • Parsing to Non-Primitive Types
  • An Overview of Codable
  • Environment Variables
  • GitHub and Other Remote Repositories
  • Managing Committed Files
  • First Commits
  • Telling the Story
  • Designing for Your User’s "To-be"
  • Understanding your User’s “As-is” Scenario
  • Becoming Acquainted with Your User
  • Becoming a Design Thinker
  • Writing a Classifier
  • Machine Learning Vocabulary
  • Introduction to Machine Learning
  • Error Checking
  • Conditional Formatting
  • Pivot Tables
  • LOOKUP Functions
  • Practice Updating Resources
  • The Design Solution
  • The Design Problem
  • Design Principles
  • What is Product Design?
  • Practice CRUD Operations
  • Data Eruption
  • Chart Toppers
  • Getting Started with Data Visualization
  • Vulnerabilities: Configuration, Components, and Logging
  • Vulnerabilities: Authentication, Access, and Sensitive Data
  • Vulnerabilities:  Injection, XSS, CSRF
  • The OWASP Top 10 Explained
  • Defining Routes
  • Practice Creating Scaffolds
  • Creating and Modifying Database Tables
  • Understanding jQuery Events and DOM Traversal (2017)
  • Working with jQuery Collections (2017)
  • Introducing jQuery (2017)
  • Maintaining Secure Web Apps
  • Protecting Data and Keeping Attackers Out
  • Why Protect Your Web Apps
  • Using Interfaces in PHP
  • Using the Discovery Service
  • Using the Conversation Service
  • Introducing the Watson APIs
  • Combining Array Methods
  • The Data Analysis Process
  • Getting to Know Your Data
  • Introducing Data Analysis
  • Saving a Selfie
  • Adding Metadata to Photos
  • GPU Based Approach
  • Image Processing
  • Playing with Filters
  • Active Record Associations
  • Python File Systems Navigation
  • More Association Options
  • Practice forEach
  • Reusable GraphQL
  • Making Changes with Mutations
  • Fetching Data with Queries
  • Getting Started with GraphQL
  • Python File Systems Project Starter
  • Using Associations in Your App
  • Team Collaboration in Figma
  • Prototyping Designs in Figma
  • Create a Banner Ad
  • Hello, Photoshop!
  • Digital Media Basics
  • Introducing Figma
  • Pinching, Panning and Zooming
  • Iteration
  • Gotchas and Wins
  • Creation
  • Array Manipulation
  • Browsing An Album
  • Array Iteration
  • Create Function Using Arrow Syntax
  • Using Template Literals
  • Taking Photos
  • Defining Variables With let and const
  • Go Concurrency Overview
  • Building Forms With Bootstrap
  • Using Bootstrap Components
  • Responsive Layouts With the Bootstrap Grid
  • Planning Our Service
  • Getting to Know Bootstrap 4
  • Python File Systems Manipulation
  • Designing Interfaces in PHP
  • Ruby Conditionals
  • Ruby Numeric Types
  • Ruby Objects
  • Ruby Strings and Escape Sequences
  • Ruby Syntax
  • Improving Our Code
  • Go Data Structures Overview
  • Testing and Debugging
  • Basic Android Programming
  • Creating the Screen Layout
  • Going Further with Grid Layout
  • Getting Started with Android
  • Flexible Sized Grids
  • Sharing Code Across Xamarin Platforms
  • Cross-platform Development with Xamarin
  • Introducing Grid Layout
  • Getting Started with Xamarin
  • Exploring Best Practices
  • Test Drive
  • Dockerize a Web App
  • Managing Images and Containers
  • Building Images Using Dockerfiles
  • Fundamentals of Docker
  • Docker Use Cases
  • Refining the App
  • Building the Application
  • Setting up with Create React App
  • Meet Selenium
  • Abstract Classes in PHP
  • Validating a Form with Regular Expressions
  • Reformatting User Input
  • Design Patterns
  • Page Layout
  • Installing WordPress Locally
  • Regular Expressions
  • Security in Practice
  • Common Attacks and Defenses
  • Hello Internet!
  • Rehearsal and Delivery
  • Creating and Refining
  • Preparing to Present
  • Deleting and Updating Data
  • Fetching Data Using Fetch Requests
  • Inserting and Saving Data Using a Context
  • Understanding the Core Data Stack
  • Integrating 3rd Party APIs
  • Implementing Redux
  • Implementing React Native
  • Why React Native
  • Testing and Debugging
  • Improving Our Code
  • Basic Android Programming
  • Creating the Screen Layout
  • Getting Started with Android
  • Go Custom Types Overview
  • Exploration
  • Discovery
  • Bokeh Visualizations
  • Bokeh Data
  • Finishing the Game
  • Introducing JavaScript
  • Generics and Protocols
  • Generic Functions, Parameters and Constraints
  • Practicing Data Visualization in Excel
  • Chart Formatting and Layout
  • When To Use What Type of Chart
  • Introduction To Data Visualization
  • Dice Roller
  • Python: Advanced Objects
  • Obtaining a Location Fix
  • Authorization with Third Party Libraries
  • Adding Reviews and a Map
  • Retrieving Restaurant Details Using Operations
  • Simplifying Networking Code
  • Callbacks and the DOM
  • Callbacks with Timers
  • Introduction to Callback Functions
  • Day 3: Getting Creative
  • Day 2: Advanced Selecting
  • Day 1: Joining Tables
  • Big Data at Netflix
  • Where and How Big Data Is Used
  • What is Big Data
  • Orientation: Selecting Data
  • Serving Static Files in Express
  • Applying Express Knowledge
  • Middleware
  • Deeper into Routing with Express
  • Going Further with HTML
  • Images, Text and Links
  • Structuring Your Content
  • Getting Started With HTML
  • Go Flow Control Overview
  • Go Syntax Overview
  • S3 Storage Service
  • AWS and "The Cloud"
  • Lists, Code, Links and Images
  • Understanding Markdown
  • Using Templates with Express
  • Getting Started with Express
  • Python: Inheritance
  • Show Me the Data
  • Extending the Family
  • Inheritance
  • Data Access Design Patterns
  • Security: Solutions
  • Security: Concerns
  • Entity Framework and ASP.NET MVC
  • Completing the Project
  • Project Setup
  • Generic Types
  • The Rest of the Story
  • Finishing the User Interface
  • The Model-View-Presenter Pattern
  • Intents and Multiple Activities
  • User Input in Android
  • Transitions, Gestures and More
  • Add Reusable Logic to Your Sass
  • Write Smart and Efficient CSS with Sass
  • Going Further with Routing
  • Navigating, Nesting and Redirecting Routes
  • Getting Started with React Router
  • Introduction to CollectionViews
  • Improve Your Workflow with Sass
  • Getting Started with Sass
  • Browser Persistent Data with PHP
  • Higher Order Functions
  • Building Standard Library Functions
  • Downloading Album Artwork
  • Requesting Real Data
  • Building the User Interface
  • URLs and Parameter Encoding
  • Enhancing the iTunes Endpoint
  • Game Audio
  • Score, Enemies, and Game State
  • Themes and Compatibility
  • Pickups
  • Modeling iTunes Search Results
  • Scala Collections
  • Functional Programming with Scala
  • Player Input and Cameras
  • Closure Expressions
  • Using Styles in Layouts
  • Python: Instant Objects
  • Build and Share a Unity Game
  • Media Basics
  • Captioning Video
  • Optimization Best Practices
  • Asset Optimization
  • Camera Switching
  • Camera Movement
  • Image Effects
  • Camera Basics
  • Why Web Performance Matters
  • The Unity Editor and Scene Setup
  • Positional Audio
  • Gameplay
  • Build a Spreadsheet
  • Spreadsheet Best Practices
  • Spreadsheet Functions & Formulas
  • Getting Started With Spreadsheets
  • Introducing Spreadsheets
  • Building an Alexa Skill
  • Physics Scripting
  • Physics Setup
  • VR Setup
  • Decoupling the Data Source
  • Sorting Contacts Into Sections
  • Tuning the User Interface
  • Testing and Publishing an Alexa Skill
  • Alexa Skills Kit Overview
  • Introduction to Video Games
  • Static Table Views for Detail Interfaces
  • Displaying Contact Data
  • A High Level Overview
  • Services in Angular
  • Angular Basic Forms
  • Angular Components
  • Dark Sky API Client
  • Angular Form Validation
  • Setting Up an Angular Application
  • Downloading JSON Data Asynchronously
  • Fetching Data From the Web
  • Modeling Forecast Data
  • First Class Functions
  • Extensions and Protocols
  • Error Handling and Memory Management
  • Parsing Specific Formats
  • Basic File Handling
  • Setting Up an Authorization System
  • Tutorialized Controls
  • World Space UI
  • Introduction to User Interfaces in VR
  • Digging Deeper Into Migrations
  • Getting Started with Using Migrations
  • Adding an Authentication System
  • Writing Unit Tests
  • Test Driven Development
  • What To Test
  • Unit Testing
  • Build a Library
  • Personalizing The Story
  • Refactoring Our Code
  • Creating the User Interface Programmatically
  • Adding Sound Effects
  • Creating a Story
  • WordPress Plugin Best Practices
  • WordPress Widgets
  • Custom Post Types in WordPress
  • Navigating Through An Adventure
  • Customizing WordPress Themes
  • WordPress Themes
  • What Is WordPress?
  • Creating a GitHub Client
  • Writing Great Swift
  • Getting Data From an API With Node
  • Handling Errors in Node
  • The Delegate Pattern
  • Using the Delegate Pattern in iOS
  • Creating a Command Line Weather Application
  • Introduction to Node.js
  • What is Authentication
  • Value Semantics, Type Methods and Inheritance
  • Properties
  • Object Initialization
  • Communicating with a RESTful API
  • Memory Management in Swift
  • Access Control
  • Editing and Filtering Names
  • Improving the Application Code
  • Adding and Removing Names
  • Security and Customization
  • Make the REST Framework Work for You
  • RESTful Django
  • Query Operators
  • Query Builder
  • Functional!
  • Now You're Querying!
  • CRUD Operations
  • Extending Our Entity Data Model
  • LINQ Queries
  • Entity Framework and Databases
  • Introducing Entity Framework
  • Users and Authorization
  • Django Authentication
  • Dungeon Game 2
  • Python Sets
  • Python Tuples
  • Python Dictionaries
  • Python Slices
  • Creating a Basic Form
  • Adding Form Validation
  • Improving Our Form
  • Finishing Our CRUD Web App
  • API Protection
  • Resourceful Blueprints
  • Polymorphism
  • Abstraction
  • System.Object
  • Python Lists
  • Reading and Writing Reports
  • Data-Driven Application Design
  • Integrating Hibernate with Spring
  • Getting Started with CRUD in Spring + Hibernate
  • File Uploads and Entity Updates in Spring + Hibernate
  • Customizing Class-based Views
  • Updating and Deleting Records
  • Protocol Basics
  • Creating Records
  • Detail View
  • Classy Views
  • But Wait There's More!
  • List View
  • Creating Flexible Objects Using Protocols
  • Bound Services
  • Error Handling
  • Sinatra Finishing Touches
  • For All Intents and Purposes
  • Displaying Additional Views
  • Using the Vending Machine
  • Implicit Intents and Intent Filters
  • Loading Data From a Resource
  • Modeling an Interface
  • Broadcast Receivers
  • Local Notifications
  • Complex Data Structures
  • Classes in Swift
  • Class Inheritance
  • Differentiating Between Objects
  • Delivering the MVP
  • Serialized!
  • Data Retreiver
  • Teleporting
  • Raycasting and Line Rendering
  • Locomotion Overview
  • Introducing Services
  • Updating Data in Sinatra
  • Adding New Data in Sinatra
  • Sinatra ERB Templates
  • Creating New Sinatra Apps
  • Putting it all Together
  • Actions, Dispatch and Reducers. Oh my!
  • Modularizing the React Scoreboard Application
  • Getting Started with Redux
  • Creating the MVP
  • Harnessing the Power of Objects
  • Objects and Optionals
  • Introduction to Optionals
  • Meet Objects
  • Improving Our User Interface
  • Introduction to Enumerations
  • Running Apps on a Device
  • Structs As Data Models
  • View Controllers and Views
  • Getting Started with iOS Development
  • Control Flow With Conditional Statements
  • Control Flow With Loops
  • Dictionaries in Swift
  • Arrays
  • Sets and Dictionaries
  • Lists
  • Traversing the DOM
  • Responding to User Interaction
  • Adding Power to Functions
  • Functions in Swift
  • Making Changes to the DOM
  • Getting a Handle on the DOM
  • The Browser Environment
  • Introduction to Collections
  • Swift Operators
  • Swift Types
  • An Introduction to Swift Programming
  • Filtering the Data
  • Saving and Displaying Selfies
  • Adding Metadata to Photos
  • Interacting with Objects
  • Room-Scale Setup
  • Room-Scale Overview
  • Adding Image Filters
  • A Route to a Delete Action
  • Routes to Update Actions
  • Routes for Create Actions
  • A Route to a Read Action
  • Decoupling the Data
  • Rails Resource Index
  • Saving Data with CloudKit
  • Recording a Voice Memo
  • Adding the UI
  • Learning Anko
  • Introducing CRUD Applications
  • Total Control
  • DOM Traversal
  • DOM Manipulation
  • Events
  • Going Further with Routes
  • Navigating and Nesting Routes
  • Getting Started with React Router
  • Intro to Unit Testing 2
  • Hello, jQuery!
  • Introduction to Unit Testing
  • Basic ORM Usage
  • Project Setup
  • Subqueries
  • Set Operations
  • Joining Table Data with SQL
  • Table Relationships
  • Database Keys
  • Database Normalization
  • PHPDB Stage 5: Search
  • PHPDB Stage 4: Pagination with LIMITs
  • Data Parser
  • PHPDB Stage 3: Using Relational Data
  • Is This Thing On?
  • Putting It All Together
  • Component Lifecycle
  • Designing Dataflow
  • Modelling Solitaire
  • Hello Kotlin!
  • Stateful Components
  • Taking a Selfie
  • Thinking in Components
  • First Steps in React
  • Data Reader
  • Positional Audio
  • Gameplay
  • Physics Scripting
  • Physics Setup
  • VR Setup
  • Loops and Final Touches
  • Encapsulation with Properties
  • Encapsulation and Arrays
  • Inheritance
  • Adding a Model Attribute
  • Using the Rails Console
  • Handling Rails Requests
  • Creating Rails Apps
  • Transitions, Gestures and More
  • Show Me the Data
  • Building a Collection
  • Building the Recipe
  • Understanding Classes
  • PHP Loops
  • PHP Arrays
  • PHP Conditionals
  • PHP on the Web
  • Daily Exercise Program
  • Unit Converter
  • Getting to Know PHP
  • Classes
  • Objects and New Collection Types
  • The Cooler Parts of ES2015
  • ES2015 Basics
  • Express Middleware
  • Sessions and Cookies
  • Introduction to CollectionViews
  • User Registration and Login
  • What is Authentication?
  • Deleting and Updating Data
  • Fetching Data Using Fetch Requests
  • Inserting and Saving Data Using a Context
  • Understanding the Core Data Stack
  • Adding a List Page
  • Modeling and Presenting Data
  • Paged Scrolling
  • Understanding Scroll Views
  • Views
  • Controllers
  • Methods
  • Building Standard Library Functions
  • Managing Fragments
  • Completing and Testing the API
  • Communicating with Mongo Through Mongoose
  • Modeling Data for the API
  • Building API Routes in Express
  • Project Setup
  • Building a REST Service
  • Introducing Fragments
  • First Class Functions
  • Ingredients and Directions
  • Tablet Time
  • Closure Expressions
  • User Messages in Spring
  • Closures in Cocoa Touch
  • Asynchronous Error Handling
  • Implementing Maps and Search
  • Obtaining a Location Fix
  • Displaying Data in Table Views
  • Enhancing the Networking Stack
  • URLs and Parameter Encoding
  • Tying It All together
  • Review
  • Interfaces
  • Inheritance
  • Diving Deeper
  • Unit Testing
  • UI Testing with Espresso
  • Unit Testing - Now Featuring Robolectric!
  • Objective-C in Action
  • Intermediate Topics in Objective-C
  • The Objective-C Mindset
  • Basic Types, Structures and Syntax
  • Introduction to UITableView
  • Implementing a Forecast Client
  • Protocol Oriented Networking
  • Fetching Data From the Web
  • Auto Layout in Code
  • Visual Format Language
  • Inequalities, Content and Priorities
  • Improving Our Tests
  • Next Steps
  • Moving from Swift to Objective-C
  • Trait Collections
  • Introduction to Maya’s Animation Tools
  • Intermediate Polygon and Deformation Tools
  • Introduction to Curves and Surfaces
  • Extruding Surfaces from Curves
  • Advanced Duplication Options
  • Modeling Forecast Data
  • The Constraint Equation
  • A History Lesson
  • Behavior Driven Development with Mocha & Chai
  • Transitions Framework
  • Adding New Behavior
  • Thinking in Components
  • Organizing Code into Methods
  • Why Object-Oriented Programming?
  • Object-Oriented Programming
  • Activity Transitions: Advanced Topics
  • Extensions and Protocols
  • Shared Element Transitions
  • Animation Basics
  • Using Bootstrap Components
  • Building Forms with Bootstrap
  • Responsive Layouts with the Bootstrap Grid
  • Getting to Know Bootstrap 4
  • Introducing Unit Testing
  • Generics with Swift 2 - Beyond Basics
  • Generics with Swift 2
  • PHPDB Stage 2: Querying the Database with PHP
  • Creating the User Interface Programmatically
  • PHPDB Stage 1: Databases and PHP
  • Refactoring the Model
  • Adding 3D Effects with CSS
  • Getting Started with CSS Transforms
  • Transition Timing Functions and Delays
  • Getting Started with CSS Transitions
  • Adding Sound Effects
  • Creating a Story
  • Navigating Through an Adventure
  • Memory Management in Swift 2
  • Memory, Arrays and Loops, Oh My!
  • Reflections
  • Global Illumination
  • Shadows
  • Lighting Basics
  • Value Semantics, Type Methods and Inheritance
  • Object Initialization in Swift 2
  • Properties in Swift 2
  • Persisting Data with Hibernate
  • Getting Started with Hibernate
  • Data Persistence & ORMs
  • Bells and Whistles
  • The Django Admin
  • Diving into Web Development
  • Getting the REST You Need
  • Threads in Android
  • GET and POST Requests in a Browser
  • Introduction to HTTP
  • Same Old ORM
  • Getting Oriented - Object-Oriented, That Is
  • More TODO with the MEAN Stack
  • Creating and Editing Data in a MEAN App
  • Setting Up MongoDB
  • Going MEAN with Angular
  • Going MEAN with Express
  • Introduction to MEAN
  • Aggregate and Numeric Functions
  • Date and Time Functions
  • Working with Text
  • Camera Switching
  • Ordering, Limiting and Paging Results
  • Camera Movement
  • Image Effects
  • Camera Basics
  • Displaying Additional Views
  • Using the Vending Machine
  • Loading Data From a Resource
  • Modeling An Interface
  • PHP Email Form Errors
  • PHP Email Forms
  • PHP Inventory
  • Get Involved in Open Source
  •  Working on a Team
  • Working By Yourself
  •  Create a Web Presence on GitHub
  • Hello, GitHub!
  • Inlines and Media
  • MVC
  • Django Model Forms
  • Notifications
  • KVC and KVO
  • Singletons
  • Two-stage Object Creation
  • What Are Design Patterns?
  • Django Models
  • Django Forms
  • Scripting Materials
  • Additional Textures in the Standard Shader
  • Textures in the Standard Shader
  • Understanding Materials
  • Immersive Examples
  • Scope and Loops
  • More Operators
  • Operators and Conditionals
  • Using the MVC Architecture with Spring
  • Modeling, Storing, and Presenting Data with Spring
  • Creating Spring Controllers and Thymeleaf Views
  • Spring Components and Configuring Our App
  • Setting Up Your Local Environment for Spring Development
  • PHP Includes
  • Handling Errors When Manipulating Data
  • Deleting Data from a Database
  • Updating Data in a Database
  • Adding a New Web Page
  • Make It Beautiful with CSS
  • HTML: The Structural Foundation of Web Pages and Applications
  • Getting Familiar with HTML and CSS
  • Adding Data to a Database
  • Data Types and Variables
  • Intro to Objective-C
  • Functional Workhorses
  • The Lambda Lambada
  • What to Test
  • Error Handling in Swift 2.0
  • WordPress Admin Settings
  • Testing and Debugging
  • Improving Our Code
  • Basic Android Programming
  • Creating the Screen Layout
  • Go Further With Mongo
  • Working With Collections
  • Understanding MongoDB
  • Getting Started with MongoDB
  • Getting Started with Android
  • Letter Game App
  • Creating Flexible Objects Using Protocols
  • Swift 2.0 Protocols
  • Number Game App
  • Shopping List App
  • Logic in Python
  • How To Test
  • Why Test
  • Finding the Data You Want
  • Getting Data from a Database
  • Data, Databases and SQL
  • Python Data Types
  • Python For Beginners
  • Introduction to Optionals
  • Introduction to Enumerations
  • Customizing the User Experience in WordPress
  • Default User Roles in WordPress
  • An Overview of User Roles and Fields
  • Objects and Optionals
  • Building a Layout with Flexbox
  • Flexbox Properties
  • Understanding Flexbox
  • WordPress Plugins
  • WordPress Themes
  • The WordPress Customizer
  • Managing Media in WordPress
  • Managing Content in WordPress
  • Improving Our Todo App
  • Services in Angular
  • Using Angular's Built-in Directives
  • Controllers and Scope
  • Creating a Wireframe
  • Adding Images and a Mockup
  • Save for the Web
  • Getting Started with Angular
  • Logo Design
  • Improving Our User Interface
  • Running Apps on a Device
  • Structs as Data Models
  • View Controllers and Views
  • Perfect
  • Perform
  • Console I/O
  • Prepare and Plan
  • Getting Started with iOS Development
  • Positioning Page Content
  • CSS Layout Project
  • Page Layout with the Float Property
  • Controlling Layout with CSS Display Modes
  • Differentiating Between Objects
  • Class Inheritance
  • Classes
  • Getting Started with CSS Layout
  • Introducing Adobe Illustrator
  • Complex Data Structures
  • The Project
  • Introducing SharedPreferences
  • The Activity Lifecycle
  • Key Concepts in Unity
  • Debugging Games
  • Lights, Audio, and Animation
  • Assets and Game Objects
  • The 3D Views
  • How to Install WordPress on Your Computer
  • Function Parameters
  • Functions in Swift 2.0
  • Control Flow with Conditional Statements
  • Control Flow With Loops
  • Swift Dictionaries
  • Introduction to Collections
  • Swift Operators
  • Swift Types
  • An Introduction to Swift Programming
  • Writing Your Own Java Annotation
  • Using Java's Built-In Annotations
  • Template Tags and Filters
  • Building Custom Tags
  • Build a Pomodoro App
  • Event Planning
  • Design a Better App
  • Customizing the WooCommerce Cart and Checkout Process
  • Starting a Custom WooCommerce Theme
  • Cart, Checkout and Account Templates and Hooks
  • Global and Product Templates and Hooks
  • Getting Started with WooCommerce Theme Development
  • Customizing Drupal
  • Graphical User Interfaces
  • Modules and Themes
  • Site Building with the Drupal Interface
  • Exporting Models Into Unity
  • Scene File Organization and Clean-up
  • Adding Surface Detail to a Model
  • Optimizing the Model
  • Box Modeling Techniques
  • Working with Primitives
  • Getting Started in Maya LT
  • Learn About Drupal
  • Game Audio
  • Score, Enemies, and Game State
  • Pickups
  • Finishing the Prototype
  • Grid Layout and UI Components
  • Getting to Know Foundation for Apps
  • Functional Rules
  • Player Input and Cameras
  • Build and Share a Unity Game
  • The Unity Editor and Scene Setup
  • Doing More with Express
  • Serving Static Files in Express
  • Using Templates with Express
  • Introduction to Video Games
  • The Request and Response Objects in Express
  • Developing Express Apps Like a Boss
  • Getting Started with Express
  • Ruby Gems
  • Test Time!
  • Gems In Depth
  • Ruby Core
  • Ruby Standard Library: Part 2
  • Ruby Standard Library: Part 1
  • Updating and Uninstalling Packages with npm
  • Installing Packages with npm
  • What is npm?
  • The Walker Class for WordPress
  • Custom Menu Fields in WordPress
  • An Overview of Menus in WordPress
  • Delegation in iOS
  • Introduction to Delegates
  • Implementing the Detail View
  • Custom Table View Cells
  • Next Week's Weather
  • Upgrading Stormy
  • Introduction to Table Views
  • Final Details
  • Django Templates
  • Refreshing the Data
  • Adding Weather Icons
  • Managing Complexity
  • Interacting With Data From the Web
  • Model Administration
  • Genesis Finishing Touches
  • Building Your Theme
  • Quiz Practice Project
  • Prototypal Inheritance
  • Constructor Functions & Prototypes
  • Introduction to Methods
  • Starting Your Genesis Theme
  • Simple Data Structures
  • Setup and Structure
  • What a View
  • Advanced Tooling
  • IDE Exploration
  • Say Hello to Django
  • Interacting with Google+ APIs
  • Connecting to Play Services
  •  Child Themes
  • Interacting with Your API
  • Improving your Gulp Workflow
  • Store Inventory Using Modules
  • The Internet
  • SEO Plugins for WordPress
  • Enhancing the SEO of a WordPress Theme
  • Creating Flexible Objects with Protocols
  • Protocols
  • Hosting with GitHub Pages
  • Keyframe and Line Drawing Animations
  • Building and Customizing the Blog
  • Transitions and Transforms
  • Include and Extend
  • Ruby Core Modules
  • Content Comes First
  • Compile Sass with Gulp
  • Gulp your JavaScript workflow!
  • Welcome to Gulp.js
  • Ruby Module Basics
  • Scrum Artifacts
  • Scrum Events
  • Introducing Scrum
  • What is Agile?
  • How it Works
  • Closures and Closure Expressions
  • Getting Started with Jekyll
  • Closures in iOS
  • Functions as First Class Citizens
  • What is the MailChimp API
  • Contact Forms & Mailers
  • Slim and Templates
  • More Advanced PHP for WordPress
  • PHP Basics for WordPress
  • Introduction to PHP for WordPress
  • Dependency Management
  • Adding Play Services to Your App
  • Art Direction with the Picture Element
  • Image Delivery with Srcset and Sizes
  • WWW
  • Using a jQuery Carousel
  • Add a Sticky Navigation Bar
  • Introducing jQuery Plugins
  • Be Assertive!
  • Covering Your Bases
  • What Is Testing?
  • Creating Reports
  • Charts and Tables
  • Exporting
  • Cleaning Data
  • Describing Data
  • Getting Started with Data Science
  • The Production Server
  • The Staging Server
  • The Local Development Environment
  • Debugging, Best Practices, and Production
  • Refactoring with Sass
  • Tacocat Challenge
  • HTTP Methods and Headers
  • Creating a Basic Template Engine in Node.js
  • Handling Routes in Node.js
  • Creating a Simple Server in Node.js
  • Installing Sass and Setting up the Project
  • How to Win Friends
  • Efficiency!
  • Responsive Patterns
  • Media Queries
  • Responsive Theory
  • Broadcasting
  • Exploring the Java Collections Framework
  • Organizing Data
  • Getting There
  • Takin' Names
  • Search
  • Input and Output
  • Ruby Class Design
  • Making Strong Users
  • Interactive Visualizations
  • Styling and Scaling Data
  • The Settings API in Different Places
  • Taking WordPress Settings Further
  • Getting Started with Theme Options Settings
  • WordPress Settings API Overview
  • Data Binding with D3
  • Selections with D3
  • API Authentication
  • Coding the API
  • Simple Mobile Interface
  • Exporting Designs
  • Sketch Features
  • Route Connections
  • Introduction to REST
  • Introducing Sketch