When I first get into a project, it's with the idea of creating something that will solve a problem, to make things work. Or just to create something. Then when the inevitable happens and I get stuck on an algorithm for hours trying to find out why it won't work even though the logic looks right, as someone said it's the "YES!" factor. I call it the moment of 'w00t!'.

The realization that I conquered the computer's resistance and got it to finally work.
I also like learning something new.
What I don't like about it is the long hours and no sleep leading my health downhill to the point I nearly ended up in the ER a few times. I've since started using comments in the code more so I don't lose my train of thought, and to take frequent breaks, go for a walk. And also to get to sleep at the same time every night and get plenty of rest. I do better when rested up and my mind cleared of the coding spaghetti that was swirling around in there. LOL!