I think the most important skill a successful person has is to be able to see things through till the end and to not give up.
How many projects, diets, fitness goals, etc have you set out to accomplish but never could? Being dedicated, devoted and fully committed to something, anything, is extremely difficult at times. Anything worth doing will tend to make you question what you're doing, how you'll get to where you want to be, and if what you're trying to accomplish is even possible.
Forcing functions can be an important and even necessary component of becoming successful. In your quest for not giving up and seeing things through, forcing functions can be the key to staying on track. For example, if you know you want to lose weight, but have trouble sticking to a regular gym routine, you could make a forcing function to get to the gym at least 5 days a week. For example, if you ordinarily have a hard time waking up and going to the gym, you could leave your body wash at the gym as your forcing function to go to the gym in order to shower up for the day. Once you're in the gym, you'll wind up having a much easier time actually working out.