I love to code at 3am but I was always tired with a full day of work to do that. What worked for me was to change my sleeping schedule so that I was the most focused, alert, and hungry. I go to bed at 9pm and wake up at 3am. This gives my side projects the most focused, well rested me. The funny thing is, I'm so excited to get up and code I get up without an alarm clock.
Here is how I got my passion, motivation, and ambition back. Let's call it my slump-buster.
1. Find Inspiration. It could be music, watching a movie about a start-up or some other inspiring story. For me it was listening to Brian Stevens keynote speech from the RedHat Summit on YouTube. If you listen to the past 3 years he makes it clear that software developers and Linux are going to rule the world. Use this as a tool to get you into your command center to get stuff done.
2. Do not come home from work and go to your command center or computer room. You need time away from the computer to remember what your passionate about. Watch TV, go exercise, spend time with your family, whatever makes you happy.
3. Go to bed early. When your lying in bed, think about your side projects and what you want to build. Go into detail about the code, UI, technology stack, where your going to host it. This will help you dream in code and get you excited to wake up.
4. Wake up early. I get up around 3am without an alarm clock now because after dreaming about my passion projects I'm so excited to get up and make things happen. You would be surprised how focused you can be at 3am with no distractions. In the last 6 months since I started this new me I have read over 20 books and wrote several documents for my passion project.
5. Setup the perfect development workstation. I use my 27 inch mac for development but I also have 3 laptops running Linux. I told myself I was going to setup and learn all the best productivity tools to help me code better/faster. I setup my dotfiles perfectly with all the vim plugins I wanted to use, tmux scripts, and pushed it up to github and synced it to all my workstations. It is such a rush to have everything running perfectly.
6. Start a ritual or habit and set goals. Document all your ideas for your passion projects in as much detail as possible. Go to Trello or Evernote and document everything. Include pictures, links, sound, video, whatever to help you describe your idea and get yourself motivated. I call mine my 5 year project plan even though it will only take me about a year and a half. (Part of my plan is to save money and move to SV.)
A couple months ago I decided to start a dev bootcamp here in the midwest. We only had one other dev bootcamp school where I live so I decided to give it a try. I work a full time job so I really didn't need the money. After talking to so many people full of passion and desire to become a programmer that have little to no money, I have decided to do it for free so I can network with people and collaborate on ideas. It's a 6 month course that covers just about everything. It is done at night from 6-10pm monday - thursday, with one on one mentoring all other times from 8pm - 1am. It is done over Skype, HipChat, Webex, and IRC. Look forward to meeting you.
http://www.midwesthackerschool.com