okpy / ok

ok.py supports programming projects by running tests, tracking progress, and assisting in debugging.
Apache License 2.0
333 stars 84 forks source link

Using Ok OAuth Service for CS 61A Project Fair #1333

Closed nalzok closed 5 years ago

nalzok commented 5 years ago

Hi there,

My name is Qingyao Sun and I'm an enrolled student of CS 61A Fall 2018. You can look me up in the system by my email nalzok@berkeley.edu. There is a Project Fair this semester and I'm going to create something cool. I've already shared my plan with Professor DeNero and he seems to like it. While the details of my application don't matter a lot for the purpose of this issue, feel free to read the transcription of our conversation at the end.

So the problem is, I want to base my web application on the top of the existing okpy.org, but currently only staff members can register their application. How can I, as a student, get access to your OAuth Login?

I'm not sure if it's appropriate for you to grant me some staff-level privileges, but I promise you that I'd put them to good use if you do so. Alternatively, could someone please register an application with the client ID of og, and send the client secret to nalzok@berkeley.edu?

Thanks a lot!

Dear Professor DeNero,

This is Qingyao Sun. My partner and I want to have some fun and create something helpful for the Project Fair. One of our plans is to build a code review system base on the existing ok.py service, and we'd like to ask if it sounds like a good idea to you.

From my perspective, passing all tests is never the end of an assignment, because 0 test failure doesn't guarantee your solution to be 100% correct, and in most cases there will be a better way to address the question than yours. While I appreciate the official solutions posted after the assignment is due, they're usually too late. You know, most students won't check out the solution to a problem they believe they've solved several days ago. (Of course, projects are an exception because our diligent TAs will manually review each code line by line!)

Now, what if students can see other's solutions immediately after they pass all ok.py test? I would be really excited, because it can potentially expose an undetected bug in my code, and/or introduce me to a different (though not necessarily superior) way of thinking. Furthermore, commenting under fellow students' code and maybe even argue a little seems quite fun. One problem is that this might facilitate plagiarism in some way, because according to the API reference, we can only check if a student has submitted their assignment, but not how many tests have been unlocked & passed.

I have some previous experience in Flask development, and my partner Yuchi Ma has some talent in designing, so I think it's won't be too much of a challenge for us to implement it. That being said, help from the staff is surely welcome.

Do you think this idea will have some potential? Any comments or suggestions are highly appreciated!

Sincerely, Qingyao Sun.

Yes, that definitely sounds interesting. I'd be happy to share alternative solutions to students who have already submitted a complete solution.

Sumukh commented 5 years ago

Anyone on the course staff can help - but I'll direct this specifically to @itsnshaw

itsnshaw commented 5 years ago

Hi, feel free to email me at nshaw99@berkeley.edu! We can discuss there further

nalzok commented 5 years ago

Awesome. Thanks for your support!