I'm trying to understand the pros and cons of the two from experienced developer's point of view. Of course Github is the more widely used of the two, but if someone could explain in general terms what they find better/lacking in either, that would be great.
(I use Github at the moment, by the way).
Gitlab is a self-hosted git server. I have used both (plus bitbucket) and I don't see much difference in terms of functionality. Github's UI is far more advanced, and they offer some custom features (e.g. Releases).