After a lot of time spent and wasted... and a lot of situations where I got really angry at myself... I forced myself to find something, anything that got me to just focus on one thing and finish it before going to something else.
That's when I read a small book called "Getting It Done". (I forget the name of the author, but it's google-able, it's a pretty famous book). The book is not the point of this post... but rather a single concept that I got from it that changed my mindset about my work forever.
That concept is the following: Every open loop inside your mind creates a brain-suck that drains your energy and your creativity.
What does it mean? It means every idea that you have that hasn't been properly dealt with, will stay inside your mind, and your own mind will try to remind you of it at every possible second so as not to let it go to waste. These constant little "reminders" are a never-ending investment of mental energy that might not seem to add up, but they do, and FAST.
This is why, even when you promise yourself that "THIS time it's going to be different", this time you won't get distracted... you suddenly get another idea, and you try to put it away for later, but you don't, and it keeps popping up again and again until it becomes so loud that you just have to act on it and forget about the previous one! This used to happen to me every single day.
How do you deal with this? The answer is really simple. You need to record and file away this idea in a way that you trust yourself to get back to later. Once you subconscious mind trusts the fact that the idea has been recorded properly, the it will shut down the "open loop" and free up that mindspace and mental energy for you to continue and finish whatever it is that you want.
So here's what you do: You make yourself an "subconscious inbox".
You take an old shoebox, a pack of 3x5 index cards and a pen and place them right next to your keyboard. You begin your work of the day, whatever it is. And, here's the crucial part: Whenever you have a thought, idea, possibility, reminder or anything that isn't directly related to your work at hand, you take five seconds to scribble it down on an index card, toss the index card in the shoebox, and immediately continue working. This has the effect of showing your subconcious mind that you respect it and that you are acting on its input, and that the idea will get due consideration. But later. Not now.
Now, the other trick is to actually get to the ideas in the shoebox at the end of the day. When you finish work, for every card in the shoebox, you do the following: read it, consider it, and either toss it out, or decide on an actionable step that you can take. Then you put that actionable step on a list: either As Soon As Possible, Later, or Some Day. Then you throw the index card away, and do this until the shoebox is empty every day.
If you do this simple thing every day, what will happen is that your subconscious mind will begin to trust you. It will stop being flighty and intruding upon your work time and your focus and your productivity will increase exponentially as time passes. You will have what is called "a mind like still water"... a mind that is clear of distractions and serene, ready to deal with and affect the world around it.
Don't believe me? Try it... I've been seeing the results of this for years. I actually have my "inbox" right next to me right now and have actually put two cards into it as I write this post! So... hope this helps some of you out there, that have flighty and restless minds like mine, to get them under control a little bit!