Yeah, I'd like to make learning cheaper/free and 1-on-1. You would pick only one skill, and only one person, and it would tie up both. How quickly it happens depends on the learner's skill level and the teacher's teaching level.
problem is how are you going to put a triangle in a curses game? Anyway yeah that is going a bit too far, it should be as simple as fast/cheap and you choose how far your going to go like with sleepers. "good" is already regulated by the characters teaching skill remember?
Yeah, I think it might be too complex. It's a cool system to play with though, and I could definitely do it, if there was a good reason.
The way you can implement a triangle like that in curses (with full definition between the options, so you can have 67%/100%/33%, for example) is by having three sliders. Between the three sliders, you have enough points to maximize two of them if the other is empty. As one slider is manually increased, the other two decrease by half the amount, and as a slider is manually decreased, the others increase by half that amount. Finally, you allow bars to be locked and unlocked, so that if one bar is locked, its amount never changes, overriding any other input -- so, if bar two is locked (or empty), and you increase bar one, bar three decreases by the same amount that you increased bar one, rather than just half as much.
This system might sound complicated on paper, but in practice it's easy to pick up, and with the locking mechanic it's very easy to get to the point you want in the triangle in just two moves -- mathematically, you're moving on a two axis graph, you just have to lock your position on the first axis once you've gotten to where you want. This will not only functionally implement that triangle, but you can reduce the amount of points you give the player to just enough to fill one bar, and it will implement the alternate triangle where you can only fully maximize one of the options just as easily.