Ashish Jangra

Who writes VizLearn, how the 580 modules are actually made, and how to tell me when one of them is wrong.

Last updated

Who I am

I am Ashish Jangra. I build and maintain VizLearn on my own — every visualisation, every written explanation, and the build system that assembles them into 580 module pages across 16 tracks.

There is no team behind this and no company funding it. That is worth saying plainly, because it sets what you should expect: the explanations are opinionated and consistent, corrections reach the person who can act on them immediately, and nothing here is written to a content brief or a keyword target.

You can see the rest of my work on GitHub, LinkedIn and Kaggle.

Why I built VizLearn

I kept hitting the same wall learning this material: explanations were either a wall of equations that assumed the intuition, or a wall of prose that avoided the maths entirely. Both leave you simulating the idea in your head and hoping you got it right.

The thing that actually worked for me was building a small interactive version of whatever I was stuck on and pushing it until it broke. VizLearn is that habit made systematic: set k to 1 and watch KNN overfit in front of you; drop specificity by one percent on the Bayes grid and watch a 99%-accurate test become a coin flip.

How a module is actually made

Every module is one self-contained page: an interactive visualisation, the controls that drive it, a live readout of what the algorithm is doing right now, and a written explanation underneath.

The pipeline matters more than it sounds. The prose for each module lives in a plain text file, not in the HTML, and the pages are generated from it — so a correction is made once, at the source, and cannot survive somewhere else on the site. Every visualisation is hand-written SVG driven by plain JavaScript: no charting library, no framework, no backend.

Two rules I hold to. Where a page states a number, that number is produced by the same code the visualisation runs, so the text and the animation cannot disagree. And every runnable example on the site is executed before it ships — if the output shown under a code block is wrong, that is a bug I want reported, not a typo.

What I get wrong

Plenty. The visualisations simplify, and a simplification is a choice about what to leave out; sometimes I leave out the wrong thing. Animations can imply a sequence the real algorithm does not have. Numbers drift when a default changes.

So corrections genuinely are the most valuable message I get, and they take priority over everything else in the queue. If a module states something false, or an animation misrepresents what the algorithm does, tell me: the contact page explains what to include, and a clear factual correction is usually fixed within the week. When it ships, the module's updated date changes and the change is listed on What’s New, so you can confirm it landed without taking my word for it.

How this is paid for

VizLearn is free, requires no account, and puts nothing behind a signup. It is supported by display advertising, which covers the domain and the time that goes into new modules. Ads never sit inside a visualisation and never gate a page.

Advertising means third-party cookies, and the Privacy Policy sets out exactly what is collected and how to opt out.