you might want to take a look at
this guide written by tarek ziade, you might also want to read his book, you can see it down the page, excellent book, and you can find it as an ebook for free, somewhere on the web, can't tell you where you know, admins will delete my post :)
Also, you there's
this