Vishal Solanki

Vishal Solanki

Courses Plus Student

Member Since December 18, 2013

36,859

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

    FULL

455 Achievements

  • Getting the REST You Need 2
  • How to Make Wireframes on Paper
  • Combine and Minify Assets
  • Optimize Assets
  • Measuring Performance
  • Responding to User Interaction
  • GitHub and Other Remote Repositories
  • Managing Committed Files
  • First Commits
  • AWS and "The Cloud"
  • Arrow Functions
  • Understanding Promises
  • Loop Through Arrays
  • Store Multiple Values in an Array
  • Exploring Async/Await
  • Loop Through Objects
  • Object Basics
  • Pass Information Into Functions
  • Create Reusable Code with Functions
  • Flask Templates
  • Welcome to Flask
  • Buggy Logs
  • Cleaner Code
  • Iterating and Packing with Dictionaries
  • Introducing Dictionaries
  • Sequence Operations
  • Sequence Iterations
  • Getting to Know Tuples
  • Build an Application
  • Using Lists
  • Meet Lists
  • All Together Now
  • Functions and Looping
  • Types and Branching
  • The Math Object
  • Working with Numbers
  • Making Decisions in Your Code with Conditional Statements
  • Working With Strings
  • Storing and Tracking Information with Variables
  • Create Function Using Arrow Syntax
  • Using Template Literals
  • What to Test
  • Getting Started with Android
  • Creation
  • Putting it all Together
  • Actions, Dispatch and Reducers. Oh my!
  • Modularizing the React Scoreboard Application
  • Hello, JavaScript!
  • Media Queries
  • Responsive Theory
  • Why Test
  • How To Test
  • Python: Inheritance
  • Building a Flashcard App
  • A High Level Overview
  • Python: Instant Objects
  • Flexible Sized Grids
  • Introducing Adobe XD
  • Asynchronous JavaScript with Callbacks
  • What is Asynchronous Programming?
  • Practicing Classes
  • Review Functional Programming Fundamentals
  • Reduction and Aggregation
  • Meet Streams
  • Java's Functional Toolset
  • What is Wireframing?
  • React Component Patterns
  • Introducing the Authentication Project
  • Stateful Components and Lifecycle Methods
  • Managing State and Data Flow
  • Build Modular Interfaces with Components
  • Getting to Know PHP
  • Adding 3D Effects with CSS
  • Hierarchy and Layout
  • Getting Started with CSS Transforms
  • Transition Timing Functions and Delays
  • Telling the Story
  • Designing for Your User’s "To-be"
  • Understanding your User’s “As-is” Scenario
  • Using Templates with Express
  • Getting Started with Express
  • How Jenkins Works
  • Hello Kotlin!
  • Machine Learning Vocabulary
  • Complex Data Structures
  • Java Maps
  • Java Lists
  • Getting to Know REST APIs
  • Building Forms With Bootstrap
  • Using Bootstrap Components
  • Responsive Layouts With the Bootstrap Grid
  • Generics and Protocols
  • Generic Types
  • Generic Functions, Parameters and Constraints
  • Deleting and Updating Data
  • Fetching Data Using Fetch Requests
  • Interfaces in Java
  • Getting to Know Bootstrap 4
  • Inserting and Saving Data Using a Context
  • Modeling, Storing, and Presenting Data with Spring
  • Using the Delegate Pattern in iOS
  • Introduction to PHP for WordPress
  • Becoming Acquainted with Your User
  • Becoming a Design Thinker
  • How to Critique Design
  • Principles of Design
  • Elements of Design
  • Understanding the Core Data Stack
  • The Delegate Pattern
  • S3 Storage Service
  • Security in Practice
  • Common Attacks and Defenses
  • Hello Internet!
  • Maintaining Secure Web Apps
  • Protecting Data and Keeping Attackers Out
  • What is Agile?
  • Why Protect Your Web Apps
  • Security: Solutions
  • Security: Concerns
  • Vulnerabilities: Configuration, Components, and Logging
  • Vulnerabilities: Authentication, Access, and Sensitive Data
  • Vulnerabilities:  Injection, XSS, CSRF
  • The OWASP Top 10 Explained
  • Asynchronous Code in Express
  • Getting Started with Redux
  • Getters and Setters
  • Working with Classes in JavaScript
  • Object Basics
  • Introduction to Object-Oriented JavaScript
  • Combining Array Methods
  • Array Manipulation
  • Array Iteration
  • Introducing Vue
  • Error Handling and Memory Management
  • Building Standard Library Functions
  • Closure Expressions
  • First Class Functions
  • Callbacks and the DOM
  • Callbacks with Timers
  • Protocol Basics
  • Go Further With Mongo
  • Working With Collections
  • Introducing Spreadsheets
  • Introduction to Callback Functions
  • Intro to Unit Testing 2
  • Introduction to Unit Testing
  • Adding Power to Functions
  • Functions in Swift
  • Stateful Components
  • Refactoring Using Codable
  • Introducing Props
  • Thinking in Components
  • Dark Sky API Client
  • First Steps in React
  • Downloading JSON Data Asynchronously
  • Fetching Data From the Web
  • Modeling Forecast Data
  • Reusable GraphQL
  • Making Changes with Mutations
  • Fetching Data with Queries
  • Getting Started with GraphQL
  • Searching Names
  • Sorting Algorithms
  • Dynamic Keys and Inheritance
  • Parsing Different JSON Structures
  • Error Handling
  • Parsing to Non-Primitive Types
  • An Overview of Codable
  • Go Concurrency Overview
  • Go Custom Types Overview
  • Go Data Structures Overview
  • Go Flow Control Overview
  • Go Syntax Overview
  • Introducing Grid Layout
  • Recursion and Space Complexity
  • Algorithms in Code
  • Time Complexity
  • Delivering the MVP
  • JavaScript Objects and Conditionals
  • Creating the MVP
  • JavaScript Arrays and Loops
  • JavaScript Functions
  • Data Types and Variables
  • Harnessing the Power of Objects
  • Playing a Counting Game
  • Efficiency!
  • Dockerize a Web App
  • Managing Images and Containers
  • Building Images Using Dockerfiles
  • Fundamentals of Docker
  • Docker Use Cases
  • Meet Objects
  • Using the MVC Architecture with Spring
  • Exploring the Java Collections Framework
  • Getting There
  • Organizing Data
  • Creating Spring Controllers and Thymeleaf Views
  • Spring Components and Configuring Our App
  • The Internet
  • Say Hello to Django
  • Meet Python
  • The Design Solution
  • Going Further with HTML
  • Day 1: Joining Tables
  • Date and Time Functions
  • Aggregate and Numeric Functions
  • Working with Text
  • Ordering, Limiting and Paging Results
  • Setting Up Your Local Environment for Spring Development
  • 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
  • Data, Databases and SQL
  • Orientation: Selecting Data
  • Working with jQuery Collections (2017)
  • Keyframe and Line Drawing Animations
  • Understanding jQuery Events and DOM Traversal (2017)
  • Introducing jQuery (2017)
  • The Design Problem
  • Design Principles
  • What is Product Design?
  • Loading Data From a Resource
  • Modeling an Interface
  • AJAX and APIs
  • jQuery and AJAX
  • Programming AJAX
  • Error Handling
  • Unit Testing
  • Introduction to Enumerations
  • Objects and Optionals
  • Introduction to Optionals
  • Running Apps on a Device
  • Improving Our User Interface
  • Structs As Data Models
  • View Controllers and Views
  • Getting Started with iOS Development
  • Differentiating Between Objects
  • Class Inheritance
  • Classes in Swift
  • Setting Up an Angular Application
  • Modules and Themes
  • Site Building with the Drupal Interface
  • Learn About Drupal
  • Images, Text and Links
  • Subqueries
  • Joining Table Data with SQL
  • Table Relationships
  • Database Keys
  • Database Normalization
  • Going Further with Routing
  • Navigating, Nesting and Redirecting Routes
  • Getting Started with React Router
  • Implementing React Native
  • Why React Native
  • Introduction to Node.js
  • Getting a Handle on the DOM
  • The Browser Environment
  • Introduction to Methods
  • Finishing the Game
  • Introducing JavaScript
  • Structuring Your Content
  • Getting Started With HTML
  • Transitions and Transforms
  • Creating an SVG
  • Introduction to SVG
  • User Input in Android
  • Introducing Adobe Illustrator
  • Creating a Mobile Drop Down Menu
  • Installing Sass and Setting up the Project
  • Modular Media Queries
  • Sass Grid System
  • SMACSS and Sass
  • Sass and BEM
  • Getting Modular with Mixins and Functions
  • Building Forms with Bootstrap
  • An Introduction to Swift Programming
  • Advanced Directives
  • Concepts on Advanced Functions
  • Advanced Variables, Mixins, Functions, and Placeholders
  • Getting Started with Advanced Sass
  • Building Your Resume
  • Stateful Components
  • Thinking in Components
  • Installing Programs
  • Building a Layout with Flexbox
  • Flexbox Properties
  • Console Processes
  • Add Reusable Logic to Your Sass
  • Write Smart and Efficient CSS with Sass
  • Improve Your Workflow with Sass
  • Console Users and Permission
  • Getting Started with Sass
  • Getting Data From an API With Node
  • Moving Around in the Console
  • Computer Basics
  • Using Bootstrap Components
  • Responsive Layouts with the Bootstrap Grid
  • Getting to Know Bootstrap 4
  • JavaScript Loops
  • AJAX Concepts
  • Getting the REST You Need
  • GET and POST Requests in a Browser
  • Introduction to HTTP
  • Getting Started with CSS Transitions
  • Classes
  • Objects and New Collection Types
  • The Cooler Parts of ES2015
  • ES2015 Basics
  • Getting Started with Java
  • Perfecting the Prototype
  • Using your New Tools
  • Planning for Performance
  • First Steps in React
  • Understanding MongoDB
  • Getting Started with MongoDB
  • WordPress Header and Footer Templates
  • Working with CSS and JS in WordPress Themes
  • Starting a WordPress Theme
  • Improving Our Todo App
  • Services in Angular
  • Using Angular's Built-in Directives
  • Controllers and Scope
  • Getting Started with Angular
  • Behavior Driven Development with Mocha & Chai
  • Introducing Unit Testing
  • Understanding Flexbox
  • PHP Data & Structure
  • PHP Getting Started
  • Positioning Page Content
  • CSS Layout Project
  • Page Layout with the Float Property
  • Welcome to the Treehouse Club
  • Adding a New Web Page
  • Make It Beautiful with CSS
  • HTML: The Structural Foundation of Web Pages and Applications
  • Controlling Layout with CSS Display Modes
  • Getting Started with CSS Layout
  • Get Involved in Open Source
  •  Create a Web Presence on GitHub
  •  Working on a Team
  • Working By Yourself
  • Hello, GitHub!
  • Python Data Types
  • Python For Beginners
  • Getting Familiar with HTML and CSS
  • Creating a Simple Server in Node.js
  • Building a Command Line Application
  • Introduction to Node.js
  • Creating a Simple Lightbox
  • Creating a Spoiler Revealer
  • Introduction to jQuery
  • JavaScript Functions
  • Handling Routes in Node.js
  • JavaScript Conditional Statements
  • Selecting Elements and Adding Events with JavaScript
  • JavaScript Numbers
  • What is npm?
  • Introduction to Game Design
  • HTML Email Basics
  • Simple Mobile Interface
  • Exporting Designs
  • Sketch Features
  • Swift Optionals
  • Swift Parameters and Tuples
  • Swift Functions
  • JavaScript Variables
  • Control Flow
  • Collections
  • Operators
  • Introducing JavaScript
  • Types
  • Variables and Constants
  • Introducing Sketch
  • Advanced Sass Concepts
  • Speeding up Workflow With Sass
  • Variables, Mixins, and Extending Selectors
  • Getting Started with Sass
  • 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
  • What Do User Experience Designers Do?
  • What is User Experience (UX)?
  • Finalizing the Project
  • Case Studies and Examples
  • The Brand Identity Design Process
  • Introduction to Brand Identity
  • HTML First
  • The Logo Sprint
  • Logo Design 101
  • Creating Home Page Assets
  • Applying Effects
  • How to Draw in Illustrator
  •  Adding Color and Type
  • Creating an Icon
  • Introduction to Illustrator
  • Workflow 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
  • Grid Layout
  • Flexbox Layout
  • Positioning Schemes
  • Float Layout
  • Display Modes
  • Structuring Tables
  • Table Basics
  • Choosing Options
  • Organizing Forms
  • Form Basics
  • Fundamental Concepts
  • Designing with the Latest Features
  • Basic Layout
  • The Box Model
  • Understanding Values and Units
  • Basic Selectors
  • Getting Started with CSS
  • 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
  • Beginning HTML and CSS
  • Designing our App
  • Working with a Developer
  • Wireframing, Interaction Design and Planning
  • ADS Writing and Preparation
  • Introduction to UI Design
  • Improving Usability
  • Mobile Usability
  • Website Usability
  • What is Usability?
  • Slices & Save for Web
  • Vector Shapes
  • Type Tools
  • Masks Basics
  • Layer Basics
  • Workspace Basics
  • Color Theory
  • Principles
  • Elements
  • Newbie