i think that to be a good speaker in english you have to practise it with other people and watching many of films
Films, music, radio, and talking with native speakers. Native speaking is vital to know how to talk very good English. Grammar and vocabulary books are great as well. Purchase an arabic-english dictionary and carry it with you at all times. Or, carry a phrase book, and practice phrases.
Download Anki: http://ankisrs.net/
It is a free, efficient flashcard program. I use it to learn Norwegian and German.
Once you download Anki, download the file from this link, it is 4000 english words to study, and it has native speaker audio to go with it:
https://ankiweb.net/shared/info/735471551
Hope that helps!
Yes that`s really helpful. and chatting , talking to a nitive ( if there is one) , talking to your friends who can speak English is really useful as well.