Lets begin!
I started competitive programming 1.5 years ago , and have come a long way now.
I am a master on Codeforces and 6* on Codechef as of now .
Major Mistakes that (most)beginners do in competitive programming according to my experience and knowledge :
1)They don't participate regularly in coding contests.
2)They don't up-solve after the contest ends.
3)They only participate in Long Cheating Challenge of Codechef , and waste time in a competition which is filled with cheating and holds no value, as the problems are related to some obscure algorithms/phd-research-papers(I am talking about last 2-3 problems of Division-1) . Practicing such contests never make you good at short contests(codeforces,google codejam-kickstart,ICPC,etc.)
4)They practice random questions : As a beginner, or even an intermediate , you should focus on learning as many tricks and theory as you can in different important topics and then practice ample questions on that topic . This is the most important point which most people miss. Banging your head against random questions is not gonna work , if you don’t have the pre-requisite to solve a given problem !!!
5)They practice low-quality questions : I have seen many people giving un-rated contests, which have wrong problems/test-cases, or practicing dynamic-programming-problems from OJ of low quality/no-editorials. I am very mindful of what I practice . I pick up the best quality questions according to my level.
6)They don't do deliberate practice and easily get demotivated .
7)And most importantly , they don't enjoy solving coding problems . They don't really love it.
8)They don't know the secret to excel : When I transitioned from 4* to 6* on codechef, and from expert to master on codeforces, my knowledge was same as my previous version of myself . The thing which was different is : my thinking skills.
My thinking skills improved a lot, which boosted my rating . I think the best way to improve your thinking skills is to solve Div-2-D(Ad-Hoc-ones),AtCoder(Ad-Hoc-Greedy-Ones), and division-1 problems of (Cookoff/Lunchtimes) . TopCoder-Dp-Problems are cherry on the cake!