LESS is a way to write CSS easily. It adds features like variables, mixins, etc that allows coders to not repeat themselves.

But browsers don't read LESS. Browsers only read CSS. How does it work then?

LESS isn't for browsers, LESS is for human coders. It then gets compiled to CSS. You could write the same thing directly in CSS, but LESS saves you time.

Now, naturally, the compilation step becomes a confusing, difficult step in many projects.

For one, it is not possible to directly change the CSS and see the result. You have to compile (or generate CSS) after changing LESS. This makes LESS slightly intimidating. But, that's where automation kicks in.