• nil pointer dereference
    This one is sort of tricky because it can have so many causes, but perhaps nil was a mistake. It does seem to crop up a lot, as it's easy to leave a pointer uninitialised and not realise till runtime. You can call methods on nil types, which can be a bit confusing too.