I can recall being with my family in southern ohio on a pontoon boat, on a lake in the woods. There was a strict “no technology” policy enforced ruthlessly by my parents. Of course I hated it, and the next best thing I was allowed to do was bring my programming books with me.
“Teach yourself java in 21 days” was an incredibly well-written book. I read this book so much and so often that the flimsy paper cover lost its plastic and ended its life with a barely recognizable cover in the ACM office at UIUC. I believe it’s still there.
I remember fuzzy things about my Java learning experience. I first read an antiquated Java 1.1 book that probably cost $3 on the bargain shelf at border’s, and then finally acquired the 21-days java 2 book. I remember the first time I understood what GridBagLayout meant, and I absolutely remember the first time the “interface” idea caught on, with respect to java’s class ideology. Class inheritance? Lightbulb moment. How event handlers worked? Done.
All of these lightbulb moments occurred many miles away from the nearest computer. That fact hasn’t detracted from my ability to acquire new programming skills and understand different ways of thinking about code. I’m certainly not saying it’s helped, but I suspect it has.
It’s been so long since I “learned” how to program that these memories are starting to surface.