Yes It always happens, you are normal
I believe you can do some of the following to regain your passion:
- Take some rest from programming, not a long a rest , may be a week or so
- Stop doing the things that you are good at and start learning a new technology, it is always exciting to learn new things, pick an interesting source for learning, for me I find educative mobile applications more exciting and challenging more than books or videos, I believe because they are more interactive..
- start listening to a programming podcast, don't choose one with lots of technical stuff, but choose one with lots of new interesting subjects
- Maybe you need to make your own project idea, its always boring when you are trying to achieve someone else's target, instead, do some market research, find some creative ideas, team up with another programmer or more, and make your own dream idea come true
- as a continuation of the previous point, may be you can make a startup!
- make a new library that you think is missing or not written well in the language that you like most and publish it here to get other's opinions
- watch a movie about programming
- use your programming skills to make a small hack (without breaking the law or someone's privacy off course :) ), or automate one of the boring stuff you do everyday at work
- change the IDE/editor you are using!! or change its theme, a small trick but will have a big effect, because we all need a change from time to time
Hope those little ideas help you my friend, Good luck :)