oliverchou

oliverchou

Member Since June 22, 2016

20,886

Total Points

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

Skills & Experience

  • Spoken Languages

    • Mandarin
    • English

240 Achievements

  • Creating a Simple Server in Node.js
  • Getting Started with Redux
  • Add Reusable Logic to Your Sass
  • Write Smart and Efficient CSS with Sass
  • Improve Your Workflow with Sass
  • Getting Started with Sass
  • Users and Authorization
  • Django Authentication
  • Going Further with Routing
  • Navigating, Nesting and Redirecting Routes
  • Getting Started with React Router
  • Security and Customization
  • Make the REST Framework Work for You
  • RESTful Django
  • Refining the App
  • Building the Application
  • Setting up with Create React App
  • React Component Patterns
  • Stateful Components and Lifecycle Methods
  • Managing State and Data Flow
  • Build Modular Interfaces with Components
  • Classes
  • Stateful Components
  • Introducing Props
  • Thinking in Components
  • First Steps in React
  • Updating and Uninstalling Packages with npm
  • Installing Packages with npm
  • Creating a Command Line Weather Application
  • Handling Errors in Node
  • Getting Data From an API With Node
  • Introduction to Node.js
  • What is npm?
  • Rendering the Game
  •  Building Constructor Methods and Generating Objects
  • Introducing 'Four in a Row'
  • Getters and Setters
  • Working with Classes in JavaScript
  • Object Basics
  • Introduction to Object-Oriented JavaScript
  • Captioning Video
  • Media Basics
  • Building Forms With Bootstrap
  • Using Bootstrap Components
  • Responsive Layouts With the Bootstrap Grid
  • Getting to Know Bootstrap 4
  • Advanced Selectors
  • Going Further with Attribute Selectors and Pseudo-Classes
  • Selectors - Beyond the Basics
  • Choosing Options
  • Organizing Forms
  • Form Basics
  • Building a Layout with Flexbox
  • Flexbox Properties
  • Understanding Flexbox
  • Responsive Patterns
  • Media Queries
  • Responsive Theory
  • Using a jQuery Carousel
  • Add a Sticky Navigation Bar
  • Introducing jQuery Plugins
  • AJAX and APIs
  • jQuery and AJAX
  • Exploring Async/Await
  • Programming AJAX
  • AJAX Concepts
  • JavaScript Objects and Conditionals
  • Practice forEach
  • JavaScript Arrays and Loops
  • JavaScript Functions
  • Data Types and Variables
  • Objects and New Collection Types
  • The Cooler Parts of ES2015
  • ES2015 Basics
  • Understanding Promises
  • Asynchronous JavaScript with Callbacks
  • What is Asynchronous Programming?
  • Callbacks and the DOM
  • Callbacks with Timers
  • Introduction to Callback Functions
  • Programming AJAX
  • AJAX Concepts
  • Working with jQuery Collections (2017)
  • Understanding jQuery Events and DOM Traversal (2017)
  • Introducing jQuery (2017)
  • Positioning Page Content
  • CSS Layout Project
  • Page Layout with the Float Property
  • Traversing the DOM
  • Customizing Class-based Views
  • Classy Views
  • Detail View
  • List View
  • The Django Admin
  • Total Control
  • Responding to User Interaction
  • Making Changes to the DOM
  • Getting a Handle on the DOM
  • The Browser Environment
  • JavaScript Tools and Workflows
  • Create Function Using Arrow Syntax
  • Basic ORM Usage
  • Same Old ORM
  • Swift Operators
  • Swift Types
  • An Introduction to Swift Programming
  • Going Further with HTML
  • Images, Text and Links
  • Inlines and Media
  • Django Model Forms
  • Structuring Your Content
  • Getting Started With HTML
  • Django Models
  • Django Forms
  • Building Custom Filters
  • Building Custom Tags
  • Template Tags and Filters
  • Test Time!
  • Final Details
  • Django Templates
  • Model Administration
  • What a View
  • Say Hello to Django
  • GET and POST Requests in a Browser
  • Introduction to HTTP
  • Covering Your Bases
  • Be Assertive!
  • What Is Testing?
  • Gettin' CRUD-y With It
  • Our Diary App
  • 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
  • Dice Roller
  • Python: Advanced Objects
  • Using Template Literals
  • Defining Variables With let and const
  • Python: Inheritance
  • Python: Instant Objects
  • Python Regular Expressions
  • Packing and Unpacking
  • Getting Info In and Out of Functions
  • Introduction to Functions
  • Iterating and Packing with Dictionaries
  • Introducing Dictionaries
  • Sequence Operations
  • Sequence Iterations
  • Getting to Know Tuples
  • JavaScript is Everywhere
  • JavaScript Objects
  • JavaScript Arrays
  • JavaScript Loops
  • Using Slack Effectively
  • Introducing Slack for the Techdegree
  • Finishing the Game
  • Introducing JavaScript
  • Delivering the MVP
  • Creating the MVP
  • Harnessing the Power of Objects
  • Meet Objects
  • Perfecting the Prototype
  • Using your New Tools
  • Getting Started with Java
  • Methods
  • Object-Oriented Programming
  • Perfect
  • Perform
  • Console I/O
  • Prepare and Plan
  • Meet Peewee
  • Installing MySQL Server and MySQL Workbench
  • Introduction to Data, Databases and SQL
  • 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
  • Introduction to Video Games
  • PHP Conditionals
  • PHP on the Web
  • Daily Exercise Program
  • Complex Data Structures
  • 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
  • Function Parameters
  • Functions in Swift 2.0
  • Control Flow with Conditional Statements
  • Letter Game App
  • Controlling Layout with CSS Display Modes
  • Getting Started with CSS Layout
  • Unit Converter
  • JavaScript Functions
  • JavaScript Conditional Statements
  • JavaScript Numbers
  • Getting to Know PHP
  • 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
  • Creating HTML Content
  • HTML First
  • Beginning HTML and CSS
  • Number Game App
  • Control Flow With Loops
  • Swift Dictionaries
  • Introduction to Collections
  • Swift Operators
  • Swift Types
  • An Introduction to Swift Programming
  • Shopping List App
  • Logic in Python
  • Python Data Types
  • Python For Beginners
  • Newbie