# Backend writers' guide
-
-PowerDNS backends are implemented via a simple yet powerful C++ interface. If your needs are not met by the PipeBackend, you may want to write your own. Before doing any PowerDNS development, please visit [the wiki](http://wiki.powerdns.com).
+PowerDNS backends are implemented via a simple yet powerful C++ interface.
+If your needs are not met by the PipeBackend, you may want to write your
+own. Before doing any PowerDNS development, please visit [the
+wiki](http://wiki.powerdns.com). Also please read [this blog
+post](http://blog.powerdns.com/2015/06/23/what-is-a-powerdns-backend-and-how-do-i-make-it-send-an-nxdomain/)
+which has a FAQ and several pictures that help explain what a backend is.
A backend contains zero DNS logic. It need not look for CNAMEs, it need not return NS records unless explicitly asked for, etcetera. All DNS logic is contained within PDNS itself - backends should simply return records matching the description asked for.