Peter Vann

Peter Vann

Treehouse Moderator

Member Since August 23, 2017

30,855

Total Points

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

374 Achievements

  • Practicing Getters and Setters
  • Mobile-First CSS Layout
  • Loop Through Objects
  • Object Basics
  • Multidimensional Arrays
  • Loop Through Arrays
  • Store Multiple Values in an Array
  • Vulnerabilities: Authentication, Access, and Sensitive Data
  • Working with 'for' Loops
  • Simplify Repetitive Tasks with Loops
  • Captioning Video
  • Media Basics
  • Making Decisions in Your Code with Conditional Statements
  • Working With Strings
  • Storing and Tracking Information with Variables
  • Hello, JavaScript!
  • 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: Solutions
  • Security: Concerns
  • Tools and Techniques
  • The Deeper Negative Impacts on Society
  • Tricky Interfaces & Dirty Data
  • Introduction to Ethical Design
  • How to Have 1:1's
  • Give and Receive Feedback
  • Imposter Syndrome
  • PHPDB Stage 5: Search
  • PHPDB Stage 4: Pagination with LIMITs
  • PHPDB Stage 3: Using Relational Data
  • PHPDB Stage 2: Querying the Database with PHP
  • PHPDB Stage 1: Databases and PHP
  • Filtering Inputs and Escaping Outputs in PHP
  • $_GET and $_POST
  • PHP Inventory
  • PHP Includes
  • PHP Internal Functions
  • PHP Returns & Closures
  • PHP Functions Basics
  • CSS Media Queries
  • CSS Layout Techniques
  • Box Model Concepts
  • The CSS Box Model
  • Getting Started with CSS
  • Basic Selectors
  • Understanding Values and Units
  • Fundamental Concepts
  • Getting Started With HTML
  • Structuring Your Content
  • Images, Text and Links
  • Going Further with HTML
  • Date and Time Functions
  • Aggregate and Numeric Functions
  • Working with Text
  • Ordering, Limiting and Paging Results
  • The Rough Plan
  • Laravel CRUD operations
  • Seeding the Database
  • Creating a Memory Game
  • Combining Array Methods
  • Array Manipulation
  • Array Iteration
  • Go Flow Control Overview
  • Go Syntax Overview
  • Setting up with Create React App
  • Technical Interviewing
  • Emulating Built-ins
  • Welcome to OOP
  • Templating Languages
  • MVC (Model)
  • MVC (View)
  • MVC (Controller)
  • Application Navigation (Routing)
  • Getting Started With Laravel
  • Database Security
  • Queries & Results
  • Getting Started with PDO
  • Setting Up an Authorization System
  • Adding an Authentication System
  • Scrum Artifacts
  • Scrum Events
  • Introducing Scrum
  • What is Agile?
  • 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
  • Build a Library
  • What is Authentication
  • Python File Systems Project Starter
  • Python File Systems Manipulation
  • Common Commands
  • Directories and Files
  • The Command Shell
  • Python File Systems Navigation
  • API Protection
  • Going Further with Grid Layout
  • Flexible Sized Grids
  • Error Handling
  • Creating Distributable OOP Packages
  • Autoloading and Composer
  • Databases and International Concerns
  • Starting Right with PHP Best Practices
  • Advanced Selectors
  • Going Further with Attribute Selectors and Pseudo-Classes
  • Selectors - Beyond the Basics
  • Resourceful Blueprints
  • Character Builder
  • Flask Templates
  • Adding 3D Effects with CSS
  • Getting Started with CSS Transforms
  • Transition Timing Functions and Delays
  • Getting Started with CSS Transitions
  • Using a jQuery Carousel
  • Add a Sticky Navigation Bar
  • Introducing jQuery Plugins
  • Working with jQuery Collections (2017)
  • Understanding jQuery Events and DOM Traversal (2017)
  • Building a Flashcard App
  • Sweeping Vues: Loops, Methods, Directives
  • What a Beautiful Vue!
  • Introducing Vue
  • Introducing jQuery (2017)
  • Lists, Code, Links and Images
  • Understanding Markdown
  • Welcome to Flask
  • The Lambda Lambada
  • Functional Workhorses
  • Functional Rules
  • Covering Your Bases
  • Be Assertive!
  • What Is Testing?
  • Gettin' CRUD-y With It
  • Our Diary App
  • Meet Peewee
  • Python Regular Expressions
  • Timezones
  • Math Quiz App
  • Dates and Times
  • Dice Roller
  • Python: Advanced Objects
  • Python: Inheritance
  • Python: Instant Objects
  • Iterating and Packing with Dictionaries
  • Introducing Dictionaries
  • Sequence Operations
  • Sequence Iterations
  • Packing and Unpacking
  • Getting Info In and Out of Functions
  • Introduction to Functions
  • Getting to Know Tuples
  • Build an Application
  • Using Lists
  • Meet Lists
  • Types and Branching
  • Functions and Looping
  • All Together Now
  • Meet Python
  • Sessions and Cookies
  • Regular Expressions
  • Custom Post Type Templates
  • Archive Templates in WordPress
  • Page and Post Templates in WordPress
  • Homepage Templates in WordPress
  • Core WordPress Theme Files
  • How WordPress Templates Work
  • Alexa Skills Kit Overview
  • WordPress User Roles
  • WordPress Plugins
  • WordPress Themes
  • The WordPress Customizer
  • Installing WordPress Locally
  • What Is WordPress?
  • Getting the REST You Need 2
  • GET and POST Requests in a Browser
  • Introduction to HTTP
  • Refactoring with Sass
  • Improving your Gulp Workflow
  • Compile Sass with Gulp
  • Gulp your JavaScript workflow!
  • Welcome to Gulp.js
  • Installing Sass and Setting up the Project
  • Modular Media Queries
  • SMACSS and Sass
  • Sass and BEM
  • Getting Modular with Mixins and Functions
  • Add Reusable Logic to Your Sass
  • Sass Grid System
  • Write Smart and Efficient CSS with Sass
  • Improve Your Workflow with Sass
  • Getting Started with Sass
  • Managing Media in WordPress
  • Managing Content in WordPress
  • More Advanced PHP for WordPress
  • PHP Basics for WordPress
  • Introduction to PHP for WordPress
  • PHP Loops
  • PHP Arrays
  • Building Page Templates in WordPress
  • The WordPress Loop
  • WordPress Header and Footer Templates
  • Working with CSS and JS in WordPress Themes
  • Starting a WordPress Theme
  • Classes
  • Create Function Using Arrow Syntax
  • Using Template Literals
  • Defining Variables With let and const
  • Introduction to Object-Oriented JavaScript
  • Objects and New Collection Types
  • Integrating 3rd Party APIs
  • Implementing Redux
  • Environment Variables
  • Extending the Family
  • Inheritance
  • Building a Collection
  • Building the Recipe
  • Understanding Classes
  • Why Object-Oriented Programming?
  • Reusable GraphQL
  • Making Changes with Mutations
  • Fetching Data with Queries
  • Getting Started with GraphQL
  • Implementing React Native
  • Introducing Grid Layout
  • Practice forEach
  • The Cooler Parts of ES2015
  • ES2015 Basics
  • Putting it all Together
  • Actions, Dispatch and Reducers. Oh my!
  • Modularizing the React Scoreboard Application
  • Getting Started with Redux
  • Component Lifecycle
  • Designing Dataflow
  • Stateful Components
  • Thinking in Components
  • PHP Conditionals
  • PHP on the Web
  • Daily Exercise Program
  • Unit Converter
  • Getting to Know PHP
  • First Steps in React
  • Quiz Practice Project
  • Prototypal Inheritance
  • Constructor Functions & Prototypes
  • Introduction to Methods
  • Buggy Logs
  • Cleaner Code
  • Day 3: Getting Creative
  • Day 2: Advanced Selecting
  • Day 1: Joining Tables
  • Orientation: Selecting Data
  • Handling Errors When Manipulating Data
  • Deleting Data from a Database
  • Updating Data in a Database
  • Adding Data to a Database
  • Subqueries
  • Set Operations
  • Joining Table Data with SQL
  • Table Relationships
  • Database Keys
  • Database Normalization
  • Finding the Data You Want
  • Getting Data from a Database
  • Data, Databases and SQL
  • Building a Layout with Flexbox
  • Flexbox Properties
  • Understanding Flexbox
  • Get Involved in Open Source
  •  Create a Web Presence on GitHub
  •  Working on a Team
  • Working By Yourself
  • Hello, GitHub!
  • Workflows
  • Working With Remote Repositories
  • Merging
  • Branches
  • Getting Started With Git
  • Why Version Control Matters
  • Perfect
  • Perform
  • Console I/O
  • Prepare and Plan
  • Building Forms With Bootstrap
  • Using Bootstrap Components
  • Responsive Layouts With the Bootstrap Grid
  • Getting to Know Bootstrap 4
  • Why React Native
  • User Registration and Login
  • What is Authentication?
  • Creating a Command Line Weather Application
  • Handling Errors in Node
  • Getting Data From an API With Node
  • Callbacks and the DOM
  • Callbacks with Timers
  • Introduction to Callback Functions
  • Introduction to Node.js
  • How to Choose and Use Webfonts
  • Introduction to Typography
  • Positioning Page Content
  • CSS Layout Project
  • Page Layout with the Float Property
  • Controlling Layout with CSS Display Modes
  • Getting Started with CSS Layout
  • Creating an SVG
  • Introduction to SVG
  • Fundamental Concepts
  • Designing with the Latest Features
  • Basic Layout
  • The Box Model
  • Exploration
  • Discovery
  • Understanding Values and Units
  • Basic Selectors
  • Getting Started with CSS
  • 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
  • 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
  • More TODO with the MEAN Stack
  • Creating and Editing Data in a MEAN App
  • Setting Up MongoDB
  • Going MEAN with Angular
  • Improving Our Todo App
  • Services in Angular
  • Using Angular's Built-in Directives
  • Controllers and Scope
  • Getting Started with Angular
  • Going MEAN with Express
  • Introduction to MEAN
  • Go Further With Mongo
  • Working With Collections
  • Understanding MongoDB
  • Getting Started with MongoDB
  • Letter Game App
  • Number Game App
  • Shopping List App
  • Logic in Python
  • Python Data Types
  • Python For Beginners
  • Reformatting User Input
  • Validating a Form with Regular Expressions
  • Regular Expressions
  • AJAX and APIs
  • jQuery and AJAX
  • Programming AJAX
  • AJAX Concepts
  • DOM Traversal
  • DOM Manipulation
  • Events
  • Hello, jQuery!
  • JavaScript Objects
  • JavaScript Arrays
  • JavaScript Loops
  • JavaScript Functions
  • JavaScript Conditional Statements
  • JavaScript Numbers
  • JavaScript Variables
  • Introducing JavaScript
  • Finishing the Game
  • Introducing JavaScript
  • Newbie