What is the (functional) difference between, for example:
I have taught archery for ten years 'vs' I have been teaching archery for ten years? The context is in explaining one's experience with archery. When might the use of one of these be preferable to the other? Are there other similar verb forms to consider?
***** NOT A TEACHER *****
Hello, Chazghir.
(1) I have taught. = present perfect.
(2) I have been teaching. = present perfect progressive. ("teaching"
is not usually called a "gerund" in that kind of sentence.)
(3) I have checked my books, and I am happy to share what I learned:
(a) Sometimes there IS a difference:
(i) I have read that book. = Maybe you have finished it.
(ii) I have been reading that book. = You are still reading it.
(b) In your case, I believe that the sentences mean ALMOST the
same.
(i) In one grammar book, the author gives these two sentences:
(a) Harry has worked / has been working in the same job for 30 years.
(ii) The author says they mean the same,
BUT there may be a little difference of EMPHASIS.
The author did not explain, but another author says that the -ing
sentence puts more emphasis (more importance) on
how long something has been happening).
(4) In my opinion ONLY, here is how the -ing sentence might be used:
TOM: I am looking for a good archery teacher.
MR. SMITH: Well, people tell me that I am a good archery teacher. Would
you like to sign up for my classes?
TOM: Excuse me, sir. But I am looking for a teacher with a lot of
experience.
MR. SMITH: Listen, young man. I have been teaching archery for
10 LONG years!!! I think that I have enough experience.
(If Mr. Smith had said, "I have taught archery for 10 years," I
do not think it would emphasize the length of time so strongly. That is
ONLY my opinion.)
***** Thank you for your question *****