Alan Mills

Alan Mills

Member Since October 16, 2017
Open to Work

31,712

Total Points

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

Skills & Experience

396 Achievements

  • Going Beyond & Best Practices
  • Hierarchy and Layout
  • Writing Copy
  • Interaction Design in Practice
  • Theories and Psychology
  • Material Design Components
  • Working With Material Design
  • Voice and Tone
  • User Interface Library
  • Visual Design Language
  • Understanding Design Systems
  • Designing for iOS
  • Working With Human Interface Guidelines
  • Analysis
  • Going Further with Type
  • Laying Out Type
  • Web Typography
  • How to Choose and Use Fonts
  • Introduction to Typography
  • Interviewing
  • Recruiting Participants
  • Implementing UX Content
  • Creating UX Content
  • UX Content Attributes
  • Principles of Design
  • Elements of Design
  • UX Content Basics
  • Callbacks and the DOM
  • Callbacks with Timers
  • Introduction to Callback Functions
  • Stateful Components
  • Introducing Props
  • Thinking in Components
  • First Steps in React
  • Improving Our Todo App
  • Services in Angular
  • Using Angular's Built-in Directives
  • Making the Game Interactive
  • Rendering the Game
  •  Building Constructor Methods and Generating Objects
  • Regular Expressions
  • Introducing 'Four in a Row'
  • Introducing Grid Layout
  • Launching and Supporting a WordPress Plugin
  • Building WordPress Template Tags, Widgets, and Shortcodes
  • Improving the Application Code
  • Connecting WordPress Plugins with 3rd Party APIs
  • How to Critique Design
  • Editing and Filtering Names
  • Better SEO Through Tools
  • Better SEO Through Code
  • Building a WordPress Plugin Settings Page
  • Better SEO Through Content
  • Introduction to SEO
  • Quantitative Methods
  • Usability Studies
  • Qualitative Studies
  • Measuring Your Designs
  • Applying IA
  • Evaluating IA
  • Main Principles
  • What is Information Architecture?
  • Improving Usability
  • Mobile Usability
  • Website Usability
  • What is Usability?
  • Planning Your Users’ Journey
  • Strategy: Determining Goals for your Product
  • Understanding Our Users
  • JavaScript Tools and Workflows
  • Adding and Removing Names
  • JavaScript is Everywhere
  • Intro to User Experience (UX) Design
  • The Design Solution
  • The Design Problem
  • Design Foundations Final
  • Becoming a Problem Solver
  • Understanding Aesthetics
  • Introduction to Design
  • Design Principles
  • What is Product Design?
  • Chrome DevTools Basics
  • Testing for Accessibility
  • Mobile Accessibility
  • Telling the Story
  • Designing for Your User’s "To-be"
  • Understanding your User’s “As-is” Scenario
  • Becoming Acquainted with Your User
  • Becoming a Design Thinker
  • How WordPress Plugins Work
  • Persuasive Patterns
  • UI Patterns
  • Designing with Patterns
  • Accessible UI Patterns
  • Semantic HTML and WAI-ARIA
  • Hooking Into WordPress Plugins
  • Action Functions in WordPress
  • Filter Functions in WordPress
  • An Overview of Hooks in WordPress
  • WCAG 2.0 (and Other Standards)
  • JavaScript Frameworks, Libraries, and Developer Roles
  • JavaScript Outside of the Browser
  • Access for Everybody
  • Getters and Setters
  • Working with Classes in JavaScript
  • Object Basics
  • Introduction to Object-Oriented JavaScript
  • Moving Forward with UX
  • Tools UXers Use
  • How UXers Think
  • What Do User Experience Designers Do?
  • What is User Experience (UX)?
  • Captioning Video
  • Media Basics
  • A Template Hierarchy Review
  • Media Templates in WordPress
  • 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
  • Keyframe and Line Drawing Animations
  • Structuring Tables
  • Table Basics
  • Transitions and Transforms
  • Choosing Options
  • Organizing Forms
  • Form Basics
  • Adding 3D Effects with CSS
  • Getting Started with CSS Transforms
  • Traversing the DOM
  • Transition Timing Functions and Delays
  • Responding to User Interaction
  • Making Changes to the DOM
  • Combine and Minify Assets
  • Creating an SVG
  • Optimize Assets
  • Introduction to SVG
  • Measuring Performance
  • Building Forms With Bootstrap
  • Getting Started with CSS Transitions
  • Using Bootstrap Components
  • Responsive Layouts With the Bootstrap Grid
  • Getting to Know Bootstrap 4
  • Add Reusable Logic to Your Sass
  • Planning for Performance
  • Responsive Patterns
  • Media Queries
  • Responsive Theory
  • Building a Layout with Flexbox
  • Finishing Your WordPress Theme
  • Custom Homepage Templates in WordPress
  • Adding a Blog to a WordPress Theme
  • Custom Post Type Templates
  • Building Out WordPress Navigation
  • 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
  • Write Smart and Efficient CSS with Sass
  • Improve Your Workflow with Sass
  • Flexbox Properties
  • Understanding Flexbox
  • Services in Angular
  • Getting Started with Sass
  • WordPress User Roles
  • More Advanced PHP for WordPress
  • PHP Basics for WordPress
  • Introduction to PHP for WordPress
  • Angular Components
  • Setting Up an Angular Application
  • Classes
  • WordPress Plugins
  • WordPress Themes
  • Objects and New Collection Types
  • The WordPress Customizer
  • Managing Media in WordPress
  • Managing Content in WordPress
  •  Working on a Team
  • Working By Yourself
  • Putting it all Together
  • Actions, Dispatch and Reducers. Oh my!
  • Getting a Handle on the DOM
  • The Browser Environment
  • Completing Our Service
  • Building Our Service
  • Modularizing the React Scoreboard Application
  • Getting Started with Redux
  • Updating and Uninstalling Packages with npm
  • Installing Packages with npm
  • Maintaining Secure Web Apps
  • Planning Our Service
  • Going Further with Routing
  • Scrum Artifacts
  • Navigating, Nesting and Redirecting Routes
  • Scrum Events
  • Getting Started with React Router
  • Introducing Scrum
  • S3 Storage Service
  • What is Agile?
  • AWS and "The Cloud"
  • Protecting Data and Keeping Attackers Out
  • Why Protect Your Web Apps
  • The Cooler Parts of ES2015
  • Hello, GitHub!
  • Digging Deeper Into Migrations
  • Getting Started with Using Migrations
  • Quiz Practice Project
  • Prototypal Inheritance
  • Constructor Functions & Prototypes
  • Introduction to Methods
  • Installing Programs
  • Environment and Redirection
  • ES2015 Basics
  • Create Function Using Arrow Syntax
  • Using Template Literals
  • Defining Variables With let and const
  • Console Processes
  • Console Users and Permission
  • Sharing Code Across Xamarin Platforms
  • Cross-platform Development with Xamarin
  • Getting Started with Xamarin
  • Moving Around in the Console
  • Workflows
  • Working With Remote Repositories
  • Merging
  • Build and Share a Unity Game
  • Game Audio
  • Branches
  • Getting Started With Git
  • Score, Enemies, and Game State
  • Pickups
  • Player Input and Cameras
  • The Unity Editor and Scene Setup
  • Introduction to Video Games
  • Creating a Command Line Weather Application
  • Refining the App
  • Building the Application
  • Completing the Project
  • Setting up with Create React App
  • What is npm?
  • Handling Errors in Node
  • Getting Data From an API With Node
  • Why React Native
  • Why Version Control Matters
  • What To Test
  • Test Driven Development
  • Writing Unit Tests
  • Data Access Design Patterns
  • Unit Testing
  • Controllers and Scope
  • Getting the REST You Need
  • Entity Framework and ASP.NET MVC
  • Project Setup
  • CRUD Operations
  • Introduction to Node.js
  • LINQ Queries
  • Extending Our Entity Data Model
  • Entity Framework and Databases
  • Introducing Entity Framework
  • Finishing Our CRUD Web App
  • Installing WordPress Locally
  • Query Builder
  • Query Operators
  • Functional!
  • Now You're Querying!
  • Getting Started with Angular
  • AJAX and APIs
  • jQuery and AJAX
  • Working with jQuery Collections (2017)
  • Understanding jQuery Events and DOM Traversal (2017)
  • Introducing jQuery (2017)
  • Creating a Spoiler Revealer
  • Introduction to jQuery
  • Programming AJAX
  • Exploration
  • Positioning Page Content
  • CSS Layout Project
  • AJAX Concepts
  • JavaScript Objects
  • Advanced Selectors
  • DOM Traversal
  • Security in Practice
  • Common Attacks and Defenses
  • DOM Manipulation
  • Events
  • Hello, jQuery!
  • JavaScript Arrays
  • JavaScript Loops
  • Data Retreiver
  • Hello Internet!
  • Component Lifecycle
  • Designing Dataflow
  • Security: Solutions
  • Security: Concerns
  • Serialized!
  • Stateful Components
  • Thinking in Components
  • First Steps in React
  • Data Parser
  • JavaScript Functions
  • JavaScript Conditional Statements
  • JavaScript Numbers
  • JavaScript Variables
  • Sets and Dictionaries
  • Data Reader
  • Page Layout with the Float Property
  • Going Further with Attribute Selectors and Pseudo-Classes
  • Discovery
  • Lists
  • Controlling Layout with CSS Display Modes
  • Selectors - Beyond the Basics
  • Subqueries
  • Arrays
  • Set Operations
  • Joining Table Data with SQL
  • Table Relationships
  • Database Keys
  • Database Normalization
  • Handling Errors When Manipulating Data
  • Deleting Data from a Database
  • Updating Data in a Database
  • Adding Data to a Database
  • Introducing JavaScript
  • Abstraction
  • System.Object
  • Polymorphism
  • Loops and Final Touches
  • Encapsulation with Properties
  • Adding Form Validation
  • Day 3: Getting Creative
  • Day 2: Advanced Selecting
  • Day 1: Joining Tables
  • Orientation: Selecting Data
  • Improving Our Form
  • GET and POST Requests in a Browser
  • Getting Started with CSS Layout
  • Creating a Basic Form
  • Introducing CRUD Applications
  • Adding a List Page
  • Fundamental Concepts
  • Designing with the Latest Features
  • Modeling and Presenting Data
  • Views
  • Controllers
  • Basic Layout
  • Encapsulation and Arrays
  • Project Setup
  • The Box Model
  • Inheritance
  • Understanding Values and Units
  • Methods
  • Finishing the Game
  • Object-Oriented Programming
  • Perfect
  • Perform
  • PHP Email Form Errors
  • Console I/O
  • Prepare and Plan
  • Going Further with HTML
  • PHP Email Forms
  • What Is WordPress?
  • Introducing JavaScript
  • Images, Text and Links
  • Structuring Your Content
  • Basic Selectors
  • Getting Started with CSS
  • PHP Inventory
  • Getting Started With HTML
  • 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
  • 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
  • Date and Time Functions
  • Aggregate and Numeric Functions
  • Working with Text
  • Finding the Data You Want
  • PHPDB Stage 1: Databases and PHP
  • Ordering, Limiting and Paging Results
  • Getting Data from a Database
  • Data, Databases and SQL
  • Newbie