20,000 isn't just a random number it's also the last level in which you get more editing powers. At 20,000 points you're considered a "trusted user" and you can:
- edit any question or answer (2000 points)
- cast close and reopen votes (3000 points)
- delete questions (10,000 points)
- protect questions (15,000 points)
- edit tag wikis at will and more (20,000 points)
Check out the full list of privileges.
How to get that many points?
Some people suggest posting quality answers, monitoring the frontpage, etc. All of that takes a lot of time and effort, here's how I did it:
Ask and answer basic questions
My top answer earned me over 5,000 reputation by itself. The question was "What is the difference between Public, Private, Protected, and Nothing?".
Join Stack Overflow early
This is the single most important reason why I have so many reputation points. I'm user #810, I joined over 7 years ago during the private beta. Why is joining early so important? Because the easy and very common questions were not yet asked and answered in addition to having low competition with others. My top questions and answers were all asked and answered in 2008 or 2009.
Since 2014, I've barely participated, I've used the answers of course, but didn't ask any and only answered a few in the last year. Yet, my top answers kept giving me points as new users started programming and searching for the same basic questions.
If I had to start over today (assuming I want the points), I would probably do a combination of those:
- answer simple questions with short answers and edit later
- ask and answer my own questions
- check the frontpage for ~2 minutes 2 or 3 times a day
Why is that a problem?
I don't feel like my reputation score represents how useful I am to the community. The bulk of my reputation comes from answering basic programming questions (evergreen questions if you will) before others were able too. Anyone could've answered them, yet I've been rewarded with tons of privileges because I was first. On the other hand, some of my most thought out answers barely gave me any points.
Stack Overflow rewards the wrong behavior in my opinion. It encourages ignoring complex questions, answering a question quickly with a short answer and editing it later to add more information or formatting. Most of all, it rewards long time members over currently contributing users who will have to work way harder than I did to get to the same amount of privileges than me.
Stack Overflow is an amazing resource but I think it's reputation and privileges system should be tweaked to encourage activity (maybe consider only points earned for recent questions and answers for privileges). Sometimes I wonder how Stack Overflow would've turned out without gamification. I think I would've contributed even without the promise of getting points. Also, the reputation is a good way to slowly introduce users to more tools, but it loses its usefulness after the low hundreds.