I would love to just say, "You tell me and leave it at that" ... but i don't think that would help.
I came to this foum because of my wife's depression ... I don't post outside that thread in the depression section because I have no idea what most of you go through so it doesn't seem like I'm the best one to give advice here.
But, I had to answer this one because I can relate. My wife's depression has at times spilled over onto me ... it's hard not to be depressed when she is. I know her's can't be helped and mine is just a byproduct but ...
I work as a programmer and often times it's extremely difficult to give my code the level of concentration it deserves when I feel so down and out - when all I can think about is going home and lying down. I would say its one of the most difficult things to do when your head is somewhere else ... coding takes so much concentration, planning, etc. that it can become overwhelming to the point you feel like you're going to shut down.
So how do I deal with it? ... Everyone is different but this is what works for me. I love learning new things (that's what I love about programming - discover what it is you love about it and use it).
For example ... I'm the guy that when the boss comes up and says, "We're wanting to use this new technology (or technology they just haven't used yet)" ... I'm the one that wants the project. My company is great in understanding that with new technology there's a learning curve, which is great in that I'm hardly ever rushed. This allows me to fully get consume with what I am working on ... learning it, experimenting with it and making something useful out of it. With all that going on I have alot less times to worry about every little thing.
Plus (as an added bonus) it looks great on a resume, makes you invaluable to your company when you're the one that wrote it (and the only one that understands it) ... and of course companies like those that accept the challenges. That attitude has really helped me here (and I'm trying to get my mind off things).
I'm mainly a C# / ASP.NET programmer, but I've wrote three Blackberry apps (two in Java and one in the VS plug-in (which I highly recommend)). I've programmed hand held scanners ... lots of cool interesting things while the majority of people here work 100% in MS Access.
Here lately I've had a lot on my mind so I've suggested redoing an HUGE legacy app they have here. The old on is all MS Access (and has greatly outgrown it). They want to use SQL Server 2008 as the backend and for the front end it's up to me ... I don't know if from the size of the app if I'll stick with what I know or attempt to learn something new with this one (we'll see). This system will also warrant an upgrade to their exisiting hand held hardware and they will want me to rewrite the software for those.
As you can tell I'm already very excited about it and (truthfully) when I sat down to write this I was more than just a little bummed out.
Since this is an internship I don't know how much 'experimenting' they will let you do. If I were to guess I would say you're doing more maintaining legacy apps than any new development (if that's the case I feel for you). But if that's the case branch out a little ... think of ways the app could be improved (show them what you're made of).
Again ... not saying what works for me will work for you, but you do need to re-examine why you got into programming to begin with ... find out what your love for it is and use that. I imagine you can get past things at home because there's something there you love or love doing ... the same can be done with a job (not as easily though)
Just curious, if you don't mind my asking ... what languages do you program in?
I wish you the best and pray God be with you (and most importantly you with Him).