The phrase "future-proofing" makes me cringe as a developer. It's natural, especially as you gain experience, to see a few steps ahead. But this can lead to a tendency to over-engineer solutions, in order to make things easier later. Avoid that tendency any earlier than necessary!
I don't write this post as some representative of the Stack Overflow community or whatever, just one guy who's found enjoyment in providing nearly 1600 answers over the years. Whether it's finding the answer to some obscure IDE oddity, digging into a .NET class or teaching someone about a C#