Jasper Peijer

Jasper Peijer

Gelderland

17 year old programmer and language enthusiast. Programming is my life.

45,009

Total Points

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

Skills & Experience

  • Job Title

    Full Stack Developer

  • Spoken Languages

    • English
    • Dutch
    • German
    • Russian
    • Croatian
  • Awards

    • Graduated Application- and media developer at ROC Nijmegen (MBO Level)

500 Achievements

  • MVC (Model)
  • MVC (View)
  • MVC (Controller)
  • Application Navigation (Routing)
  • Getting Started With Laravel
  • Abstract Classes in PHP
  • Using Interfaces in PHP
  • PHP Inventory
  • PHP Includes
  • Parsing Specific Formats
  • Basic File Handling
  • Updating and Deleting Records
  • Reading and Writing Reports
  • Creating Records
  • Project Setup
  • Browser Persistent Data with PHP
  • 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
  • Digging Deeper Into Migrations
  • Getting Started with Using Migrations
  • Sharing Code Across Xamarin Platforms
  • Cross-platform Development with Xamarin
  • Getting Started with Xamarin
  • Planning Our Service
  • Segmenting and Protecting Data
  • Adding User Sign-In and Sign-Out
  • Adding User Registration
  • Introducing ASP.NET Identity
  • Completing the Project
  • Data Access Design Patterns
  • Entity Framework and ASP.NET MVC
  • Project Setup
  • CRUD Operations
  • LINQ Queries
  • Extending Our Entity Data Model
  • Entity Framework and Databases
  • Introducing Entity Framework
  • Finishing Our CRUD Web App
  • Adding Form Validation
  • Improving Our Form
  • Creating a Basic Form
  • Introducing CRUD Applications
  • What To Test
  • Test Driven Development
  • Writing Unit Tests
  • Unit Testing
  • Query Builder
  • Query Operators
  • Functional!
  • Now You're Querying!
  • Practice Updating Resources
  • Practice CRUD Operations
  • Practice Creating Scaffolds
  • Sinatra Layouts
  • HTML Forms
  • Practice ERB Templates
  • Defining Routes
  • Ruby Standard Library: Part 2
  • Ruby Standard Library: Part 1
  • Ruby Core
  • Store Inventory Using Modules
  • Include and Extend
  • Ruby Core Modules
  • Ruby Module Basics
  • Input and Output
  • Search
  • Ruby Class Design
  • Blocks Practice
  • Working With Blocks
  • Ruby Blocks
  • More Association Options
  • Using Associations in Your App
  • Active Record Associations
  • Gems In Depth
  • Ruby Gems
  • A Route to a Delete Action
  • Routes to Update Actions
  • Routes for Create Actions
  • A Route to a Read Action
  • Rails Resource Index
  • Adding a Model Attribute
  • Using the Rails Console
  • Handling Rails Requests
  • Creating Rails Apps
  • Sinatra Finishing Touches
  • Updating Data in Sinatra
  • Adding New Data in Sinatra
  • Sinatra ERB Templates
  • Creating New Sinatra Apps
  • Build a Bank Account Class
  • Ruby Variables and Methods
  • Ruby Objects and Classes
  • Build a Simple Contact List
  • Ruby Iteration
  • Ruby Loops
  • Build a Grocery List Program
  • Ruby Hashes
  • Ruby Arrays
  • Ruby Conditionals
  • Ruby Numeric Types
  • Ruby Objects
  • Ruby Strings and Escape Sequences
  • How to Make Wireframes in Adobe XD
  • How to Make Wireframes in Balsamiq
  • How to Make Wireframes on Paper
  • What is Wireframing?
  • Sets and Dictionaries
  • Lists
  • Data Retreiver
  • Serialized!
  • Data Parser
  • Data Reader
  • Abstraction
  • System.Object
  • Polymorphism
  • Loops and Final Touches
  • Encapsulation with Properties
  • Encapsulation and Arrays
  • Inheritance
  • Methods
  • If Statements
  • Numbers
  • Strings
  • Methods
  • C# Syntax
  • Principles of Design
  • Elements of Design
  • 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
  • Keyframe and Line Drawing Animations
  • Transitions and Transforms
  • Creating an SVG
  • Introduction to SVG
  • Design Patterns
  • Page Layout
  • Adding 3D Effects with CSS
  • Getting Started with CSS Transforms
  • Transition Timing Functions and Delays
  • Getting Started with CSS Transitions
  • Going Further with Type
  • Laying Out Type
  • Web Typography
  • How to Choose and Use Fonts
  • Introduction to Typography
  • Exploration
  • Discovery
  • 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
  • Exploring Async/Await
  • Understanding Promises
  • Asynchronous JavaScript with Callbacks
  • Loop Through Objects
  • Object Basics
  • Multidimensional Arrays
  • Loop Through Arrays
  • Store Multiple Values in an Array
  • Working with 'for' Loops
  • Simplify Repetitive Tasks with Loops
  • Creating a Long Term Business
  • Protecting Yourself With Contracts
  • Higher Order Functions
  • Scala Collections
  • Functional Programming with Scala
  • Introducing IntelliJ and Unpacking Packages
  • File Uploads and Entity Updates in Spring + Hibernate
  • User Messages in Spring
  • Getting Started with CRUD in Spring + Hibernate
  • Data-Driven Application Design
  • Give and Receive Feedback
  • Go Concurrency Overview
  • Go Custom Types Overview
  • Go Data Structures Overview
  • Go Flow Control Overview
  • Go Syntax Overview
  • Establishing a Proper Workflow
  • Integrating Hibernate with Spring
  • Event Planning
  • Build a Pomodoro App
  • Design a Better App
  • Graphical User Interfaces
  • Imposter Syndrome
  • Persisting Data with Hibernate
  • Getting Started with Hibernate
  • Data Persistence & ORMs
  • Pricing and Project Proposals
  • Finding Your First Project
  • Starting a Freelance Career
  • 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
  • Bells and Whistles
  • Diving into Web Development
  • Writing Your Own Java Annotation
  • Using Java's Built-In Annotations
  • Meet Streams
  • Java's Functional Toolset
  • What to Test
  • How To Test
  • Why Test
  • Advanced Tooling
  • IDE Exploration
  • How it Works
  • Java Maps
  • Java Lists
  • Generics in Java
  • Interfaces in Java
  • Java Inheritance
  • Gotchas and Wins
  • Iteration
  • Creation
  • Building a Flashcard App
  • Sweeping Vues: Loops, Methods, Directives
  • What a Beautiful Vue!
  • Introducing Vue
  • API Protection
  • Resourceful Blueprints
  • Getting the REST You Need 2
  • Gettin' CRUD-y With It
  • Our Diary App
  • Meet Peewee
  • Character Builder
  • Flask Templates
  • Welcome to Flask
  • GET and POST Requests in a Browser
  • Introduction to HTTP
  • Dice Roller
  • Python: Advanced Objects
  • Python: Inheritance
  • Python: Instant Objects
  • JavaScript Objects and Conditionals
  • JavaScript Arrays and Loops
  • JavaScript Functions
  • Data Types and Variables
  • 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
  • Refactoring and Modularizing a REST API
  • Create, Read, Update, Delete
  • Managing Data and Asynchronous Code
  • Getting to Know REST APIs
  • Introducing 'Four in a Row'
  • Stateful Components
  • Introducing Props
  • Thinking in Components
  • First Steps in React
  • Deeper into Routing with Express
  • Using Templates with Express
  • Getting Started with Express
  • What is Asynchronous Programming?
  • Programming AJAX
  • AJAX Concepts
  • Combine and Minify Assets
  • Optimize Assets
  • Measuring Performance
  • Planning for Performance
  • Building a Layout with Flexbox
  • Flexbox Properties
  • Arrow Functions
  • Pass Information Into Functions
  • Create Reusable Code with Functions
  • The Math Object
  • Working with Numbers
  • Making Decisions in Your Code with Conditional Statements
  • Working With Strings
  • Storing and Tracking Information with Variables
  • Hello, JavaScript!
  • Meet Lists
  • Compile Sass with Gulp
  • Gulp your JavaScript workflow!
  • Welcome to Gulp.js
  • 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
  • Getters and Setters
  • Working with Classes in JavaScript
  • Object Basics
  • Introduction to Object-Oriented JavaScript
  • Working with jQuery Collections (2017)
  • Understanding jQuery Events and DOM Traversal (2017)
  • Introducing jQuery (2017)
  • AJAX and APIs
  • jQuery and AJAX
  • Create Function Using Arrow Syntax
  • Using Template Literals
  • Defining Variables With let and const
  • JavaScript Tools and Workflows
  • JavaScript is Everywhere
  • Creating a Command Line Weather Application
  • Handling Errors in Node
  • Getting Data From an API With Node
  • Introduction to Node.js
  • Extending the Family
  • Inheritance
  • Designing Interfaces in PHP
  • Building a Collection
  • Building the Recipe
  • Understanding Classes
  • Why Object-Oriented Programming?
  • Modules and Themes
  • Site Building with the Drupal Interface
  • Learn About Drupal
  • All Together Now
  • Functions and Looping
  • Types and Branching
  • Meet Python
  • Score, Enemies, and Game State
  • Pickups
  • Player Input and Cameras
  • The Unity Editor and Scene Setup
  • Threads in Android
  • Publishing on Google Play
  • Hooking Up the Model to the View
  • Building the Weather UI
  • Working with JSON
  • Concurrency and Error Handling
  • Networking
  • Exploring an API
  • The Rest of the Story
  • Finishing the User Interface
  • The Model-View-Presenter Pattern
  • Selections with D3
  • Adding a List Page
  • Modeling and Presenting Data
  • Views
  • Controllers
  • Arrays
  • Project Setup
  • Intents and Multiple Activities
  • Tuning the User Interface
  • User Input in Android
  • Testing and Debugging
  • Improving Our Code
  • Basic Android Programming
  • Creating the Screen Layout
  • Programming AJAX
  • Getting Started with MongoDB
  • MASH JavaScript
  • MASH CSS
  • MASH HTML
  • Treehouse Club - JavaScript
  • Treehouse Club - CSS
  • WWW
  • The Internet
  • Computer Languages
  • Computer Basics
  • Day 3: Getting Creative
  • Day 2: Advanced Selecting
  • Day 1: Joining Tables
  • Orientation: Selecting Data
  • Subqueries
  • Set Operations
  • Joining Table Data with SQL
  • Web Apps
  • Websites
  • Introduction
  • Object-Oriented Programming
  • Table Relationships
  • Database Keys
  • Welcome to the Treehouse Club
  • 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
  • Finding the Data You Want
  • Getting Data from a Database
  • Ruby Syntax
  • Building Forms With Bootstrap
  • Using Bootstrap Components
  • Responsive Layouts With the Bootstrap Grid
  • Getting to Know Bootstrap 4
  • Exploring the Java Collections Framework
  • Organizing Data
  • Using a jQuery Carousel
  • Add a Sticky Navigation Bar
  • Introducing jQuery Plugins
  • DOM Traversal
  • DOM Manipulation
  • Events
  • Hello, jQuery!
  • Improving the Application Code
  • Editing and Filtering Names
  • Adding and Removing Names
  • Finishing the Game
  • Introducing JavaScript
  • Traversing the DOM
  • Responding to User Interaction
  • Making Changes to the DOM
  • PHP Email Form Errors
  • PHP Email Forms
  • PHP Inventory
  • PHP Includes
  • PHP Internal Functions
  • PHP Returns & Closures
  • PHP Functions Basics
  • PHP Loops
  • Getting a Handle on the DOM
  • The Browser Environment
  • PHP Arrays
  • PHP Conditionals
  • PHP on the Web
  • Daily Exercise Program
  • Unit Converter
  • Getting to Know PHP
  • Getting There
  • Delivering the MVP
  • Perfect
  • Python For Beginners
  • Getting Started with Android
  • Security: Concerns
  • Perform
  • Console I/O
  • Prepare and Plan
  • AJAX Concepts
  • Structuring Tables
  • Table Basics
  • Getting to Know Bootstrap 4
  • Creating a Simple Lightbox
  • Creating a Spoiler Revealer
  • Introduction to jQuery
  • Advanced Selectors
  • Going Further with Attribute Selectors and Pseudo-Classes
  • Selectors - Beyond the Basics
  • JavaScript Objects
  • JavaScript Arrays
  • JavaScript Loops
  • Choosing Options
  • Organizing Forms
  • Form Basics
  • Understanding Flexbox
  • Responsive Patterns
  • Media Queries
  • Responsive Theory
  • Positioning Page Content
  • CSS Layout Project
  • Data, Databases and SQL
  • Creating the MVP
  • Harnessing the Power of Objects
  • Page Layout with the Float Property
  • Controlling Layout with CSS Display Modes
  • Getting Started with CSS Layout
  • JavaScript Functions
  • JavaScript Conditional Statements
  • JavaScript Numbers
  • JavaScript Variables
  • Introducing JavaScript
  • Fundamental Concepts
  • Designing with the Latest Features
  • Basic Layout
  • The Box Model
  • Understanding Values and Units
  • Basic Selectors
  • Logo Design 101
  • 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
  • Captioning Video
  • Media Basics
  • Going Further with HTML
  • Images, Text and Links
  • Structuring Your Content
  • Meet Objects
  • Perfecting the Prototype
  • Using your New Tools
  • Introduction to Video Games
  • Getting Started with Java
  • Getting Started With HTML
  • Newbie