This does makes one wonder that if you need to make an app that has as little downtime as possible perhaps the best solution is to port as much as possible functionality client-side with client-side caching of data.
(theoretically, if I could cache every repo I visit using squid-proxy, even if github has an hour downtime I can still access the repo's I visited in the past, not perfect, but it's something!)