### bicsi's blog

By bicsi, history, 8 months ago,

Hello Codeforces!

For the past couple of years I have been developing a competitive programming platform that would aggregate solutions from different OJs. It was initially written for assigning tasks for my preparations (and some professors used it in our university for grading students in algorithmic courses).

Recently I have been developing a "ladders" feature, because I wanted to train and realized that this would be the best way to do it. Now, I am excited to say that I have decided to "go public" with this feature and invite you to try it out.

### How it works

Do the steps below:

• Create an account at https://competitive.herokuapp.com
• Go to ladders and start solving problems
• When you start a task, a 2-hour timer starts; you have to solve the task in this time limit
• Tasks that are solved successfully are marked green, tasks that were unsolved are marked red
• You can also see a leaderboard with the best performances for the ladders

I will have a strict policy against griefers. If you do one of the following, you will probably get banned:

• Add a Codeforces/Atcoder/etc. account that is not yours
• Try to mess with the website in any way that would harm the data inside it
• Create any scripts that would mass-create tasks/groups/etc
• Exploit bugs of any sorts
• Please don't lie to yourself and cheat

If I see many of such attempts, I will discontinue the website. If you see someone do this, or get affected by it, please report it by completing the feedback form.

### Other features of platform

I might come back here later to showcase some other nice features that I have been using on this platform. Until then, feel free to explore :). If you have ideas of interesting features, please let me know below :).

### Problems?

Please let me know if you find any problems by completing the feedback form on the website, or by writing in the comments. The website is still in development, and there will be a lot of changes in the future.

• +363

 » 8 months ago, # | ← Rev. 3 →   0 I registered at the site and tried to log in, but it did not let me in and didn't even write an error message. What could be the reason?UPD: You just have to enter your login and not your email. Yep, just right after the @ icon.
•  » » 8 months ago, # ^ |   +8 Same thing happened with me, logging in with the handle solved the problem. It should be fixed thought, at least they should show some error message.
•  » » » 8 months ago, # ^ |   +15 Unfortunately unsuccessful logins don't come up with a message. I will make sure to add a message soon.
•  » » 8 months ago, # ^ |   +11 Thanks for letting me know! If you solve the problem correctly does it register on the website?
•  » » » 8 months ago, # ^ |   0 It registered it correctly
 » 8 months ago, # |   +8 In Ladders, previously solved problems are appearing. It would be better if only unsolved problems are there on the ladder.
•  » » 8 months ago, # ^ |   +3 This is weird, as the algorithm that picks the task should only choose ones which haven't been solved yet. Could you give me more details about what the task was and your username?
•  » » » 8 months ago, # ^ |   0 https://codeforces.com/problemset/problem/1250/J this is the task and my username is amangoel1234. Also, it works only if we submit through the go to task link and not if we submit it from the problem section. This feature would also be helpful.
•  » » » 8 months ago, # ^ |   0 It also happened to me, my task2 was 380C and my username is Nson. I have solved it 3 years ago, maybe you don't get the full history.
 » 8 months ago, # |   0 Is something wrong with the tasks feature? I am just rated 380 and in the task, it gives me a problem to solve of rating 2100. I think its much higher level for me to solve now.
•  » » 8 months ago, # ^ |   +9 Unfortunately, the task recommender is still work in progress, and I've seen that it is particularly bad for beginners. The main reason is that it uses the internal difficulty ratings of the problems instead of the Codeforces one. I will try to see what possible solutions there are, and I am definitely open for ideas :).
•  » » » 8 months ago, # ^ |   0 yes. i also got undirected graph problem from div.1 whilst i'm still a newbie
•  » » » 8 months ago, # ^ |   0 It will be very good if the tasks difficulty will be some more from our rating . It will be not very hard for us . Also thanks for the platform bicsi !
•  » » » 8 months ago, # ^ |   +11 For some reason, at least the first problem the system gives to me is clearly too easy (div2c problem, 1400 rating tag). Should I expect more difficult problems as later problems?
•  » » » » 8 months ago, # ^ |   0 and the first problem that i got has a rating of 2200 :(
 » 8 months ago, # |   +5 hey I wanted to ask how exactly does this tool assign tasks? I mean what is given priority the difficulty of task or the topics it covers?
•  » » 8 months ago, # ^ |   +11 The platform has an internal difficulty system (a not-so-great attempt at rating problems from all judges based on who solved them in this platform). You can see that each task has a number of points, roughly proportional to the expected difficulty. Sadly, this means that even moderately hard problems can get low ratings if they were solved by many users on the platform (as a homework, for example). However, this should at least in practice get better as more and more users enter the platform.The platform looks at the hardest $N$ problems that you have ever solved, and picks a task whose difficulty is in that range. It doesn't look at topics yet, but it is one of my plans for the future.
•  » » » 8 months ago, # ^ | ← Rev. 2 →   +11 I have a suggestion regarding problems rating: Let each user has a rating, and each problem has a rating, then when a user opens his ladder and tackles a problem, it's considered a match between the user and the problem, where the user wins iff he gets the problem within 2 hours, and both of the user's and the problem's ratings get updated accordingly.Of course, this will have drawbacks, because some people may cheat and some people may not be serious enough and just skip the problem. But I think the larger the userbase, the more accurate the ratings will be. Also, some users can be considered trusted users somehow, and then only these users can do rated matches against problems. Also, for CF problems, you can let their initial rating equal to their CF difficulty rating.
 » 8 months ago, # |   +17 Can I get some insights about the word " Personalized "?Tasks should be given according to your level, so if you are good, expect harder tasks to come up in your ladders.I just registered on your website, entered the handles of my profiles (of Codeforces, Atcoder, CSAcademy and Timus), went to the 'Ladders' section and the first problem I got is a Div-1 C 2300 rated problem
 » 8 months ago, # |   +30 You can verify linked accounts through asking the user to submit a Compilation Error code in some specific problem, or changing his first name to a specified string, within a minute.
 » 8 months ago, # |   +1 Why pages are loading slowly?
•  » » 8 months ago, # ^ | ← Rev. 2 →   0 It's due to Heroku free tier service if I am correct.
 » 8 months ago, # |   0 Registered and begin to use, hope your recommendation algo can be better and better
 » 8 months ago, # |   0 After you solve a problem you have to wait about a minute for site to register your solution. I think a button that manually runs check will help.
•  » » 8 months ago, # ^ |   +1 I think another option would be to check for updates more frequently (each 30s, for example) for users and problems that are currently running on the ladder. I would prefer to make extra effort for the platform to be as seamless as possible, rather than commit to having users manually clicking buttons for it to update :).
 » 8 months ago, # |   0 are ladders different for everyone? is it autogenerated?
 » 8 months ago, # |   0 There is an error with problems like that. Url of statements is broken because of space symbol and when I solved this problem site said "Not tried yet".
•  » » 8 months ago, # ^ |   0 It seems to me that the website managed to register submissions for that task, so it might not be that. One thing that I saw with Codeforces Gyms is that if you have Coack Mode activated while submitting for a task, your submission is not public (only you can see it). Check if that is not the case.I changed the time limit of your task to 5h. Try to resubmit without coach mode (if you have it active), and let me know if that works :).
•  » » » 8 months ago, # ^ |   0 I resubmitted my solution without Coach Mode (it was active) and it worked. Thanks!
 » 8 months ago, # |   0 Can you please add a copy button on each test case.
 » 8 months ago, # |   0 I am newbie and first question that I get from personalized ladder(after entering my codeforces account) is a dp problem rated 2400. Should I continue with this ladder or first solve easier problems from somewhere else? or Is it made like this only so that we can learn by solving less number of problems on tougher side rather than solving a lot of problems on easy-medium side. bicsi
 » 8 months ago, # |   0 I think the problem recommendation algorithm is a bit messed up. I have never solved any problem >2000 rating till now but the first problem it recommended me was of 2900 rating.
 » 8 months ago, # | ← Rev. 2 →   0 It is showing an application error when I am trying to access the ladders. : Now it is working fine.