bcsurf2822 / parsity_js_pro

A set of challenges to level you up as a JS developer

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Welcome! πŸ‘‹

You are going to stretch your Javascript knowledge and make you more confident with one of the most popular programming languages in the world 🌏!

Many of the concepts you will cover you may be familiar with but familiarity !== understanding.

That leads us to our philosophy on learning:

You Learn Best By Doing!

We have laid out the most common concepts that confuse JS developers. Here's how we suggest you tackle this material.

  1. Watch the videos under each sections README.md
  2. Read any related articles that are linked
  3. Everyone learns differently - feel free to look up these concepts using the medium you prefer to round out your knowledge
  4. Each module has broken unit tests... you need to fix them with the correct code
  5. Often times, the solution will be in the video in the README.md - DO NOT simply copy the answer from there! You will learn nothing
  6. For the love of Bob, please do the Your Turn sections in each README.md - these will help you really retain the information!

We know that getting your dream job as a software engineer or excelling in your current role requires a strong technical foundation.


Setup


  1. Fork this repo OR open in Code Spaces with Git Pod
  2. In your terminal run npm install
  3. To run tests - first unskip the tests in the file you are working on by removing all skips. Then run npm test. To test a specific file: npm test path/to/file.test.js
  4. Feel free to post your solution video in a Slack channel so others can learn from your work. If you post on LinkedIn or Twitter, tag us!

How to run tests:


πŸŽ₯ https://www.loom.com/share/7a1fd8ca234645538afd546246d13ebe


Solutions


Don't check out this branch unless you really need to:

solutions

git checkout secret_solutions

Let's get started! πŸš€


Here's the order I suggest you approach this material but feel free to jump around and please git pull every so often to get the most up to date material.

Table Stakes

  • Prototypes
  • Bind, Call, Apply
  • Closure

ES6 and Beyond

  • Map, Filter, Reduce
  • Generators
  • Async
  • Classes

Event Handling

  • Event Handling (Snake Game)

Time Tested Patterns

  • Design Patterns
  • Lodash Replica-Lite
  • Functional JS

Big O and Intro to Sorting and Searching

  • Sorting and Searching Algos

Data Structures

  • Trees and tries
  • Linked Lists
  • Graphs
  • Stacks and Queues

To Understand Recursion... you must first understand recursion

  • Recursion in JS

Common Approaches to JS problems

  • Sliding Window
  • Frequency Counter

About

A set of challenges to level you up as a JS developer


Languages

Language:JavaScript 95.1%Language:HTML 4.9%