Atul Rajput
HomeProjectsWritingSkillsContact
  1. ~/
  2. blog/
  3. how to start learning computer science in your first year
Text Size
Loading article...
Enjoyed this post?Share it with your network:

Read Next

← Previous Article

FastAPI with LLM

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.

Next Article →

Books

A book is not only a book

© 2026 Atul Rajput
Status•GitHub•LinkedIn•X•Sitemap
Technical

How to Start Learning Computer Science in Your First Year

September 4, 20255 min read

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:

  • RAM (Memory) → Linked with DSA (Data Structures & Algorithms)
  • Processing → Programming Languages
  • 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 that build projects, contribute to open-source, or look for internship.

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:

  • User interface (front-end)
  • User authentication & history (database)
  • Server handling requests (back-end)
  • 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.