With all the fuzz that GitHub’s Copilot has made, I came to realize: I actually need no GitHub account at all! I do have like a dozen repositories with half-baked code that do nothing and it's quite useless. These repos have been there for years: zero stars, zero forks, zero followers, zero PRs, zero issues. Thinking hard I realize the only reason I opened a GitHub account was because everybody else was doing so. I remember how some cool people were sharing their open source projects in GitHub and getting feedback from some other cool people... I wanted that. And so I started to push my code (all my code!) to GitHub. I started to publish my GitHub profile on my CV (I have like 10 years of experience and no one has ever asked me about any of my GitHub projects in any interview).
I came to realize that I don't need a GitHub account in the same sense I don't need Instagram (account deleted a few years ago. Same story: a few dozen photos with zero reaction, zero likes, a few comments). Perhaps it's just that I'm getting older?
On the other hand, I do find really useful that certain projects are in GitHub/GitLab (e.g., redis, logrus, flask, etc.). It does make sense to share these kind of projects with everyone, but my "hello world in Haskell" project? Naah, I won't publish this kind of stuff anymore (that doesn't mean I won't code it!)
Edit: I should have clarified that I'm not talking about using GitHub in an "enterprise mode" (like you use it as a company or individual to actually host the code of the product you are building). It's clear that in this sense it does make sense to use some service that provides all the tooling around git to work in projects.
Maybe your writing an app that deals with some obscure data feed and feeds it into some home automation. Maybe the data comes in a format your language doesn't have a good library for right now. If its easy enough (as github and all try to make it) maybe you publish it as an experimental library for your language.
Someone else looking for that functionality for a work project sees your contribution and either contributes or forks and develops a better tested / maintained version.
If your submitting code for vanity, I can see less use, but a lot of it is public because traditionally Github would charge for private repos... people got used to just making anything that wasn't commercially sensitive open.
I host all my personal projects on either GitHub or GitLab (depending on build pipelines).
The majority of my personal projects are private. I get zero benefit from the "social" coding aspects of either platform.
I use remote git repos to both backup my code and have access to it when needed. For example, I have a fairly large personal project with a complex React frontend. I often pull this up to jog my memory at work when I hit similar challenges at work.
For junior role, it might be helpful to have a Git* presence with clear commit messages/branch history (at a minimum, it shows your ability to use git).
I think it's still worthwhile to share code, because I think it's worthwhile to be able to _read_ code that others have written.
e.g. Making use of a Static Site Generator is by-programmers-for-programmers for fun. If I share my code, someone can copy-paste it and play around with it for themselves.
e.g. Projects with niche use cases will likely never receive many stars, but can still be worthwhile to share. I made a simple keyboard PCB design with KiCad, and shared this. It's nice to be able to see and make use of other designs.
When I read through people explaining how they achieved some solution with whatever tools, ("getting X running with Y on Z"), it's nice if their notes come with code so it's easier to try. -- Repositories like this with notes may not be very popular, but I appreciate that people share these.
Like flossing your teeth and checking the tire-pressure on your car, it can save you frustation down the line.
You might want to refer to a project you worked on 8 years ago. If you don't standardize your workflow, you may never be able to find it amoung the dozens of computers and storage devices you've used over the years.
If you ever work on a collaborative project, the ingrained habit of using a remote repo will help your effectiveness working in a team.
Using a remote repo can also serve as part of a 3-2-1 backup strategy. Not using a 3-2-1 backup strategy? Well... plan on losing hundreds of hours of work some day in the future.
It comes in handy every once in a while.
I suppose it does provide some evidence that you know something about programming, but to be honest I've never thought oddly about somebody who has no Github profile. Talking to them about coding for a few minutes will give you a better idea of that.
So I know a lot of devs who got started using GitHub since it was a seamless way to have an always-on git server to work on labs and homework.
It's called "distributed version control", and it's not (and never was) about stars and social following. Those that look for stars and forks and PRs don't do it in the way Instagrammers do it (at least not as much, there would obviously be some validation and penis-measurement like element), but to build a community around their software.
From a hiring perspective, I might glance at someone's repos if they mention them but it's not really a factor at all.
>Gitea is a community managed lightweight code hosting solution written in Go. It is published under the MIT license.
If you want to collaborate on a git repo, a self-hosted gitea instance is a pretty easy and painless solution.
The major public clouds offer private git hosting as well.
If you want to eschew git servers altogether, you can send and receive git patches via email: https://git-scm.com/docs/git-send-email