learning-roadmap
learning-roadmap copied to clipboard
🗺️ A roadmap to becoming a better developer.
Learning Roadmap
This a central place to keep track of what I'm learning to become a better software engineer.
Tier 1 - getting started
- [x] Book: You Don't Know JS: Up & Going
- [x] Book: You Don't Know JS: Scope & Closures
- [x] Book: You Don't Know JS: this & Object Prototypes
- [x] Course: Learn to Code HTML & CSS
- [x] Project: Clone this online resume template
- [x] Course: Introduction to Computer Science - CS50
- [x] Book: You Don't Know JS: Types & Grammar
- [x] Book: You Don't Know JS: Async & Performance
- [x] Book: You Don't Know JS: ES6 & Beyond
- [x] Course: Learn to Code Advanced HTML & CSS
- [x] Project: Portfolio from the frontend section of FCC
- [x] 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
- [x] Course: Effective Thinking Through Mathematics
- [ ] Book: JavaScript Allongé, the "Six" Edition
- [ ] Project: Personal portfolio & blog website using Gatsby.js
- [ ] Practice: 20 "Easy" problems from (CodeWars, Leetcode, Hackerrank, etc)
Intermission - personal interest
- [ ] Course: Pluralsight: node.js path
- [ ] Course: Node.js: Advanced concepts
- [ ] Course: The Complete SQL Bootcamp
- [ ] Course: Go: The Complete Developer's Guide
- [ ] Course: Web Development with Go
Tier 2 - develop more expertise
- [ ] Book: DOM Enlightenment
- [ ] Course: Single Variable Calculus
- [ ] Book: JavaScript Design Patterns
- [ ] Article: Read Algorithms and Flowcharts and then familiarize yourself with Pencil ... start flowcharting complex portions of your code logic as part of your documentation
- [ ] Book: Open Data Structures
- [ ] Course: Algorithms, Part I
- [ ] Course: Algorithms, Part II
Tier 3 - add more rigor
- [ ] Book: Professor Frisby's Mostly Adequate Guide to Functional Programming
- [ ] Course: Software Testing
- [ ] Course: Software Debugging
- [ ] Project: Clone the Netflix interface using React, Angular, or Vue - pulling data from the Movie DB API or an API in a backend you create yourself.
- [ ] Course: Multivariable Calculus
- [ ] Project: Complete all Classic Puzzles - Medium on CodinGame in JavaScript
- [ ] Course: Software Architecture & Design
- [ ] Project: Complete all challenges from the Code Jam Round 1A 2015
- [ ] Book: Functional Light JS
- [ ] Project: Clone this blog template - note that there are multiple pages
- [ ] Course: Databases
- [ ] Course: Agile Software Development
- [ ] Project: Complete all ES6 Katas here
- [ ] Course: Introduction to Cloud Infrastructure Technologies
- [ ] Project: Complete all challenges from the Code Jam Round 1B 2015
- [ ] Project: Build Facebook: yes, all the functionality. See here for a list of requirements you should fulfill.
- [ ] Course: Intro to Theoretical Computer Science
- [ ] Project: Complete all challenges from the Code Jam Round 1C 2015
- [ ] Course: Introduction to Probability - The Science of Uncertainty
- [ ] Project: Write the CSS Necessary to create your own 12 column based grid layout - see here for an example
- [ ] Course: Linear Algebra - Foundations to Frontiers
- [ ] Project: Complete all Classic Puzzles - Hard on CodinGame in JavaScript
- [ ] Course: Cryptography I
- [ ] Project: Complete all challenges from the Code Jam Round 2 2015
- [ ] Course: Cryptography II
- [ ] Project: Clone Twitter - yes, all the functionality
Tier 4 - polish the rough edges
- [ ] Course: Computer Architecture
- [ ] Project: Complete all challenges from the Code Jam Round 3 2015
- [ ] Course: Introduction to Cyber Security
- [ ] Project: Complete all Classic Puzzles - Very Hard on CodinGame in JavaScript
- [ ] Course: Computer Graphics
- [ ] Course: Artificial Intelligence
- [ ] Project: Complete all challenges from the Code Jam World Finals 2015
- [ ] 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 include a substantial AI component.
- [ ] Course: Operating Systems and System Programming
- [ ] Project: Create a node module that will convert markdown to properly formatted html
- [ ] Course: Compilers
- [ ] Course: Robotics Fundamentals
- [ ] Project: Clone Learn Harmony
- [ ] Course: Computer Networks
- [ ] Course: Parallel Computer Architecture and Programming
- [ ] Project: Complete all problems from all rounds of the Distributed Google Code Jam 2015 - scroll down to the appropriate section
- [ ] 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.
- [ ] 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