Our beloved
Writing VCL effectively requires you to understand the high-level design of the Varnish state machine, so you know how to control and massage content. On top of that, Fastly's architecture differs from the traditional Varnish implementation and has added complexity (such as the two-hop routing architecture, which means Varnish runs in two places.)
There are a number of good resources to understand how Varnish works, and in particular how Fastly's fork of Varnish works.