A Beginner’s Guide to Computer Science

TABLE OF CONTENTS

  1. Intro
    1. Objectives
    2. Your Learning Curve
    Strategies
    1. The Most Important Strategy: Get Started
    2. Be Part of a Community
      1. The Mentor
      2. The Peer
      3. The Mentee
      How to Find Answers
      1. Using Your Problem Solving Toolkit
      2. Googling
      3. Ask a Peer
      4. Ask a Mentor
      Debugging Deliberate Practice and Application Tactics
      1. The Best Tool: Get Your Hands Dirty
      2. Simplification
        1. Simplification of the Problem
        2. Simplification of the Examples
        Casework Other Tactics Tools
        1. Visceralization
        2. Metaphor
        3. Exploration
        4. A Coherent Meta-Example
        The Roadmap
        1. Semester 1 – Practical Programming
        2. Semester 2 – Data Structures & Discrete Mathematics
        3. Onwards
        Conclusion References/Resources

        Intro

        Learning computer science is one of the most enjoyable experiences in human life, also one of the most frustrating. You came across this page because either you want to learn about computer science, want to learn computer science, or want a computer science job. Whatever your motivation, computer science may seem like witchery to you. Geeks use overly complicated jargon to explain concepts to you. A friend of mine, Michelle Bu (who has an amazing anecdote about being a novice programmer by the way), noted that “programmers have a perpetual competition to see who can claim the most things as ‘simple.’” Read More