Skip to content

Latest commit

 

History

History
789 lines (563 loc) · 34.1 KB

README-legacy.md

File metadata and controls

789 lines (563 loc) · 34.1 KB

Ladderly Slides

This is the open-sourced curriculum for ladderly.io!

View this information as a slideshow here!

Proudly built using reveal.js.

reveal.js is an open source HTML presentation framework. It enables anyone with a web browser to create fully featured and beautiful presentations for free.

License: MIT licensed


Curriculum Table of Contents

pt. 1/3, Learn to Code

  1. Introduction: Understanding the Master Plan
  2. Basic Technical Skills
  3. HTML
  4. CSS
  5. JavaScript
  6. React
  7. Optional Advanced Tech Skills

Curriculum Table of Contents

pt. 2/3, The Job Search

  1. Soft Skills
  2. Job Search

Curriculum Table of Contents

pt. 3/3, Non-Curriculum Content

  1. Tech Employer Advice
  2. Tech Content Creator / Influencer Advice
  3. Tech Humor
  4. Miscellaneous Non-Curriculum Content

Introduction: Understanding the Master Plan

Key Points

  1. Understanding Community Resources
  2. Why Tech + Programming?
  3. Why React?
  4. Why a Coaching Program?
  5. How to Identify a High-Prestige Bootcamp
  6. Overview of the Front-End Path
  7. Overview of the Job Search
  8. Overview of Post-Hire Care and Development
  9. External Resources
  10. Interview Prep Stack
  11. The Trial by Fire

Understanding Community Resources

Source: "Welcome to Ladderly! Overview of Community"

  1. Follow John on Twitter here. Directly message him any time!
  2. Join the Ladderly Discord. You will be automatically invited when you sign up for Ladderly.
    • If there was an issue, just send John a message through Twitter.

Understanding Community Resources

  1. Ask questions in the comments of videos or even make your own videos on TikTok using #DevCrew and #CodeTok
  2. The entire Ladderly curriculum is open source and you can view it here on GitHub.
    • You could even contribute if you feel something should be added!
  3. Watch weekly live streams on John's YouTube channel where you can ask anything!

Why Tech + Programming?

Source: Clément Mihailescu, "15 Reasons To Become A Software Engineer"

  1. High Compensation
  2. Work-Life Balance
  3. Low Barrier to Entry
  4. Low Unemployment Rate and Easy to Switch Jobs.
  5. Predictable Interview Process

Why Tech + Programming?

  1. Low Expected Future Unemployment Rate. It's a Futureproof Career.
  2. Lots of Variety
  3. Friendly to Both Introverts and Extroverts
  4. Can Work Remotely
  5. Promotes Creativity

Why Tech + Programming?

  1. Technology is Included in Every Industry
  2. Programming Now Supports Many Career Choices Later
  3. Immediate Feedback
  4. Incredible Amount of Custom Tools
  5. Can Help You Do Almost Anything. At Work or in your Personal Life.

Why Tech + Programming?

  1. You can leverage a degree from any field.
  2. Other Tech Jobs Besides Developer
    1. Also, Tester, Designer, Scrum Master, Business Analyst, and many more!
  3. Programming Supports a Digital Nomad Lifestyle
  1. For programmers, remote working is becoming the norm

Why React?

  1. React and JavaScript are Full-Stack Technologies.
    • Python is a server-side language. This supports comparatively fewer use cases.
  2. The mental model for web development is already familiar to most people.

Why React?

  1. AI and ML use cases for Python are not beginner-friendly.
    1. AI and ML may be dangerous when used by developers that don't understand statistics.
  2. Why Learn React instead of Angular?
    1. Job availability
    2. Same for Flutter, Svelte, Vue, and others
    3. React Native has special cross-platform uses

Why React?

  1. Learning React helps you quickly land a great job
    1. JavaScript is the most popular programming language according to Stack Overflow surveys from 2019, 2020, 2021, and more
    2. React is the most popular and loved web framework

Why React?

  1. Learning React helps you grow
    1. React can be written using JavaScript or TypeScript
    2. JavaScript and TypeScript are multi-paradigm
    3. React, JS, and TS are cross-platform, full-stack technologies with many use cases
    4. TypeScript as a language is highly loved and wanted by developers

Why React?

  1. Most people don't intend to work in data science
    1. Python is associated with a data science niche
    2. React has more results in a refined job search that excludes data engineering roles
    3. AI, ML, server-side, and non-graphical programs are not intuitive for most people
  2. Websites and mobile apps involve a familar mental model

Why React?

  1. More beginner friendly than C++

    1. Python and JavaScript considered beginner friendly. C++ and many other langs are not.
    2. With JavaScript, we don't have to manually manage memory
    3. React can be gradually learned, implemented, and adopted

Why React?

  1. More beginner friendly than C++

    1. A career focusing on C++ is associated with poor work-life balance and low maximum salary.
    2. React has higher starting salary compared to C++
    3. JavaScript is more popular, loved, and wanted among developers compared to C++

Why a Coaching Program?

Comparing Colleges, Bootcamps, Coaches, and Self-Teaching

  1. You get maximum ROI if you can effectively and rapidly self-teach.
  2. Try self-teaching by taking the free Codecademy Learn HTML course.
  3. Given the results of this test, other options might be recommended.

Why a Coaching Program?

When to Prefer Self-Teaching

  1. Prefer self-teaching by default.
  2. If you didn't enjoy the self-teaching experiment earlier described, consider another option.
  3. If you don't have a job after 12 months, this is a sign that you should consider other options.
  4. If you don't want to invest up to 12 months in self-teaching, other options might get you job ready sooner.

When to Prefer a Bootcamp

  1. You find a prestigious bootcamp that has acceptable terms.
    • Check the price, payment options, refund policy, technologies taught, and course schedule.
  2. You qualify for admission.

Why a Coaching Program?

When to Prefer Coaching or Mentorship

  1. You already have a career and you are seeking to level-up.
  2. You need help getting references or referrals.
  3. You want social learning, but you don't want a bootcamp.
    • For example, learning at a bootcamps might lack personalization, be too fast, too slow, or have unacceptable terms.
  4. You are already in a bootcamp or college program, but you want additional help.

Why a Coaching Program?

When to Prefer College

  1. If other options don't work, consider this as a fallback plan.
  2. If you are able to complete college at a reasonable price and within a reasonable period of time.
    • Many employers will subsidize or entirely pay for college. Consider Guild Education partners.
    • Certain individuals may qualify for unique scholarships.
    • Don't forget to include opportunity cost in your college price analysis!

Why a Coaching Program?

When to Prefer College

  1. If a slower pace of learning is ideal for you
    • Specifically, you want longer than 1 year to learn to code.
  2. You already have a career, but a degree could help you advance
    • Undergraduate and graduate degrees may help you advance into management
    • Earning a degree may appear positive on your corporate performance review

Why a Coaching Program?

  1. You're able to leverage your mentor's social network.
  2. How to Identify a Quality Coach
    1. Bulk discount on hours
    2. Offers a job guarantee
    3. Are they where you want to be?
    4. Are they asking you to do something they have never done?

Why a Coaching Program?

  1. How do mentors add value?
    1. Enhanced social network
    2. Give referals and references
    3. Help practice interviews
    4. Help you learn better by accelerating and decelerating pace of learning, tailored to you
    5. Can help you find and learn the latest tech, instead of learning a fixed curriculum optimized for a prior point in time.

How to Identify a High-Prestige Bootcamp

Source: John Vandivier, "Hirability and Educational Prestige"

  1. Use coursereport.com
  2. Look for a bootcamp with a rating of 4.25 or greater and 400 or more reviews.

How to Identify a High-Prestige Bootcamp

  1. Currently, in the United States, App Academy and General Assembly are two recommended bootcamps.
  2. Le Wagon is an ideal bootcamp for many people outside of the United States.

How to Identify a High-Prestige Bootcamp

  1. More things to consider when picking a bootcamp
    1. What is the placement rate and is a job guarantee offered?
    2. What is the price and do flexible or deferred payment options exist?
    3. Does the bootcamp accept GI Bill benefits or other tuition assistance?
    4. Does the bootcamp offer the technology training that I am looking for? Does it offer React training?

How to Identify a High-Prestige Bootcamp

  1. Don Hansen's YouTube Channel has in-depth bootcamp reviews
  2. Consider V School if you are a veteran

Overview of the Front-End Path

  1. HTML
  2. CSS
  3. JavaScript
  4. React with Redux

Overview of the Job Search

  1. Overview of the Job Search
  2. Have a high-quality GitHub Portfolio and LinkedIn Profile
  3. Get skill certifications from LinkedIn and Indeed
  4. Enlist third-party recruiters like those working at TEKsystems
  5. Optimize your resume. Utilize Indeed Resume Services.

Overview of the Job Search

  1. Strategically apply and follow up with companies of interest.
  2. Social network even outside of the application process.
  3. Continue to learn and grow.
    • Focus on growing soft skills, full stack development skill, and practing algorithm problems
    • Try to work with other developers through open source, hackathons, and similar opportunities.

Overview of Post-Hire Care and Development

  1. All post-hire care and development services are totally optional.
  2. Sessions to accelerate onboarding, fill in gaps, and combat imposter syndrome at your new role.
  3. Sessions to accelerate career movement from the tier 3 junior level to the tier 1 senior level.
  4. Sessions to accelerate development of new skills including full stack development, cloud architecture, new languages, etc.

Interview Prep Stack

  1. The Ladderly Curriculum. In Particular:
  2. Starboi, for Behavioral Interview Prep
  3. Endorsed Communities, for social help
  4. Algo Prep Chrome Extension - TODO
  5. Interview Prep Flashcard Tool - TODO

The Trial by Fire


External Resources

  1. Learn React Quickly
  2. Free Website Hosting
    1. Use GitHub Pages, Vercel, Railway, Render.com, Heroku, or Netlify
    2. Supabase and ElephantSQL are great for free database support
  3. GitHub Pages allows free portfolio hosting
  4. Mimo is a smart phone app that helps you learn to code!
  5. Brainscape flash cards are great for skill assessment and interview prep.
    1. I specifically recommend getting to 75% or higher on free tier JavaScript and React flash cards.

External Resources

Interview Prep, Data Structures and Algorithms (DS&A)

Leetcode is the go-to DS&A prep tool. Tips on how to use it:

  1. Start with the Ladderly Two Week Leetcode Crash Course
  2. Next complete the Blind 75 and read the 14 Patterns Article
  3. After steps 1 and 2 you are ready to start interviewing.
    • Leetcode tracks question frequency for some companies.
    • If you are interviewing at such a company, try to complete tracked questions with frequency >= 66%
  4. Optional: Complete all questions within Sean Prashad's Leetcode Patterns Tool
  5. Optional: Sort Leetcode questions by frequency and complete all with frequency >= 66%

External Resources

Interview Prep, Other

  1. Additional DS&A Prep: AlgoExpert
  2. Mock Interviews including Behavioral: interviewing.io
  3. System Design Prep: SystemsExpert
  4. Front-End Interview Prep: frontend.eval
  5. Optional: The Antipatterns section describes some other tools and reasons they are not recommended.

External Resources

Career Advice and Offer Research

  1. levels.fyi
  2. Rooftop Slushie

Basic Technical Skills

Key Points

  1. Basic Bash
  2. Basic Git
  3. Googling Techniques
  4. General Learning Techniques

Googling Techniques

Source: Fireship, "How to 'Google It' like a Senior Software Engineer"

  1. If you run into a code error or log message, try literally searching the message.
  2. Refine search using double-quotes for an exact match.

Googling Techniques

  1. Increase useful results by removing application-specific content in your search
  2. Use the "site:" prefix to search for results within a single site, eg site:stackoverflow.com
  3. Use the minus sign to exclude web pages that include a keyword

Googling Techniques

  1. Refine by searching over a specific time period
  2. You can use the "filetype:" prefix to search for specific file types
  3. If a search result isn't currently accessible, try to access a cached version
  4. Try using search engines other than Google as appropriate. For example, you could search within StackOverflow.

https://www.tiktok.com/@johnvandivier/video/6997626272486821126 https://www.tiktok.com/@johnvandivier/video/6998324447363058950 https://www.tiktok.com/@johnvandivier/video/6999304701133016326 https://www.tiktok.com/@johnvandivier/video/6999340031483579653 https://www.tiktok.com/@johnvandivier/video/6999426333134621958 https://www.tiktok.com/@johnvandivier/video/7000540063163632902

https://www.tiktok.com/@johnvandivier/video/7005277848781016326 https://www.tiktok.com/@johnvandivier/video/7006386444826709254 https://www.tiktok.com/@johnvandivier/video/7008166043436748038 https://www.tiktok.com/@johnvandivier/video/7009409512536952069 https://www.tiktok.com/@lorraine.leung/video/7005391554458291461 https://www.tiktok.com/@lorraine.leung/video/7008548471024209157 https://www.tiktok.com/@lorraine.leung/video/7004964962921762053


HTML

  • TODO: discuss code comments

https://www.tiktok.com/@johnvandivier/video/6997096762561268997 https://www.tiktok.com/@johnvandivier/video/7002361910536490246 https://www.tiktok.com/@johnvandivier/video/7010777362136616197 https://www.tiktok.com/@johnvandivier/video/7010812263573605638 https://www.tiktok.com/@johnvandivier/video/7010862267147373829 https://www.tiktok.com/@johnvandivier/video/7010934946193820933 https://www.tiktok.com/@johnvandivier/video/7011205086252666118


CSS

https://www.tiktok.com/@johnvandivier/video/7009779405836930310 https://www.tiktok.com/@johnvandivier/video/7009825459181505797 https://www.tiktok.com/@johnvandivier/video/7010121177112907013


JavaScript

https://www.tiktok.com/@js_bits/video/7003363214767557893 https://www.tiktok.com/@js_bits/video/6967388258309328134 https://www.tiktok.com/@johnvandivier/video/6998634814953868550 https://www.tiktok.com/@johnvandivier/video/7003515307339959558 https://www.tiktok.com/@johnvandivier/video/7003764996966452485


React

  • subtopics: vs code, extensions, node, prettier, eslint, redux, devtools, project file organization / component organization (page vs feature)
  • TODO: pt 6-7: jsx, functional component, blitzjs

https://www.tiktok.com/@johnvandivier/video/6993419750839815429 https://www.tiktok.com/@johnvandivier/video/6995237983574117638 https://www.tiktok.com/@johnvandivier/video/6997136067631582470 https://www.tiktok.com/@johnvandivier/video/6997168179432754437 https://www.tiktok.com/@johnvandivier/video/6997199457062243589 https://www.tiktok.com/@johnvandivier/video/6997242458039995654 https://www.tiktok.com/@johnvandivier/video/6998130073127619846 https://www.tiktok.com/@johnvandivier/video/6998966355840077061 https://www.tiktok.com/@johnvandivier/video/7003475826381507846 https://www.tiktok.com/@johnvandivier/video/7005001337335287046 https://www.tiktok.com/@johnvandivier/video/7007858409085127941 https://www.tiktok.com/@johnvandivier/video/7010040889909234949 https://www.tiktok.com/@johnvandivier/video/7011300261297687814


Optional Advanced Tech Skills

  1. Why VS Code
    1. https://www.tiktok.com/@johnvandivier/video/7003798278550670598

https://www.tiktok.com/@js_bits/video/6986616534466579718 https://www.tiktok.com/@johnvandivier/video/6994933767014059270 https://www.tiktok.com/@johnvandivier/video/6998198819456322822 https://www.tiktok.com/@johnvandivier/video/7004059694675283205 https://www.tiktok.com/@johnvandivier/video/7006311038958177541 https://www.tiktok.com/@johnvandivier/video/7007988725498006790 https://www.tiktok.com/@johnvandivier/video/7009409512536952069


Soft Skills

https://www.tiktok.com/@johnvandivier/video/6996679894751071494 https://www.tiktok.com/@johnvandivier/video/6997466458632703238 https://www.tiktok.com/@johnvandivier/video/6999394721961381126 https://www.tiktok.com/@johnvandivier/video/6999606496224906501 https://www.tiktok.com/@johnvandivier/video/7000159465802599685 https://www.tiktok.com/@johnvandivier/video/7008933997413666053


Job Search


Job Search

Open Source Contributions


https://www.tiktok.com/@johnvandivier/video/6997415919513373958 https://www.tiktok.com/@johnvandivier/video/6990755604436389126 https://www.tiktok.com/@johnvandivier/video/6992408142512409862 https://www.tiktok.com/@johnvandivier/video/6992428753142025477 https://www.tiktok.com/@johnvandivier/video/6992973274447645957 https://www.tiktok.com/@johnvandivier/video/6993006398955195653 https://www.youtube.com/watch?v=U6tu1F2x4J4 https://www.tiktok.com/@johnvandivier/video/6993036405559561477 https://www.tiktok.com/@johnvandivier/video/6993062728927694085 https://www.tiktok.com/@johnvandivier/video/6993363739185564933 https://www.tiktok.com/@johnvandivier/video/6993419750839815429 https://www.tiktok.com/@johnvandivier/video/6994933767014059270 https://www.tiktok.com/@johnvandivier/video/6995207949262081285 https://www.tiktok.com/@johnvandivier/video/6995738580060622085 https://www.tiktok.com/@johnvandivier/video/6996412445812182277 https://www.tiktok.com/@johnvandivier/video/6996766371598060806 https://www.tiktok.com/@johnvandivier/video/6997039516741668101 https://www.tiktok.com/@johnvandivier/video/6997497115609943301 https://www.tiktok.com/@johnvandivier/video/6998255182932987142 https://www.tiktok.com/@johnvandivier/video/6998359736320118021 https://www.tiktok.com/@johnvandivier/video/6999394721961381126 https://www.tiktok.com/@johnvandivier/video/7000076836256468229 https://www.tiktok.com/@johnvandivier/video/7000159465802599685 https://www.tiktok.com/@johnvandivier/video/7000716613842439429 https://www.tiktok.com/@johnvandivier/video/7001138265868799238 https://www.tiktok.com/@johnvandivier/video/7001657791559585029 https://www.tiktok.com/@johnvandivier/video/7002437950491479302 https://www.tiktok.com/@johnvandivier/video/7003318580192251141 https://www.tiktok.com/@johnvandivier/video/7004125849528143109 https://www.tiktok.com/@johnvandivier/video/7005277848781016326 https://www.tiktok.com/@johnvandivier/video/7005298322969857286 https://www.tiktok.com/@johnvandivier/video/7005324625936698630 https://www.tiktok.com/@johnvandivier/video/7006113111002320133 https://www.tiktok.com/@johnvandivier/video/7006386444826709254 https://www.tiktok.com/@johnvandivier/video/7006879246534692101 https://www.tiktok.com/@johnvandivier/video/7007424530385865989 https://www.tiktok.com/@johnvandivier/video/7008524621238570246 https://www.tiktok.com/@johnvandivier/video/7008749086878813446 https://www.tiktok.com/@johnvandivier/video/7008976841176403205 https://www.tiktok.com/@johnvandivier/video/7009058494741581061 https://www.tiktok.com/@johnvandivier/video/7010156420934995205 https://www.tiktok.com/@johnvandivier/video/7010192983815408901 https://interviewing.io/ http://algoexpert.io/ https://leetcode.com/

MISC (econ of education, other tiktok devs to follow, other resources)

https://www.tiktok.com/@johnvandivier/video/6997010529281707270 https://www.tiktok.com/@johnvandivier/video/6993823688193772806 https://www.tiktok.com/@johnvandivier/video/6994419256439885061 https://www.tiktok.com/@johnvandivier/video/6994513773650332934 https://www.tiktok.com/@johnvandivier/video/6995369387163208965 https://www.tiktok.com/@johnvandivier/video/6996352698777947398 https://www.tiktok.com/@johnvandivier/video/6998930619405176070 https://www.tiktok.com/@johnvandivier/video/7000375990794882309 https://www.tiktok.com/@johnvandivier/video/7000453974017035526 https://www.tiktok.com/@johnvandivier/video/7000716613842439429 https://www.tiktok.com/@johnvandivier/video/7001836665018862853 https://www.tiktok.com/@johnvandivier/video/7002660542338944262 https://www.tiktok.com/@johnvandivier/video/7003385408973229318 https://www.tiktok.com/@johnvandivier/video/7007195633656352006 https://www.tiktok.com/@johnvandivier/video/7008565561361714438 https://www.tiktok.com/@johnvandivier/video/7008606676857130246 https://www.tiktok.com/@johnvandivier/video/7009302985792670982 https://www.tiktok.com/@johnvandivier/video/7010483925030014213

Tech Humor

https://www.tiktok.com/@johnvandivier/video/6989746683118750981 https://www.tiktok.com/@johnvandivier/video/6991130957856263430 https://www.tiktok.com/@johnvandivier/video/6992322274841873670 https://www.tiktok.com/@johnvandivier/video/6993482499225701638 https://www.tiktok.com/@johnvandivier/video/6994186163510611205 https://www.tiktok.com/@js_bits/video/6976291781981900037 https://www.tiktok.com/@johnvandivier/video/6994860231750733061 https://www.tiktok.com/@johnvandivier/video/6998298277120642309 https://www.tiktok.com/@johnvandivier/video/6998594718435134726 https://www.tiktok.com/@johnvandivier/video/7001872420160163077 https://www.tiktok.com/@johnvandivier/video/7004526184595721477 https://www.tiktok.com/@johnvandivier/video/7005218573329173765

CONTENT CREATOR ADVICE

https://www.tiktok.com/@johnvandivier/video/6991859045590191366 https://www.tiktok.com/@johnvandivier/video/6992354225686613254 https://www.tiktok.com/@johnvandivier/video/7001695777407913222 https://www.tiktok.com/@johnvandivier/video/7002572293620714757

TECH EMPLOYER ADVICE

https://www.tiktok.com/@johnvandivier/video/6992603088502803718


TODO: FIX README BELOW THIS POINT

outlining the job search:

  1. have a portfolio (should be done by the time you get to job search)
  2. make sure your resume looks good
  3. make sure you are on social media, and your socials look presentable (particularly LinkedIn)
  4. blast resume - (to who? to what job titles&descriptions? where? how many in a blast...indeed+linkedIn+https://www.theladders.com/ for job search; there are also a variety of programming-specific platforms like Vettery)
  5. follow up with corporate recruiters at target companies; that is, SOCIAL NETWORK
  6. attending meetups, conferences, and participating on social media (Twitter Spaces, tiktok, of course commenting on people's linkedIn conversations w/e)
  7. interview technique - coding, algorithm, behavioral, system design

Antipatterns

The value of these activities is expected to be negative net of opportunity cost, in particular when placed as a required step prior to landing the first software development role.

  1. Fullstack.Cafe for job prep is expensive and trivia-focused. Likely to be unhelpful net of opportunity cost for interview prep.
  2. Interview Cake for DS&A adds no value compared to Leetcode + AlgoExpert. AlgoExpert's high-quality video makes it preferred over Interview Cake.
  3. Prioritizing generators, redux-saga, css-grid, or frameworks other than React or Angular.

TODO

  1. Behavioral Interview prep
  2. clean up readme
  3. record all lessons and publish non-free course (or release standard course as free)
  4. We know about social networking, but what about recommended meetups and conferences?
  5. more resources: logrocket podcast, jason lengstorf