Предоплата нужна и это даже не обсуждается.
нахрен мне клиент, которого я в первый раз вижу, который скажет мне "а сделай-ка ты мне вот это". я начну делать, что-то сделаю за месяц, а он потом или пропадет, или найдет причину сказать "ой, а ты знаешь, я передумал", потому он уже нашел индуса-нищеброда, который ему это уже заговнокодил за 3 тарелки риса.
или вообще, клиент понял, что глаза у него уже не горят и проект не взлетит. а выйти на связь ему лень. или стыдно.
то есть, месяц я трудился -- зачем? за просто так. что мне делать с кодом? выкинуть.
вот когда с клиентом уже прилично поработал, тогда можно без предоплаты, поэтапно или как договоритесь. хотя, тогда и клиент сам будет рад дать предоплату.