Being able to teach has most to do with desire to teach. Typically the better the sailor the more difficult it will be for that person to teach. The reason is being able to relate to the person who wants to learn to sail who knows "nothing". The excellent sailor knows "too much". The challenge for the better sailor is to go back to the very beginning where you knew nothing. That is very hard to do for the experienced sailor. Your students ability to take in information under varying conditions will impact the time it takes for them to learn. A young adult 22 will be a different learner than a 65 year old adult. One is not better than the other, but they will approach a given problem differently based on their back ground and learning style. The learning session as most mentioned needs to be fun, challenging and the student will want to feel like they have some control over their situation (feel safe). Before going on the water, teach a little wind with a bubble gun and a rigged sail boat. They will be able to "see" the wind then. Always stress how easy it can be, "we" make it difficult. First thing to teach is how to stop. Keep everything relaxed, learning is not a race. If you have a large group, you will have to determine each students learning pace. In a group, students learn the fastest from each other. Set up that dynamic and you are on your way. As was mentioned before, you can "learn" in 20 minutes. Becoming "good" will take a while. If the learning is fun the students will gobble it up fast.
Humble opinion of a long time sailing instructor.