Oh my, it's a django app with debug mode enabled. I just got an InterfaceError with the full traceback and django configuration. (I've emailed them so they can fix it)
Simple, human error and no code review process for your production environment.
Something similar happened to a huge retailer here in Austria where just typing your username without password would log you in. Reason? An intern committed debug code to production and nobody noticed. In my book that's not the fault of the intern but the fault of the CTO/$TECH_LEAD that hasn't implemented and religiously uphold a code review process for everything that goes into production since stuff like this could happen even to experienced engineers that are tired or having a bad day.
What else would it be? The authentication code would live somewhere. And for debugging someone could change it to always return successful for an empty password. That debugging change shouldn't be checked in of course, and it should have been caught in code review. (It's a reasonable oversight for the authentication unit tests to only test incorrect passwords rather than the edge case of empty passwords)
Every single human holding a responsibility at any level gets blame all the time. There is nothing wrong with that, nor with making mistakes, and it is a fact of life.
Those are perfectly reasonable names since they're standard convention in engineering and science. It's like using i, j, and k for index variables in iterators; the meaning is clear due to convention.
I survived without errors from being to HN front page with Nginx and a static site (made with Hugo, iirc) on a Linode 1GB (when the plan was still existing). No CDN whatsoever.
That sounds reasonable to me. In the old days people used Apache because it was available and worked. But because the performance was shit they adopted other complex means of dealing with heavy loads. Nginx has dramatically improved the web server performance problem but a lot of old practices are still in place.