Spenser Hale

Spenser Hale

Santa Rosa, CA

18,535

Total Points

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

Skills & Experience

  • Job Title

    Web Developer

  • Spoken Languages

    • English

226 Achievements

  • Extending the Family
  • Inheritance
  • Understanding Classes
  • Why Object-Oriented Programming?
  • Protecting Data and Keeping Attackers Out
  • Why Protect Your Web Apps
  • Security: Solutions
  • Time Complexity
  • Playing a Counting Game
  • Security: Concerns
  • Security in Practice
  • Common Attacks and Defenses
  • Hello Internet!
  • How to Win Friends
  • Broadcasting
  • Takin' Names
  • Making Strong Users
  • Gettin' CRUD-y With It
  • Our Diary App
  • Meet Peewee
  • Character Builder
  • Flask Templates
  • Welcome to Flask
  • Buggy Logs
  • Cleaner Code
  • Hack-n-Slash
  • Python Inheritance
  • Python Objects
  • Dungeon Game
  • Tuples
  • Dictionaries
  • Slices
  • Lists Redux
  • Letter Game App
  • Number Game App
  • Shopping List App
  • Logic in Python
  • Python Data Types
  • Python For Beginners
  • Tools for Testers
  • Treehouse Club - CSS
  • Welcome to the Treehouse Club
  • Error Handling
  • Creating Distributable OOP Packages
  • Autoloading and Composer
  • Databases and International Concerns
  • Starting Right with PHP Best Practices
  • JavaScript Arrays
  • JavaScript Loops
  • WWW
  • Treehouse Club - JavaScript
  • The Internet
  • Computer Languages
  • Computer Basics
  • JavaScript Functions
  • JavaScript Conditional Statements
  • What is Agile?
  • JavaScript Numbers
  • JavaScript Variables
  • Introducing JavaScript
  • Dependency Management
  • PHP Internal Functions
  • PHP Returns & Closures
  • PHP Functions Basics
  • How To Test Our Code
  • PHP Loops
  • PHP Conditionals
  • Ins & Outs
  • Say Hello to Python
  • Introduction to Ecommerce with WordPress
  • Setup a Bootstrap 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
  • How WordPress Templates Work
  • Building a WordPress Plugin Settings Page
  • How WordPress Plugins Work
  • Finishing Your WordPress Theme
  • Custom Homepage Templates in WordPress
  • Adding a Blog to a WordPress Theme
  • Custom Post Type Templates
  • Building Out WordPress Navigation
  • Building Page Templates in WordPress
  • The WordPress Loop
  • WordPress Header and Footer Templates
  • Working with CSS and JS in WordPress Themes
  • Starting a WordPress Theme
  • The WordPress Codex
  • PHP Datatypes
  • PHP Data & Structure
  • Creating the Initial Screen Layout
  • Getting Started with Android
  • Values and Units
  • Advanced Selectors
  • 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
  • Responsive Web Design and Testing
  • Adding Pages to a Website
  • Styling Web Pages and Navigation
  • Customizing Colors and Fonts
  • PHP Getting Started
  • Relating Models
  • Laravel CRUD
  • Validation & Flash Messages
  • Laravel Forms
  • Laravel & Databases
  • Laravel Controllers
  • Laravel Project Setup
  • Laravel Getting Started
  • Reading Data from Databases with SQL
  • Installing MySQL Server and MySQL Workbench
  • Introduction to Data, Databases and SQL
  • Sharing a Website
  • Debugging HTML and CSS Problems
  • CSS: Cascading Style Sheets
  • Creating HTML Content
  • HTML First
  • Beginning HTML and CSS
  • WordPress Plugin Best Practices
  • Posts and Pages in WordPress
  • Blogging with WordPress Overview
  • Building a WordPress.com Site
  • Getting Started with WordPress.com
  • Color Theory
  • Principles
  • Elements
  • Moving Forward with UX
  • Limiting Results in Queries
  • Using Relationship Tables
  • Filtering Input for Queries
  • Querying the Database
  • Connecting to MySQL
  • 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
  • Tools UXers Use
  • Integrating Validation Errors
  • JavaScript Numbers
  • How UXers Think
  • What Do User Experience Designers Do?
  • Chrome DevTools Basics
  • DNS Basics
  • Graphic Basics
  • Workflows
  • Working With Remote Repositories
  • Merging
  • Branches
  • Getting Started With Git
  • Why Version Control Matters
  • What is User Experience (UX)?
  • Widgets and Custom Menus
  • Custom Post Types and Fields
  • Customizing WordPress Themes
  • Local WordPress Development
  • WordPress Themes
  • Installing Wordpress
  • Presentation Skills
  • Important Skills For Professional Success
  • PHP Inheritance & Interfaces
  • PHP Properties & Methods
  • PHP Objects and Classes
  • Website Basics
  • JavaScript Strings
  • Introduction Variables
  • Rails Deployment
  • Building the Profile Page
  • Testing the Whole App
  • Rails Routing
  • Writing Tests
  • Selectors
  • Tables
  • Forms
  • Lists
  • Getting Started with CSS
  • Objects
  • Links
  • Text
  • Introduction
  • Launching the Website
  • Styling Content
  • Website Basics
  • Customizing Ruby on Rails Forms
  • Ruby on Rails Authentication
  • Rails Frontend Development
  • Getting Started With Rails
  • Installing Programs
  • Environment and Redirection
  • Console Processes
  • Console Users and Permission
  • Moving Around in the Console
  • Functions
  • Objects and Arrays
  • Control Structures
  • Basics
  • 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
  • Corporate Structure
  • Why Start a Business?
  • Preparing to Code WordPress Templates
  • WordPress Theme Functions
  • WordPress Theme Templates
  • Content Strategy with WordPress
  • Advanced Techniques
  • Responsive Design
  • Adaptive Design
  • Fluid Foundation
  • Introduction to Responsive Web Design
  • Creating a Website Structure
  • Text Editors and HTML
  • Newbie