Skip to main content

Command Palette

Search for a command to run...

How to Start Learning Computer Science in Your First Year

Right way to be a software engineer is based up on strong foundation

Published
4 min read
How to Start Learning Computer Science in Your First Year

Starting your Computer Science (CS) journey in your first year of college can be overwhelming. The internet is full of content, and it's easy to get attached to a single YouTuber or influencer. But as time passes, you discover more creators, new tech stacks, and diverse perspectives.

This is article is almost same as suggest by Hitesh Sir in the video

This article aims to simplify your path by explaining what to learn, why it matters, and how it all fits together.

Phase 1: The Foundations of Computer Science

Before diving into frameworks like Spring Boot, MERN, or even fields like Machine Learning (ML), understand this: your first job is unlikely to depend on a single tech stack. Most freshers are hired as Software Development Engineers (SDE) or Site Reliability Engineers (SRE), where fundamentals matter more than hype.

The Three Pillars: RAM, Processing, and Storage

These three are at the heart of every computing system:

  1. RAM (Memory) → Linked with DSA (Data Structures & Algorithms)

  2. Processing → Programming Languages

  3. Storage → Operating Systems & Databases

1. Processing: Learning a Programming Language

Pick any one language — C++, Java, Python, JavaScript, Rust, or Go. There is no "best" language. The goal is to communicate with the computer effectively.

Ignore the noise. Focus on mastering one language deeply, not hopping between "trending" ones.

Once you master one language, switching to another becomes much easier if a job or project demands it.

2. Storage: Operating Systems and Databases

A programming language alone is not enough. Most beginners ignore storage, which is why they struggle when it's time to build real software.

A. File Storage and OS Concepts

  • Understand file operations: read, write, input/output (I/O) times

  • Learn how data is stored and accessed

  • Explore how the Operating System (OS) handles memory, processes, and file systems

The better you understand the OS, the better engineer you become.

B. Databases

You need to learn:

  • SQL or NoSQL

  • ORMs like Prisma or Drizzle (optional for modern web dev)

Everyone can write code, but real-world applications need data to be stored, retrieved, and processed — that's what databases are for.

Example: When you log in to ChatGPT, your username and password are stored somewhere — that’s a database in action.

3. Learning Software Development

Once you know a programming language and understand how to store and manage data, it's time to build actual software.

  • Web, Mobile, CLI, Desktop — pick one platform

  • Build projects using your language + database

  • Learn the basics of user interfaces, authentication, API integration, etc.

Then Comes DSA

Many people rush into DSA after learning a language. That’s fine — if you know why you’re doing it.

Don’t solve DSA problems just for the sake of memorization. Ask "Why?"

Why Learn DSA?

  • To optimize your software

  • To understand how memory is used

  • To learn patterns that help in writing faster, better-performing code

Think of DSA as learning how your code interacts with RAM and CPU. That’s why it matters.

Suggested Timeline

Here’s a practical roadmap:

TimeFocus
0–8 monthsLearn 1 programming language deeply + Operating System + Databases
9–14 monthsStart learning DSA concepts + pattern-based problem solving
After thatBuild projects, contribute to open-source, or intern

Myths and Clickbait

You’ll hear:

  • “PHP is dead”

  • “Spring Boot is outdated”

  • “MERN is the only way”

Ignore these absolute statements. Trends change, but principles don’t. Every real-world application — including ChatGPT — involves:

  1. User interface (front-end)

  2. User authentication & history (database)

  3. Server handling requests (back-end)

  4. Optimization (DSA)

Even advanced fields like AI, ML, Web3, or Blockchain are built on these same fundamentals.

Final Thoughts: Build First, Then Explore

  • Pick one language and build real software with it

  • Connect your apps to databases

  • Learn how to optimize code (memory, speed, structure)

  • Only then are you truly mastering the language — otherwise, you’re just learning syntax

Once you are solid in RAM (DSA), Processing (Language), and Storage (OS + DB), you’ll be well-equipped to transition into any tech field — ML, Web3, Robotics, or whatever comes next.

Focus on the core. The rest will follow.