Lazy Initialization in Java - Surprisingly Tricky | Hacker News Reader