I understand that 2021 has been going on for a long time, but here I have picked up a subset of some of the improvements that the Codeforces team made in 2020. Soon I will publish numbers (no, charts) with statistics for 2020. In the meantime, I bring to your attention a list of changes and improvements.
By the way, this is a decent list. This is about half to a quarter of all changes. It's just that other changes are more often somewhere in the internals of the system and are not visible to users. Please read this list. Each item is the effort of someone from the team. Thanks to geranazavr555, kuviman and cannor147 for their efforts. You've made our platform better! Well, by the way, I don't quit programming and many improvements were made by me.
The items on the list are written in a concise and informal form, many of the items I just copied from commit messages from git. If you want more details — ask in the comments, we will tell you! Of course, I forgot to include some improvements in the list.
- Pypy support improved
- Time factors supported in the judging backend
- g++ 64-bit supported
- Better support of question-problems (files supported, for VK Cup)
- New scheduler of invocations (Polygon)
- Tutorials in contest descriptors supported
- Long long values in scripts and stresses (Polygon)
- Better diagnostics for c++
- Java 11 support
- The better registration process (Polygon)
- Improved performance of web pages in case of huge manual (not generated) tests (Polygon)
- Better display of changes in files (Polygon)
- Supported drafts for almost all textarea tags (Polygon)
- Better PDF for a single problem, fixed olymp.sty (Polygon)
- Improvements in Polygon API (Polygon)
- Search in Polygon by problem or contest ids (Polygon)
- Direct navigation to a specific problem in a contest (in the sidebar) (Polygon)
- Suggestions while you add a user on the "manage access" tab and in some other places (Polygon)
- Better support of languages in resources of contests
- Improvements in "add submission to Polygon" feature
- Now user can forbid invitations to teams from users who are not friends
- Enhancements in spectator ranklists to support the Regional Stage of ROI better
- Now a user can detach a mashup from a parent contest
- Improvements in the display of broadcasts during rounds: now the plain text is used
- Improvements in the filter of gym contests (including a personal list of exclusions)
- Now you can set end time instead of duration while creating/editing a contest
- Likes subsystem, used in EDU
- EDU subsystem is released: actually, a lot of work has been done here, a very big item on this list
- Introduced factors for time limits in mashups (time limits scaling policy)
- Docker support improved (but it is still experimental now)
- Many changes in crowdfunding support
- Notify a user in private messages if the user was invited to a private contest
- Support of announcements (broadcasts) in micro-websites (like m1.codeforces.com)
- Better support of window-contests in gym/groups (for VK Cup)
- Problem ratings have been improved and recalculated
- Standings subpages to filter participants by some criteria (first usage in ICPC Foundation contests)
- Better filter in status (filter by substring in participant name)
- Links to the original problem in mashups
- Feature to change the order of contests in a group
- Show pretest count if OK in status
- Edit all problem indices (letters) at once while editing a contest
- Unfair virtuals detection improved
- Added filters in personal status (list of submissions in a profile)
- Now a user can delete problem in mashup/contest
- Now a user can delete a mashup/contest
- Ratings for new accounts are now calculated differently
- Unrated or non-positive rating users can't use images in comments
- Stream supported
- Now a user can customize the blocks in the sidebar
- Calendar with streams
- Rewrite statements in mashups support
- Option to hide solved problems the archive
- Now Codeforces highlights recent changes in problem statements
- Nerc 2020 challenge support
- Multiple improvements in the interface for problem/contest proposals
Unrated or non-positive rating users can't use images in comments
By "non-positive rating users", do you mean the actual Codeforces rating or contribution points?
Actual rating. In general, this was a measure to limit the abuse of meme pictures in comments from new accounts. In fact, the amount of such content seems to have decreased.
MikeMirzayanov. I would also like to propose one small feature of not letting "non-positive rating users", to post unnecessary blogs from their fake accounts to demean the community guidelines. Thank you !! :)
Yeah there are fake user blogs targeting other users, created solely for belittling them every once in a while. Watching someone pursuing a vendetta against the person they dislike through blogs is kinda disappointing. I mean they're not that frequent but it has happened...
Can you add feature like and dislike to estimate problems?
I hope 2021 is the year Dark Mode gets added!
Yes. I actually installed an extension few months back which allow us to get into dark mode but sadly that dark mode with codeforces was very bad. I hope we get something which is optimised for codeforces and we dont have to get it from other sources.
Upvote if you want MikeMirzayanov to add full test cases view feature on Codeforces ASAP!
It will be very useful if there will be a button "Download" near every test as in Polygon. UPD:
By the way, I upgraded the page with the top posts. Now it also displays the most upvoted comments https://codeforces.com/top
They will mostly be memes XD
So you think it's a meme?
I'm waiting in 2021 a new style of Legendary (first digit of score and first letters of level name also are black)
Maybe a new level Legend of Legendary Grandmasters for Tourist
And for me ;+)
I suggest creating a new level starting from +4000, and I am sure that the tourist will reach it someday!
Only if I knew even half of the things mentioned above.. anyway, good work Mike.
May I request a feature for the forum side: create some sort of streamlined process for reporting cheating so that people don't have to create new blogs every time. This can be as simple as a Google form. Then, people who care can report easily, and people who don't care won't see the sidebar flooded with cheating blogs. I see this as a win-win for everybody.
It would be great If codeforces can include the feature "Performance rating"
Add the features where users can see their expected rank in the upcoming contest for delta change to be 0, according to the previous performance.
I think something like the extension CF-Predictor but built in with Codeforces would be really useful. It's basically something that shows your expected rating change during a contest.
I hope to see the "hiding problem tags without hiding problem difficulty" feature in 2021
Custom test section can be improved, so that it is possible to upload huge input files, and download the output generated.
Time factors supported in the judging backend
Does this mean that slower languages like Python would have a multiplier to the allowed time limit?
Yes, you can enable that in your mashup contests.
Add a new link (BLOGS) to the menu , containing all the blogs ranked by number of votes!
There are some important blogs that not everyone sees and disappear!
Add a feature to sort comments, sometimes the number of comments is very large!
So what are the new rules ?
In the past, ratings were 1500 for new users, but now ratings are 0 for new users. In fact, as far as I know, new users will gradually get the 1500 rating points in the first several contests.
The larger test cases cannot be viewed completely on the site, maybe a 'difference' button that shows exactly which test case caused the WA,RTE or TLE would help. Even letting us download the test cases as txt file will be fine. Thanks for your efforts.
Great work, Codeforces team! There's a lot that goes behind the curtains, and it's great to get a glimpse of that.
Also, in the spirit of sharing some constructive suggestions, I'd like to suggest one as well: Support for viewing/downloading a test case
By default, you could just show what's there right now (just the first few lines), but give the user an option to download that specific test case as a text file.
I can say for certain that this is the biggest usability issue for me and likely many other codeforces users, and resolving this will greatly enhance our user experience.
As there is an option Hide Solved Problem in Problemset, so include something like Show only Solved Problems .Sometimes I have to search a lot for any solved problem .
I would like to add a feture: Any user can see who added him as a friend. I mean, Everybody can see who added him as a friend.
I wonder who add me to their friend lists, too. Not knowing their identities hidden behind the "friends" number gives me a bad feeling :-(
I am waiting for Dark Mode to appear in CodeForces . :)
I think it would be helpful if all problem object in api contains an unique id and contest object contains list of all problems ids or any other method that allows you to identify shared problems between div1 and div2 so that you can get full problem list for both contests and identify shared problems that had been solved by user in either in div1 or div2. Possible use case: I was creating this (if you're visiting the website press refresh button on the menu to load data) website (It is still under construction). As problems list for shared problems between div1 and div2 only contains from either division I couldn't populate both div1 and div2 rounds. Also if a user submitted a problem in div2 and there's a same problem in div1 there's no way to identify that they solved it and if they submitted in both division it will always double count. So I think any method of identifying shared problems between contests would be helpful for me in this regard and for many others who experimenting with the api. Thank you.
Whatever happened to the new logo, the colored version of the new logo looked great and was hoping to see it:(
Can't the plagiarism checker of codeforces be improved MikeMirzayanov? I see many queries about cheating in contests and not getting caught by changing variable names. THIS THINGH REALLY NEEDS TO BE STOPPED!.
can you pls add something that allow users to change their handle lol
The ability to change handles is added every year for a short time at the beginning of the year.
need an API for all GYM problem list and already solved gym problem list for an user MikeMirzayanov
Dark Mode Should be added.
This is very nice feature, we can roughly judge how strong the pretests are how likely it is for the code to pass main tests.
Pypy support improved
That sounds awesome!
Would be great if you could let us know in brief what's new with Pypy now!
Tirelessly thank you team and Pashka for the EDU section.
Something needs to be done for plagiarism too, many people just change the variable names to not get caught!!!
In codeforces mobile, the top bar (mobile-toolbar, image below) disappears when my mobile is rotated to landscape / horizontal. It is caused by
mobile.css:40. Can you please remove / increase this limit? That top bar is pretty useful in mobile.
lmao , you have commented this on your code
and now look at you, how you are crying .
really hope we can copy the WA test case when debugging, some of them are too long that i have no idea what to change
yeah!! or downloading the input file. some graph/string problems always have some big input that don't fit on the testcases that they show....