Chapman Cheng

Chapman Cheng

Techdegree Graduate

Member Since April 15, 2017

Skills & Experience

  • Spoken Languages

    • Cantonese
    • English
    • Mandarin
  • Looking for work

    Yes

361 Achievements

  • Why Protect Your Web Apps
  • Security: Solutions
  • Security: Concerns
  • Clean Routes and Custom Validation
  • Accessing Data using Resources
  • Laravel CRUD operations
  • Seeding the Database
  • Dockerize a Web App
  • Managing Images and Containers
  • Building Images Using Dockerfiles
  • Fundamentals of Docker
  • Creating a GitHub Client
  • What is Authentication
  • Communicating with a RESTful API
  • Parsing Specific Formats
  • Basic File Handling
  • Error Handling
  • Creating Distributable OOP Packages
  • Autoloading and Composer
  • Databases and International Concerns
  • Starting Right with PHP Best Practices
  • Testing Existing Projects
  • Test Driven Development
  • Introduction to Unit Testing
  • Docker Use Cases
  • MVC (Model)
  • MVC (View)
  • MVC (Controller)
  • Application Navigation (Routing)
  • Getting Started With Laravel
  • Templating Languages
  • Imposter Syndrome
  • Building an MVC Project
  • Model View Controller
  • Abstract Classes in PHP
  • Using Interfaces in PHP
  • Designing Interfaces in PHP
  • Extending the Family
  • Inheritance
  • Database Security
  • Queries & Results
  • Getting Started with PDO
  • Updating and Deleting Records
  • Reading and Writing Reports
  • Creating Records
  • Project Setup
  • PHPDB Stage 5: Search
  • Building a Collection
  • Building the Recipe
  • Understanding Classes
  • Why Object-Oriented Programming?
  • PHPDB Stage 4: Pagination with LIMITs
  • PHPDB Stage 3: Using Relational Data
  • Browser Persistent Data with PHP
  • Filtering Inputs and Escaping Outputs in PHP
  • $_GET and $_POST
  • PHP Inventory
  • PHP Includes
  • Branches
  • Pricing and Project Proposals
  • Finding Your First Project
  • Starting a Freelance Career
  • Adding the Game Logic
  • Making the Game Interactive
  • React Router and Authentication
  • Implementing Basic Authentication
  • Exploring Arrays
  • Recursion and Space Complexity
  • Algorithms in Code
  • Time Complexity
  • Playing a Counting Game
  • Actions, Dispatch and Reducers. Oh my!
  • Modularizing the React Scoreboard Application
  • Getting Started with Redux
  • Introducing the Authentication Project
  •  Working on a Team
  • Get Involved in Open Source
  •  Create a Web Presence on GitHub
  • Working By Yourself
  • What is Agile?
  • Subqueries
  • Set Operations
  • Joining Table Data with SQL
  • Table Relationships
  • Database Keys
  • Database Normalization
  • Refactoring and Modularizing a REST API
  • Create, Read, Update, Delete
  • Managing Data and Asynchronous Code
  • Getting to Know REST APIs
  • Building a Flashcard App
  • Sweeping Vues: Loops, Methods, Directives
  • What a Beautiful Vue!
  • Introducing Vue
  • Performing CRUD Operations
  • Defining Models
  • Getting Started with Sequelize
  • Asynchronous Code in Express
  • Handling Errors When Manipulating Data
  • Deleting Data from a Database
  • Updating Data in a Database
  • Adding Data to a Database
  • Going Further with Routing
  • Navigating, Nesting and Redirecting Routes
  • Getting Started with React Router
  • React Component Patterns
  • Stateful Components and Lifecycle Methods
  • Managing State and Data Flow
  • Build Modular Interfaces with Components
  • Stateful Components
  • Serving Static Files in Express
  • Applying Express Knowledge
  • Middleware
  • Deeper into Routing with Express
  • Using Templates with Express
  • Getting Started with Express
  • Updating and Uninstalling Packages with npm
  • Installing Packages with npm
  • Creating a Command Line Weather Application
  • Classes
  • PHPDB Stage 2: Querying the Database with PHP
  • PHPDB Stage 1: Databases and PHP
  • Date and Time Functions
  • Aggregate and Numeric Functions
  • Working with Text
  • Ordering, Limiting and Paging Results
  • Finding the Data You Want
  • Getting Data from a Database
  • Data, Databases and SQL
  • Exploring Async/Await
  • Understanding Promises
  • Asynchronous JavaScript with Callbacks
  • What is Asynchronous Programming?
  • Regular Expressions
  • Reformatting User Input
  • Validating a Form with Regular Expressions
  • 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
  • The Role of Selectors in JavaScript
  • Pseudo-classes and Combinators
  • Selector Basics
  • Handling Errors in Node
  • Building Your Resume
  • 5th Techdegree Peer Review
  • Introducing Props
  • Thinking in Components
  • Regular Expressions
  • Combining Array Methods
  • Array Manipulation
  • Array Iteration
  • Objects and New Collection Types
  • Checking Out and Returning a Book
  • Starting with Some Methods
  • The Rough Plan
  • What is npm?
  • Common Commands
  • Directories and Files
  • The Command Shell
  • Keyframe and Line Drawing Animations
  • Transitions and Transforms
  • 5 Star Techdegree Reviewer
  • 1st Techdegree Peer Review
  • Callbacks and the DOM
  • Callbacks with Timers
  • Introduction to Callback Functions
  • Using a jQuery Carousel
  • Add a Sticky Navigation Bar
  • Introducing jQuery Plugins
  • Modular Media Queries
  • Sass Grid System
  • SMACSS and Sass
  • Sass and BEM
  • Getting Modular with Mixins and Functions
  • Debugging, Best Practices, and Production
  • Refactoring with Sass
  • Installing Sass and Setting up the Project
  • Adding 3D Effects with CSS
  • Getting Started with CSS Transforms
  • Transition Timing Functions and Delays
  • Getting Started with CSS Transitions
  • Going Further with Grid Layout
  • Flexible Sized Grids
  • Introducing Grid Layout
  • Add Reusable Logic to Your Sass
  • Write Smart and Efficient CSS with Sass
  • Improve Your Workflow with Sass
  • Getting Started with Sass
  • Art Direction with the Picture Element
  • Image Delivery with Srcset and Sizes
  • How to Critique Design
  • Using Slack Effectively
  • Introducing Slack for the Techdegree
  • Hello, GitHub!
  • GitHub and Other Remote Repositories
  • Beginning HTML and CSS
  • WordPress User Roles
  • WordPress Plugins
  • WordPress Themes
  • The WordPress Customizer
  • Managing Media in WordPress
  • Managing Content in WordPress
  • Installing WordPress Locally
  • Getting the REST You Need 2
  • GET and POST Requests in a Browser
  • Introduction to HTTP
  • The Cooler Parts of ES2015
  • First Steps in React
  • Getting Data From an API With Node
  • Introduction to Node.js
  • ES2015 Basics
  • Rendering the Game
  •  Building Constructor Methods and Generating Objects
  • Practicing Classes
  • Practicing Getters and Setters
  • Introducing 'Four in a Row'
  • Improving the Application Code
  • Editing and Filtering Names
  • Adding and Removing Names
  • Console Users and Permission
  • Moving Around in the Console
  • JavaScript Objects and Conditionals
  • Practice forEach
  • JavaScript Arrays and Loops
  • JavaScript Functions
  • Data Types and Variables
  • JavaScript Frameworks, Libraries, and Developer Roles
  • JavaScript Outside of the Browser
  • Practicing Object Basics
  • PHP Email Form Errors
  • PHP Email Forms
  • PHP Inventory
  • PHP Includes
  • PHP Internal Functions
  • PHP Returns & Closures
  • PHP Functions Basics
  • PHP Loops
  • PHP Arrays
  • PHP Conditionals
  • PHP on the Web
  • Daily Exercise Program
  • Unit Converter
  • Getting to Know PHP
  • What Is WordPress?
  • Managing Committed Files
  • First Commits
  • Chrome DevTools Basics
  • Testing for Accessibility
  • Mobile Accessibility
  • Accessible UI Patterns
  • Semantic HTML and WAI-ARIA
  • WCAG 2.0 (and Other Standards)
  • Access for Everybody
  • Getters and Setters
  • Working with Classes in JavaScript
  • Object Basics
  • Introduction to Object-Oriented JavaScript
  • AJAX and APIs
  • jQuery and AJAX
  • Programming AJAX
  • AJAX Concepts
  • Captioning Video
  • Media Basics
  • Combine and Minify Assets
  • Optimize Assets
  • Measuring Performance
  • Planning for Performance
  • Building Forms With Bootstrap
  • Using Bootstrap Components
  • Responsive Layouts With the Bootstrap Grid
  • Getting to Know Bootstrap 4
  • Working with jQuery Collections (2017)
  • Understanding jQuery Events and DOM Traversal (2017)
  • Introducing jQuery (2017)
  • Advanced Selectors
  • Going Further with Attribute Selectors and Pseudo-Classes
  • Selectors - Beyond the Basics
  • Traversing the DOM
  • JavaScript Tools and Workflows
  • JavaScript is Everywhere
  • Responding to User Interaction
  • Making Changes to the DOM
  • Getting a Handle on the DOM
  • The Browser Environment
  • Building a Layout with Flexbox
  • Flexbox Properties
  • Understanding Flexbox
  • Responsive Patterns
  • Media Queries
  • Responsive Theory
  • Positioning Page Content
  • CSS Layout Project
  • Page Layout with the Float Property
  • Controlling Layout with CSS Display Modes
  • Getting Started with CSS Layout
  • Exploration
  • Discovery
  • Designing with the Latest Features
  • Fundamental Concepts
  • Basic Layout
  • The Box Model
  • Understanding Values and Units
  • Basic Selectors
  • Getting Started with CSS
  • Creating an SVG
  • Introduction to SVG
  • Structuring Tables
  • Table Basics
  • Choosing Options
  • Organizing Forms
  • Form Basics
  • Going Further with HTML
  • Images, Text and Links
  • Structuring Your Content
  • Getting Started With HTML
  • 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
  • Python Tuples
  • Python Dictionaries
  • Python Slices
  • Python Lists
  • Build an Application
  • Using Lists
  • Meet Lists
  • All Together Now
  • Functions and Looping
  • Types and Branching
  • Meet Python
  • Website Basics
  • Create Function Using Arrow Syntax
  • MASH JavaScript
  • Defining Variables With let and const
  • Using Template Literals
  • JavaScript Objects
  • JavaScript Arrays
  • JavaScript Loops
  • JavaScript Functions
  • JavaScript Conditional Statements
  • JavaScript Numbers
  • JavaScript Variables
  • Introducing JavaScript
  • Finishing the Game
  • Introducing JavaScript
  • MASH CSS
  • MASH HTML
  • Treehouse Club - JavaScript
  • Treehouse Club - CSS
  • Welcome to the Treehouse Club
  • Computer Basics
  • Computer Languages
  • WWW
  • The Internet
  • Newbie