about

The person behind the plots

Third-year B.Tech CSE (AI/ML) at Lovely Professional University, and a GATE CS aspirant. Learning in public — this page is the honest version of where I actually am.

Ishaan Sandhwar
based in
Phagwara, Punjab, India
reading
Lovely Professional University
graduating
2028
languages
English, Hindi

I am in the third year of a CSE degree with an AI/ML specialisation. Far enough in to have built things that work end to end, not far enough to pretend any of them carries production traffic. Most portfolios at my stage paper over that distinction; I would rather state it, because what sits either side of it is the interesting part.

What I actually do most weeks: work through the maths by hand before reaching for the library. Backpropagation derived on a two-layer network with real numbers, not just loss.backward(). Softmax rewritten with the max subtracted out, because the first version overflowed and I wanted to know exactly why. Python is my first language — PyTorch, NumPy, pandas, scikit-learn — and I use TypeScript when something needs a browser, like this site.

Alongside the degree I am preparing for GATE CS, and that has turned out to help the applied work more than I expected. You cannot hand-wave through a page-replacement trace or a normalisation proof; the answer is either right or it is not. Operating systems, DBMS, networks and automata are also where a lot of the engineering under a model actually lives.

The writing section is the part I would point at first. Each note is a derivation I worked through until I could explain where every term comes from — the test being that if I cannot rebuild a formula from scratch, I do not understand it yet, and writing it down is how I find out which of the two is true.

This site is itself one of the things I am building. It is Astro with typed content collections, and the figures are computed at build time rather than dropped in as images — the attention heatmap on the front page is a real softmax(QKT/√d) pass over the site's own tagline, with hashed rather than learned embeddings, which the caption says plainly.

What I am after next: an internship or a first collaboration where the work is real and the feedback is honest. I would rather be the person who says "I have not done that yet, here is the closest thing I have done" than find out in week two that I claimed something I could not back up.

find meGitHubLinkedInKaggleHugging Face

how i work

Four commitments

Not adjectives — checks I actually run, and the reason each one exists.

  1. 01

    Derive before import

    Before I call a library function I work the maths out on paper — small numbers, every step. It is slower once and faster every time after, and it is the difference between using an optimiser and knowing what it does to a gradient.

  2. 02

    Baseline before model

    A number means nothing without the cheap number beside it. Majority class, seasonal-naive, nearest neighbour — whatever the lazy answer scores, that gets measured first and reported next to the real result.

  3. 03

    Say the depth honestly

    Every tool on this page carries a marker for how I actually use it, and "currently learning" appears more than once because it is true. Inflating that only buys you a bad interview later.

  4. 04

    Write down what broke

    The overflow, the leak, the split that was not stratified — those are the parts worth recording, because they are the ones I would otherwise repeat. A note that only contains the working version teaches nobody, me included.

tooling

What I reach for

Marked by how I actually use each one. Three segments means it is in my hands most weeks; one means I am still learning it and would say so in an interview.

Modelling

  • PyTorch
  • scikit-learn
  • Transformers
  • PEFT / LoRA
  • LightGBM
  • JAX

Data

  • NumPy
  • pandas
  • Polars
  • SQL
  • DuckDB

Serving & infra

  • FastAPI
  • Docker
  • ONNX Runtime
  • Redis
  • AWS
  • Kubernetes

Languages

  • Python
  • TypeScript
  • C++
  • Rust

used daily working knowledge currently learning

Keep scrollingWork