FirstHack Learn
Log in Sign up free

Tutorials

Work through a track in order, or jump to whatever you are stuck on right now.

⚙️

C Programming

8 tutorials
Open track

The language most Indian colleges teach first. Closer to the machine than anything else you will learn.

1 Introduction to C What C actually is, why almost every Indian engineering college starts with it, how compilation differs from interpretation, and your first program explained line by line. 9 min 2 Variables and Data Types How C stores numbers and characters, what int, float, char and double really mean, and why sizeof and format specifiers matter more than they first appear. 10 min 3 Input and Output in C printf format specifiers in detail, escape sequences, and an honest look at scanf and the traps that catch every beginner at least once. 10 min 4 Operators in C Arithmetic, relational, logical and bitwise operators, the real difference between i++ and ++i, and how precedence decides what your expression actually means. 10 min 5 Conditionals: if, else and switch How C decides what to run next, when switch beats a chain of else-if, the ternary operator, and the assignment-instead-of-comparison bug that catches everyone. 9 min 6 Loops: for, while and do-while The three loop forms in C, how to choose between them, what break and continue actually do, and how nested loops produce the pattern questions exams love. 10 min 7 Arrays and Strings Declaring and indexing arrays, why going out of bounds is dangerous rather than an error, how char arrays become strings, and what the null terminator really does. 11 min 8 Functions in C Writing your own functions, the difference between declaration and definition, why prototypes exist, what call by value really means, and how scope decides what a name refers to. 10 min
🧠

Data Structures & Algorithms

8 tutorials
Open track

The part interviews actually test. Intuition first, formal notation second.

1 Time and Space Complexity, Explained Simply Why we measure algorithms by counting operations instead of stopwatch seconds, and what O(1), O(log n), O(n) and O(n squared) actually mean. 9 min 2 Arrays: How They Sit in Memory and Why That Matters What an array really is at the memory level, why indexing costs nothing, why inserting in the middle is expensive, and the traversal patterns you will reuse everywhere. 10 min 3 Searching: Linear Search and Binary Search How linear search works, how binary search halves the problem each step, exactly when binary search is allowed, and the off-by-one traps that break it. 9 min 4 Sorting Basics: Bubble, Selection and Insertion Sort How the three simple sorting algorithms actually work, which one is least bad in which situation, what stability means, and why all three are O(n squared). 10 min 5 Linked Lists: Nodes, Pointers and Trade-offs What a node really is, why linked lists exist at all, how the basic singly linked list operations work, and an honest comparison with arrays. 10 min 6 Stacks and Queues: LIFO and FIFO The two simplest restricted data structures, why limiting what you can do is useful, how to build both on top of arrays, and where they show up in real software. 9 min 7 Hashing: How Dictionaries Find Things Instantly The idea behind hash tables, why lookup is close to O(1), what collisions are and how they are handled, and when hashing beats sorting. 10 min 8 Recursion: Functions That Call Themselves Base cases and recursive cases, what the call stack is doing underneath, factorial and Fibonacci, why naive Fibonacci is so slow, and when to prefer a loop. 10 min