What's the point of GitHub?

Started by
23 comments, last by Liza Shulyayeva 8 years, 2 months ago

I'm thinking about working on a game project, and at first I thought about creating a github repo, but I know that these things never get contributors until something is completely usable (unless you get extremely lucky). So instead, I searched around github and found 5 other projects doing something similar. I contacted each of the repos (via the issues tab as there are no other easy ways to communicate on that site), and either got "oh we're just playing around" or no response at all.

Is there really even a point to putting something on GitHub? It seems only 1% of the projects actually gain traction, the other 99% are simply giving away free code with zero contributions.

Advertisement
I've worked with some companies that used private GitHubs to store backed-up authoritative copies of their repositories. I've also known colleagues who used GitHub to host their side projects either (again) as a backup or as an easy way to show off their work to prospective employers. Not everything on GitHub is intended to be the sort of open-source project that invites contributors to join in. In fact, I'd bet that most projects on GitHub are just pet projects that are open-source because it's convenient.
Its also reasonably cheap (free, if your code is open) and makes your code easily accessible from all your devices, lab computers, etc. The issue tracking is nice enough, and you don't get that from bare Git. And having your code on their service means its backed up off-site in case your house burns to the ground or something.

The only issue I really have with them is their pricing structure for large numbers of private repos, and that they strongly discourage (prevent, maybe) repos over 1GB which makes storing working-versions of multimedia assets a no-go -- not that Git is a great choice for binary files anyway, but I hate to be artificially limited by the service rather than the technology.

TL;DR; -- Github isn't just facebook for code.

throw table_exception("(? ???)? ? ???");

Git is a source code version control tool. Even for single-user teams, version control can be very useful for avoiding losing big amounts of information (i.e. I accidentally deleted a file, no worries I can revert), reverting bugs, finding where a bug was introduced by jumping between different versions, keeping track of history, etc.

GitHub is an online service that allows you to keep an online backup of your git repository. If your hard drive suddenly dies, you still have the repo online as backup. And at the same time, it makes collaboration simpler since you don't have to setup your own server. That's all.
The difference with using e.g. Dropbox as an online backup is that Dropbox is not really prepared for multiple revisions, and isn't integrated with version control systems like Git or Mercurial. And it doesn't allow collaboration either.

Not to mention GitHub has paid private repos service.

the other 99% are simply giving away free code

There's a lot of "abandoned free code" out there that saved my ass multiple times. Therefore I contribute back by publishing my snippets too. Someone may find them useful, even if I never ever find out about it.
Furthermore, if you plan on getting a good programming job, sharing your work is a great way of showing your potential employers how good you are at programming.
Always code as if the person who ends up maintaining your code is a violent psychopath who knows where you live. Sharing promotes a mentality that helps preventing bad practices (i.e. "only myself will use this code, so I don't care if it's poorly written")

and that they strongly discourage (prevent, maybe) repos over 1GB which makes storing working-versions of multimedia assets a no-go -- not that Git is a great choice for binary files anyway, but I hate to be artificially limited by the service rather than the technology.

If you ask them politely (for private repos) they will evaluate your case and likely increase your limit.
I use BitBucket. Free private repos for Git or Mercurial.

I do it to have a legit repository (for rolling back changes, or diff'ing changes) and a backup.
I use BitBucket as well, for the same reasons.

BitBucket and Sourcetree are great.

What will you make?

I use bitbucket for all my private repos, and use github for all my open-source repos.

Yes, there's a lot of noise out there on this whole open source of things. Any programmer now can claim and he/she contributes to the open source community by pushing one source code that may or may not even work. Very few put their thoughts and usability to their source code. Even if they do, it may not even get noticed to get enough people contribute back.

A lot of companies ask for your GitHub repository instead of a demo real nowadays. In fact a lot of them insist on it. Its a lot more convenient than emailed zip files or dodgy DVDRs or thumb drives.
If you apply for a a job in a startup (non games) nowadays the first thing they want to see (even before your CV or Degree is your Github repo and your Stackoverflow rep.

This topic is closed to new replies.

Advertisement