Drew S

Drew S

Detroit

34,034

Total Points

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

450 Achievements

  • Authorization with Third Party Libraries
  • Modeling iTunes Search Results
  • Security: Solutions
  • Security: Concerns
  • Laravel Project Setup
  • Laravel Getting Started
  • Gameplay
  • Physics Scripting
  • Physics Setup
  • VR Setup
  • Services in Angular
  • Angular Components
  • Setting Up an Angular Application
  • Generic Functions, Parameters and Constraints
  • Access Control
  • Memory Management in Swift
  • Extensions and Protocols
  • Value Semantics, Type Methods and Inheritance
  • Object Initialization
  • Properties
  • Displaying Additional Views
  • Using the Vending Machine
  • Loading Data From a Resource
  • Modeling an Interface
  • Error Handling
  • Error Handling in Swift 2.0
  • Creating a Simple Server in Node.js
  • A Route to a Delete Action
  • Routes to Update Actions
  • Routes for Create Actions
  • A Route to a Read Action
  • Rails Resource Index
  • Adding a Model Attribute
  • Using the Rails Console
  • Handling Rails Requests
  • Creating Rails Apps
  • Intro to Unit Testing 2
  • Introduction to Unit Testing
  • Filtering the Data
  • Saving and Displaying Selfies
  • Adding Metadata to Photos
  • Adding Image Filters
  • Taking a Selfie
  • Better SEO Through Tools
  • Better SEO Through Code
  • Better SEO Through Content
  • Introduction to SEO
  • Implementing Maps and Search
  • Obtaining a Location Fix
  • Displaying Data in Table Views
  • Enhancing the Networking Stack
  • URLs and Parameter Encoding
  • Introduction to UITableView
  • Visual Format Language
  • Auto Layout in Code
  • Trait Collections
  • Inequalities, Content and Priorities
  • The Constraint Equation
  • A History Lesson
  • First Class Functions
  • Asynchronous Error Handling
  • Closures in Cocoa Touch
  • Building Standard Library Functions
  • Closure Expressions
  • Hooking up the Model to the View
  • Building the Weather UI
  • Working with JSON
  • Concurrency and Error Handling
  • Networking
  • Exploring an API
  • Finishing the User Interface
  • The Model-View-Controller Pattern
  • Intents and Multiple Activities
  • User Input
  • Testing and Debugging
  • Improving Our Code
  • Basic Android Programming
  • Creating the Screen Layout
  • Adding Sound Effects
  • Refactoring the Model
  • Simple Mobile Interface
  • Exporting Designs
  • Sketch Features
  • Introducing Sketch
  • Getting Started with Android
  • Creating the User Interface Programmatically
  • Creating a Story
  • Navigating Through an Adventure
  • Memory Management in Swift 2
  • Extensions and Protocols
  • Value Semantics, Type Methods and Inheritance
  • Object Initialization in Swift 2
  • Properties in Swift 2
  • Differentiating Between Objects
  • Creating Flexible Objects Using Protocols
  • Swift 2.0 Protocols
  • MVC
  • Notifications
  • KVC and KVO
  • Singletons
  • Two-stage Object Creation
  • What Are Design Patterns?
  • Delegation in iOS
  • Introduction to Delegates
  • Creating Flexible Objects with Protocols
  • Protocols
  • The Unity Editor and Scene Setup
  • Introduction to Video Games
  • Refreshing the Data
  • Adding Weather Icons
  • Closures in iOS
  • Closures and Closure Expressions
  • Functions as First Class Citizens
  • Managing Complexity
  • Interacting With Data From the Web
  • Simple Data Structures
  • WWW
  • Displaying Our Weather Data
  • Data Modeling With Structures
  • Concurrency
  • Pulling Data From the Web
  • Swift Structs and their Methods
  • Swift Structs
  • Swift Enums and their Methods
  • Swift Enums
  • Computer Languages
  • Swift Value vs Reference Types
  • Swift Properties
  • Swift Inheritance
  • Swift Classes and Objects
  • Computer Basics
  • Cocoapods
  • Refactoring Our Code (Swift)
  • Building the Master and Detail Views (Swift)
  • Building a Music Library and Playlists (Swift)
  • Using a Navigation Controller With Segues (Swift)
  • Working With Multiple View Controllers (Swift)
  • Build a Todo List Application with Rails 4
  • Input and Output
  • Search
  • Ruby Class Design
  • Building a Command Line Application
  • Introduction to Node.js
  • Swift Optionals
  • Swift Parameters and Tuples
  • Swift Functions
  • Control Flow
  • Collections
  • Operators
  • Types
  • Variables and Constants
  • PHP Inheritance & Interfaces
  • PHP Properties & Methods
  • PHP Objects and Classes
  • PHP Data & Structure
  • PHP Getting Started
  • Particle Systems and Keeping Score
  • Artificial Intelligence and Sound
  • Physics and Collision
  • Actions and Animations
  • Game Loop and Texture Atlas
  • Intro to Sprite Kit
  • Soft Skills - Psychology
  •  Adding Color and Type
  • Animate This (iOS7)
  • Creating an Icon
  • Introduction to Illustrator
  • Start menu and App Icon
  • Sound Design
  • Animating and Saving Sprites
  • Designing Characters and a Scene
  • Introduction to Game Design
  • Installing a Ruby Development Environment
  • Custom Detail View Controller
  • Custom UITableViewCell
  • Deleting Data
  • Listing Data using NSFetchedResultsController
  • Inserting and Saving Data
  • Understanding Core Data
  • Working with a Developer
  • Designing our App
  • Wireframing, Interaction Design and Planning
  • ADS Writing and Preparation
  • Introduction to UI Design
  • Productivity
  • UIKit Dynamics
  • View Controller Transitions
  • Gestures
  • What is an API?
  • Downloading Data with NSURLSession
  • Collection Views
  • Beyond the Basics
  • Important Skills For Professional Success
  • Testing and Debugging
  • Designing your App
  • Refactoring into a Model
  • Creating a Data Collection
  • Understanding Views and View Controllers
  • Getting Started (iOS7)
  • Advanced Objective-C
  • Foundation Framework
  • Advanced Sass Concepts
  • Introduction to Objective-C
  • Speeding up Workflow With Sass
  • Pointers and Memory
  • Variables, Mixins, and Extending Selectors
  • Getting Started with Sass
  • Functional Programming in C
  • Finishing the User Interface
  • Fundamentals of C
  • Creating a Long Term Business
  • Customizing Table View Controllers
  • The Logo Sprint
  • Protecting Yourself With Contracts
  • Using Auto Layout and Managing the Keyboard
  • Logo Design 101
  • Establishing a Proper Workflow
  • Implementing Custom Login and Sign Up Screens
  • Workflow Basics
  • Pricing and Project Proposals
  • Retrieving and Viewing Data from Parse.com
  • Slices & Save for Web
  • Finding Your First Project
  • Capturing Photo and Video Using UIImagePickerController
  • Vector Shapes
  • Starting a Freelance Career
  • Media Queries
  • Going Mobile
  • CSS Animations
  • Designing Email with CSS
  • Design Foundations Final
  • Becoming a Problem Solver
  • Transitions and Transforms
  • Coding HTML Email
  • Understanding Aesthetics
  • HTML Email Basics
  • Introduction to Design
  • Flexbox and Multi-Column Layout
  • Improving Usability
  • Moving Beyond the Blog
  • Gradients
  • Mobile Usability
  • Finding Business
  • Web Typography
  • Website Usability
  • Creating Content
  • What is Usability?
  • Backgrounds and Borders
  • Introduction to Blogging
  • Customizing Google Maps
  • CSS Box Model
  • Getting Work Done
  • Google Maps Integration
  • Text, Fonts, and Lists
  • A Lifestyle Choice
  • jQuery Plugins
  • Values and Units
  • Growing Your Business
  • Advanced Selectors
  • Client Services
  • Selectors
  • Form Validation and Manipulation
  • Sales and Pitching
  • Getting Started with CSS
  • Marketing and Promotion
  • DNS Basics
  • Limiting Results in Queries
  • Protecting and Sharing Your Work
  • Using Relationship Tables
  • Licensing
  • Filtering Input for Queries
  • Securing and Maintaining a MySQL Database
  • Fair Use and Public Domain
  • SQL Calculating, Aggregating and Other Functions
  • Getting Started with Copyright
  • Querying the Database
  • Joining Relational Data Between Tables in SQL
  • Professional Development
  • Connecting to MySQL
  • Manipulating Schema with SQL
  • Applying & Interviewing
  • Creating Tables and Manipulating Data with SQL
  • The Job Search
  • Reading Data from Databases with SQL
  • Installing Programs
  • Networking
  • Environment and Redirection
  • Personal Branding
  • Paginating a List: Model and View
  • Console Processes
  • Setting Your Course
  • Paginating a List: Controller
  • Console Users and Permission
  • Careers in the Tech Industry
  • Moving Around in the Console
  • Self-Assessment
  • Adding Search: Model
  • Workflows
  • Metrics
  • Adding Search: Controller & View
  • Working With Remote Repositories
  • Sales
  • Merging
  • Pricing
  • Refactoring the Codebase
  • Branches
  • Financing Your Company
  • Getting Started With Git
  • From Idea to Execution
  • Video Marketing
  • Why Version Control Matters
  • Email Marketing
  • Search Engine Optimization
  • Usability Testing
  • Usability Basics
  • Social Media
  • Making Money
  • Marketing Strategy
  • Introduction to Accounting
  • Marketing Basics
  • Relating Users in Parse.com
  • Forming Your Company
  • Using Parse.com as a Backend and Adding Users
  • Designing and Starting the App
  • Corporate Structure
  • Why Start a Business?
  • Viewing a Web Page
  • Adapting Data for Display
  • Data Modeling
  • Getting Data from the Web
  • Rebuilding from Scratch
  • Exploring the Master-Detail Template
  • Location
  • API Access
  • Blocks and Categories
  • App Settings
  • Appearance
  • Notifications
  • iOS 5 Core Data
  • Web View
  • Storyboards
  • Automatic Reference Counting
  • Share Your Creation
  • Animate This
  • Shaking Things Up
  • Making It Pretty
  • Learning the Language
  • Getting Started with iPhone
  • Uploading Files
  • Managing Friendships
  • Using AJAX
  • Adding State
  • Building the Friendship UI
  • Installing MySQL Server and MySQL Workbench
  • Introduction to Data, Databases and SQL
  • 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
  • Introduction to jQuery
  • Creating Friendships
  • Advanced Techniques
  • Your First App
  • Rails Deployment
  • Building the Profile Page
  • Testing the Whole App
  • Rails Routing
  • Writing Tests
  • Customizing Ruby on Rails Forms
  • Ruby on Rails Authentication
  • Rails Frontend Development
  • Getting Started With Rails
  • Responsive Design
  • Adaptive Design
  • Fluid Foundation
  • Introduction to Responsive Web Design
  • Launching the Website
  • Styling Content
  • Creating a Website Structure
  • Functions
  • Objects and Arrays
  • Control Structures
  • Basics
  • Ruby Testing
  • Standard Library
  • Ruby Core
  • Ruby Modules
  • Ruby Procs & Lambdas
  • Ruby Blocks
  • Ruby Loops
  • Ruby Methods
  • Ruby Hashes
  • Ruby Arrays
  • Ruby Numbers
  • Ruby Strings
  • Objects, Classes, and Variables
  • Ruby Basics
  • Graphic Basics
  • Web Apps
  • Websites
  • Introduction
  • Type Tools
  • Masks Basics
  • Layer Basics
  • Workspace Basics
  • JavaScript Objects
  • JavaScript Functions
  • JavaScript Arrays
  • JavaScript Numbers
  • JavaScript Strings
  • Introduction Variables
  • Media Queries
  • Multi-Column Layouts
  • Animation
  • Transforms
  • Transitions
  • Backgrounds
  • Gradients
  • Borders
  • Web Fonts
  • Typography
  • Selectors
  • Color Theory
  • Principles
  • Elements
  • Website Basics
  • Framework Foundations
  • Printing
  • Page Layout
  • Box Model
  • Text
  • Data Types
  • Selectors
  • Introduction
  • Forms
  • Tables
  • Objects
  • Links
  • Lists
  • Text
  • Text Editors and HTML
  • Introduction
  • Website Basics
  • Newbie