Ad 1. Jak najbardziej tak. Znam osoby po studiach humanistycznych (psychologia), które zostały programistami Javy. Ani Java, ani C++ nie są specjalnie trudnymi językami, bariera wejscia w te języki nie jest specjalnie wysoka. Kwestia nauki i podążania w pewnym kierunku.
Ad 3. Jak będziesz chciał zostać programistą, to zostaniesz. Musisz pracować nad sobą, uczyć się, rozwijać. Pomysl o planie nauki języka rozbitym na 2-3 lata, sledź trendy, fora tematyczne, dowiedz się co to github, zacznij pisać swoje projekty, obserwuj projekty innych. Studia - warto skończyć, bo bardzo dużo firm rekrutuje wyłącznie po studiach. Oczywiscie najlepiej o kierunku informatyka, ale to nie jest reguła, najważniejsze jest doswiadczenie ;-), czy sobie radzisz w kolejnych projektach...