I would have to say that it is better to find out how you work best as a programer, and tailor habits so complement the way you program. If you work best by starting with a full application in non-working psudo-code and refactoring it into a working application, then do that. If you programming best by writing the application on a white-board and then typing it in, do that. Programming is an art, and you have to learn what makes the muse sing for you, and continue to do that.
One other thing: I, for one, could not throw away a non-working bit of code without first finding out why it did not work because, if the code is not working I made a mistake. I screwed up. And if I thow that piece of code away before I learn what I did wrong, how am I to make myself a better programmer? How am I to learn from my mistakes if I do not even know what they are?
<code> <a> <b> <big> <blockquote> <br /> <dd> <dl> <dt> <em> <font> <h1> <h2> <h3> <h4> <h5> <h6> <hr /> <i> <li> <nbsp> <ol> <p> <small> <strike> <strong> <sub> <sup> <table> <td> <th> <tr> <tt> <u> <ul>