Someone should compile this against each country population number.
Would be interesting to get an approx number of coders per 1000 people in each country.
And then perhaps run it against natality rates.
This list has a unique non-development related factor which is that you have to have a minimum number of followers (varying from country to country) so you might be very active and contribute much more than most of the people on the list but do not have the minimum followers required (38 in your country) so you are out.
Heh, my collegue is in top 200 for Russia, which doesn't sound right either (he's not that active).
P.S. Oh, it says, "You need at least 52 followers to be on this list". He gives lectures at a uni and does code reviews via Github - I guess most of the followers are his students.
> Would be interesting to get an approx number of coders per 1000 people
Isn't everyone a coder? You are going to be exposed to it at school, if nothing else. Which, assuming the numbers bear any reflection to reality, is what I expect a lot of the accounts to be (that is, students).
But as far as those who do it professionally, as of November 2022, Statistics Canada reports 301,875 people under "Computer, software and Web designers and developers". There were 2.1 million GitHub accounts in that year.
Fake profiles generated for spam or seo purposes is probably some notable percentage. Either accounts made to spam actual repos, or satellite properties like github pages. In the latter case, the accounts might open issues/comments/etc on github repos to create some link profile for seo purposes.
Doesn't look right for Russia either (3 mln accounts). According to government statistics, Russia has ~820k programmers as of 2023, and from my experience, not all of them have a Github account (I do job interviews).
I end up with a new account at every gig I work. I don't even remember them all. Maybe this is bad practice on my part, and I should be shutting them down when a job ends, but I just like the separation of personal vs. work accounts.
i actually think it is good practice. if there is any issue with the gig, they eg try to force you to hand over access to the account, or someone is breaking into your github account then you don't expose all your other work.
there may be an issue with github TOS not allowing more than one free account per person though. i don't know if that is still the case, but then i would get a paid account for each paid gig and just add it to the bill.
Regardless of whether they allow it or not I know a lot of people with two personal accounts. One "professional" real name account that they list on their resume and another "anonymous" account with a screen name where they work on projects they don't want to be directly attributed to.
it is worth noting that in a conversation i had with a github employee regarding this issue that they were sympathetic to this situation. to be fair, a work account should really be paid for by the company. so i think github is going to tolerate this because they should really go after the company not individual users in that case.
I have "me at home" and "me at work" accounts, I don't generally create a new at-work account for each job. Maybe I should.
I've been trying to do more hobbyist work in public repos. It's not like there's a Greek chorus waiting to pounce on every mistake. Truth is, nobody cares.
It's freeing, in a way, because "I'll publish it when it's done" actually means "I'll never publish it at all".
Yeah, it's sometimes even hard to make code owners look at the complete feature PR to their codebase. There's 99.9% probability that 100% of 'geeking out' on github in public repositories will never be browsed by anybody.
I also find having some public activity on my gh to give me an ability to include it into the resume. It's a good conversation starter for many people from my experience.
Remember, for most starting developers (which is almost all developers), a GitHub account is an essential part of their job search, just like having a LinkedIn account.
And then at a lot of companies you get a separate GitHub account because companies do not really want to deal with your personal account, they want to manage it to enforce 2fa, to be able to disable it when you leave (as if it mattered), and so on.
I've been a UK developer for 50 years. I've never had a Github account. I doubt I'm unique, nor even unusual. I don't participate in any Github-hosted projects (which usually means open-source). I happen to dislike git.
It stands to reason that Github would want to promote the notion that you can't be a real developer unless you're on Github.
You can't generalize from "number of Github accounts" to "number of developers".
No, I don't. TBH, I don't really know what it would mean to generalize "I doubt I'm unique, nor even unusual". Would that be something like "I doubt anyone's unique, nor even unusual"? I certainly didn't say anything like that.
the claim that you are not unusual is blatantly you generalising from your own experience! You didn't even bother with the figleaf of "and I know many others like me"...
> is blatantly you generalising from your own experience
It's not. "Generalising" means taking an individual observation, and drawing conclusions about all cases (or a large class of cases). I think you're saying that "I'm not unusual" is a canonical example of generalization, i.e. claiming that my case applies to a large class. But I didn't make that claim.
It's possible that my observation was wrong - that I am unusual. But that would mean that the majority of my recent colleagues were also unusual, because I don't think more than a tiny fraction of them had Github accounts.
Given a specimen case, and absent evidence to the contrary, it's a mistake to suppose that specimen case is unique or unusual. It's much more likely to be common. And if you discover similar cases, then it's definitely not unique, and unlikely to be unusual.
But I think this is litigious point-scoring; I say that having a Github account is not a good discriminator for "software developer". If you disagree, please explain why, instead of claiming that I contradicted myself by saying I wasn't generalising in a post that contained a "blatant generalisation".
[Note: I'm a brit, trying to transition gracefully from "-ise" to "-ize"; I'm having trouble internali[zs]ing the rules.]
I'm retired now. I spent most of the last 10 years of my career working for web-shops, mainly making Drupal-based websites using custom modules. This is the kind of work that the majority of developers do; it's not unusual, it's the norm.
[Edit] Just noticed that the commenters above that seem to agree that I'm unusual, are all different commenters. I'm puzzled that people think I'm unusual, even to the point of asking about the work I do/did. But the sub-conversation is about Github; I presume that most of these commenters is a Github user, who works in Githubby environments, and so is exposed to a lot of Github users.
I'm really not very unusual; I'm just an opinionated graybeard old-fart software geek, like a lot of us. We all have strong opinions about what software we're prepared to try to cooperate with.
I found git over-complicated, and Github quickly became like a cross between LinkedIn and a sort of Facebook for coders. I never trusted it at all.
I agree with Git being overcomplicated, and the commands being a semantic mess, although they have improved somewhat over the years. I also didn't like how Github became some defacto self promotion thing. However, very few developers now don't use github to some degree in my experience (UK), bearing in mind so many new developers are/were being created each year compared to the past the more seasoned developers are becoming a vastly diminishing percentage.
I was born in 93. In 2000s all of my then web-deving with html/php was without even an awareness of something like version control. I was storing snippets of code in .txt files in case my change (often made directly on the FTP server) was to crash everything. Of course, this was just a hobbyist environment, I was a teen running some small personal communities. Then, I stopped programming for years and when returned around 5 years ago `git` was basically everywhere. Now, after working in "professional environment" with software development, I don't imagine running any project without some version control when more than 1 person is involved.
What were you using for version control, how did that work between programmers committing to the same new feature?
I started with CVS. I had been aware of sccs from an early Unix training course, so I knew how diffs worked, but I never used a VCS until I needed CVS. Later I switched to Subversion, which I think is pretty good, for my use-cases. Subversion flags a conflict if your commit against rev1.1 is submitted after another commit to the same file, but against rev1.2. You have to figure it out yourself, or grab rev1.2 and redo your changes. Git has lovely features for dealing with conflicts, much better that Subversion. But in practice, in a team of (say) three working on a feature, and communicating well, conflicts are rare, and easily resolved.
I should have been using revision control since the early days, of course; but I don't think many of us did - it required more storage, and floppy disks weren't cheap.
[Edit] Perhaps I should note that for a time, I had to work with Microsoft's Visual Sourcesafe, over Frame Delay, to a repository across the Atlantic. Those were bad times.
I recently noticed many github accounts which only seem to contain solutions for exercises in a programming courses, iirc most from from india.
This seems to match this survey.
My 2 cts, probably this just shows countries where schools prefer to use github over their own infrastructure, or else students being creative in sharing their solutions outside of school.
Yes, but Americans are normal people and thus not suspicious. Those Indians however, something's up with them, can't you just feel it? They haven't even invented schools yet (British forgot to teach them how to do that), so why would they have assignments? Very shady, if you ask me.
Take for example, you have a million engineers in the UK, you have 100 in Pakistan. Year after year, you add 100 more engineers in Pakistan, and 100,000 in the UK.
Pakistan is the "fastest growing" in this situation year after year after year, but it will never catch up with the UK.
I wonder how good GitHub is at detecting spam/fake accounts... from my experience those type of accounts are created from some of the countries GitHub says are increasing.
Also there's been an increase in ChatGPT spam comments on GitHub.[0] The goal seems to be faking account activity to make the accounts seem legit, so I wouldn't trust active user numbers too much.
I would personally like to see LOC / capita. As much as it's not a good metric to measure dev productivity I think it would be useful here to show real engagement
My first commits were done by my friend to get free T-shirt from Hacktoberfest. So, filtering out accounts with less than 3 stars might be a decent criteria.
There's an old aphorism about not comparing percentages and/or numbers with different denominators.
It could be YouTube's algorithm making me think there's a trend where none exists, but it feels like this point is being brought up in more refutations of late, which I take as a good sign of some modicum of sanity returning.
Anecdata: My experience when asking others around my region (mid-southern US, not quite Midwest) is that no one ever looks at that kind of thing. If they do look, they look at the projects being made and how your methodology / way of thinking handles a situation, not how active the profile is.
73 comments
[ 2.7 ms ] story [ 240 ms ] threadGithub list they used as a source : https://github.com/github/innovationgraph/blob/main/data/dev...
I am #381 in Finland, which is weird, because all I do is occasionally adjust my home automation.
I don't know where they get the user data from, but it's definitely incomplete.
P.S. Oh, it says, "You need at least 52 followers to be on this list". He gives lectures at a uni and does code reviews via Github - I guess most of the followers are his students.
Isn't everyone a coder? You are going to be exposed to it at school, if nothing else. Which, assuming the numbers bear any reflection to reality, is what I expect a lot of the accounts to be (that is, students).
But as far as those who do it professionally, as of November 2022, Statistics Canada reports 301,875 people under "Computer, software and Web designers and developers". There were 2.1 million GitHub accounts in that year.
Unless there are people out there with huge numbers of accounts? Can anyone explain this?
I suspect spammers using GitHub to host their spam, as well as inaccurate geolocation e.g. due to VPN usage.
-- There must be some throttling for heavy use. Otherwise it would explode.
Looks like it spiked as high as 10% of all advertised jobs in 2022. Even though 80%+ of the UK economy is services I still find that impressive!
there may be an issue with github TOS not allowing more than one free account per person though. i don't know if that is still the case, but then i would get a paid account for each paid gig and just add it to the bill.
it is: https://docs.github.com/en/site-policy/github-terms/github-t...
I've been trying to do more hobbyist work in public repos. It's not like there's a Greek chorus waiting to pounce on every mistake. Truth is, nobody cares.
It's freeing, in a way, because "I'll publish it when it's done" actually means "I'll never publish it at all".
I also find having some public activity on my gh to give me an ability to include it into the resume. It's a good conversation starter for many people from my experience.
Remember, for most starting developers (which is almost all developers), a GitHub account is an essential part of their job search, just like having a LinkedIn account.
And then at a lot of companies you get a separate GitHub account because companies do not really want to deal with your personal account, they want to manage it to enforce 2fa, to be able to disable it when you leave (as if it mattered), and so on.
?
But you have take into account that ~37% of households in Brazil have no internet access or computer.
I would guess that less than 2% of Brazilian population even knows what GitHub is.
It stands to reason that Github would want to promote the notion that you can't be a real developer unless you're on Github.
You can't generalize from "number of Github accounts" to "number of developers".
> I doubt I'm unique, nor even unusual.
Yet, you do.
No, I don't. TBH, I don't really know what it would mean to generalize "I doubt I'm unique, nor even unusual". Would that be something like "I doubt anyone's unique, nor even unusual"? I certainly didn't say anything like that.
It's not. "Generalising" means taking an individual observation, and drawing conclusions about all cases (or a large class of cases). I think you're saying that "I'm not unusual" is a canonical example of generalization, i.e. claiming that my case applies to a large class. But I didn't make that claim.
It's possible that my observation was wrong - that I am unusual. But that would mean that the majority of my recent colleagues were also unusual, because I don't think more than a tiny fraction of them had Github accounts.
Given a specimen case, and absent evidence to the contrary, it's a mistake to suppose that specimen case is unique or unusual. It's much more likely to be common. And if you discover similar cases, then it's definitely not unique, and unlikely to be unusual.
But I think this is litigious point-scoring; I say that having a Github account is not a good discriminator for "software developer". If you disagree, please explain why, instead of claiming that I contradicted myself by saying I wasn't generalising in a post that contained a "blatant generalisation".
[Note: I'm a brit, trying to transition gracefully from "-ise" to "-ize"; I'm having trouble internali[zs]ing the rules.]
[Edit] Just noticed that the commenters above that seem to agree that I'm unusual, are all different commenters. I'm puzzled that people think I'm unusual, even to the point of asking about the work I do/did. But the sub-conversation is about Github; I presume that most of these commenters is a Github user, who works in Githubby environments, and so is exposed to a lot of Github users.
I'm really not very unusual; I'm just an opinionated graybeard old-fart software geek, like a lot of us. We all have strong opinions about what software we're prepared to try to cooperate with.
I found git over-complicated, and Github quickly became like a cross between LinkedIn and a sort of Facebook for coders. I never trusted it at all.
I was born in 93. In 2000s all of my then web-deving with html/php was without even an awareness of something like version control. I was storing snippets of code in .txt files in case my change (often made directly on the FTP server) was to crash everything. Of course, this was just a hobbyist environment, I was a teen running some small personal communities. Then, I stopped programming for years and when returned around 5 years ago `git` was basically everywhere. Now, after working in "professional environment" with software development, I don't imagine running any project without some version control when more than 1 person is involved.
What were you using for version control, how did that work between programmers committing to the same new feature?
I started with CVS. I had been aware of sccs from an early Unix training course, so I knew how diffs worked, but I never used a VCS until I needed CVS. Later I switched to Subversion, which I think is pretty good, for my use-cases. Subversion flags a conflict if your commit against rev1.1 is submitted after another commit to the same file, but against rev1.2. You have to figure it out yourself, or grab rev1.2 and redo your changes. Git has lovely features for dealing with conflicts, much better that Subversion. But in practice, in a team of (say) three working on a feature, and communicating well, conflicts are rare, and easily resolved.
I should have been using revision control since the early days, of course; but I don't think many of us did - it required more storage, and floppy disks weren't cheap.
[Edit] Perhaps I should note that for a time, I had to work with Microsoft's Visual Sourcesafe, over Frame Delay, to a repository across the Atlantic. Those were bad times.
I recently noticed many github accounts which only seem to contain solutions for exercises in a programming courses, iirc most from from india.
This seems to match this survey.
My 2 cts, probably this just shows countries where schools prefer to use github over their own infrastructure, or else students being creative in sharing their solutions outside of school.
Take for example, you have a million engineers in the UK, you have 100 in Pakistan. Year after year, you add 100 more engineers in Pakistan, and 100,000 in the UK.
Pakistan is the "fastest growing" in this situation year after year after year, but it will never catch up with the UK.
Well, overpopulation would balance the scales eventually.
Also there's been an increase in ChatGPT spam comments on GitHub.[0] The goal seems to be faking account activity to make the accounts seem legit, so I wouldn't trust active user numbers too much.
[0]: https://github.com/orgs/community/discussions/37117#discussi...
0 t0 1: infinite % growth
1 to 2: 100% growth
10 to 11: 10%
100 to 101: 1%
“Fastest growing” often means “smallest starting number.”
It could be YouTube's algorithm making me think there's a trend where none exists, but it feels like this point is being brought up in more refutations of late, which I take as a good sign of some modicum of sanity returning.
I've been programming for 20 years and very little of that shows up on any public or private github repo.