This is spot on—a simple and precise explanation. As a programmer myself, I’ve seen developers dive into a 15-year-old codebase, independently work through it, and only ask questions once they’ve exhausted all other options.
I think it also matters what happened during the intervening 15 years. If you built an app in 2004 and haven't touched it really since, then it should hopefully still be reasonably easy to follow along, even if the conventions might seem outdated.
15 years of active feature development on the other hand will likely be a major slog for any developer, regardless of experience. There's a lot that can happen in 15 years even if there were only 1-3 developers if they everyone takes the easy path since they know where all the gotchas are. It's only when new devs are added that the curtain comes down and the lazy abstractions (or lack thereof) are exposed.
You don't need your own SMTP server for this. I'm working on a project with a similar need at the moment and Mailgun's Email Routing feature is exactly what you need.
We had plenty of books at home, but none that I recall picking up out of sheer curiosity. However, starting around middle school, these books—discovered on my own in a bookstore—had a profound impact on me:
- The Elenium series by David Eddings (The Diamond Throne, The Ruby Knight, The Sapphire Rose)
- Starlight and Shadows series by Elaine Cunningham (Daughter of the Drow, Tangled Webs, Windwalker)
- The Lord of the Rings by J.R.R. Tolkien
- The Legend of Drizzt series by R.A. Salvatore (the first 16 books)
- Dragonlance series by Margaret Weis (Tales I and II, Raistlin Chronicles)
Now I have them in my own library at home, waiting my kids to grow up enough so they can grab and read (hopefully :)