Italian uses present tense + da + time expressions to indicate an action that began in the past and is still going on in the present. English, by contrast, uses the present perfect tense (I have spoken, I have been working) + for + time expressions.
verb in the present tense + da + length of time
Scio da un anno. (I've been skiing for a year.)
Prendi lezioni di karatè da molti mesi. (You've been taking karate lessons for many months.)
To ask how long something has been going on, use da quanto tempo + verb in the present.
Da quanto tempo leggi questa rivista? —Leggo questa rivista da molto tempo.
(How long have you been reading this magazine? —I've been reading this magazine for a long time.)
From:https://www.dbfei.com/Article/yidaliyu/201311/7729.html