Both allora and poi can be translated as "then", but they are not synonyms.
Allora can have a cause-effect connotation, whereas poi is more temporal, meaning just "subsequently".
Quindi has a wider meaning and includes both of these.
Besides, allora also means "then" as in "at that time" (a quel tempo / a quei tempi).
It has the same meaning but 'allora' is a bit more general, 'at that moment' refers to a specific point in time and is a set phrase. For instance with 'he carried on coming home later everyday, then i began to understand', 'then' refers to a period of time rather than a single point
Which preposition has to be used depends on the first verb of the construction. They usually are A and DI, while PER is used in final sentences (don't know if that's what they are called in English, sentences expressing a goal/purpose).
Allora cominciai a capire = Then I started to understand.
Allora cercai di capire = Then I tried to understand.
Allora studiai per capire = Then I studied to understand (so that I could u.)
ALLORA ho cominciato/iniziato a capire. Allora takes the meaning of 1.From that moment, from then on. 2. Then. 3.At that moment 4. At that point. But staying near to the Italian sentence, Duo should choose only then/from then on. Because the other variants have a translation on their own. AT THAT MOMENT: Da quel momento ho cominciato a capire. AT THAT POINT: A questo punto, ho cominciato a capire.
for present perfect tense (passato prossimo), you will use either a form of "avere" (in this case "ho cominciato" for "i have started") or "essere" in combination with the verb form for things that happened in the recent past. "cominciato", as the passato prossimo conjugation for first person, isn't valid on its own.
I put "So I have begun to understand", which was marked wrong. "So I began to understand" was the 'correct' answer given. "Ho cominciato" surely translates as "have begun", and if not, why the Hell not? I do see there is a difference in meaning, but I don't see why it's not "have begun". I have not begun to understand!
In English "now i began to understand" has the same meaning as "then I started to understand" in that the speaker is reflecting back on a moment in time on an event. Duolingo doesn't understand this. But then/now I need to get an understanding of how "iniziare" and "cominciare" are used, as "initiate," "commence" and "begin" are often used in the same context in English.