Ostensibly, you put your code on Github for others to read, use, and maybe even contribute to. If you have a project that you didn't care enough to write cleanly, or even document in the most bare minimum of ways (a helpful README to contextualize the code) then why are you even putting it online? It's just going to reflect poorly upon you. If all your Github repos are as described above, people are going to (rightly) assume that's how you treat all of your projects, even those you are paid for.
That’s quite an assumption to make about intentions. Repository hosting is also a way to back up your code or make sure it’s available on multiple devices. Until very recently, you couldn’t do that and keep your code private on github without paying. So (unless they want to also maintain a bitbucket account) people dump stuff there for reasons other than explicitly wanting to share it with the world or show it off.
> Until very recently, you couldn’t do that and keep your code private on github without paying.
Ok, but now you can.
> people dump stuff there for reasons other than explicitly wanting to share it with the world or show it off.
Maybe, but that doesn't change the fact you are sharing it with the world and you are showing it off, and if you put a bunch of sloppy inscrutable code on your GitHub, people are going to assume you tend to write sloppy inscrutable code, especially if you don't contextualize it with a Readme. That's just the reality of it. The real big assumption here is thinking people aren't going to judge you by how you present your work online.
>>a bunch of sloppy inscrutable code on your GitHub, people are going to assume you tend to write sloppy inscrutable code
Im sorry, but wouldn't most developers have a large amount of code that fits this description? I likely have several mB of hacked python and bash scripts that were only intended to run once. But, I kept them in a repo because I occasionally would refer to an old script. But expecting a readme is a bit much, most of those scripts were lucky to get a descriptive file name, much less documentation. I hate doing documentation professionally, I'm certainly not stressing over it in my free time.
This kind of proves the point -- that if a recruiter is looking for a developer who values documentation, the state of documentation on a developer's GitHub is informative.
Personally one thing I've learned over the years is when it comes to referring to old code, having spent a few minutes writing out a description on how to run and configure it is a net time saver in the long run.
This whole thread started because people claim that they do exactly what I'm describing. I'm not telling you it happens, they are. Just because you don't doesn't mean others do don't as well.
I've been programming for years and I've had a GitHub account for about as long. Almost every piece of code I've ever written that wasn't for an employer or a school assignment has gone into a public GitHub repository. It goes online because that's what I do. It's the easiest way for me to share code with friends and others, to manage it across multiple machines, etc. There's no reason to put it in a private repository, especially if I'm sticking an open source license with a disclaimer like this attached:
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
That's well and good, but the thing people seem to keep missing is that git != github. Github is first and foremost a social network. You may keep your personal projects there, but they are still public and on a social network, and that means anyone who reads them will judge them.
The question before us is, how do recruiters judge them?, and the answer one has given is he or she looks at style and clarity in code. Others have come back responding that's not fair or relevant, but that's the reality of putting things into the public sphere; you are judged whether you like it or not on terms that you don't get to dictate.
Look at it this way: when you go out and about to meet someone, you might get all gussied up to present yourself in the best way. But when you go to the grocery store, you might not have done your hair and makeup, maybe you might be wearing day old sweat pants. If someone catches your eye at the grocery store when you're looking like a slob, your chances don't improve just because you put your best foot forward last week at the club.
It usually takes a lot of work to get a person to judge your work. Typically if you make a repository public, no one will give a shit. It takes a lot of advertising to produce any interest.
I have a repository with 4500 stars, and hundreds of thousands of visitors. Not one person has ever commented on the quality of my code, but many people contribute. Back when I had 100-200 stars, potential employers were impressed by the popularity and rarely commented on the code either. When I got any comments at all, it would be questions like why did I decide to do something one way and not another. No judgment there either.
Bottom line: nobody will ever judge your code if it's public, unless you work very very hard for it.
If you have a project that you didn't care enough to write cleanly, or even document in the most bare minimum of ways (a helpful README to contextualize the code) then why are you even putting it online?
If I put it online for a different intended audience then the question "how do recruiters judge them?" is beside the point.
I am well aware of the difference between git and GitHub. I alluded to some projects that I don't put on GitHub. Let me be explicit in stating that just because the project isn't on GitHub doesn't mean that I don't keep it in a git repository (or other version control, for certain employers). This has nothing to do with confusing git and GitHub.