Friday, October 18, 2013

Initiate Recovery Protocol

All of my friends who have younger siblings who are going to college or high school - my number one piece of advice is: You should learn how to program.Mark Zuckerberg

I thought I lost a program I wrote a year ago. The app proxies a website and provides an API and mobile-optimized view of it. I use it every day. Every day. I have a lot of programs like this - that parse/optimize other people's websites. I even built a framework that pumps a website through Tidy/XSTL and can create RSS feeds for most websites (take that archaic websites!).

With iOS7 out I have been updating the look and feel of these little proxy sites and I couldn't find the source code to one of them.

PANIC! This was an important one! I have a ton of scripts that hit a JSON proxy. I use the web app daily. No source code? It had been operating flawless for a year, but it was only a matter of time before the website would change in some trivial way and everything would break. Time Machine? Not there. Dropbox archive? Not there! Old DVD backups? Not there? Where did I code this thing? Some of my projects I upload into Google Code - but the scrapers seems a little weird to publish publicly and aren't there. So I found it no where and I was sad.

Then I realized that it runs on Google App Engine, so I took a look through the documentation and learned that I could download the WAR back out. Which ... I ... did. While class files, compiled JSPs and minified/obfuscated JavaScript is not the most useful thing to work with, it's way easier than nothing.

Anyway, long story short (too late) - with a little bit of decompilation I had all my source code back, sans-comments. So the source code is back in my computer, all's right with the world.