As just about everyone has said, it takes a bit of all 3… And quite honestly, the difference in preference between the three can easily be the biggest point of contention between mentors (even mentors on the same team!).
The most important aspect is to figure out what works for your team and your students… and your interaction will probably be somewhat different with each student. Some of the typical “types” of students I’ve seen:
- The student who doesn’t really need any direction. If they’re in charge of subsystem X, you know they can design and build it without much help, and when they need help, they’ll ask. Generally speaking, with this type of student, you’re working almost on a peer level with them in discussing solutions to problems.
- The student who is capable, but lacking in direction or confidence. This type of student can “do” it all, and once they have a blueprint of what to build, there’s no question that it’ll get done. However, coming up with that blueprint is difficult, and making the decisions to solve any issues along the way is difficult. With this type of student, you tend to ask more questions than anything else, and help to show them how to make the decision, without actually contributing to the decision.
- The student who is still learning. Any good FIRST team is going to have students who are still learning (like new members). They often need to be shown how to do things and how to use the tools. It isn’t all about showing, however - you use showing as a path towards letting them do. Typically, I’ll show someone how to do something, then have them do it. This works well if you have to make multiple identical parts, or do the same operation multiple times on the same part, or have plenty of scrap around you can use for examples.
These loose definitions are mostly student-centric, and don’t really address first point in the OP - doing. Doing, for us, is a last resort. We go to it if something simply takes more skill than the students posses, or it would take too long to train them (like welding. We rarely use it, when we do it’s on a very small/limited portion of the robot, and we don’t really have the facilities to teach it safely, so one of the mentors does it), or it would simply take too long for them to do (this last one mostly centered around producing identical parts from CAD, as prior to this fall we didn’t have any students interested in CAD).
Last year, a couple of my students actually commented on a “change” they noticed with me. Previous to that, they had teased me a little that my favorite saying was “I don’t know… what do you think?” - basically, trying to get them to start brainstorming solutions instead of just handing one to them. However, they noticed last year that I had almost stopped doing that with them - they had progressed to the point where they knew everything they needed, they were able to frame their questions correctly, identify the issues, and reason out why possible solutions they considered wouldn’t work. Thus, they had “graduated” from needing directed questions to working on a more peer-like basis.
One last example before I go… A few weeks ago, we were making a small change to our minibot in preparation for an off-season competition. Not a big deal, just moving a limit switch and changing how the limit switch worked. However, in order to do that a small bracket needed to be made to hold the limit switch in its new location. The student working on it had never used the break or shear we had in the build space. So, I showed her how they were used by making something that approximated the needed bracket. I helped her work through making her own based on her measurements, and when we got it over to the minibot, we found out it didn’t quite fit. We talked about why and what went wrong, and she was able to go back to make a second one without much help. After that was finished and she got it in place, we found out it didn’t quite work - the limit switch wasn’t sticking out far enough, something she recognized. So, she went back and made a third one. The whole point is, with this one example, you can see the progression a student can make in just a couple of meetings from needing to be shown how to do something, to being able to do it but needing to talk through the problem solving/design decisions, to being able to troubleshoot and fix it herself.