David Bath

David Bath

Philadelphia, PA

25,940

Total Points

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

339 Achievements

  • Python: Inheritance
  • Python: Instant Objects
  • Dungeon Game 2
  • Python Sets
  • Python Tuples
  • Python Dictionaries
  • Python Slices
  • Python Lists
  • Choosing Options
  • Organizing Forms
  • Form Basics
  • Positioning Page Content
  • CSS Layout Project
  • Page Layout with the Float Property
  • Controlling Layout with CSS Display Modes
  • Getting Started with CSS Layout
  • Structuring Tables
  • Table Basics
  • User Registration and Login
  • What is Authentication?
  • DOM Traversal
  • DOM Manipulation
  • Events
  • Hello, jQuery!
  • Traversing the DOM
  • Responding to User Interaction
  • Making Changes to the DOM
  • Getting a Handle on the DOM
  • The Browser Environment
  • Creating a Simple Drawing Application
  • Creating a Password Confirmation Form
  • Creating a Mobile Drop Down Menu
  • Creating a Simple Lightbox
  • Creating a Spoiler Revealer
  • Introduction to jQuery
  • JavaScript Objects
  • JavaScript Arrays
  • JavaScript Loops
  • Stateful Components
  • Thinking in Components
  • First Steps in React
  • Classes
  • Objects and New Collection Types
  • The Cooler Parts of ES2015
  • ES2015 Basics
  • Tuples
  • Dictionaries
  • Slices
  • Lists Redux
  • Letter Game App
  • Number Game App
  • Shopping List App
  • Logic in Python
  • Python Data Types
  • Python For Beginners
  • Customizing Drupal
  • Modules and Themes
  • Site Building with the Drupal Interface
  • Learn About Drupal
  • Better SEO Through Tools
  • Better SEO Through Code
  • Better SEO Through Content
  • Introduction to SEO
  • Getting the REST You Need
  • Adding 3D Effects with CSS
  • Getting Started with CSS Transforms
  • Transition Timing Functions and Delays
  • Getting Started with CSS Transitions
  • PHP Email Form Errors
  • PHP Email Forms
  • PHP Inventory
  • PHP Includes
  • Debugging, Best Practices, and Production
  • Refactoring with Sass
  • Installing Sass and Setting up the Project
  • Finishing the Prototype
  • Grid Layout and UI Components
  • Get Involved in Open Source
  •  Create a Web Presence on GitHub
  •  Working on a Team
  • Working By Yourself
  • Hello, GitHub!
  • Go Further With Mongo
  • Building a Layout with Flexbox
  • Getting to Know Foundation for Apps
  • Working With Collections
  • Understanding MongoDB
  • Getting Started with MongoDB
  • Flexbox Properties
  • Understanding Flexbox
  • Class Inheritance
  • Classes
  • Complex Data Structures
  • Function Parameters
  • Improving your Gulp Workflow
  • Compile Sass with Gulp
  • Gulp your JavaScript workflow!
  • Welcome to Gulp.js
  • Combine and Minify Assets
  • Optimize Assets
  • Measuring Performance
  • Planning for Performance
  • Functions in Swift 2.0
  • Control Flow with Conditional Statements
  • Control Flow With Loops
  • Scrum Artifacts
  • Scrum Events
  • Swift Dictionaries
  • Introduction to Collections
  • Simple Mobile Interface
  • Exporting Designs
  • Sketch Features
  • Introducing Sketch
  • Installing a Ruby Development Environment
  • JavaScript Functions
  • Introducing Scrum
  • JavaScript Conditional Statements
  • What is Agile?
  • Ruby Methods
  • Swift Operators
  • Ruby Numbers (Ruby Basics)
  • Ruby Strings (Ruby Basics)
  • Swift Types
  • How Ruby Works
  • An Introduction to Swift Programming
  • Updating and Uninstalling Packages with npm
  • Installing Packages with npm
  • What is npm?
  • Doing More with Express
  • Serving Static Files in Express
  • Using Templates with Express
  • The Request and Response Objects in Express
  • Developing Express Apps Like a Boss
  • Getting Started with Express
  • Building a Music Library and Playlists (Swift)
  • Using a Navigation Controller With Segues (Swift)
  • Working With Multiple View Controllers (Swift)
  • Deploying to a Device
  • Debugging Our App
  • Improving Our User Interface
  • Using a Data Model
  • Views and View Controllers
  • Getting Started with Xcode
  • Swift Value vs Reference Types
  • Swift Properties
  • Swift Inheritance
  • Swift Classes and Objects
  • Swift Structs and their Methods
  • Swift Structs
  • Swift Enums and their Methods
  • Swift Enums
  • Swift Optionals
  • Swift Parameters and Tuples
  • Swift Functions
  • Getting Started with Ember.js
  • Objects, Classes, and Variables
  • Ruby Basics
  • Selectors - Beyond the Basics
  • Going Further with Attribute Selectors and Pseudo-Classes
  • Advanced Selectors
  • Custom Media Players
  • Captioning Video
  • Media Basics
  • Introduction to Typography
  • Quiz Practice Project
  • Prototypal Inheritance
  • Constructor Functions & Prototypes
  • Introduction to Methods
  • Working with CSS and JS in WordPress Themes
  • Starting a WordPress Theme
  • A Template Hierarchy Review
  • Media Templates in WordPress
  • Custom Post Type Templates
  • Archive Templates in WordPress
  • Page and Post Templates in WordPress
  • Homepage Templates in WordPress
  • Core WordPress Theme Files
  • Workflows
  • Working With Remote Repositories
  • Merging
  • Branches
  • How WordPress Templates Work
  • Local WordPress Development
  • Widgets and Custom Menus
  • Custom Post Types and Fields
  • Customizing WordPress Themes
  • WordPress Themes
  • Finding Good WordPress Plugins and Themes
  • Managing Comments on a WordPress Blog
  • Working with Media in WordPress Blogs
  • Posts and Pages in WordPress
  • Blogging with WordPress Overview
  • WordPress Admin Settings
  • WordPress User Roles
  • The WordPress Codex
  • Owning a WordPress Site Long Term
  • WordPress Community Management
  • Working with Media in WordPress
  • Adding and Editing Content
  • Getting a WordPress Site
  • JavaScript Numbers
  • JavaScript Variables
  • Introducing JavaScript
  • Fundamental Concepts
  • Designing with the Latest Features
  • Basic Layout
  • The Box Model
  • Understanding Values and Units
  • Basic Selectors
  • Getting Started With Git
  • Why Version Control Matters
  • Getting Started with CSS
  • Debugging HTML and CSS Problems
  • Sharing a Website
  • Responsive Web Design and Testing
  • Adding Pages to a Website
  • Styling Web Pages and Navigation
  • Customizing Colors and Fonts
  • CSS: Cascading Style Sheets
  • Creating HTML Content
  • HTML First
  • Beginning HTML and CSS
  • Modular Media Queries
  • Sass Grid System
  • SMACSS and Sass
  • Sass and BEM
  • Finding Your First Project
  • Starting a Freelance Career
  • The Logo Sprint
  • Logo Design 101
  • Spriting with Compass
  • Compass Helper Functions
  • Compass Layout and Typography
  • Getting Started with Compass
  • Creating an SVG
  • Introduction to SVG
  • Art Direction with the Picture Element
  • Image Delivery with Srcset and Sizes
  • HTTP Methods and Headers
  • Creating a Basic Template Engine in Node.js
  • Handling Routes in Node.js
  • Creating a Simple Server in Node.js
  • Grid Layout
  • Flexbox Layout
  • Positioning Schemes
  • Float Layout
  • Display Modes
  • Building a Command Line Application
  • Introduction to Node.js
  • Presentation Skills
  • Important Skills For Professional Success
  • Autoloading and Composer
  • Databases and International Concerns
  • Responsive Patterns
  • Media Queries
  • Responsive Theory
  • Securing and Maintaining a MySQL Database
  • SQL Calculating, Aggregating and Other Functions
  • Joining Relational Data Between Tables in SQL
  • Manipulating Schema with SQL
  • Creating Tables and Manipulating Data with SQL
  • Reading Data from Databases with SQL
  • Installing MySQL Server and MySQL Workbench
  • Introduction to Data, Databases and SQL
  • Limiting Results in Queries
  • Using Relationship Tables
  • Filtering Input for Queries
  • Paginating a List: Model and View
  • Paginating a List: Controller
  • Adding Search: Model
  • Adding Search: Controller & View
  • Refactoring the Codebase
  • Cleaning URLs with Rewrite Rules
  • Cleaning URLs with Subfolders
  • Integrating Validation Errors
  • Simple PHP Application: Wrapping Up The Project
  • Working with PHP Functions
  • Integrating With Paypal
  • Listing Inventory Items
  • Adding a Contact Form
  • Creating the Menu and Footer
  • Getting Started with PHP
  • Querying the Database
  • Connecting to MySQL
  • Workflow Basics
  • Getting Started with Advanced Sass
  • Slices & Save for Web
  • AngularJS Directives
  • Services and Dependencies
  • Two-way Data Binding
  • Vector Shapes
  • Type Tools
  • Masks Basics
  • Layer Basics
  • Workspace Basics
  • AngularJS MVC Frameworks
  • Starting Right with PHP Best Practices
  • Installing Programs
  • Environment and Redirection
  • Console Processes
  • Console Users and Permission
  • Moving Around in the Console
  • PHP Inheritance & Interfaces
  • PHP Properties & Methods
  • PHP Objects and Classes
  • AJAX and APIs
  • jQuery and AJAX
  • Programming AJAX
  • AJAX Concepts
  • PHP Internal Functions
  • PHP Returns & Closures
  • PHP Functions Basics
  • PHP Loops
  • PHP Conditionals
  • PHP Datatypes
  • PHP Data & Structure
  • PHP Getting Started
  • Advanced Sass Concepts
  • Speeding up Workflow With Sass
  • Variables, Mixins, and Extending Selectors
  • Getting Started with Sass
  • Control Flow
  • Collections
  • Operators
  • Getting Started with WordPress
  • Design Foundations Final
  • Becoming a Problem Solver
  • Understanding Aesthetics
  • Introduction to Design
  • Types
  • Variables and Constants
  • Getting Modular with Mixins and Functions
  • What Do User Experience Designers Do?
  • What is User Experience (UX)?
  • Going Mobile
  • Designing Email with CSS
  • Coding HTML Email
  • HTML Email Basics
  • Newbie