John Awoyele

John Awoyele

Member Since August 16, 2015

36,212

Total Points

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

478 Achievements

  • Bringing It All Together
  • The Cash Flow Statement
  • The Balance Sheet
  • The Profit & Loss Statement
  • Introducing Financial Statements
  • Introducing CRUD Applications
  • Query Operators
  • Now You're Querying!
  • Views
  • Adding a List Page
  • Modeling and Presenting Data
  • Controllers
  • Project Setup
  • Encapsulation and Arrays
  • Inheritance
  • Methods
  • Object-Oriented Programming
  • If Statements
  • Numbers
  • Strings
  • Methods
  • C# Syntax
  • Data-Driven Application Design
  • Persisting Data with Hibernate
  • Getting Started with Hibernate
  • Data Persistence & ORMs
  • Using the MVC Architecture with Spring
  • Modeling, Storing, and Presenting Data with Spring
  • Creating Spring Controllers and Thymeleaf Views
  • Spring Components and Configuring Our App
  • Setting Up Your Local Environment for Spring Development
  • Writing Your Own Java Annotation
  • Using Java's Built-In Annotations
  • Bells and Whistles
  • Diving into Web Development
  • Introducing Scrum
  • What is Agile?
  • Building a Linked List
  • Exploring Arrays
  • Recursion and Space Complexity
  • Algorithms in Code
  • Time Complexity
  • Playing a Counting Game
  • Making Strong Users
  • Gettin' CRUD-y With It
  • Our Diary App
  • Meet Peewee
  • Character Builder
  • Flask Templates
  • Welcome to Flask
  • 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
  • GET and POST Requests in a Browser
  • Introduction to HTTP
  • Writing a Classifier
  • Machine Learning Vocabulary
  • Introduction to Machine Learning
  • Big Data at Netflix
  • Where and How Big Data Is Used
  • What is Big Data
  • Additional Scraping Tasks
  • A World Full of Spiders
  • Introducing Data Scraping
  • Selecting Relevant Data
  • Handling Bad Data
  • “Clean” or “Dirty” Data
  • Exploring pandas
  • Meet pandas
  • Array Programming
  • Array Organization
  • Meet NumPy
  • Data Eruption
  • Chart Toppers
  • Getting Started with Data Visualization
  • Dice Roller
  • Python: Advanced Objects
  • Python: Inheritance
  • Python: Instant Objects
  • Getting to Know Tuples
  • Packing and Unpacking
  • Getting Info In and Out of Functions
  • Introduction to Functions
  • Sequence Operations
  • Sequence Iterations
  • Iterating and Packing with Dictionaries
  • Introducing Dictionaries
  • 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
  • Setting up with Create React App
  • Serving Static Files in Express
  • Deeper into Routing with Express
  • Using Templates with Express
  • Getting Started with Express
  • Asynchronous Code in Express
  • Creating a Command Line Weather Application
  • Handling Errors in Node
  • Getting Data From an API With Node
  • Introduction to Node.js
  • Testing and Publishing an Alexa Skill
  • Building an Alexa Skill
  • Alexa Skills Kit Overview
  • Perfect
  • Creating Content
  • Introduction to Blogging
  • Getting Work Done
  • A Lifestyle Choice
  • Growing Your Business
  • Client Services
  • Sales and Pitching
  • Marketing and Promotion
  • Better SEO Through Tools
  • Better SEO Through Code
  • Better SEO Through Content
  • Introduction to SEO
  • Final Details
  • Django Templates
  • Model Administration
  • What a View
  • Say Hello to Django
  • Security in Practice
  • Common Attacks and Defenses
  • Hello Internet!
  • Video Marketing
  • Email Marketing
  • Search Engine Optimization
  • Usability Testing
  • Usability Basics
  • Social Media
  • Maintaining Secure Web Apps
  • Protecting Data and Keeping Attackers Out
  • Why Protect Your Web Apps
  • The Logo Sprint
  • Logo Design 101
  • Going Mobile
  • Designing Email with CSS
  • Coding HTML Email
  • HTML Email Basics
  • Exploration
  • Discovery
  • Color Theory
  • Principles
  • Elements
  • The Unity Editor and Scene Setup
  • Introduction to Video Games
  • Letter Game App
  • Number Game App
  • Shopping List App
  • Logic in Python
  • Python Data Types
  • Extending the Family
  • Integrating 3rd Party APIs
  • Implementing Redux
  • Implementing React Native
  • Why React Native
  • Organizing your Tests
  • Creating Your Tests
  • Tools for Testers
  • How To Test Our Code
  • Creating a Long Term Business
  • Protecting Yourself With Contracts
  • Establishing a Proper Workflow
  • Pricing and Project Proposals
  • Finding Your First Project
  • Starting a Freelance Career
  • Inheritance
  • Security: Solutions
  • Security: Concerns
  • Putting it all Together
  • Actions, Dispatch and Reducers. Oh my!
  • Modularizing the React Scoreboard Application
  • Getting Started with Redux
  • Going Further with Routing
  • Navigating, Nesting and Redirecting Routes
  • Getting Started with React Router
  • Component Lifecycle
  • Designing Dataflow
  • Stateful Components
  • Thinking in Components
  • First Steps in React
  • Build a Website With Bootstrap
  • Introduction to Front-End Frameworks
  • Getting a Handle on the DOM
  • The Browser Environment
  • DOM Traversal
  • DOM Manipulation
  • Events
  • Hello, jQuery!
  • Python For Beginners
  • Subqueries
  • Set Operations
  • 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
  • Simple Mobile Interface
  • Exporting Designs
  • Sketch Features
  • Introducing Sketch
  • An Introduction to Swift Programming
  • Combine and Minify Assets
  • Optimize Assets
  • Measuring Performance
  • Planning for Performance
  • Custom Media Players
  • Captioning Video
  • Media Basics
  • Building Forms with Bootstrap
  • Using Bootstrap Components
  • Responsive Layouts with the Bootstrap Grid
  • Getting to Know Bootstrap 4
  • Building a Layout with Flexbox
  • Flexbox Properties
  • Understanding Flexbox
  • Positioning Page Content
  • CSS Layout Project
  • Page Layout with the Float Property
  • Controlling Layout with CSS Display Modes
  • Getting Started with CSS Layout
  • Using Angular's Built-in Directives
  • Controllers and Scope
  • Getting Started with Angular
  • Data Types and Variables
  • Intro to Objective-C
  • What is the MailChimp API
  • Item Completion & Interaction
  • Nested Edits & Updates
  • Nested Routes & Controllers
  • Refactoring the Codebase
  • Cleaning URLs with Rewrite Rules
  • Cleaning URLs with Subfolders
  • Integrating Validation Errors
  • 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
  • Relating Models
  • Working By Yourself
  • Hello, GitHub!
  • Laravel CRUD
  • Validation & Flash Messages
  • Laravel Forms
  • Laravel & Databases
  • Getting Started with WordPress
  • Harnessing the Power of Objects
  • Meet Objects
  • Perfecting the Prototype
  • Using your New Tools
  • Getting Started with Java
  • Perform
  • Console I/O
  • Prepare and Plan
  • Finding the Data You Want
  • Getting Data from a Database
  • Data, Databases and SQL
  • Building WordPress Template Tags, Widgets, and Shortcodes
  • Workflows
  • Working With Remote Repositories
  • Branches
  • Merging
  • Getting Started With Git
  • Why Version Control Matters
  • Installing Programs
  • Environment and Redirection
  • Web Apps
  • Websites
  • Introduction
  • Careers in the Tech Industry
  • Self-Assessment
  • Console Processes
  • Console Users and Permission
  • 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
  • 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
  • Quiz Practice Project
  • Prototypal Inheritance
  • Constructor Functions & Prototypes
  • Introduction to Methods
  • AJAX and APIs
  • jQuery and AJAX
  • Programming AJAX
  • Traversing and Manipulating the DOM with JavaScript
  • Selecting Elements and Adding Events with JavaScript
  • JavaScript and the DOM
  • Using a jQuery Carousel
  • Add a Sticky Navigation Bar
  • Introducing jQuery Plugins
  • Creating a Simple Drawing Application
  • Creating a Password Confirmation Form
  • Creating a Mobile Drop Down Menu
  • Creating a Simple Lightbox
  • Creating a Spoiler Revealer
  • JavaScript Objects
  • JavaScript Arrays
  • JavaScript Loops
  • Layer Basics
  • Workspace Basics
  • Ruby Hashes
  • Ruby Arrays
  • Ruby Logical Operators
  • Ruby Control Structures
  • Ruby Operators
  • Ruby Methods
  • Ruby Numbers (Ruby Basics)
  • Ruby Strings (Ruby Basics)
  • Moving Around in the Console
  • How Ruby Works
  • Operators
  • Types
  • Design Foundations Final
  • Becoming a Problem Solver
  • Understanding Aesthetics
  • Introduction to Design
  • Flexbox Layout
  • Positioning Schemes
  • Float Layout
  • Display Modes
  • Table Basics
  • Structuring Tables
  • Choosing Options
  • Organizing Forms
  • Form Basics
  • Advanced Selectors
  • Going Further with Attribute Selectors and Pseudo-Classes
  • Selectors - Beyond the Basics
  • Connecting WordPress Plugins with 3rd Party APIs
  • Building a WordPress Plugin Settings Page
  • How WordPress Plugins Work
  • Customizing the WooCommerce Cart and Checkout Process
  • Starting a Custom WooCommerce Theme
  • Cart, Checkout and Account Templates and Hooks
  • Global and Product Templates and Hooks
  • Getting Started with WooCommerce Theme Development
  • SEO Plugins for WordPress
  • Enhancing the SEO of a WordPress Theme
  • Content Comes First
  • Custom Dashboard Widgets
  • Controlling Admin Navigation
  • Customizing the Login Screen
  • Admin Color Schemes
  • Custom WordPress Customizer Settings
  • Native WordPress Customizer Options
  • Overview of the WordPress Customizer
  • Laravel Controllers
  • Laravel Project Setup
  • Laravel Getting Started
  • Next Steps
  • Financing Our Company
  • Selling Your Product
  • Marketing Your Product
  • Product Market Fit
  • Discovery
  • Hooking Into WordPress Plugins
  • Action Functions in WordPress
  • Filter Functions in WordPress
  • An Overview of Hooks in WordPress
  • Media Templates in WordPress
  • A Template Hierarchy Review
  • How WordPress Templates Work
  • Add Bootstrap Components to WordPress Theme
  • Create Bootstrap Styled Theme Templates
  • Setup a Bootstrap Theme
  • Finishing Your WordPress Theme
  • Custom Post Type Templates
  • Building Out WordPress Navigation
  • JavaScript Functions
  • JavaScript Conditional Statements
  • JavaScript Numbers
  • JavaScript Variables
  • Introducing JavaScript
  • AJAX Concepts
  • Introduction to jQuery
  • Chrome DevTools Basics
  • Responsive Patterns
  • Media Queries
  • Responsive Theory
  • Fundamental Concepts
  • Designing with the Latest Features
  • Basic Layout
  • The Box Model
  • Understanding Values and Units
  • Basic Selectors
  • Getting Started with CSS
  • Custom Homepage Templates in WordPress
  • Getting Started with Sass
  • Variables and Constants
  • Putting the "Fun" Back in "Functions"
  • Shopping List
  • Things That Count
  • Ins & Outs
  • Say Hello to Python
  • 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
  • More Advanced PHP for WordPress
  • PHP Basics for WordPress
  • Introduction to PHP for WordPress
  • Local WordPress Development
  • WordPress Plugin Best Practices
  • Widgets and Custom Menus
  • Custom Post Types and Fields
  • Customizing WordPress Themes
  • WordPress Themes
  • Installing Wordpress
  • Database Security
  • Queries & Results
  • Getting Started with PDO
  • PHP Inheritance & Interfaces
  • Securing and Maintaining a MySQL Database
  • Joining Relational Data Between Tables in SQL
  • SQL Calculating, Aggregating and Other Functions
  • Manipulating Schema with SQL
  • Creating Tables and Manipulating Data with SQL
  • Reading Data from Databases with SQL
  • Installing MySQL Server and MySQL Workbench
  • Introduction to Data, Databases and SQL
  • PHP Properties & Methods
  • Slim and Templates
  • Contact Forms & Mailers
  • Dependency Management
  • PHP Objects and Classes
  • PHP Internal Functions
  • PHP Returns & Closures
  • PHP Functions Basics
  • PHP Loops
  • PHP Conditionals
  • PHP Datatypes
  • PHP Data & Structure
  • PHP Getting Started
  • Responsive Web Design and Testing
  • Adding Pages to a Website
  • Debugging HTML and CSS Problems
  • Styling Web Pages and Navigation
  • Sharing a Website
  • Customizing Colors and Fonts
  • CSS: Cascading Style Sheets
  • Creating HTML Content
  • HTML First
  • Beginning HTML and CSS
  • Newbie