Проблема начинающих программистов в том, что когда у тебя нет опыта, невозможно отличить хороший код от плохого. Начинаешь искать как сделать что-то, а в интернете на тебя несется просто цунами из говнокода, а фильтровать ты еще в силу опыта не можешь. Особенно это актуально для самоучек, которые учились по некачественным тюториалам. А ментора нет (ментор тоже должен шарить) и спросить не у кого.