A year ago I gave my brother a book on how to write Minecraft plugins in Java. It's a beginner book starting at the absolute basics in a fun context. He played a lot Minecraft (maybe a bit too much) and I was hoping to turn that into something useful.
Now about a year later (he's 16 now) he actually picked it up and started asking me all kinds of questions. Whilst I'm psyched that started learning on his own I do have the impression that many of his questions could be answered by reading more thoroughly while others just seem trivial to me (I am aware that they might not be for a beginner though). When I look at his code I'm kinda horrified and at the same time not sure if it makes any sense to teach naming conventions etc. at this point.
My current approach for answering questions/giving tips is to just give the solution in case of language specific questions (like that you need to compare strings with
equals in Java) and try to give hints in case of command/data flow issues in his program and have him google the answer in case of simple knowledge questions (like what the
% operator does). The intention here is that he learns how to find answers and find errors by himself whilst not getting demotivated by stupid little issues that you just kinda learn with time.
So my question/topic what you think of my approach and how much in the direction of best practices like naming conventions I should try to teach at this point.
For all answers I'm also interested in what your current status is i.e. if your a beginner yourself, have mentored before or just sharing thoughts.
One of the most consolidated misconceptions about programming, since the early days, is the idea that such activity is purely technical, completely exact in nature, like Math and Physics. Computation is exact, but programming is not.