Andrew Goddard

Andrew Goddard

London
Open to Work

40,807

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

    Head of Client Research

  • Spoken Languages

    • English

475 Achievements

  • Data Retreiver
  • Serialized!
  • Data Parser
  • Data Reader
  • Sets and Dictionaries
  • Lists
  • Arrays
  • Abstraction
  • System.Object
  • If Statements
  • Numbers
  • Strings
  • Methods
  • C# Syntax
  • Page Layout with the Float Property
  • Controlling Layout with CSS Display Modes
  • Getting Started with CSS Layout
  • Polymorphism
  • Loops and Final Touches
  • Encapsulation with Properties
  • Encapsulation and Arrays
  • Inheritance
  • Methods
  • Project Setup
  • Building a REST Service
  • HTTP Methods and Headers
  • JavaScript Tools and Workflows
  • JavaScript is Everywhere
  • Creating a Basic Template Engine in Node.js
  • Express Middleware
  • Handling Routes in Node.js
  • Creating a Simple Server in Node.js
  • Sessions and Cookies
  • User Registration and Login
  • What is Authentication?
  • Go Further With Mongo
  • Serving Static Files in Express
  • Applying Express Knowledge
  • Working With Collections
  • Understanding MongoDB
  • Getting Started with MongoDB
  • Middleware
  • Deeper into Routing with Express
  • Using Templates with Express
  • Getting Started with Express
  • Improving your Gulp Workflow
  • Compile Sass with Gulp
  • Gulp your JavaScript workflow!
  • Welcome to Gulp.js
  • Updating and Uninstalling Packages with npm
  • Installing Packages with npm
  • Handling Errors in Node
  • Getting Data From an API With Node
  • What is npm?
  • Creating a Command Line Weather Application
  • Getters and Setters
  • Introduction to Node.js
  • Working with Classes in JavaScript
  • Object Basics
  • Introduction to Object-Oriented JavaScript
  • Working with jQuery Collections (2017)
  • Understanding jQuery Events and DOM Traversal (2017)
  • Introducing jQuery (2017)
  • Improving the Application Code
  • Editing and Filtering Names
  • Adding and Removing Names
  • Traversing the DOM
  • Responding to User Interaction
  • Making Changes to the DOM
  • Getting a Handle on the DOM
  • The Browser Environment
  • Create Function Using Arrow Syntax
  • Using Template Literals
  • Defining Variables With let and const
  • Finishing the Game
  • Introducing JavaScript
  • Vulnerabilities: Configuration, Components, and Logging
  • Vulnerabilities: Authentication, Access, and Sensitive Data
  • Vulnerabilities:  Injection, XSS, CSRF
  • The OWASP Top 10 Explained
  • Maintaining Secure Web Apps
  • Protecting Data and Keeping Attackers Out
  • Why Protect Your Web Apps
  • Security in Practice
  • Common Attacks and Defenses
  • Hello Internet!
  • Security: Solutions
  • Going Further with HTML
  • Images, Text and Links
  • Structuring Your Content
  • Getting Started With HTML
  • Next Steps
  • Financing Our Company
  • Selling Your Product
  • Marketing Your Product
  • Product Market Fit
  • Discovery
  • PHP Loops
  • PHP Arrays
  • PHP Conditionals
  • PHP on the Web
  • Daily Exercise Program
  • Unit Converter
  • Getting to Know PHP
  • 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
  • Graphical User Interfaces
  • Python Lists
  • Build an Application
  • Using Lists
  • Meet Lists
  • All Together Now
  • Functions and Looping
  • Types and Branching
  • Meet Python
  • Day 3: Getting Creative
  • Gotchas and Wins
  • Iteration
  • Creation
  • Delivering the MVP
  • Creating the MVP
  • Harnessing the Power of Objects
  • Meet Objects
  • Day 2: Advanced Selecting
  • Day 1: Joining Tables
  • Orientation: Selecting Data
  • The Data Analysis Process
  • Getting to Know Your Data
  • Subqueries
  • Introducing Data Analysis
  • Set Operations
  • Security: Concerns
  • Joining Table Data with SQL
  • Table Relationships
  • Database Keys
  • Database Normalization
  • Date and Time Functions
  • Aggregate and Numeric Functions
  • Working with Text
  • Ordering, Limiting and Paging Results
  • Handling Errors When Manipulating Data
  • Deleting Data from a Database
  • Updating Data in a Database
  • Adding Data to a Database
  • Finding the Data You Want
  • Getting Data from a Database
  • Data, Databases and SQL
  • Object-Oriented Programming
  • Perfect
  • Perform
  • Console I/O
  • Prepare and Plan
  • Practicing Data Visualization in Excel
  • Chart Formatting and Layout
  • When To Use What Type of Chart
  • Introduction To Data Visualization
  • Big Data at Netflix
  • Where and How Big Data Is Used
  • What is Big Data
  • Spreadsheet Best Practices
  • Spreadsheet Functions & Formulas
  • Build a Spreadsheet
  • Getting Started With Spreadsheets
  • Introducing Spreadsheets
  • Letter Game App
  • Number Game App
  • Shopping List App
  • Logic in Python
  • Python Data Types
  • Python For Beginners
  • Dependency Management
  • PHP Inheritance & Interfaces
  • PHP Properties & Methods
  • PHP Objects and Classes
  • PHP Email Form Errors
  • PHP Email Forms
  • PHP Inventory
  • PHP Includes
  • PHP Internal Functions
  • PHP Returns & Closures
  • PHP Functions Basics
  • PHP Loops
  • PHP Conditionals
  • PHP Datatypes
  • PHP Data & Structure
  • Self-Assessment
  • IDE Exploration
  • How it Works
  • Efficiency!
  • Exploring the Java Collections Framework
  • Organizing Data
  • Getting There
  • Delivering the MVP
  • Creating the MVP
  • Introduction to Node.js
  • Using a jQuery Carousel
  • Add a Sticky Navigation Bar
  • Introducing jQuery Plugins
  • Quiz Practice Project
  • Prototypal Inheritance
  • Constructor Functions & Prototypes
  • Introduction to Methods
  • Creating an Icon
  • Introduction to Design
  • The Brand Identity Design Process
  • Introduction to Brand Identity
  • PHP Getting Started
  • WWW
  • The Internet
  • MASH JavaScript
  • Welcome to the Treehouse Club
  • Treehouse Club - CSS
  • Treehouse Club - JavaScript
  • MASH CSS
  • Computer Languages
  • Computer Basics
  • Combine and Minify Assets
  • Optimize Assets
  • Measuring Performance
  • Planning for Performance
  • AJAX and APIs
  • jQuery and AJAX
  • Programming AJAX
  • AJAX Concepts
  • Responsive Patterns
  • Media Queries
  • Responsive Theory
  • Custom Media Players
  • Captioning Video
  • Media Basics
  • Traversing and Manipulating the DOM with JavaScript
  • Selecting Elements and Adding Events with JavaScript
  • JavaScript and the DOM
  • Structuring Tables
  • Creating a Simple Drawing Application
  • Creating a Password Confirmation Form
  • Table Basics
  • Creating a Mobile Drop Down Menu
  • Creating a Simple Lightbox
  • Creating a Spoiler Revealer
  • Introduction to jQuery
  • JavaScript Objects
  • JavaScript Arrays
  • JavaScript Loops
  • Choosing Options
  • Organizing Forms
  • Form Basics
  • JavaScript Functions
  • JavaScript Conditional Statements
  • JavaScript Numbers
  • JavaScript Variables
  • Introducing JavaScript
  • Designing with the Latest Features
  • Fundamental Concepts
  • Basic Layout
  • The Box Model
  • Understanding Values and Units
  • Basic Selectors
  • Getting Started with CSS
  • Debugging HTML and CSS Problems
  • Sharing a Website
  • Responsive Web Design and Testing
  • Adding Pages to a Website
  • Dictionaries
  • Slices
  • Lists Redux
  • Pick a Number! Any Number!
  • Putting the "Fun" Back in "Functions"
  • Shopping List
  • Things That Count
  • Ins & Outs
  • Say Hello to Python
  • MASH HTML
  • Styling Web Pages and Navigation
  • Customizing Colors and Fonts
  • CSS: Cascading Style Sheets
  • Creating HTML Content
  • HTML First
  • Beginning HTML and CSS
  • Harnessing the Power of Objects
  • Meet Objects
  • Perfecting the Prototype
  • Using your New Tools
  • Getting Started with Java
  • The Logo Sprint
  • Build a Todo List Application with Rails 4
  • Logo Design 101
  • Working With Remote Repositories
  • Workflows
  • Merging
  • Branches
  • Getting Started With Git
  • Why Version Control Matters
  • HTML Email Basics
  • Build a Website With Bootstrap
  • Prototyping With Bootstrap
  • Introduction to Front-End Frameworks
  • Important Skills For Professional Success
  • Installing a Ruby Development Environment
  • Sharing Your Creation
  • Interrogating the App
  • Shaking Things Up
  • Pretty Little Things
  • Learning the Language
  • Getting Started with Android
  • Fundamentals of C
  • Chrome DevTools Basics
  • DNS Basics
  • Limiting Results in Queries
  • Using Relationship Tables
  • Securing and Maintaining a MySQL Database
  • SQL Calculating, Aggregating and Other Functions
  • Joining Relational Data Between Tables in SQL
  • Manipulating Schema with SQL
  • 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
  • Media Queries
  • CSS Animations
  • Transitions and Transforms
  • Flexbox and Multi-Column Layout
  • Gradients
  • Web Typography
  • Backgrounds and Borders
  • Creating Tables and Manipulating Data with SQL
  • Installing Programs
  • Create an Image Gallery
  • Uploading and Resizing Images
  • Uploading Files
  • Managing Friendships
  • Using AJAX
  • Adding State
  • Reading Data from Databases with SQL
  • Introduction to Illustrator
  • Building the Friendship UI
  • Creating Friendships
  • 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
  • Metrics
  • Sales
  • Pricing
  • Financing Your Company
  • From Idea to Execution
  • Websites
  • Web Apps
  • Defining the Project
  • Media Queries
  • Multi-Column Layouts
  • Animation
  • Transforms
  • Transitions
  • Environment and Redirection
  • Backgrounds
  • Gradients
  • Borders
  • Web Fonts
  • 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
  • CSS Box Model
  • Text, Fonts, and Lists
  • Values and Units
  • Advanced Selectors
  • Selectors
  • Getting Started with CSS
  • Typography
  • Video Marketing
  • Email Marketing
  • Search Engine Optimization
  • Usability Testing
  • Usability Basics
  • Social Media
  • Making Money
  • Marketing Strategy
  • Introduction to Accounting
  • Marketing Basics
  • Forming Your Company
  • Corporate Structure
  • Why Start a Business?
  • Workflow Basics
  • Slices & Save for Web
  • Intro to User Experience
  • Graphic Basics
  • Cleaning URLs with Subfolders
  • Vector Shapes
  • Type Tools
  • Masks Basics
  • Website Basics
  • Layer Basics
  • Workspace Basics
  • Color Theory
  • Principles
  • Elements
  • Installing MySQL Server and MySQL Workbench
  • Integrating Validation Errors
  • Console Processes
  • Introduction to Data, Databases and SQL
  • JavaScript Objects
  • JavaScript Functions
  • JavaScript Arrays
  • JavaScript Numbers
  • JavaScript Strings
  • Introduction Variables
  • Introduction
  • 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
  • Customizing Google Maps
  • Google Maps Integration
  • jQuery Plugins
  • Form Validation and Manipulation
  • Introduction to jQuery
  • Selectors
  • Framework Foundations
  • Printing
  • Page Layout
  • Box Model
  • Text
  • Data Types
  • Selectors
  • Objects and Arrays
  • Control Structures
  • Introduction
  • Forms
  • Functions
  • Basics
  • Console Users and Permission
  • Moving Around in the Console
  • Advanced Techniques
  • Responsive Design
  • Adaptive Design
  • Fluid Foundation
  • Introduction to Responsive Web Design
  • Tables
  • Objects
  • Links
  • Lists
  • Text
  • Introduction
  • Launching the Website
  • Styling Content
  • Creating a Website Structure
  • Text Editors and HTML
  • Newbie
  • Website Basics
  • Getting Started With Rails