DEV Community

Yanakan Sivakumar
Yanakan Sivakumar

Posted on

Introducing Myself...

I'm starting this to get more involved in the developer community, and to document building PriceSniffs, a fragrance price comparison site I've decided to build from scratch. Honestly, the reason is simple: I want to show how projects actually get built. The failed attempts, the legal issues nobody warns you about, the bugs that slip through into production.

A Bit About Where I'm Coming From

I'm a mechanical engineer by training, not a software one. Most of my working life has involved a different kind of quantitative work: tolerances, load calculations, failure modes, the sort of thing where a number is either right or the part simply doesn't fit. At some point I started writing Python scripts to make my own job less repetitive. Automating workflows. Batch-processing data I used to handle by hand. Small tools that did in seconds what used to take an afternoon. None of it was software engineering in any formal sense. It was just an engineer who got tired of doing the same manual task twice.

That's the same instinct that pulled me toward PriceSniffs. What draws me in isn't fragrance specifically, it's the same thing that drew me into mechanical engineering to begin with: a logical, data-driven approach to a real problem. Retailers publish prices. Prices change constantly. Someone has to reconcile all of that into something a person can actually use to make a decision. That's an engineering problem wearing a UI. I wanted to see if I could build the whole thing myself, start to finish.

What I'm Building

PriceSniffs is a price comparison tool for fragrance across UK retailers. The idea is simple. Building it wasn't.

The First Wall

On August 1st, my plan was straightforward: pull data from retailer websites, extract prices, display them. I tested this against twelve major UK beauty retailers.

The result was complete failure. Not partial failure. Every single request returned a 403 or 404 error before I could even access the HTML. Cloud server IP addresses, the kind you get from any hosting provider, are automatically blacklisted by most retailers.

Hitting a Legal Problem

That's when the real issue became clear. If I tried to bypass those blocks just to scrape the data anyway, I'm no longer solving a technical problem. I'm violating their terms of service. The legal risk wasn't worth it.

So I changed direction completely.

The Approach That Actually Works

Affiliate networks turned out to be the answer. Companies like Awin exist specifically because retailers want their product data distributed through legitimate channels. Within two days I had access to structured product feeds: nearly 900 products from one retailer, over 8,900 from another.

For retailers without affiliate programs, I built something different: a system that tries multiple retrieval methods and ranks them by success rate per retailer. Nothing fancy, no machine learning involved. Just the practical approach of trying the most reliable method first, seeing what actually works, and adjusting from there. It's the same mindset I'd bring to a failure analysis on a physical part. Don't reach for the most sophisticated tool available, reach for the one that actually explains what's in front of you.

Why I'm Documenting All This

Most write-ups about startups skip the hard parts. They mention the idea, then jump straight to success. This blog is going to show the actual path instead: the failed retrieval test and what it taught me, how to source price data legally, the bugs that made it into production and how I caught them, and which technical decisions actually mattered versus the ones that just sounded impressive.

I'm making changes almost every day. Some days things break. Most days they work. Both are worth writing down.

Welcome to PriceSniffs.

Top comments (0)