Skip to content

carlabeltran/curriculum-resources

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 

Repository files navigation

Curriculum Resources

  • Collaborative effort by many instructional staff. Also, thanks to @ceckenrode for correcting format for linter!

Table of Contents

Command Line

HTML

Codecademy

  • CodeCademy’s HTML/CSS Module takes the user step-by-step on using and learning the basics of HTML and CSS.

  • Skill Level: Beginner

    • Pros

      • Step-by-step tutorials make it good for beginners to understand flow.

      • No previous knowledge required.

      • Free.

      • Great UI and easy to use.

      • Lots of online resources and community to help with problems.

  • Cons

    • Since it is step-by-step, students aren’t forced to learn how to implement what they learn into a “real” application using just a text editor and a browser.

    • Very limited for those wanting to learn advanced HTML/CSS (HTML5).

    • Sometimes buggy.

  • Who is it good for?

    • Those learning basics of HTML and CSS.

FreeCodeCamp

  • FreeCodeCamp is a free, highly modularized source for learning Full-Stack development. It includes a number of modules built for HTML and CSS.

  • Skill Level: Beginner

  • Pros

    • Very modularized content that takes students from beginning to end on learning certain concepts.

    • Easy to use.

    • Lots of online resources and community to help with problems.

    • Students are rewarded with points for each small module.

    • Sample project specs are included for students to implement on their own.

    • Free.

  • Cons

    • Modules are limited and only cover basics of HTML and CSS.

    • Same issue as Codecademy, where implementing the code in real life isn’t so easy. There are components missing that would tell a student how to create and test the application on a browser and also linking files and applications correctly.

    • Lacking advanced content for HTML/CSS. Can learn basics, though.

  • Who is it good for?

    • Those learning basics of HTML and CSS.

Code School

  • Code School has video based learning, with an activity you build upon throughout the course instead of separate activities for separate concepts.

  • Pros

    • Code School gives a lot of context before diving into languages. They also have cute theme song music.
  • Cons

    • $29/mo.

Team Treehouse

  • Team Treehouse has structured, video-based curriculum that takes you through concepts in a step-by-step fashion.

  • Skill level: Beginner * Intermediate

  • Pros

    • Very structured and highly intuitive interface.

    • Learning modules can be completed as entire programs (such as Front-End Developer).

    • Modules get pretty in-depth and focus on building applications instead of just practicing code.

    • Videos are much more engaging than just writing out code from reading modules.

    • Good amount of community support.

  • Cons

    • Costs money (used to have a student discount, but not anymore). Cost is $25/month (as of Dec. 27, 2016).

    • Not great as a source of reference since modules are all video based.

  • Who is it good for?

    • Those who want an intermediate understanding of HTML, CSS, JavaScript. Good for those with visuals instead of reading.

W3Schools

  • W3Schools has unofficial documentation and tutorials on a variety of web topics, including HTML, CSS, Bootstrap, JS, PHP, etc.

  • Skill level: Beginner

  • Pros:

    • In-built editors that allow you to test out the code for each topic.

    • Easy to navigate through.

    • Free

    • Great for getting a base understanding of certain web technologies.

  • Cons

    • Is not “official” and, thus, has led to issues with credibility. Users have posted that some w3schools resources have been blatantly incorrect.

    • UI could use some work.

    • Who is it good for?

    • Quick reference on web technologies, but not to be used for in-depth analysis on topics nor as a coding Bible (does have issues with credibility).

Mozilla Developer Network

  • Mozilla's docs on web development are great as a reference for those that have experience reading through dense documentation.

  • Skill level: Intermediate * Advanced

  • Pros:

    • In-depth breakdown on whatever topic you’re looking for.

    • Easy to navigate through.

    • Free.

    • Well-researched and considered the official non-official documentation on web dev.

  • Cons

    • Very dense documentation makes it difficult to understand certain verbiage.

    • They do have step-by-step tutorials, but other learning sites do a better job at this.

    • Who is it good for?

    • Those looking for a reputable reference for HTML, CSS, and JavaScript.

CSS

  • Team Treehouse
  • FreeCodeCamp
  • Code School
  • W3Schools
  • Mozilla MDN
  • CSS Tricks - Uploaded by @Multishifties
  • Flexbox Game #1 - - Uploaded by @Multishifties
  • Flexbox Game #2 - Uploaded by @Multishifties
  • Flexbox Manual- Uploaded by @Multishifties
  • PluralSight - CSS Preprocessors: LESS, SASS, PostCSS
    • Pluralsight is a video-based tutorial site with plenty of Intermediate to Advanced learning modules. Pluralsight has several modules on CSS Preprocessing, including modules on LESS, SASS, and PostCSS.

    • Pros

      • Great for understanding the fundamentals of LESS, SASS, and PostCSS

      • Video-based, so it’s great for visual learners.

      • Uses live coding to guide users through the experience

    • Cons

      • Costs about $30 a month. However, you can get pluralsight for free for 3 months by signing up for VS Code, which is also free.
    • Who is it good for?

      • Great as a solid resource for understanding and implementing preprocessors on a base level. Does require plenty of practice to get used to it, but I really liked the modules.

Git

  • Source Control: How I Learned to Stop Worrying, and Love Git

    • Pros

      • Free

      • Beginner Friendly

      • Great for Getting Started

  • No-nonsense GitHub Project - - Uploaded by @Multishifties

    • Open source GitHub video tutorial series.

    • Skill level: Beginner - Intermediate

    • Pros

      • Free.

      • Comprehensively Documented.

    • Cons

      • Video/Audio quality could be better. Videos could use an edit.
    • Who is it good for?

      • All students as a quick and easy-to-find reference on most basic Git functionality.
  • Gettin' Git - Uploaded by @tatianaalcocer.

    • Open source GitHub tutorial and crib sheet with quick commands.

    • Skill level: Beginner

    • Pros

      • Free.

      • Partner activity included.

    • Cons

      • Doesn't go into advanced topics of Git.
    • Who is it good for?

      • All students as a quick and easy-to-find reference on most basic Git functionality.
  • Code School Git

    • Code School’s module-based, Introduction to Git tutorial.

    • Skill level: Beginner

    • Pros

      • Free.

      • Easy to use, with command line terminal built in.

    • Cons

      • Doesn’t go into advanced topics of Git.
    • Who is it good for?

      • Learning the basics of using Git, including branching and using Github.
  • Youtube Tutorial

    • Quick video made on using bash with Git.

    • Skill Level: Beginner

    • Pros

      • Free.

      • Video-based, so you can follow along.

    • Cons

      • Does not go into advanced topics.

      • Video quality isn’t the best.

    • Who is it good for?

      • If you want a guided tutorial on setting up and using Git basics on your computer. Does not go into depth, so this is very much for beginners.
  • Team Treehouse

    • Structured, video-based curriculum that takes you through concepts in a step-by-step fashion.

    • Skill Level: Beginner * Intermediate

    • Pros

      • Structured, step-by-step tutorial videos on how to use Git and set up Git across UNIX and non-UNIX platforms.

      • Goes into a fair amount of depth with using Git collaboratively or just on your own. Not very advanced, but it is pretty thorough.

    • Cons

      • Costs $25/month.

      • Video-based, so can be difficult to parse through code.

    • Who is it good for?

      • If you want to learn Git more thoroughly and are willing to cough up a bit of cash. The tutorials do a good job of teaching git up to an intermediate level.
  • Codecademy

    • Git Module takes the user step-by-step on learning and using Git user flow, collaboration, and backtracking.

    • Skill Level: Beginner

    • Pros

      • Free.

      • Structured curriculum on learning basics of git workflow, along with collaboration and backtracking.

    • Cons

      • Doesn’t go too far into advanced Git topics.

      • Collaboration aspect is not as good as Code School.

    • Who is it good for?

      • Those who want a free guided tutorial for setting up with Git and using Git basics.
  • Youtube Git/Github

  • Git Workflow diagram

    • A Git workflow diagram that shows how to use Git workflow properly.

    • Skill Level: Beginner

    • Pros

      • Good visualization of workflow process.

      • Free.

    • Cons

      • Requires an understanding of Git.

      • No video.

      • A bit hard to follow without instruction.

    • Who is it good for?

      • Useful as a tool when learning Git. Best used by instructors when explaining Git workflow.
  • Git Scripts!

    • To re-write your entire git commit history, all relevant parts of it, so that if you committed with different usernames all will be normalized.
    •   git filter-branch -f --commit-filter 'if [ "$GIT_AUTHOR_NAME" = "erroneous author name" ]; then export GIT_AUTHOR_NAME="Name you want"; export GIT_AUTHOR_EMAIL=emailyouwant@email.com; fi; if [ "$GIT_COMMITTER_NAME" = "erroneous commit name here" ]; then export GIT_COMMITTER_NAME="NAME YOU WANT"; export GIT_COMMITTER_EMAIL=youremailhere@email.com; fi; git commit-tree "$@"'  
      
    
    
    

Bootstrap

  • Bootstrap

    • Official documentation for Bootstrap and actually has a simplified format for reference and use.

    • Skill Level: Beginner * Intermediate

    • Pros

      • Free.

      • Has plenty of examples and an easy-to-use interface for implementing Bootstrap code.

    • Cons

      • Doesn’t do a good job with tutorials, since it’s more of a reference guide.
    • Who is it good for?

      • Beginners and advanced users looking for a great reference.
  • FreeCodeCamp

    • FreeCodeCamp is a free, highly modularized source for learning Full-Stack development. It includes a number of introductory modules built for using Bootstrap.

    • Skill Level: Beginner

    • Pros

      • Very modularized content that takes students from beginning to end on learning certain concepts.

      • Easy to use.

      • Lots of online resources and community to help with problems.

      • Students are rewarded with points for each small module.

      • Sample project specs are included for students to implement on their own.

      • Free.

    • Cons

      • Modules are limited and only cover basics of Bootstrap.

      • FreeCodeCamp doesn’t mention how Bootstrap files should be linked or how to implement a Bootstrap template into an application. Only covers absolute basics of Bootstrap.

    • Who is it good for?

      • Good for those wanting an introduction to Bootstrap. Can be a good supplemental guide to using alongside curriculum, but doesn’t do a great job of setting up Bootstrap in your application.
  • W3Schools

  • Team Treehouse

Front-End JavaScript

  • Programming Foundations: Fundamentals - Uploaded by @kanwisher

    • This course provides the core knowledge to begin programming in any language.

    • Skill Level: Beginner

    • Pros

      • No previous knowledge required.

      • Lynda is free in certain cities (through the library).

      • Great instructor / video series often recommended online

    • Cons

      • Limited for those wanting to learn advanced JavaScript.

      • Not always free

    • Who is it good for?

      • Those wanting to learn programming fundamentals, especially those who may have trouble thinking programmatically
  • CodeCademy

    • Codecademy’s JavaScript module takes the user step-by-step on using and learning the basics of JavaScript.

    • Skill Level: Beginner

    • Pros

      • Step-by-step tutorials make it good for beginners to understand the flow.

      • No previous knowledge required.

      • Free.

      • Great UI and easy to use.

      • Lots of online resources and community to help with problems.

    • Cons

      • Since it is step-by-step, students aren’t forced to learn how to implement what they learn into a “real” application using just a text editor and a browser.

      • Limited for those wanting to learn advanced JavaScript.

      • Sometimes buggy.

    • Who is it good for?

      • Those learning basics of JavaScript.
  • FreeCodeCamp

    • FreeCodeCamp is a free, highly modularized source for learning Full-Stack development. It includes a number of modules built for JavaScript learning, including lots of algorithm practice.

    • Skill Level: Beginner * Advanced

    • Pros

      • Step-by-step tutorials make it good for beginners to understand the flow.

      • No previous knowledge required.

      • Free.

      • Lots of online resources and community to help with problems.

      • Plenty of algorithms across beginner to advanced levels allow for practice in vanilla JavaScript and common CS problems.

      • JavaScript lingo section takes you through certain aspects of learning different parts of JavaScript.

      • Includes projects for students to complete to help them understand front-end projects.

    • Cons

      • Since it is step-by-step, students aren’t forced to learn how to implement what they learn into a “real” application using just a text editor and a browser.

      • Answers for projects are subjective in implementation.

      • Many algorithms and exercises require outside research, which can be good, but students might get frustrated.

    • Who is it good for?

      • Those looking for a supplemental resource for learning JavaScript through a Bootcamp curriculum. It can be a great resource for learning the basics and practicing JavaScript via algorithms.
  • Team Treehouse

  • Pluralsight JS Fundamentals

    • Pluralsight is a video-based tutorial site with plenty of Intermediate * Advanced learning modules. Pluralsight has a JavaScript skill review system that determines how much users have progressed based on questions answered correctly. The mobile app also for video downloads. The JS Fundamentals course is the module being reviewed.

    • Pros

      • Great for understanding JavaScript on an intermediate level.

      • Video-based, so it’s great for visual learners.

    • Cons

      • Costs about $30 a month.

      • Can be difficult for those without a programming background.

      • Doesn’t contain exercises for users to complete on their own.

    • Who is it good for?

      • Those with $30 a month to spare who are looking for a good supplemental resource while learning JavaScript in the program.
  • Pluralsight * Advanced Techniques in JavaScript and jQuery

    • Series of video modules explaining advanced concepts in JavaScript and jQuery.

    • Pros

      • Great for advanced learners wanting to learn the nuances of JavaScript.
    • Cons

      • Costs about $30 a month.

      • Can be very challenging for students to understand.

      • Doesn’t contain exercises for users to complete on their own.

    • Who is it good for?

      • Students who have completed the program or for students with prior experience in JavaScript or programming.
  • Rapid JavaScript Training

    • Series of video modules explaining JavaScript at a fast pace.

    • Pros

      • Great for learning JavaScript concepts quickly.
    • Cons

      • Costs about $30 a month.

      • Can be very challenging for students to understand.

      • Doesn’t contain exercises for users to complete on their own.

    • Who is it good for?

      • Those with previous experience in object-oriented languages who are willing to spend $30 a month.
  • JavaScript Objects and Prototypes

    • Series of video modules explaining JavaScript at a fast pace.

    • Pros

      • Great for understanding Prototypes and Objects in JavaScript.
    • Cons

      • Costs about $30 a month.
    • Can be a bit challenging to understand.

      • Doesn’t contain exercises for users to complete on their own.
    • Who is it good for?

      • Those who want to understand the object-oriented and prototypal nature of JavaScript and are willing to spend $30 a month.
  • JavaScript Learn X in Y Minutes

  • Code School

  • MDN JavaScript Basics

  • Secrets of the JavaScript Ninja * book.

    • More than ever, the web is a universal platform for all types of applications, and JavaScript is the language of the web. If you're serious about web development, it's not enough to be a decent JavaScript coder. You need to be ninja-stealthy, efficient, and ready for anything. This book shows you how.
  • JavaScript and jQuery: Interactive Front-End Web Development * book

    • By the end of the book, not only will you be able to use the thousands of scripts, JavaScript APIs, and jQuery plugins that are freely available on the web, and be able to customize them * you will also be able to create your own scripts from scratch.
  • JavaScript Subtopics

    • Blog by UCLAX Bootcamp graduate, Jeff Magil. Goes over various JavaScript concepts, breaking them down and providing code examples. Topics include callbacks, constants in ES6, returning values with functions, writing functions in different ways, using let in ES6, and compiling JS.

    • Pros

      • Free.

      • Easy to understand.

      • Small and digestible within minutes.

    • Cons

      • Not meant to be comprehensive.
    • Who is it good for?

      • Anyone that wants to quickly learn certain concepts in JavaScript. Not comprehensive, but great for what it does.
  • JS Interview Q/A

    • 27-minute video on various JavaScript Interview Questions with answers provided.

    • Pros

      • Free.

      • Quick.

    • Cons

      • Not comprehensive.
    • Who is it good for?

      • Students wanting to get some good interview questions in.

jQuery

  • Khan Academy

    • Skill Level: Beginner

    • Khan Academy has a series of unique, video and dynamic text tutorials to teach a variety of different subjects.

    • Pros

      • Free.

      • Teaches basics of jQuery.

      • Friendly user interface and reward system-based.

    • Cons

      • Doesn’t really explain any advanced jQuery topics.

      • Seems to be subjective on what topics it considers to be important.

  • Team Treehouse

  • FreeCodeCamp

    • Skill Level: Beginner

    • Pros

      • Free.

      • Teaches very basics of jQuery.

      • Good user interface and very modularized.

    • Cons

      • Lacking in depth. Only goes over basic topics.
    • Who is it Good For?

      • Those interested in very basic practice problems.

JavaScript Algorithms

  • Instructor Video on Basics of Algorithm Scripting

    • YouTube video on step-by-step solving of Rock, Paper, Scissors game.
    • Skill Level: Beginner
    • Pros:
      • Free
      • Thorough
    • Cons:
      • Basic
      • Long (over an hour)
    • Who is it good for?
      • Students just beginning to get into programming.
  • FreeCodeCamp

    • Ideally used in tandem with “A Smarter Way to Learn JavaScript” (book), but not necessary. Interactive exercises on various JavaScript topics. Plenty of exercises for each topic.

    • Skill level: Beginner

    • Pros

      • Free.

      • Easy to use.

      • Covers most JavaScript topics.

      • Author can be accessed via email to answer questions.

      • Cons

        • Poor UI and dry material.
      • Not much advanced algorithmic practice.

      • Who is it good for?

        • Those who need to understand how certain basic JavaScript topics.
  • A Smarter Way to Learn JavaScript

  • Hacker Rank

  • Project Euler

  • Make a Ping Pong Game

  • Make a Tetris Game

AJAX

  • W3Schools AJAX Intro

    • Decent, step-by-step introduction on how AJAX works.

    • Skill Level: Beginner

    • Pros

      • Editable examples with short tutorials make learning beginning aspects easy.

      • Free.

      • Short module based.

    • Cons

      • Has some incorrect information (mentions correctly that AJAX wasn’t meant to do cross domain requests, but doesn’t mention CORS). Should not be trusted as a reference guide.

      • Doesn’t mention implementation with jQuery. This is covered in another module.

      • Uses PHP as an example for retrieving server-side resources, so might not be good for those that are unfamiliar with PHP.

    • Who is it good for?

      • Those who want to get an understanding of the concept of AJAX.

      • Not great for advanced learning.

  • Mozilla AJAX Getting Started

    • Proof-read, step-by-step tutorial on using AJAX and how it works.

    • Skill Level: Beginner

    • Pros

      • Example-based tutorial.

      • Step-based, so working modularly.

      • Proof-read and trusted resource. Can be trusted as a reference guide as well.

    • Cons

      • Doesn’t mention implementation with jQuery.

      • Uses PHP as an example for retrieving server-side resources, so might not be good for those that are unfamiliar with PHP.

  • Team Treehouse

  • FreeCodeCamp

    • FreeCodeCamp is a free, highly modularized source for learning Full-Stack development. It also includes some limited modules on making jQuery-based AJAX calls.

    • Skill Level: Beginner

    • Pros

      • Free.

      • Modular.

      • Includes jQuery example.

    • Cons

      • Limited AJAX instructions and examples.
    • Who is it good for?

      • If you want to quickly catch up on AJAX, this is a way to go about it. Not for getting a deep understanding, though.

Interview Questions

  • Glassdoor Interview Questions and Glassdoor Junior Developer Questions

    • Series of questions assumably asked by interviewers to interviewees for junior web developer and junior developer positions. Many of them have answers, but I think the answers are not adequate most of the time.

    • Pros

      • Free.

      • Tons of questions asked by real companies (assumably).

      • Can especially help if applying to a company that is listed.

      • Includes hard questions (algorithms) and soft questions (personality).

    • Cons

      • Answers can be inadequate or wrong.

      • Questions are not comprehensive, nor are they necessarily truthful. This is based on interviewees sharing info on their own volition, so questions may change.

    • Who is it for?

      • Students that would like to prepare for interviews, but are self-sufficient enough to find answers on their own. Not comprehensive, but great if used in conjunction with algorithm-based interview prep like FreeCodeCamp.
  • Quora * Developer Questions

    • Q & A of how to determine a good candidate. Answers are all from employers, Hiring Engineers, and HR.

    • Pros

      • Free.

      • Variety of different answers, so gives a decent landscape for what different employers might be looking for.

    • Cons

      • Actual resource links are in each answer.

      • Small sample size, but this can be offset by a number of votes each answer receives.

        • Less about technical aspect than the behavioral.
    • Who is it good for?

      • Potential junior devs may find these to be insightful since many employers seem to be looking for desire and willingness to learn rather than technical knowledge.
  • Leet Code

  • Interview Bit

  • Spec.fm Podcast

  • Front-end JavaScript Interview Questions - Submitted by @tatianaalcocer.

  • Short Youtube JavaScript Q/A

    • Non-code based video of JavaScript Questions and Answers.

    • Skill Level: Intermediate

    • Pros

      • Does a good job of explaining concepts on an intermediate level.

      • Short and sweet.

    • Cons

      • Not the best quality, but decent enough.

      • Definitely not comprehensive.

    • Who is it good for?

      • Those applying for jobs involving lots of JavaScript.

Node.js

  • Deploy Node.js application to Amazon Web Services EC2

  • TheNewBoston

    • Youtube videos on Node.js done by a very quirky, but engaging instructor, Bucky Roberts.

    • Skill Level: Beginner

    • Pros

      • Free.

      • Video-based.

      • Very easy to follow.

      • Starts with the very beginning, including installation on Windows or Mac.

    • Cons

      • Doesn’t go into advanced topics.
    • Who is it good for?

      • Those new to Node. Highly recommended to be used in conjunction with material taught in the course.
  • [Event Loop](https://www.youtube.com/watch?v=8aGhZQkoFbQ&t=745s * Event Loop * Phillip Roberts)

    • Single, relatively short video that goes over what the event loop is in Node.js and gives an example of it working using an app called Loupe

    • Skill Level: Intermediate

    • Pros

      • Goes over the concept of the event loop in good detail and breaks it down in an easy to understand manner

      • Free.

      • Video-based.

    • Cons

      • Can be tricky to understand if you haven’t worked that much with JavaScript.
    • Who is it good for?

      • Those who want to understand how Node.js works in the background. Recommended for students in the course starting Node.js since they’ll have a decent amount of JS under their belt by that time.

Constructors

Cheat Sheet - Uploaded by @Multishifties

MySQL

Node/Express

Node/Express/View (Handlebars)

Sequelize

Testing

  • Testing using Mocha and Chai

    • Video made based on the activities from the Mocha and Chai section of the curriculum.

    • Skill level: Intermediate

    • Pros

      • Video-based, so easy to set up.

      • Decent intro into mocha and chai.

    • Cons

      • Need files from curriculum repo in order to really follow along.

      • Needs a good amount of editing.

      • Not comprehensive.

    • Who is it good for?

      • Those first learning about Mocha and Chai. Recommended to use alongside the curriculum modules for Mocha and Chai.

SEO

MongoDB

React JS

React Native

Java/PHP/Python/C#

Computer Science

Extra Resources

  • Docker

  • Coggle - Uploaded by @amaddatu

    Coggle is great for idea mapping and giving it out as "takeaway" study guides for students.

    • Pros

      • allows students to see how ideas connect in the class

      • doubles as a study guide once completed

      • simple interface

    • Cons

      • not great for complicated diagrams

      • private version is paid

About

Curriculum Resources By Topic

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages