There's a lot of people spreading a holier than thou attitude in this thread.
Github will probably have more downtime which you can do noting about, than your selfhosted gitlab, which will probably fail because you upgraded something, or tinkered with a configuration.
It's a numbers game. They have more people monitoring, they spend way more money than you do on uptime/services, but such a service doesn't get more stable as it grows.
I trust myself way more than I trust GitHub or other hosted/cloud services because I cannot affect/help them in any way when stuff happens.
Ultimately, I know this, I accept this, and I happily use GitHub, Bitbucket and such all the time.
Personally I don't think you will see less downtime on your own server. The difference is, that when it goes down, there is something you can do about it, so you get busy fixing it.
When github is down we get to all get online and talk about our woes together.
The outages are usually pretty short. Go get a coffee and come back, or grab the team and go play a round of bowling. That has to be better than trying to manage and keep secure our own repos.
Last week we set up the community edition of GitLab on one of our local servers. We then mirror the repository to GitHub. So far so good.
We all like GitHub but after it's recent problems we realised we rely completely on it being up. We couldn't even deploy if it went down.. we still use it for open source things. For our main product it has simply become offsite back up.
People should have all their code in place and just merge and rebase from time to time? At least that's what I (a SVN user) have read on the internets about Git.
Most people use GitLab to refer to the downloadable software you run locally https://about.gitlab.com/downloads/