If you have any questions, be sure to check the FAQ. In fact, before you even start anything, go read the FAQ. It has a plethora of hints, tips and answers to help you ensure you get the most out of this guide.
- Book: You Don't Know JS: Up & Going
- Book: You Don't Know JS: Scope & Closures
- Book: You Don't Know JS: this & Object Prototypes
- Course: Learn to Code HTML & CSS
- Project: Portfolio from the frontend section of FCC
- Course: Introduction to Computer Science - CS50
- Book: You Don't Know JS: Types & Grammar
- Book: You Don't Know JS: Async & Performance
- Book: You Don't Know JS: ES6 & Beyond
- Course: Learn to Code Advanced HTML & CSS
- Project: Clone this online resume template
- Article: Read Project Specification Documents and get in the habit of including every bit of information it details that makes sense for a project in the README.md or other supporting documentation for your projects
- Course: Effective Thinking Through Mathematics
- Book: Setting Up ES6
- Book: JavaScript Allongé, the "Six" Edition
- Course: Getting Sassy with CSS
- Project: Build an online Towers of Hanoi solver that accepts a tower height between 5 and 10, and then displays a graphical (animated) solution, iteratively moving each piece until the puzzle is solved
- Project: Pick a template from here and create a new template with it as your inspiration (do not use its assets)
- Course: How to Code: Simple Data
- Course: How to Code: Complex Data
- Course: Software Construction: Data Abstraction
- Course: Software Construction: Object-Oriented Design
- Book: DOM Enlightenment
- Project: Simon Game from the frontend section of FCC
- Project: Read up on Gulp - try to incorporate it into your workflow if you aren't using it regularly already
- Project: Read up on Mocha - try to use it to test your JavaScript, every chance you get
- Course - Programming for the Web with JavaScript on edX or M101JS: MongoDB for Node.js Developers on MongoDB University (or both, your choice)
- The FCC Backend Certification - all projects, ignore the tutorials and just read the official docs if you want.
- Course: Calculus One
- Book: JavaScript Design Patterns
- Project: Clone this landing page
- Course: Mathematics for Computer Science
- Project: Build the Pomodoro project from the FCC frontend curriculum
- Article: Read Algorithms and Flowcharts and then familiarize yourself with Pencil ... start flowcharting complex portions of your code logic as part of your documentation
- Project: Clone the front page of this website modifying it to highlight a different product or industry. Make special note of the secondary navigation bar at the top. Implementing that is the highlight of this project.
- Project: Complete all Classic Puzzles - Easy on CodinGame in JavaScript
- Book: Open Data Structures
- Project: Complete all challenges from the Code Jam Qualification Round 2015
- Project: Pick a template from here and create a new template with it as your inspiration (do not use its assets)
- Course: Algorithms, Part I
- Course: Algorithms, Part II
- Project: Complete all Classic Puzzles - Medium on CodinGame in JavaScript
- Book: Professor Frisby's Mostly Adequate Guide to Functional Programming
- Course: Software Testing
- Course: Software Debugging
- Project: Clone this blog template - note that there are multiple pages
- Book: JavaScript Spessore - no longer available - use Programming JavaScript Applications instead.
- Visit the Angular, React and Vue web pages, work through their tutorials, and get a sense of how they differ and which you prefer. From here on out, try to use one of them on each frontend where it makes sense to do it as a single page app. Lean towards your favorite on most projects, but use each of the other two in at least one project before finishing the guide.
- Project: Pick a template from here and create a new template with it as your inspiration (do not use its assets)
- Project: Clone Reddit
- Project: Complete all ES6 Katas here
- Course: Calculus Two: Sequences and Series
- Project: Complete all Classic Puzzles - Hard on CodinGame in JavaScript
- Project: Clone this Admin template
- Project: Pick a template from here and create a new template with it as your inspiration (do not use its assets)
- Course: Agile Software Development
- Project: Clone the Netflix interface- pulling data from the Movie DB API or an API in a backend you create yourself.
- Course: Software Architecture & Design
- Project: Write the CSS Necessary to create your own 12 column based grid layout - see here for an example
- Project: Pick a template from here and create a new template with it as your inspiration (do not use its assets)
- Project: Clone FaceBook - yes, all the functionality. See here for a list of requirements you should fullfill.
- Project: Read up on Travis CI - try to incorporate it into any project in active development or which you intend to keep running on the web
- Course: Linear Algebra - Foundations to Frontiers
- Project: Clone Twitter - yes, all the functionality
- Course: Computer Graphics
- Course: Artificial Intelligence
- Course: Machine Learning
- Project: Design, implement, test, and deploy a game that is playable on the web, using the technologies of your choice. The only criteria are that it be playable online, and that it inculde a substantial AI component.
- Project: Complete all Classic Puzzles - Very Hard on CodinGame in JavaScript
- Project: Create a node module that will convert markdown to properly formatted html
- Project: Create an npm module that bootstraps a fullstack application, with Node.js on the backend, and the SPA library/framework of your choice on the frontend. Include a full test suite and comprehensive build processes. Publish it to NPM.
- Project: Complete all problems from all rounds of the Google Code Jam 2016 - scroll down to the appropriate section
- Project: Extend your CSS grid framework to include the CSS and JavaScript required to implement 5 to 10 material design components
- Project: Clone Learn Harmony
- Project: Clone Slack - the functionality should be complete to the point that one user can create a room, invite other users, and all users of that room can real-time chat. The room should be secure and inaccessible to anyone but those invited.