Charles Harpke

Charles Harpke

Eagan, MN
Open to Work

Interested in coding front end applications.

33,986

Total Points

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

Skills & Experience

399 Achievements

  • Common Attacks and Defenses
  • Hello Internet!
  • AWS and "The Cloud"
  • Why React Native
  • Going Further with HTML
  • Images, Text and Links
  • Structuring Your Content
  • Migrating a SQLite Database
  • Finishing the Game
  • Introducing JavaScript
  • CRUD Operations with SQLite
  • When To Use What Type of Chart
  • Introduction To Data Visualization
  • Big Data at Netflix
  • Where and How Big Data Is Used
  • What is Big Data
  • Getting Started With HTML
  • Using SQLite for Structured Data
  • Key-Value Saving with SharedPreferences
  • File Storage
  • Introduction to Data Persistence
  • Activity Transitions: Advanced Topics
  • Shared Element Transitions
  • Transitions Framework
  • Principles
  • Python Sets
  • Python Tuples
  • Python Dictionaries
  • Python Slices
  • Python Lists
  • Scrum Artifacts
  • Scrum Events
  • Introducing Scrum
  • What is Agile?
  • Harnessing the Power of Objects
  • Joining Table Data with SQL
  • Table Relationships
  • Database Keys
  • Database Normalization
  • Designing Characters and a Scene
  • Introduction to Game Design
  • Date and Time Functions
  • Aggregate and Numeric Functions
  • Meet Objects
  • Working with Text
  • Ordering, Limiting and Paging Results
  • Animation Basics
  • The Browser Environment
  • Tablet Time
  • Ingredients and Directions
  • Managing Fragments
  • Introducing Fragments
  • The Project
  • Introducing SharedPreferences
  • The Activity Lifecycle
  • Testing and Debugging
  • Improving Our Code
  • Basic Android Programming
  • Creating the Screen Layout
  • Getting Started with Android
  • Get Involved in Open Source
  •  Create a Web Presence on GitHub
  •  Working on a Team
  • Working By Yourself
  • The Lambda Lambada
  • Functional Workhorses
  • Functional Rules
  • Covering Your Bases
  • Be Assertive!
  • What Is Testing?
  • Gettin' CRUD-y With It
  • Our Diary App
  • Methods
  • Object-Oriented Programming
  • Meet Peewee
  • Letter Game App
  • Bells and Whistles
  • Handling Errors When Manipulating Data
  • Deleting Data from a Database
  • Updating Data in a Database
  • Adding Data to a Database
  • Adding a New Web Page
  • Make It Beautiful with CSS
  • HTML: The Structural Foundation of Web Pages and Applications
  • Diving into Web Development
  • Getting Familiar with HTML and CSS
  • GET and POST Requests in a Browser
  • Introduction to HTTP
  • Number Game App
  • Shopping List App
  • Logic in Python
  • Python Data Types
  • Python For Beginners
  • Hello, GitHub!
  • Search
  • Ruby Class Design
  • Gems In Depth
  • Ruby Gems
  • Classes
  • Complex Data Structures
  • An Introduction to Swift Programming
  • Cocoapods
  • Creating Flexible Objects with Protocols
  • Protocols
  • How to Install WordPress on Your Computer
  • Learn About Drupal
  • Finding the Data You Want
  • Getting Data from a Database
  • Data, Databases and SQL
  • Perfect
  • Perform
  • Console I/O
  • Prepare and Plan
  • Function Parameters
  • Functions in Swift 2.0
  • Ruby Booleans
  • Python Regular Expressions
  • Event Planning
  • Build a Pomodoro App
  • Design a Better App
  • Graphical User Interfaces
  • Finishing the Prototype
  • Grid Layout and UI Components
  • Getting to Know Foundation for Apps
  • Introducing jQuery Plugins
  • Build and Share a Unity Game
  • Game Audio
  • Score, Enemies, and Game State
  • Pickups
  • Player Input and Cameras
  • The Unity Editor and Scene Setup
  • The Brand Identity Design Process
  • Introduction to Video Games
  • Introduction to Brand Identity
  • PHP Loops
  • PHP Conditionals
  • PHP Datatypes
  • The Logo Sprint
  • PHP Data & Structure
  • PHP Getting Started
  • Securing and Maintaining a MySQL Database
  • SQL Calculating, Aggregating and Other Functions
  • Joining Relational Data Between Tables in SQL
  • Manipulating Schema with SQL
  • Creating Tables and Manipulating Data with SQL
  • Reading Data from Databases with SQL
  • JavaScript Objects
  • Installing MySQL Server and MySQL Workbench
  • JavaScript Arrays
  • Introduction to Data, Databases and SQL
  • Elements
  • JavaScript Loops
  • Logo Design 101
  • Creating Home Page Assets
  • Applying Effects
  • Advanced Tooling
  • How to Draw in Illustrator
  •  Adding Color and Type
  • Creating an Icon
  • Workflow Basics
  • Slices & Save for Web
  • Vector Shapes
  • Type Tools
  • Masks Basics
  • Layer Basics
  • Workspace Basics
  • Design Foundations Final
  • Becoming a Problem Solver
  • Understanding Aesthetics
  • Introduction to Design
  • Advanced Selectors
  • Going Further with Attribute Selectors and Pseudo-Classes
  • Selectors - Beyond the Basics
  • Fundamental Concepts
  • Designing with the Latest Features
  • Basic Layout
  • The Box Model
  • Understanding Values and Units
  • IDE Exploration
  • How it Works
  • Interacting with Google+ APIs
  • Connecting to Play Services
  • Interacting with Your API
  • Adding Play Services to Your App
  • Build a Todo List Application with Rails 4
  • Getting Started With Rails
  • Introduction to Illustrator
  • Basic Selectors
  • WWW
  • Getting Started with CSS
  • Efficiency!
  • Exploring the Java Collections Framework
  • Organizing Data
  • Getting There
  • Displaying Our Weather Data
  • Data Modeling With Structures
  • Concurrency
  • Pulling Data From the Web
  • Refactoring Our Code (Swift)
  • Building the Master and Detail Views (Swift)
  • Building a Music Library and Playlists (Swift)
  • Using a Navigation Controller With Segues (Swift)
  • Working With Multiple View Controllers (Swift)
  • Deploying to a Device
  • Debugging Our App
  • Improving Our User Interface
  • Using a Data Model
  • Swift Value vs Reference Types
  • Swift Properties
  • Swift Inheritance
  • Swift Classes and Objects
  • Swift Structs and their Methods
  • Swift Structs
  • Swift Enums and their Methods
  • Swift Enums
  • Functional Programming in C
  • Fundamentals of C
  • Using Fragments for Tabs
  • Acting on List Item Taps
  • Lists with RecyclerViews
  • Using Parcelable Data
  • Custom ListViews
  • Standard ListViews
  • Updating the Data Model
  • Adding Users Using Parse.com
  • Starting the App
  • Hooking up the Model to the View
  • Building the Weather UI
  • Working with JSON
  • Concurrency and Error Handling
  • Networking
  • Exploring an API
  • Finishing the User Interface
  • The Model-View-Controller Pattern
  • Intents and Multiple Activities
  • User Input
  • Delivering the MVP
  • Creating the MVP
  • Harnessing the Power of Objects
  • Timezones
  • Meet Objects
  • Math Quiz App
  • Dates and Times
  • Buggy Logs
  • Cleaner Code
  • Hack-n-Slash
  • Python Inheritance
  • Python Objects
  • Dungeon Game
  • Tuples
  • Dictionaries
  • Slices
  • Lists Redux
  • Local Python
  • Pick a Number! Any Number!
  • Putting the "Fun" Back in "Functions"
  • Shopping List
  • Things That Count
  • Ins & Outs
  • Say Hello to Python
  • JavaScript Functions
  • JavaScript Conditional Statements
  • JavaScript Numbers
  • JavaScript Variables
  • Introducing JavaScript
  • Perfecting the Prototype
  • Using your New Tools
  • Getting Started with Java
  • Ruby Logical Operators
  • Ruby Control Structures
  • Ruby Operators
  • AJAX and APIs
  • jQuery and AJAX
  • Programming AJAX
  • AJAX Concepts
  • Views and View Controllers
  • Getting Started with Xcode
  • Swift Optionals
  • Swift Parameters and Tuples
  • Swift Functions
  • Control Flow
  • Collections
  • Operators
  • Types
  • Variables and Constants
  • Publishing on Google Play
  • Using Intents to Display and Share Posts
  • Adapting Data for Display in a List
  • Getting Data from the Web
  • Rebuilding from Scratch
  • Exploring the Master-Detail Template
  • Treehouse Club - JavaScript
  • Grid Layout
  • Using Git for Android
  • Getting Started with Genymotion
  • Getting Started with Android Studio
  • Flexbox Layout
  • Positioning Schemes
  • Float Layout
  • Display Modes
  • Ruby Testing
  • Ruby Procs & Lambdas
  • Traversing and Manipulating the DOM with JavaScript
  • Selecting Elements and Adding Events with JavaScript
  • JavaScript and the DOM
  • Structuring Tables
  • Table Basics
  • Choosing Options
  • Organizing Forms
  • Form Basics
  • Standard Library
  • Testing and Debugging
  • Improving Our Code
  • Ruby Core
  • Coding the Fun Facts
  • Basic Android Programming
  • Ruby Modules
  • Creating the Initial Screen Layout
  • Ruby Blocks
  • Ruby Loops
  • Getting Started with Android
  • Ruby Methods
  • Ruby Hashes
  • Ruby Arrays
  • Ruby Numbers
  • Ruby Strings
  • Objects, Classes, and Variables
  • Ruby Basics
  • Installing a Ruby Development Environment
  • Ruby Methods
  • Ruby Numbers (Ruby Basics)
  • Ruby Strings (Ruby Basics)
  • How Ruby Works
  • Advanced Sass Concepts
  • Speeding up Workflow With Sass
  • Variables, Mixins, and Extending Selectors
  • Getting Started with Sass
  • Workflows
  • Working With Remote Repositories
  • Merging
  • Branches
  • Getting Started With Git
  • Why Version Control Matters
  • Installing Programs
  • Environment and Redirection
  • Console Processes
  • Console Users and Permission
  • Moving Around in the Console
  • Chrome DevTools Basics
  • Web Apps
  • Websites
  • Introduction
  • 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
  • JavaScript Objects
  • JavaScript Functions
  • JavaScript Arrays
  • JavaScript Numbers
  • JavaScript Strings
  • Introduction Variables
  • Functions
  • Objects and Arrays
  • Control Structures
  • Media Queries
  • CSS Animations
  • Transitions and Transforms
  • Flexbox and Multi-Column Layout
  • Gradients
  • Web Typography
  • Backgrounds and Borders
  • Basics
  • CSS Box Model
  • Text, Fonts, and Lists
  • Values and Units
  • Advanced Selectors
  • Selectors
  • Getting Started with CSS
  • Forms
  • Tables
  • Objects
  • Links
  • Lists
  • Text
  • Introduction
  • 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
  • Newbie