The hardest aspect of learning english, IMHO, is spelling and pronouncing correctly, which both are practice dependant. I Think that the best way to practice is to read books , in order to gain some basic experience in reading and processing difficult words. Language softwares are good, but not for that purpose. Learning to pronounce and spell can take even years, while softwares are used for short terms.