initialization is often a place where you want to break the 'normal rules' (of concurrency, process management, error handling), just write everything imperative style and not have a bunch of callbacks/indentation/try-catch/synchronization
there's only one process running at init time that sets everything up / a bunch of stuff (that will normally always exist) needs to be allowed to be null at first / everything needs to run in a specific order anyway and it's more important to communicate that to the reader
initialization as an area where you only want to write the 'happy path', much like scripting