In each folder, separated by courses, books, and others are my notes, related to what I'm studying, doing, or learning...
My goals are to
Current Book: You Don't Know JS: Up & Going Current Course: The Complete 2019 Web Development Bootcamp
If you want to develop the skills necessary to be 'job ready' for a junior developer position - complete tier X, 0, and 1.
Math will be relevant throughout the guide. Begin it as you start the guide, and incrementally work through it alongside the guide. (You need not finish this before moving to tier 0, or tier 1, but be actively working on it alongside them.)
| Courses | Status | Evidence |
|---|---|---|
| Algebra I | ||
| Algebra II | ||
| Trigonometry | ||
| Precalculus |
A very gentle introduction, complete if feel you would benefit from it, skip if you'd rather dive right into tier 0
| Courses | Status | Evidence |
|---|---|---|
| Intro to JS: Drawing & Animation | 08/22/19 | Notes |
| Intro to HTML/CSS: Making webpages | 09/05/19 | Notes |
| Intro to SQL: Querying and managing data | WIP | Notes |
| Advanced JS: Games & Visualizations | ||
| HTML/JS: Making webpages interactive | ||
| Capstone | Status | Evidence |
| Create a website highlighting what you learned and built during this tier. Use this as an opportunity to create a portfolio of your projects, notes, blog posts, etc. |
Complete the App Academy Open free online Fullstack Bootcamp.
| Courses | Status | Evidence |
|---|---|---|
| Welcome To Coding | 03/28/2020 | Notes |
| Full Stack Online - Intro to Programming | 05/20/2020 | Notes |
| Full Stack Online - Software Engineering Foundations | ||
| Full Stack Online - Ruby | ||
| Full Stack Online - SQL | ||
| Full Stack Online - Rails | ||
| Full Stack Online - JavaScript | ||
| Full Stack Online - React | ||
| Full Stack Online - Full Stack Project | ||
| Full Stack Online - Job Search | ||
| Capstone | Status | Evidence |
| Create a website highlighting what you learned and built during this tier. Use this as an opportunity to create a portfolio of your projects, notes, blog posts, etc. |
Deepen understanding of Web Development and begin learning Computer Science topics
| Courses | Status | Evidence |
|---|---|---|
| CS50's Introduction to Computer Science | WIP | |
| How to Learn Math: For Students | ||
| CS50's Web Programming with Python and JavaScript | ||
| Single Variable Calculus (more rigorous) or Khan Academy Calculus I and Khan Academy Calculus II (a more gentle introduction) | ||
| Algorithms | ||
| Software Debugging | ||
| Software Testing | ||
| CS50's Mobile App Development with React Native | ||
| Reading | Status | Evidence |
| MDN HTML - Advanced topics | ||
| MDN CSS - Reference - Key Concepts | ||
| MDN JavaScript - Tutorials - JavaScript Guide | ||
| You Don't Know JS: Up & Going | ||
| You Don't Know JS: Scope & Closures | ||
| You Don't Know JS: this & Object Prototypes | ||
| Practice | Status | Evidence |
| Complete all Classic Puzzles - Easy on CodinGame | ||
| Complete Google Kick Start 2018 | ||
| Tier Programming Project | ||
| Tier Programming Project | ||
| Specialization | Status | Evidence |
| Complete a Specialization - note: you will have the opportunity to complete a specialization in each tier so don't worry overmuch about picking 'the right one'. That said, if you didn't do App Academy in Tier 0 Web Development - Fullstack Bootcamp - App Academy Open is highly recommended. |
If you want to develop the skills necessary to move beyond junior to intermediate developer - once you've finished tiers X, 0 and 1, proceed to complete tiers 2 and 3.
Dive deeper into the Computer Science topics which will prove useful throughout all programming
| Courses | Status | Evidence |
|---|---|---|
| Mathematics for Computer Science | ||
| Introduction to Computer Science and Programming in Python | ||
| Introduction to Computational Thinking and Data Science | ||
| Software Construction | ||
| Introduction to Algorithms | ||
| Algorithms: Design and Analysis | ||
| Reading | Status | Evidence |
| MDN JavaScript - Tutorials - Advanced | ||
| MDN HTTP - Tutorials | ||
| MDN Web Components | ||
| You Don't Know JS: Types & Grammar | ||
| You Don't Know JS: ES6 & Beyond | ||
| JavaScript Allongé, the "Six" Edition | ||
| D3 Tips and Tricks v3.x | ||
| Practice | Status | Evidence |
| Complete all Classic Puzzles - Medium on CodinGame | ||
| Complete all ES6 Katas here | ||
| Complete Google Kick Start 2017 | ||
| Complete Google Code Jam 2018 | ||
| Complete FaceBook Hacker Cup 2017 | ||
| Tier Programming Project | ||
| Tier Programming Project | ||
| Specialization | Status | Evidence |
| Complete a Specialization - note: you may elect to complete another round of a specialization you selected in a prior tier, or branch out and complete a different specialization |
Dive deeper yet, exploring algorithms and different programming paradigms
| Courses | Status | Evidence |
|---|---|---|
| Software Architecture & Design | ||
| Probabilistic Systems Analysis and Applied Probability | ||
| Algorithms: Design and Analysis, Part 2 | ||
| Multivariable Calculus (more rigorous) or Khan Academy Multivariable Calculus (a more gentle introduction) | ||
| Structure and Interpretation of Computer Programs | ||
| Design and Analysis of Algorithms | ||
| Artificial Intelligence | ||
| Reading | Status | Evidence |
| Official docs for Angular, React, or Vue | ||
| Jest Official Docs | ||
| JavaScript Design Patterns | ||
| Understanding ECMAScript 6 | ||
| Professor Frisby's Mostly Adequate Guide to Functional Programming | ||
| Functional Light JS | ||
| Essential TypeScript | ||
| Practice | Status | Evidence |
| Complete all Classic Puzzles - Hard on CodinGame | ||
| Write the CSS Necessary to create your own 12 column based grid layout - see here for an example | ||
| Study The official Sass docs and convert your 12 column based grid layout to Sass | ||
| Complete All Tracks (Basic Programming, Data Structures, Algorithms, Math, Machine Learning, and Python) on HackerEarth | ||
| Complete Google Kick Start 2016 | ||
| Complete Google Code Jam 2017 | ||
| Complete FaceBook Hacker Cup 2016 | ||
| Tier Programming Project | ||
| Tier Programming Project | ||
| Specialization | Status | Evidence |
| Complete a Specialization - note: you may elect to complete another round of a specialization you selected in a prior tier, or branch out and complete a different specialization |
If you want to develop the skills necessary to move beyond intermediate to senior developer - once you've finished tiers X, 0, 1, 2, and 3, proceed to complete tiers 4 and 5.
Wrap up by taking a look at some specific areas of computing to complete a breadth of knowledge that can be leveraged regardless of specialty
| Courses | Status | Evidence |
|---|---|---|
| Computation Structures | ||
| Introduction to Databases - all mini-courses | ||
| Differential Equations | ||
| Computer System Engineering | ||
| Performance Engineering of Software Systems | ||
| Mining Massive Datasets | ||
| Compilers | ||
| Reading | Status | Evidence |
| How to Design Programs | ||
| 97 Things Every Programmer Should Know - Extended | ||
| Think Java - How to Think Like a Computer Scientist | ||
| Open Data Structures | ||
| Node.js Docs | ||
| Practice | Status | Evidence |
| Complete all Classic Puzzles - Very Hard on CodinGame | ||
| Study The Google Android Developer Guide and build the Android App of your choice | ||
| Complete Google Kick Start 2015 | ||
| Complete Google Code Jam 2016 | ||
| Complete FaceBook Hacker Cup 2015 | ||
| Tier Programming Project | ||
| Tier Programming Project | ||
| Specialization | Status | Evidence |
| Complete a Specialization - note: you may elect to complete another round of a specialization you selected in a prior tier, or branch out and complete a different specialization |
Wrap up by diving more deeply into your specialization(s). If you haven't already done an Advanced Specialization, strongly consider including it in this tier. Beyond that, feel free to laser focus on one specialization, practicing more in that area, or branch out and develop expertise across multiple specializations.
| Practice | Status | Evidence |
|---|---|---|
| Complete a Specialization | ||
| Complete a Specialization | ||
| Complete a Specialization | ||
| Complete a Specialization | ||
| Complete a Specialization | ||
| Capstone | Status | Evidence |
| Create a website highlighting what you learned and built during this specialization. Use this as an opportunity to create a portfolio of your projects, notes, blog posts, etc. |
Each tier has a 'specialization' based capstone which involves further study and extensive practice in an area of your choosing. Fullstack Bootcamp - App Academy Open is highly recommended (but not required) as the first specialization. Beyond that, feel free to complete a different specialization each tier, or dive deeply into a specialization by selecting it during multiple tiers to explore it in greater detail and further develop your specialized profile.
The following specializations rely on knowledge gained in earlier tiers. Additionally, they are typically 'more difficult' or will require more work than those listed above.
Both tiers and specializations will require 'Tier Programming Projects', you are free to select any programming project you want. To help combat the 'but I don't know what I want' roadblock, Tier Programming Project Ideas lists a variety of ideas.
Note: In specializations, the Tier Programming Projects might have extra criteria (such as 'if you're doing a mobile app development specialization your projects must be mobile apps')
| Courses | Status | Evidence |
|---|---|---|
| Build Responsive Real World Websites with HTML5 and CSS3 | 07-06-18 | N/A |
| Advanced CSS and Sass: Flexbox, Grid, Animations and More! | 07-31-18 | Notes |
| How to Use SMART Goals - Achieve More in Less Time | 08-10-18 | Notes |
| How to Contribute to an Open Source Project on GitHub | 10-16-18 | N/A |
| Pre-Programming: Everything you need to know before you code | 10-19-18 | Notes |
| Introduction to JavaScript | 11-03-18 | N/A |
| JavaScript Basics for Beginners | 11-05-18 | Notes |
| Learning How to Learn: Powerful mental tools to help you master tough subjects | 11-18-18 | Notes |
| Modern HTML & CSS From The Beginning (Including Sass) | 07-23-19 | Notes |
| The Complete 2019 Web Development Bootcamp | 09-14-19 | Notes |
| Learn JavaScript: Full-Stack from Scratch | 02-23-20 | Notes |
| CS50's Understanding Technology | 06-26/20 | Notes |
| Modern JavaScript From The Beginning | WIP | Notes |
| The Complete JavaScript Course 2018: Build Real Projects! | ||
| The Web Developer Bootcamp | ||
| The Advanced Web Developer Bootcamp | ||
| The Complete Web Developer in 2018: Zero to Mastery | ||
| The Complete Web Developer Course 2.0 | ||
| The Modern Python 3 Bootcamp | ||
| The Ultimate MySQL Bootcamp: Go from SQL Beginner to Expert | ||
| JavaScript: Understanding the Weird Parts | ||
| Learn and Understand NodeJS | ||
| ES6 Javascript: The Complete Developer's Guide | ||
| Node with React: Fullstack Web Development | ||
| The Complete Developers Guide to MongoDB | ||
| Webpack 2: The Complete Developer's Guide | ||
| Modern React with Redux | ||
| Advanced React and Redux: 2018 Edition | ||
| React 16 - The Complete Guide (incl. React Router 4 & Redux) | ||
| The Complete React Web Developer Course (with Redux) | ||
| The Complete Node.js Developer Course (2nd Edition) | ||
| Complete Python Bootcamp: Go from zero to hero in Python 3 | ||
| Intro to JavaScript | ||
| Books | Status | Evidence |
|---|---|---|
| A Smarter Way to Learn JavaScript | WIP | Notes |
| The Complete Software Developer's Career Guide | WIP | Notes |
| The JavaScript Handbook | WIP | Notes |
| Projects | Status | Evidence |
|---|---|---|
| Basic Project | 07-07-18 | Omnifood |
| Basic Project | 07-19-18 | Natours |
| Basic Project | 07-26-18 | Trillo |
| Basic Project | 07-31-18 | Nexter |
| Basic Project | 07-10-19 | HBS |
| Basic Project | 07-13-19 | bridgeledger |
| Basic Project | 07-19-19 | TechNews |
| Basic Project | 07-23-19 | johndoe-portfolio |
| Basic Project | 08-05-19 | tinderPet |
| Build a Tribute Page | 03-09-20 | Brad Traversy | Tribute Page |
| Build a Survey Form | 03-11-20 | FCC Survey Form |
| Build a Product Landing Page | 03-12-20 | UPlayer | Product Landing Page |
| Build a Technical Documentation Page | 03-20-20 | JS Documentation | Technical Documentation Page |
| Build a Personal Portfolio Webpage | 03-24-20 | FCC Portfolio | Personal Portfolio Webpage |
Additional books can be found here
surge.sh
heroku
Glitch
MDN
YDKJS
For when you need assets/ideas
Official Docs
Full Paths:
Credits: P1xt