Nicolas Hampton

Nicolas Hampton

Treehouse Staff

Portland, OR

Junior Developer at Treehouse. Was a Student Success Coordinator for Treehouse's Front End Web Development & Full Stack Javascript Techdegree programs. Published poet and avid karaoke singer. No, really.

Skills & Experience

  • Company

    Treehouse

  • Job Title

    Junior Developer

448 Achievements

  • Meet Objects
  • Checking Out and Returning a Book
  • Introducing 'Four in a Row'
  • The Rough Plan
  • Time Complexity
  • Playing a Counting Game
  • Array Organization
  • Test Time!
  • Final Details
  • Django Templates
  • Practice ERB Templates
  • Meet NumPy
  • Data Eruption
  • Chart Toppers
  • Getting Started with Data Visualization
  • Dice Roller
  • Python: Advanced Objects
  • Python: Inheritance
  • Build an Application
  • Using Lists
  • Meet Lists
  • All Together Now
  • Functions and Looping
  • Types and Branching
  • Meet Python
  • The Data Analysis Process
  • Getting to Know Your Data
  • Introducing Data Analysis
  • Coding the API
  • Route Connections
  • Introduction to REST
  • Practice Updating Resources
  • Practice CRUD Operations
  • Practice Creating Scaffolds
  • Go Concurrency Overview
  • Go Custom Types Overview
  • Go Data Structures Overview
  • Go Flow Control Overview
  • Go Syntax Overview
  • More Association Options
  • Using Associations in Your App
  • Active Record Associations
  • 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
  • Sinatra Finishing Touches
  • Updating Data in Sinatra
  • Adding New Data in Sinatra
  • Sinatra ERB Templates
  • Creating New Sinatra Apps
  • Gems In Depth
  • Ruby Gems
  • Ruby Standard Library: Part 2
  • Ruby Standard Library: Part 1
  • Ruby Core
  • Store Inventory Using Modules
  • Include and Extend
  • Ruby Core Modules
  • Ruby Module Basics
  • Input and Output
  • Search
  • Ruby Class Design
  • Blocks Practice
  • Working With Blocks
  • Ruby Blocks
  • Build a Bank Account Class
  • Ruby Variables and Methods
  • Ruby Objects and Classes
  • Build a Simple Contact List
  • Ruby Iteration
  • Ruby Loops
  • Build a Grocery List Program
  • Ruby Hashes
  • Ruby Arrays
  • Ruby Conditionals
  • Ruby Numeric Types
  • Ruby Objects
  • Ruby Strings and Escape Sequences
  • Ruby Syntax
  • Day 3: Getting Creative
  • Day 2: Advanced Selecting
  • Day 1: Joining Tables
  • Orientation: Selecting Data
  • Subqueries
  • Set Operations
  • Joining Table Data with SQL
  • Table Relationships
  • Database Keys
  • Database Normalization
  • Using Templates with Express
  • Getting Started with Express
  • Combining Array Methods
  • Array Manipulation
  • Array Iteration
  • What is Big Data
  • Security: Concerns
  • Add Reusable Logic to Your Sass
  • Write Smart and Efficient CSS with Sass
  • Improve Your Workflow with Sass
  • Getting Started with Sass
  • Python: Instant Objects
  • Accessible UI Patterns
  • Semantic HTML and WAI-ARIA
  • WCAG 2.0 (and Other Standards)
  • Access for Everybody
  • Dungeon Game 2
  • Python Sets
  • Python Tuples
  • Python Dictionaries
  • Python Slices
  • Python Lists
  • Letter Game App
  • Number Game App
  • Shopping List App
  • Logic in Python
  • Python Data Types
  • Python For Beginners
  • Hello, jQuery!
  • Actions, Dispatch and Reducers. Oh my!
  • Modularizing the React Scoreboard Application
  • Getting Started with Redux
  • Using Java's Built-In Annotations
  • The Browser Environment
  • Bells and Whistles
  • Diving into Web Development
  • What to Test
  • How To Test
  • Why Test
  • Advanced Tooling
  • Component Lifecycle
  • Designing Dataflow
  • Stateful Components
  • Thinking in Components
  • First Steps in React
  • Express Middleware
  • Sessions and Cookies
  • User Registration and Login
  • What is Authentication?
  • Completing and Testing the API
  • Communicating with Mongo Through Mongoose
  • Modeling Data for the API
  • Building API Routes in Express
  • Building a REST Service
  • 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
  • Getting to Know Bootstrap 4
  • Getting the REST You Need
  • Next Steps
  • Improving Our Tests
  • Behavior Driven Development with Mocha & Chai
  • Introducing Unit Testing
  • Get Involved in Open Source
  •  Create a Web Presence on GitHub
  •  Working on a Team
  • Working By Yourself
  • Hello, GitHub!
  • GET and POST Requests in a Browser
  • Introduction to HTTP
  • 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
  • Styling and Scaling Data
  • Data Binding with D3
  • Getting Started with CSS Layout
  • More TODO with the MEAN Stack
  • Creating and Editing Data in a MEAN App
  • Setting Up MongoDB
  • Going MEAN with Angular
  • Simple Mobile Interface
  • Exporting Designs
  • Sketch Features
  • Introducing Sketch
  • Going MEAN with Express
  • Introduction to MEAN
  • Installing a Ruby Development Environment
  • Ruby Methods
  • Ruby Numbers (Ruby Basics)
  • Ruby Strings (Ruby Basics)
  • How Ruby Works
  • Understanding Flexbox
  • Model Administration
  • What a View
  • The Lambda Lambada
  • Functional Workhorses
  • Finding the Data You Want
  • Getting Data from a Database
  • Data, Databases and SQL
  • Go Further With Mongo
  • Working With Collections
  • Understanding MongoDB
  • Getting Started with MongoDB
  • Getting Started with Data Science
  • Tacocat Challenge
  • How to Win Friends
  • Broadcasting
  • Say Hello to Django
  • Takin' Names
  • Making Strong Users
  • Character Builder
  • Flask Templates
  • Welcome to Flask
  • Covering Your Bases
  • Be Assertive!
  • What Is Testing?
  • Gettin' CRUD-y With It
  • Our Diary App
  • Meet Peewee
  • Python Regular Expressions
  • Services in Angular
  • Using Angular's Built-in Directives
  • Controllers and Scope
  • Getting Started with Angular
  • Timezones
  • Math Quiz App
  • Functional Rules
  • Dates and Times
  • Buggy Logs
  • Cleaner Code
  • Local Python
  • Hack-n-Slash
  • Python Inheritance
  • Python Objects
  • Dungeon Game
  • Tuples
  • 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
  • Getting Started with Compass
  • Forms
  • Tables
  • Objects
  • Links
  • Lists
  • Text
  • Introduction
  • Selections with D3
  • Keyframe and Line Drawing Animations
  • Advanced Selectors
  • Going Further with Attribute Selectors and Pseudo-Classes
  • Selectors - Beyond the Basics
  • Working with Media Queries
  • CSS Animation Basics
  • Understanding CSS Transitions and Transforms
  • Understanding Flexbox and Multi-Column Layout
  • Transitions and Transforms
  • Creating an SVG
  • Introduction to SVG
  • Creating an Icon
  • Introduction to Illustrator
  • Debugging, Best Practices, and Production
  • Refactoring with Sass
  • Installing Sass and Setting up the Project
  • Advanced Sass Concepts
  • Speeding up Workflow With Sass
  • Variables, Mixins, and Extending Selectors
  • Getting Started with Sass
  • Getting Started with Jekyll
  • IDE Exploration
  • How it Works
  • Getting Started with Ember.js
  • Prototyping With Bootstrap
  • Introduction to Front-End Frameworks
  • Improving your Gulp Workflow
  • Compile Sass with Gulp
  • Gulp your JavaScript workflow!
  • Welcome to Gulp.js
  • 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
  • Make Your Own AngularJS Widget
  • Extending Inputs
  • AngularJS Directives
  • Computer Basics
  • The Internet
  • WWW
  • Services and Dependencies
  • Two-way Data Binding
  • AngularJS MVC Frameworks
  • Updating and Uninstalling Packages with npm
  • Installing Packages with npm
  • What is npm?
  • HTTP Methods and Headers
  • Creating a Basic Template Engine in Node.js
  • Handling Routes in Node.js
  • Creating a Simple Server in Node.js
  • Building a Command Line Application
  • Introduction to Node.js
  • Using a jQuery Carousel
  • Add a Sticky Navigation Bar
  • Introducing jQuery Plugins
  • Combine and Minify Assets
  • Optimize Assets
  • Measuring Performance
  • Planning for Performance
  • Workflows
  • Working With Remote Repositories
  • Merging
  • Branches
  • Getting Started With Git
  • Why Version Control Matters
  • Installing Programs
  • Environment and Redirection
  • Chrome DevTools Basics
  • Web Apps
  • Websites
  • Introduction
  • Quiz Practice Project
  • Prototypal Inheritance
  • Constructor Functions & Prototypes
  • Introduction to Methods
  • 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
  • Table Basics
  • 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
  • Choosing Options
  • Organizing Forms
  • Form Basics
  • JavaScript Functions
  • JavaScript Conditional Statements
  • 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 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
  • Installing MySQL Server and MySQL Workbench
  • Introduction to Data, Databases and SQL
  • Adding Play Services to Your App
  • Migrating a SQLite Database
  • CRUD Operations with SQLite
  • Using SQLite for Structured Data
  • Key-Value Saving with SharedPreferences
  • File Storage
  • Introduction to Data Persistence
  • Adding Push Notifications from Parse.com
  • Updating Other GridViews
  • Customizing a GridView for Friends
  • Customizing a ListView for the Inbox
  • Creating HTML Content
  • HTML First
  • Beginning HTML and CSS
  • Customizing the Action Bar
  • Using Custom Styles and Themes
  • Customizing the Login Screen
  • Starting with Design Mockups
  • Self-Destruction
  • Retrieving and Viewing Messages
  • Sending Messages
  • Capturing Photos and Videos
  • PHP Getting Started
  • Relating Users in Parse.com
  • Using Fragments for Tabs
  • Adding Users Using Parse.com
  • Starting the App
  • Acting on List Item Taps
  • Lists with RecyclerViews
  • Using Parcelable Data
  • Custom ListViews
  • Standard ListViews
  • Updating the Data Model
  • Hooking up the Model to the View
  • Building the Weather UI
  • Working with JSON
  • Concurrency and Error Handling
  • Networking
  • Exploring an API
  • Using Git for Android
  • Getting Started with Genymotion
  • Getting Started with Android Studio
  • Publishing on Google Play
  • Finishing the User Interface
  • The Model-View-Controller Pattern
  • Intents and Multiple Activities
  • User Input
  • Console Processes
  • Console Users and Permission
  • Moving Around in the Console
  • Efficiency!
  • Exploring the Java Collections Framework
  • Organizing Data
  • Getting There
  • Testing and Debugging
  • Improving Our Code
  • Coding the Fun Facts
  • Basic Android Programming
  • Creating the Initial Screen Layout
  • Getting Started with Android
  • Delivering the MVP
  • Creating the MVP
  • Harnessing the Power of Objects
  • Meet Objects
  • Perfecting the Prototype
  • Using your New Tools
  • Getting Started with Java
  • Newbie