Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
8 views16 pages

Student Learning Path

Uploaded by

god66396
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views16 pages

Student Learning Path

Uploaded by

god66396
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 16

Student Learning Path

Table of Contents

Module 0: Basic Math


Topics
Module 1: Number Systems and Boolean Logic
1. Number System
2. Binary numbers and Conversion
3. Logic Gates
4. Boolean Algebra (Optional but recommended for people who want to improve in their
logic)
Practice Questions
Module 2: Problem-solving using flowcharts
1. Introduction to Flowcharts
2. Operators and Conditionals and Dry Runs
3. Logical Operators and Test Cases
4. Loops
5. Nested loops
6. Arrays
Additional Resources
Practice Questions
Module 3: Introduction to the first programming language - C (or, Python for old students)
Unix commands (self-learning)
Introduction to C (self-learning)
1. Introduction to C syntax
2. Dive deeper in C
3. Time Complexity of a Program
4. Write the code for all flowcharts assignments in C
Module 4 - Introduction to Online Judge and Programming Competitions
Introduction to Online Judges
Beginner problems on CodeChef
Classical Problems on CodeChef
Assignments
Module 5 - The C Programming Language (or, Python for old students)
1. Functions
2. Pointers and Memory Allocation
3. Structures and Unions
4. Endianness -
5. Text files
Module 6 - Data Structures and Algorithms
1. Recursion
2. Advanced Sorting Algorithms
3. Linear Data Structures
4. Advanced Data Structures (Optional for those who want to get better at competitive
programming)
Module 7 - Web Development in Javascript and React
1. HTML/CSS (Can be done in parallel after the Digital Literacy Course)
a. Basic Concepts of Web Dev
b. HTML
c. CSS
2. Javascript / ES6
Module 0: Basic Math

Topics
1. Long Division (Decimal division and decimal multiplication, division when
divisor is greater than dividend)
2. BODMAS
3. Algebra
4. Numbers (Even, Odd, Prime, Composite, Natural, etc.)
5. HCF/LCM
6. Factorization in algebra
7. Quadratic Equation (Finding roots)
8. Logarithm & exponentiation
Module 1: Number Systems and Boolean Logic
1. Number System
○ Reference Material -
■ History of numbers (video): link
■ A brief history of numerical systems (video): link
■ Odometer simulator: link
○ Self-Learning Resources -
■ (Read) Saral Number Systems: link
■ Number systems and bases explained: link
2. Binary numbers and Conversion
○ Activity -
■ Count on finger activity: link
○ Reference material -
■ Sheet of the first few binary numbers: link
■ Bulb simulator (for binary numbers): link
○ Self-Learning Resources -
■ (Read) Saral Binary Numbers: link
■ (Read) Saral Conversion of Binary Numbers: link
■ (Read) About Binary: link
■ (Video) Why do computers use binary: link
■ (Video) Binary Addition: link
■ (Video) Binary Conversion: link
■ (Video) Conversion of decimal to binary: link
■ (Video) 1’s complement and 2’s complement: link
■ (Video) Binary Subtraction: link
3. Logic Gates
○ Activity -
■ (Video) Can be done using X’s and O’s: link
○ Reference Material -
■ Logic Gates Simulator: link
○ Self-Learning Resources -
■ (Video) Logic gates: link
■ (Video) Implementing all gates using NOR and NAND gates: link
4. Boolean Algebra (Optional but recommended for people who
want to improve in their logic)
○ Self-Learning material -
■ (Video) Boolean Algebra (Part 1): link
■ (Video) Boolean Algebra (Part 2): link
■ (Video) Boolean Algebra Examples (Part 1): link
■ (Video) Boolean Algebra Examples (Part 2): link
■ (Read) Boolean Algebra: link

Practice Questions
1. Writing the binary counting from 1 to 200
2. Quiz: link
3. Number System Assignment 1: link
4. Number System Assignment 2: link
5. Number System Assignment 3: link
Module 2: Problem-solving using flowcharts
1. Introduction to Flowcharts
○ Self-Learning Resources -
■ (Read) Saral Introduction to Flowcharts: link
■ (Read) Saral More about Flowcharts: link
■ (Video) Introduction to flowcharts link1 link2
2. Operators and Conditionals and Dry Runs
○ Self-Learning Resources -
■ (Read) Saral Operators and conditionals: link
■ (Video) Dry run link1 link2
3. Logical Operators and Test Cases
○ Self-Learning Resources -
■ (Read) Saral Logical Operators and test cases: link
4. Loops
○ Self-Learning Resources -
■ (Read) Saral Introduction to loops: link
5. Nested loops
○ Self-Learning Resources -
■ (Read) Saral Nested loops: link
6. Arrays
○ Self-Learning Resources -
■ (Read) Introduction of Arrays: link

Additional Resources
1. Reference book: Flowchart and Algorithm basics, AB Chaudhuri: link

Practice Questions
1. Dry-run assignment 1: link
2. Dry-run assignment 2: link
3. Dry-run assignment 3: link
4. Dry-run assignment 4: link
5. Dry-run assignment 5: link
6. Flowchart Problems: link
Module 3: Introduction to the first programming
language - C (or, Python for old students)

Unix commands (self-learning)


● Dual Boot
● Unix (Basic)
● Unix (Advanced)
● Vim (optional)

Introduction to C (self-learning)
1. Introduction to C syntax
a. Learn C | CodeChef
i. Outputting & Math Operators
ii. Variables and Data Types
iii. Arrays
iv. Strings
v. User Input
vi. Conditional Statements
vii. Loops
b. Convert all your flowcharts to C
2. Dive deeper in C
a. Basics of Computer's Memory and Getting Started - link
b. Variables and Data Types
i. Variable Naming Conventions,
ii. Fundamental Data Types - Integers,
iii. Fundamental Data Types - Integers Part 2,
iv. Fundamental Data Types - Char,
v. Fundamental Data Types - Float, Double, and Long Double
vi. Know your data type - Int
c. Input and output functions
i. Basic Output Function (printf)
ii. Basic Input Function (scanf)
d. Constants
i. Constants in C - (part1)
ii. Constants in C - (part2)
e. Operators and Expressions
i. Operators
1. Introduction to Operators
2. Arithmetic Operators
3. Increment & Decrement operators in - (part1)
4. Increment & Decrement operators - (Part2)
5. Relational operators
6. Logical operators
ii. Bitwise Operators
1. Bitwise Operators - (Part1)
2. Bitwise Operators - (Part-2)
3. Bitwise Operators - (Part-3)
4. Bitwise Operators - (Part-4)
iii. Assignment operators Assignment Operators
f. Control Flow
i. If-else Conditional Statements
ii. Loops (focus a lot on loops)
1. For and while loops
2. Loop Control Statements - Break and Continue
g. Arrays
i. Single dimensional
1. Definition of an array
2. Declaration of Arrays
3. Accessing array elements
4. Designated initialization
5. Count array elements using sizeof() operator
ii. Two dimensional
1. Introduction to multidimensional arrays
2. 2D arrays
3. Introduction to 3D arrays
4. Variable length arrays
iii. Arrays - Video, Text Link.
h. Strings
i. String Basics
1. Basics of String Literals
2. Storing the string Literals
ii. String Manipulation
1. Operations on string literals
2. Declaring and initializing string variables
3. String input and output functions
iii. Built-in String functions
1. strcpy()
2. strlen()
3. strcat() & strncat()
4. strcmp()
5. Arrays of strings
3. Time Complexity of a Program
a. Time complexity of a computer program
4. Write the code for all flowcharts assignments in C
Module 4 - Introduction to Online Judge and
Programming Competitions
Introduction to Online Judges
○ Ask for a class on what is an Online Judge
○ Prerequisites: (ask for a class on how an online judge works)
1. Students need to make an account on CodeChef.
2. CodeChef FAQs: link
3. Getting started on CodeChef video guide: link

Beginner problems on CodeChef


1. Getting Started: LP0TO101
2. Operations and Conditionals and loops - NGSTART2
3. Loops and Arrays - NGSTART3
4. Basic Programming Concepts: LP1TO201 Part I Part II (old link doesn’t work
anymore)
5. Conditions, loops, and arrays- NGSTART1
6. Ad Hoc and Arrays - NGSTART4
7. Adhoc - NGSTART5
8. Adhoc - NGSTART6
9. Time complexity: LP1TO205 (Part I Part II) (old link doesn’t work anymore)
10. Intermediate Programming Concepts: LP2TO301 Part I (old link doesn’t work
anymore)

Classical Problems on CodeChef


1. Basic Programming - Easy: DSAPREP_01
2. Basic Programming - Intermediate: DSAPREP_02
3. Array - DSAPREP_03
4. Sorting - DSAPREP_04
5. Strings - DSAPREP_05
6. Binary Search - DSAPREP_06
Assignments
1. Strings: link
2. Solve the problems on this page

Module 5 - The C Programming Language (or, Python


for old students)
1. Functions
a. Subtopics -
i. Function Declaration, Definition, and Properties - Link Link
ii. Function Prototype - Link
iii. Memory Layout of a C Program - link
iv. Calling a Function by Value Link
v. Scope of Variables - Local vs. Global
vi. Static and Dynamic Binding - Link Link Link Link
vii. Function Overloading
b. Assignments - Link
2. Pointers and Memory Allocation
a. Subtopics
i. Uses and syntax of Pointers - Link
ii. Accessing the address of Variables and values using pointers - Link
iii. Modifying a variable using Pointers - Link
iv. Pointer Types and Pointer Arithmetic - Link
v. Pointer to Pointer - Link
vi. Pointers as Function arguments - Call by Reference- Link
vii. Pointers and Arrays - Link
viii. Character arrays and Pointers - Link Link
ix. Pointers and Multidimensional Arrays - Link 1 Link 2
x. Pointers and Dynamic Memory Allocation - Link 1 Link 2
xi. Pointers as Function Returns - Link
xii. Function Pointers and Callbacks - Link 1 Link 2
xiii. Memory Leak - Link
b. Assignment
i. Convert all Arrays into Pointers in previous programs
3. Structures and Unions
a. Subtopics
i. Introduction to Structures - Link
ii. Structure Declaration - Link
iii. Structure Types - Using Structure Tags - Link
iv. Initializing and Accessing the Structure Variables - Link
v. Designated Initialization - Link
vi. Array of Structures - Link
vii. Pointer to a Structure - Link
viii. Structure Padding in C - Link
ix. Structure Packing in C - Link
x. Unions
xi. Unions and their Applications - Link Link Link
4. Endianness -
a. https://www.freecodecamp.org/news/what-is-endianness-big-endian-vs-
little-endian/
5. Text files
Module 6 - Data Structures and Algorithms
1. Recursion
2. Advanced Sorting Algorithms
3. Linear Data Structures
4. Advanced Data Structures (Optional for those who want to get
better at competitive programming)
Module 7 - Web Development in Javascript and React
1. HTML/CSS (Can be done in parallel after the Digital Literacy
Course)
a. Basic Concepts of Web Dev
i. Videos
1. English
2. Hindi
b. HTML
i. Videos
1. HTML Introduction
a. English
b. Hindi
2. Basic HTML Tags
a. English
b. Hindi
3. Lists: <ol>, <ul>, <dl>, Nested list
a. English
b. Hindi
4. Tables
a. English
b. Hindi
5. Forms
a. English
b. Hindi
ii. Course on freecodecamp.org (mandatory) - link
c. CSS
i. Videos
1. CSS Introduction
a. English
b. Hindi
2. Precedence of including styling
a. English
b. Hindi
3. CSS Selectors
a. English Part I Part II
b. Hindi Part I Part II
4. Length Units & Colour
a. English Part I Part II
b. Hindi Part I Part II
5. Basic CSS Properties
a. English Part I Part II
b. Hindi Part I Part II
6. Box Model
a. English Part I Part II
b. Hindi Part I Part II
7. Inspect Element
a. English
b. Hindi
8. Display
a. English
b. Hindi
9. Positioning
a. English
b. Hindi
10. Grid Layouts - Structuring a webpage
a. English Part I Part II Part III
b. Hindi Part I Part II Part III
11. Flexbox
a. English Part I Part II Part III
b. Hindi Part I Part II Part III
12. Media Queries
a. English
b. Hindi
ii. Course on freecodecamp.org (mandatory)
1. Basic CSS Design - link
2. CSS Flexbox - link
3. CSS Grid - link

2. Javascript / ES6
a. Conceptual Videos (Basics of Javascript)
i. English
ii. Hindi
b. Advanced JS (Reading Material)
i. forEach - Link
ii. Destructuring in JavaScript - Link
iii. Error Handling- Link
iv. Types of Functions - Link Link
v. Pure function Link
vi. Higher Order Functions - Link
vii. Filter, reduce, and map - Link
viii. Hoisting - Link
ix. Scope - Link
x. Closures - Link
xi. Asynchronous Javascript - Link
xii. Callbacks - Link
xiii. Timing functions in JS - setTimeout and setInterval - Link
xiv. Callbacks hell - Link
xv. Promises - Link
xvi. bind, apply, and call - Link
xvii. Async Await - Link
xviii. Fetch API- Link
xix. Template literals - Link
c. Course on freecodecamp.org (mandatory)
i. JavaScript Algorithms and Data Structures
d. Further Reference Material
i. The MDN Web Docs provide comprehensive resources for learning
JavaScript, from basics to advanced topics. Link
ii. Offers interactive tutorials and examples for learning JavaScript
fundamentals. Link
iii. Book - The Good Parts
iv. Live class video (Priyanshu) Link
v. Traversy Media's tutorial covers JavaScript basics and fundamentals.
Link

You might also like