Skip to main content

Command Palette

Search for a command to run...

#Week 0 — Introduction & Vision

Published
4 min readView as Markdown
#Week 0 — Introduction & Vision
A
I’m a curious learner and aspiring software developer who enjoys building real-world systems, exploring new technologies, and learning in public. I write about coding, personal growth, and turning ideas into practical systems—while simplifying complex concepts for others.

Why I’m Building a Web Search Engine While Studying Information Retrieval

I’m currently in Semester 6, and one of the subjects in my curriculum is Information Retrieval (IR).

At first, I thought it would be just another theoretical course — definitions, formulas, and exams. But then I realized something powerful.

Every time we search on Google, watch videos on YouTube, or shop on Amazon, Information Retrieval is working silently in the background.

Search engines are not magic. They are carefully designed systems built on IR concepts.

That’s when I decided:

Instead of studying IR only for exams, I will build a web search engine while learning it.

This project is my way of turning theory into real-world understanding.


Why I Created This Project

This project is not just about building a search engine.

It’s about building deep understanding.


1. To Learn IR Concepts the Practical Way

In class, we study concepts like:

  • Inverted Index

  • TF-IDF

  • BM25

  • Query Processing

  • Ranking Algorithms

  • Evaluation Metrics

But knowing definitions is not enough.

I don’t just want to know what an inverted index is.
I want to understand why it makes search fast.

I don’t just want to know what TF-IDF or BM25 does.
I want to see how ranking changes actual search results.

By implementing everything myself, I can:

  • Apply IR concepts practically

  • See how documents are indexed

  • Understand how queries are processed

  • Observe how ranking affects relevance

  • Experience real implementation challenges

Building forces deeper clarity than reading ever can.


2. To Understand How IR Works in the Real World

When we search on Google or browse products on Amazon, we get relevant results in milliseconds.

But how?

This project helps me understand:

  • How documents are stored and indexed

  • How search queries are internally processed

  • How ranking algorithms determine relevance

  • Why preprocessing steps matter

  • Why performance optimization is critical

Even if my system starts small, the core ideas are the same as real-world search engines.


3. To Understand What Happens When Systems Scale

Search engines are large-scale systems.

Even if I begin with 100 documents, I will eventually ask:

  • What happens when documents increase to 100,000?

  • How does indexing time grow?

  • How does memory usage change?

  • How can I optimize query speed?

As datasets grow, new challenges appear:

  • Storage limitations

  • Query latency

  • Index size explosion

  • Performance trade-offs

  • Architectural decisions

Through this project, I want to think like an engineer who designs scalable systems — similar to how companies like Google and Microsoft design retrieval systems at scale.

Even if my project is small, the mindset will prepare me for large-scale system design.


4. To Gain a Deep-Level Understanding

My goal is not just to build something that works.

I want to deeply understand:

  • Why inverted indexes are efficient

  • Why ranking is more important than simple keyword matching

  • Why BM25 often performs better than TF-IDF

  • Why preprocessing (tokenization, stop-word removal, stemming) changes results

  • Why evaluation metrics are necessary

When you build your own system, you face real problems:

  • Tokenization edge cases

  • Stop-word handling issues

  • Stemming vs lemmatization decisions

  • Handling noisy or duplicate data

  • Debugging ranking inconsistencies

  • Performance bottlenecks

Each challenge teaches something deeper about Information Retrieval.


Learning by Building (Not Just Reading)

Reading gives knowledge.

Building gives understanding.

When I implement each component myself, I will face:

  • Bugs

  • Edge cases

  • Performance issues

  • Design trade-offs

And each problem will strengthen my understanding of how search systems actually work.


Final Goal

By the end of this project, I want:

  • Clear conceptual understanding of IR

  • Hands-on implementation experience

  • Real-world system thinking

  • Confidence in explaining how search engines work

  • The ability to design scalable retrieval systems

I don’t just want to pass my Semester 6 subject.

I want to truly understand Information Retrieval — deeply, practically, and from a system-design perspective.

Search Engines from Scratch (IR Journey)

Part 1 of 1

This series documents my journey learning Information Retrieval by building a modular search engine from scratch using Wikipedia data, with a focus on indexing, ranking models, and retrieval pipelines for real-world search systems.