Steingrímur F. Stefánsson
seal-mask

Steingrímur F. Stefánsson

Techdegree Graduate

Member Since March 27, 2014
Open to Work

33,699

Total Points

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

Skills & Experience

  • Spoken Languages

    • Icelandic
    • English

342 Achievements

  • Rendering the Game
  •  Building Constructor Methods and Generating Objects
  • Exploring Async/Await
  • Understanding Promises
  • Asynchronous JavaScript with Callbacks
  • What is Asynchronous Programming?
  • Working with jQuery Collections (2017)
  • Understanding jQuery Events and DOM Traversal (2017)
  • Introducing jQuery (2017)
  • Create Function Using Arrow Syntax
  • Using Template Literals
  • Defining Variables With let and const
  • JavaScript Tools and Workflows
  • JavaScript is Everywhere
  • Finishing the Game
  • Introducing JavaScript
  • Persuasive Patterns
  • UI Patterns
  • Programming AJAX
  • AJAX Concepts
  • Designing with Patterns
  • What is Usability?
  • Callbacks and the DOM
  • Callbacks with Timers
  • Checking Out and Returning a Book
  • Starting with Some Methods
  • The Rough Plan
  • Combining Array Methods
  • Array Manipulation
  • Practice forEach
  • Array Iteration
  • ES2015 Basics
  • Fetching Data with Queries
  • Getting Started with GraphQL
  • Getters and Setters
  • Working with Classes in JavaScript
  • Object Basics
  • Introduction to Object-Oriented JavaScript
  • Getting the REST You Need 2
  • Branches
  • 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
  • Introducing 'Four in a Row'
  • Types and Branching
  • Meet Python
  • 1st Techdegree Peer Review
  • Introduction to Node.js
  • Hello Internet!
  • Rehearsal and Delivery
  • Creating and Refining
  • Preparing to Present
  • Hooking Into WordPress Plugins
  • Action Functions in WordPress
  • Filter Functions in WordPress
  • An Overview of Hooks in WordPress
  • 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
  • Introduction to Callback Functions
  • Self-Assessment
  • DOM Traversal
  • DOM Manipulation
  • Events
  • Hello, jQuery!
  • Improving the Application Code
  • Editing and Filtering Names
  • Traversing the DOM
  • Responding to User Interaction
  • Making Changes to the DOM
  • The Browser Environment
  • Getting a Handle on the DOM
  • Combine and Minify Assets
  • Optimize Assets
  • Adding and Removing Names
  • Measuring Performance
  • Planning for Performance
  • Keyframe and Line Drawing Animations
  • Transitions and Transforms
  • Creating an SVG
  • Introduction to SVG
  • Building a Layout with Flexbox
  • Flexbox Properties
  • Understanding Flexbox
  • Debugging, Best Practices, and Production
  • Getting Work Done
  • A Lifestyle Choice
  • Growing Your Business
  • Client Services
  • Sales and Pitching
  • Marketing and Promotion
  • Refactoring with Sass
  • Installing Sass and Setting up the Project
  • Custom Post Type Templates
  • Content Comes First
  • Art Direction with the Picture Element
  • Image Delivery with Srcset and Sizes
  • Positioning Page Content
  • CSS Layout Project
  • Page Layout with the Float Property
  • Controlling Layout with CSS Display Modes
  • Getting Started with CSS Layout
  • Go Further With Mongo
  • Working With Collections
  • Understanding MongoDB
  • Getting Started with MongoDB
  • Responsive Patterns
  • Media Queries
  • Responsive Theory
  • Advanced Selectors
  • Going Further with Attribute Selectors and Pseudo-Classes
  • Selectors - Beyond the Basics
  • Improving your Gulp Workflow
  • Compile Sass with Gulp
  • Gulp your JavaScript workflow!
  • Welcome to Gulp.js
  • 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
  • Using a jQuery Carousel
  • Add a Sticky Navigation Bar
  • Introducing jQuery Plugins
  • Quiz Practice Project
  • Welcome to the Treehouse Club
  • Prototypal Inheritance
  • Constructor Functions & Prototypes
  • Introduction to Methods
  • Exporting Designs
  • Sketch Features
  • Introducing Sketch
  • How WordPress Templates Work
  • Final Project: Create a Typographic Site
  • Laying Out Type for the Web
  • Basic Web Typography
  • How to Choose and Use Webfonts
  • Introduction to Typography
  • Better SEO Through Tools
  • Better SEO Through Code
  • Better SEO Through Content
  • Introduction to SEO
  • Moving Forward with UX
  • Tools UXers Use
  • How UXers Think
  • Finalizing the Project
  • Case Studies and Examples
  • Workflow Basics
  • Slices & Save for Web
  • Vector Shapes
  • Type Tools
  • Masks Basics
  • Layer Basics
  • Workspace Basics
  • JavaScript Objects
  • JavaScript Arrays
  • JavaScript Loops
  • Design Foundations Final
  • Becoming a Problem Solver
  • Understanding Aesthetics
  • The Logo Sprint
  • Logo Design 101
  • Creating Home Page Assets
  • Applying Effects
  • How to Draw in Illustrator
  • What Do User Experience Designers Do?
  • Customizing Google Maps
  • Google Maps Integration
  • jQuery Plugins
  • Form Validation and Manipulation
  • Introduction to jQuery
  • JavaScript Functions
  • JavaScript Conditional Statements
  • JavaScript Numbers
  • JavaScript Variables
  • Introducing JavaScript
  • Custom Media Players
  • Captioning Video
  • Media Basics
  • Fundamental Concepts
  • Designing with the Latest Features
  • Basic Layout
  • The Box Model
  • Understanding Values and Units
  • Basic Selectors
  • Getting Started with CSS
  • 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
  • AJAX and APIs
  • jQuery and AJAX
  • Programming AJAX
  • AJAX Concepts
  • Traversing and Manipulating the DOM with JavaScript
  • Selecting Elements and Adding Events with JavaScript
  • JavaScript and the DOM
  • Choosing Options
  • Organizing Forms
  • Form Basics
  • JavaScript Objects
  • JavaScript Functions
  • JavaScript Arrays
  • Introduction to Design
  • JavaScript Numbers
  • Going Mobile
  • Designing Email with CSS
  • Coding HTML Email
  • HTML Email Basics
  • JavaScript Strings
  • Introduction Variables
  • Launching and Supporting a WordPress Plugin
  • Building WordPress Template Tags, Widgets, and Shortcodes
  • Connecting WordPress Plugins with 3rd Party APIs
  • Building a WordPress Plugin Settings Page
  • Structuring Tables
  • Table Basics
  • How WordPress Plugins Work
  • 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
  • Installing MySQL Server and MySQL Workbench
  • Introduction to Data, Databases and SQL
  • Paginating a List: Model and View
  • Paginating a List: Controller
  • Adding Search: Model
  • Adding Search: Controller & View
  • Refactoring the Codebase
  • Cleaning URLs with Rewrite Rules
  • Cleaning URLs with Subfolders
  • Integrating Validation Errors
  • Functions
  • Objects and Arrays
  • Control Structures
  • Basics
  • 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
  • Simple PHP Application: Wrapping Up The Project
  • WordPress Plugin Best Practices
  • Widgets and Custom Menus
  • Custom Post Types and Fields
  • Customizing WordPress Themes
  • WordPress Themes
  • Installing Wordpress
  • Color Theory
  • Principles
  • Elements
  • Forms
  • Tables
  • Links
  • Objects
  • Lists
  • Text
  • Introduction
  • Advanced Techniques
  • Responsive Design
  • Adaptive Design
  • Grid Layout
  • Flexbox Layout
  • The Brand Identity Design Process
  • Introduction to Brand Identity
  • Fluid Foundation
  • Introduction to Responsive Web Design
  • 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
  • Customizing WordPress
  • Managing Comments
  • Adding and Editing Content in WordPress
  • Configuring WordPress
  • Getting Started with WordPress
  • Local WordPress Development
  • Positioning Schemes
  • Float Layout
  • Display Modes
  • Media Queries
  • CSS Animations
  • Launching a WordPress Site
  • WordPress and Forms
  • Extending WordPress Template Functionality
  • Transitions and Transforms
  • Flexbox and Multi-Column Layout
  • Gradients
  • Web Typography
  • Backgrounds and Borders
  • CSS Box Model
  • Text, Fonts, and Lists
  • Values and Units
  • Advanced Selectors
  • Selectors
  • Getting Started with CSS
  • Converting Static HTML into WordPress Templates
  • Preparing to Code WordPress Templates
  • WordPress Theme Functions
  • WordPress Theme Templates
  • Content Strategy with WordPress
  • Working with PHP Functions
  • What is User Experience (UX)?
  • Integrating With Paypal
  • Listing Inventory Items
  • Adding a Contact Form
  • Creating the Menu and Footer
  • Getting Started with PHP
  • Getting a WordPress Site
  •  Adding Color and Type
  • Creating an Icon
  • Introduction to Illustrator
  • Newbie