Shehan Dissanayake

Shehan Dissanayake

Mattegoda

Self-driven and motivated to learn new technologies and strive to be a problem solver. Aims for clean design and clean code.

19,119

Total Points

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

Skills & Experience

  • Company

    Shehan Designs

  • Job Title

    Passionate about Web Design & Development

  • Spoken Languages

    • English
    • Italian
    • Sinhala
  • Looking for work

    Yes

248 Achievements

  • Reformatting User Input
  • Validating a Form with Regular Expressions
  • Regular Expressions
  • Practicing Classes
  • Building a Layout with Flexbox
  • Flexbox Properties
  • Understanding Flexbox
  • Adding 3D Effects with CSS
  • Getting Started with CSS Transforms
  • Transition Timing Functions and Delays
  • Getting Started with CSS Transitions
  • First Steps in React
  • Ruby Conditionals
  • Ruby Numeric Types
  • Ruby Objects
  • Ruby Strings and Escape Sequences
  • Ruby Syntax
  • What a Beautiful Vue!
  • Introducing Vue
  • Combining Array Methods
  • Array Manipulation
  • Array Iteration
  • Practicing Object Basics
  • Meet Python
  • 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
  • Refining the App
  • Building the Application
  • Setting up with Create React App
  • Component Lifecycle
  • Designing Dataflow
  • Subqueries
  • Set Operations
  • Joining Table Data with SQL
  • Table Relationships
  • Database Keys
  • Database Normalization
  • PHPDB Stage 2: Querying the Database with PHP
  • PHPDB Stage 1: Databases and PHP
  • Functions and Looping
  • 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
  • Types and Branching
  • How WordPress Templates Work
  • Hooking Into WordPress Plugins
  • Action Functions in WordPress
  • Filter Functions in WordPress
  • An Overview of Hooks in WordPress
  • More Advanced PHP for WordPress
  • PHP Basics for WordPress
  • Introduction to PHP for WordPress
  • PHP Email Form Errors
  • PHP Email Forms
  • PHP Inventory
  • Installing WordPress Locally
  • What Is WordPress?
  • Completing and Testing the API
  • Communicating with Mongo Through Mongoose
  • Modeling Data for the API
  • Building API Routes in Express
  • Building a REST Service
  • Add Reusable Logic to Your Sass
  • Write Smart and Efficient CSS with Sass
  • Improve Your Workflow with Sass
  • Docker Use Cases
  • Stateful Components
  • Thinking in Components
  • First Steps in React
  • Express Middleware
  • Sessions and Cookies
  • User Registration and Login
  • What is Authentication?
  • Create Function Using Arrow Syntax
  • Using Template Literals
  • Defining Variables With let and const
  • Go Further With Mongo
  • Working With Collections
  • Understanding MongoDB
  • Getting Started with MongoDB
  • Serving Static Files in Express
  • Applying Express Knowledge
  • Middleware
  • Getting the REST You Need
  • Getting Started with Sass
  • Deeper into Routing with Express
  • Creating an Icon
  • Introduction to Illustrator
  • Using Templates with Express
  • Get Involved in Open Source
  •  Create a Web Presence on GitHub
  •  Working on a Team
  • Working By Yourself
  • Hello, GitHub!
  • Getting Started with Express
  • Improving your Gulp Workflow
  • Compile Sass with Gulp
  • Gulp your JavaScript workflow!
  • Welcome to Gulp.js
  • 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
  • GitHub and Other Remote Repositories
  • Managing Committed Files
  • First Commits
  • Positioning Page Content
  • CSS Layout Project
  • Page Layout with the Float Property
  • Controlling Layout with CSS Display Modes
  • Getting Started with CSS Layout
  • Updating and Uninstalling Packages with npm
  • Installing Packages with npm
  • What is npm?
  • Python For Beginners
  • 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
  • Getters and Setters
  • Working with Classes in JavaScript
  • Object Basics
  • Introduction to Object-Oriented JavaScript
  • HTTP Methods and Headers
  • Creating a Basic Template Engine in Node.js
  • Handling Routes in Node.js
  • Creating a Simple Server in Node.js
  • Creating a Command Line Weather Application
  • Handling Errors in Node
  • Getting Data From an API With Node
  • Introduction to Node.js
  • Classes
  • Objects and New Collection Types
  • The Cooler Parts of ES2015
  • ES2015 Basics
  • Quiz Practice Project
  • Prototypal Inheritance
  • Constructor Functions & Prototypes
  • Introduction to Methods
  • Selectors - Beyond the Basics
  • AJAX and APIs
  • jQuery and AJAX
  • Programming AJAX
  • AJAX Concepts
  • Traversing the DOM
  • Responding to User Interaction
  • Making Changes to the DOM
  • Getting a Handle on the DOM
  • The Browser Environment
  • JavaScript Objects
  • JavaScript Arrays
  • JavaScript Loops
  • Finishing the Game
  • Introducing JavaScript
  • Callbacks and the DOM
  • Callbacks with Timers
  • Introduction to Callback Functions
  • JavaScript Functions
  • Working with jQuery Collections (2017)
  • Understanding jQuery Events and DOM Traversal (2017)
  • Introducing jQuery (2017)
  • Slim and Templates
  • Dependency Management
  • Art Direction with the Picture Element
  • Image Delivery with Srcset and Sizes
  • Creating an SVG
  • Introduction to SVG
  • Welcome to the Treehouse Club
  • Captioning Video
  • Media Basics
  • Events
  • Hello, jQuery!
  • Finding the Data You Want
  • Getting Data from a Database
  • Data, Databases and SQL
  • Database Security
  • Queries & Results
  • Getting Started with PDO
  • Introduction
  • Structuring Tables
  • Table Basics
  • PHP Internal Functions
  • PHP Returns & Closures
  • PHP Functions Basics
  • PHP Loops
  • PHP Arrays
  • PHP Conditionals
  • PHP Includes
  • PHP on the Web
  • Daily Exercise Program
  • Unit Converter
  • Harnessing the Power of Objects
  • Meet Objects
  • Perfecting the Prototype
  • Using your New Tools
  • Getting Started with Java
  • Choosing Options
  • Organizing Forms
  • Form Basics
  • Going Further with HTML
  • Images, Text and Links
  • Structuring Your Content
  • Getting Started With HTML
  • JavaScript Conditional Statements
  • JavaScript Numbers
  • Getting to Know PHP
  • JavaScript Variables
  • Introducing JavaScript
  • Fundamental Concepts
  • Designing with the Latest Features
  • Basic Layout
  • The Box Model
  • Understanding Values and Units
  • Basic Selectors
  • Getting Started with CSS
  • WordPress Plugin Best Practices
  • WordPress Widgets
  • Custom Post Types in WordPress
  • Customizing WordPress Themes
  • WordPress Themes
  • Computer Languages
  • Computer Basics
  • 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