Learning english can be a very difficult task for most people, this is because we dont live in a environment where we are forced to speak or write english. so i think the best way to learn english is by communicating with others using the lagnguage itself and not just learn from the book. Im sure if you live in an environment such as a foreign country and were forced to speak and write english everyday then your english will imprve dramatically.