Going back to school for Computer Science, worth it?

Hi ladies and gentlemen and ladies,

Today work handed me some lemons and my job as of next month no long involves travel and I won’t be doing what I want to be doing for the most part. I’m pretty devastated by the news; despite the fact that the transition is technically a promotion, it’s just not what I want to do and I wasn’t given an option to decline.

So now I’m looking at making lemonade with these lemons. I’ve always wanted to go back to school for Computer Science but I haven’t been able to do to work. Now that I’ll be working normal hours and not traveling and I have the time to get back in the game.

However I’m not sure if it’s worth the investment as far as money is concerned. A degree would be fantastic but I think my merits could carry me if I could really develop some skills. Basically what I want to get out of the degree is a more formal understanding of Software Engineering. Right now I write web-apps in Python/Django and I also know PHP, various SQL languages, and some other bit things.

I am not confident in these skills as enough to secure employment. I want to learn to write apps for the the desktop, not just the web, which would require me to learn Objective-C (interested more in the mac side of life) at the very least.

The other aspect I need schooling is formal software development techniques. I can develop the actual programs, but I don’t know why things work the way they work. All the nitty gritty things beyond “this works and this doesn’t” elude me.

So do I need to go back to school for this or can I teach myself these things through books and practice?

I’d really appreciate some help because I find myself at a crossroads and I’m lost.