Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Integrating REPL.it Classroom #14736

Closed
Ethan-Arrowood opened this issue May 5, 2017 · 3 comments
Closed

Integrating REPL.it Classroom #14736

Ethan-Arrowood opened this issue May 5, 2017 · 3 comments
Labels
status: discussing Under discussion threads. Closed as stale after 60 days of inactivity.

Comments

@Ethan-Arrowood
Copy link
Member

Integrating REPL.it Classroom Feature

This thread is directly related to the upcoming FCC Python Curriculum. #14588
The focus of this thread is on the core feature of the FCC Python branch, REPL.it Classrooms.

Founder of REPL.it @amasad is willing to work with FCC to better integrate the Classroom feature and we are very gracious for his contributions.

I will paste the applicable comments from the previous thread to this thread below.

Once more information is known I will update this main issue with important information and todos.

@raisedadead raisedadead added status: discussing Under discussion threads. Closed as stale after 60 days of inactivity. enhancement labels May 5, 2017
@raisedadead raisedadead changed the title Integrating REPL.it Classroom into FreeCodeCamp [Discussion] Integrating REPL.it Classroom May 5, 2017
@Ethan-Arrowood
Copy link
Member Author

From @amasad #14588 (comment)

Hey guys, I'm founder/ceo of Repl.it. FCC is near and dear to our hearts so we'll do whatever we can do so we can support here. What are the major hurdles to adopting Repl.it classrooms for this?

From @Ethan-Arrowood #14588 (comment)

The main hurdle we are facing adopting Repl.it into the FCC Python course is interfacing with the Repl.it Classroom unittests. We love the Repl.it Classroom structure of being able to run an independent file with unit tests; however, we cannot figure out how to tell when a user completes the challenge (passes all of the unittests). Of course this behavior is embedded within Repl.it, but in order to keep the feel of the current FreeCodeCamp we'd like to be able to advance the user to the next challenge automatically (or prompt them to do so) once they complete the current challenge ( i.e. successfully pass all of the unittests).
Any ideas on how we could implement this? FCC is written in JavaScript so any sort of web api or npm module would work pretty well.

From @amasad #14588 (comment)

The easiest is that we bake it in. Have a setting on the teacher side of things that says "auto-advance" or something. (We're not against adding webhooks etc, but for the sake of reducing complexity) Would that work?

From @Ethan-Arrowood #14588 (comment)

using an "auto-advance" feature we would surely be able to emulate FreeCodeCamp in a Repl.it classroom, but we still wouldn't be able to track user progress on FCC's end which is pretty crucial to the feel of FCC.

What about a feature that lets us GET/POST data of a 'Classroom'. This way we could do something like:

repl.getUser('classroomID', 'userID').then( () => { // do stuff async }).catch( (error) => { });
repl.getProgress('classroomID', 'lessonID', 'userID').then( () => { }).catch( (e) => { });

Now both of these methods would run on our end, but because the REPL Classroom is embedded via an iframe we would at least need some simple event triggers from REPL's side in order to properly track individual user progress.

Furthermore, because the Classroom would be embedded via an iframe, could we potentially get a feature that when a user completes a lesson the REPL Classroom runs some lines of JavaScript (that we can define via the Teachers portal) so we can get the classroom to communicate with FCC?

We hope to be able to use REPL classrooms for not just Python, but other languages as well. Once the FCC Python Curriculum is up and running successfully we will move on to implement languages like Java or C++ (or literally any language that REPL can offer us to use!).

@QuincyLarson
Copy link
Contributor

@Ethan-Arrowood Awesome - I'll try to set up a Skype call with you and @ginoskotheon so we can discuss your stand alone coding challenge app.

@QuincyLarson
Copy link
Contributor

Please note - we are moving discussion of our Python coding challenges to this new repository: https://github.com/freeCodeCamp/python-coding-challenges/issues

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
status: discussing Under discussion threads. Closed as stale after 60 days of inactivity.
Projects
None yet
Development

No branches or pull requests

3 participants