Achievements can be a great way to track personal progress, and see how much you have progressed. Furthermore, I think it would be a pretty good motivating factor towards practicing Competitive Programming more.
General outline of achievement tab on user profile
Achievement examples:
[Achievement] + [date obtained]: Reaching Specialist!
[Achievement] + [date obtained]: Reaching Expert!
[Achievement] + [date obtained]: Logging on Codeforces daily for a year!
[Achievement] + [date obtained]: Top 1000 in a Div 2. Contest!
[Achievement] + [date obtained]: Fullsolved a Div 2. Contest!
These are just some rough ideas for achievement functionality.
Conclusion
This is just my suggestion towards an achievement system, so it is probably flawed in a lot of areas, but I just wanted to pitch in my ideas to the community!
Feel free to comment any additions to this idea/flaws about this idea. I am open to any criticism about this.
I would say that this is a good idea. It's motivating to try harder and get such achievements on profile.
and add a feature like Introduction part so that I can write everything about myself :>
i think current bio section is simple and perfect, I would have my stats speak for itself rather than explaining myself (which sometimes make me feel like m on a dating/job_hunting site), and contacts and work relations are already present for anyone to find ones personal side.
Waiting to get an achievement 'How did we get here?')
Reach 2600+ rating and 50+ negative contribution at the same time XD
Sparky_Master goes brrr
Related comment
Sorry for different opinion, but with badges it will look too similar to Codechef. Everybody knows, that if a person is red or yellow, then he is very good at Codeforces. No need additional badges to show it. Simpler the better. Probably winning global contests deserves special sign, likewise in Atcoder, but such persons already are LGMs.
Ah! Please no, the over gamification is why I don't do Codechef
sounds like pretty good idea
Like this idea, but I think only important milestones that requires tons of effort should be taken into account (like reaching GM, 1000 AC submissions, etc.), not something like reaching Expert or Specialist. Otherwise it will really gamify Codeforces and make people grind achievements instead of rating and actual skill.
1000 AC submissions is not a good idea IMO. Would just encourage people to speedrun easy problems or steal others' submissions.
And the milestone for reaching GM is having a red nametag :P
If you make a extension of this I'd happily use it.
I think codeforces is cool as it is. Getting a specialist tag was a great achievement for me and now getting an expert is the next goal. I think these colours are sufficient and cool.
It's just like someone said before. What's nice about Codeforces is the simplicity. I really hate Codechef because of the website design.
I agree but I think adding simplistic achievements is a good way to track progress.
Your profile has it all. Solved problems, rating, ranks
That’s a good point; however, achievements can keep track of certain dates you reached a goal whereas some parts of the profile don’t capture the key dates.
You can track it by yourself.
It's such a great idea i think MikeMirzayanov have to look over this!!
Solve all problems on codeforces — this achievement will be legendary.
On my way.
The codeforces website looks perfect. Simple is much better!