Skip to content

Latest commit

 

History

History
40 lines (21 loc) · 4.84 KB

faq.md

File metadata and controls

40 lines (21 loc) · 4.84 KB

About this guide - FAQ

Why did you deprecate all the other guides and condense everything down into just one guide?

This guide is a restructuring of previous iterations of multiple guides in order to solve two issues:

  1. Which guide should I choose? This question comes up all the time. With this restructure the answer becomes consistent - 'this guide'. This guide contains the core content within tiers, then asks you to pick a 'specialization' as your capstone for the tier. Within the specialization, you'll have an opportunity to dive more deeply in the areas of most interest to you and complete a number of specialization specific projects.
  2. X course is paywalled or no longer available, what do I do? This has been a recurring issue as Coursera and edX try to settle on a sustainable business model. There are still awesome courses there, and I'll leave my prior guides available in the 'deprecated' section should you want to look into them, but for now, I'm going to focus on much less volatile resources.

Why? Coursera and edX have continually ramped up 'paywall' efforts over the past couple years, thus rendering many of the 'open' (as in free) course options available on their platforms increasingly unavailable for those without the funds to do more than audit.

What if I just want to specialize and don't want all that extra 'fluff' that's not pertinent to my specialization in a tier?

That fluff isn't fluff. However, you are presumably a grown adult or precocious pre-adult type person completely capable of being responsible for your own decisions. I consider the material in the tiers important foundational knowledge that will inform your programming career regardless of which specialization you choose. If you do not agree, own your decision and omit what you consider irrelevant. Just don't skip stuff and then blame anybody but you for you missing out on learning.

What about CS50? It is awesome!

CS50 remains in the guide, however, the sequence beyond has been re-evaluated to use courses unlikely to hit the paywall issues. There are now a couple of courses listed which may require the purchase or borrowing of a book, but the majority of the courses are self-contained and books (like Cormen's Algorithms) should be freely available from your public library.

What about the 'How to Code' series of courses? They are awesome!

They are unfortunately behind a paywall now. You will find, however, that the book on which the courses are based is now included in Tier 4.

Why so many courses in a row without any projects?

You'll note that each tier has Courses, Reading, and Practice sections It appears that Readings come after Courses, and Practice comes after Reading - but you need not take that literally. Take the Courses in order, stopping to Read or Practice as you like, aiming to finish everything in the tier before moving to the next tier. Most tiers end with a Capstone 'specialization' which will contain much more hands-on coding via projects.

What are the Tier Programming Projects?

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')

An important note about Programming Projects - you may elect to clone templates, apps, or games for your programming projects. When doing so, always use your own assets (images, audio, etc.) or assets you know are legal to use, and mark your project as 'inspired by' the original, giving full credit to the original author. Don't try to put their ideas off as your own, or (worse yet) try to put your project up on app stores as an original app. These are practice projects - don't go out and clone Tetris, toss it up on the app store, and get sued for copyright infringement and blame me - I warned you.

Why switch from simple checkboxes to a tabular format?

While the checkboxes made for easily checking items off as you complete them, I've found that using a table where it's easier to mark both what you're working on and what you've completed, plus add links to any projects you completed or other 'evidence' type materials, gives a much more meaningful progress indication. Plus, it builds in the process of linking to anything you create along the way which will put everything right at your fingertips should you later wish to create a portfolio or highlight prior work.

Do I really have to create a separate 'highlights' site for each tier?

No, you don't. You may either create a separate site for each tier or maintain one site which you create in the first tier and update as you progress through subsequent tiers.