hope is that, by better understanding how systems fail, developers
will better analyze the systems they create, more readily identify
and address security problems when they see them, and generally
avoid repeating the same mistakes in the future.