In Borders Cafe writing Java code, how geeky is that? Worse yet, composing a blog entry about it. It feels good to be writing code, trying to track which bit does what, working without the API docs (help, I've gone blind!), and using an IDE solo for the first time. It's a game, a test. Can you get a clean compile with no warnings or errors, can you pass and fail your tests, what's the minimum amount of code you can get the job done in.
There's a reason coders stay up late hacking on a piece of code until it's perfect. You can't put it down. It's a direct challenge, and you cannot let the machine win. If you pull together an elegant solution that is both efficient and intelligible, you win. Walk away from broken code and you lose. Do a shoddy job, and it's a Pyrrhic victory, you know you'll be back to overhaul, shred, and maul.
(Pyrrhus, king of Epirus was a former kinsman of Alexander the Great. In 279BC he won a battle against the Romans near Ausculum, but at great cost, the same happened at Heraclea a year earlier. In those two battles, he lost almost a third of his troops. He is reported to have said that one more victory like that would lose him the war.)