GoChallenge / gochallenge

Go Challenge web application for participants
13 stars 3 forks source link

Web app #3

Open IndianGuru opened 9 years ago

IndianGuru commented 9 years ago

As and when we decide to start building the Go Challenge web app, I think we should stick to: a. the net/http package b. the html/template library c. the Gorilla web toolkit - http://www.gorillatoolkit.org/pkg/mux

Avoid using any golang web frameworks.

Thoughts?

unknwon commented 9 years ago

What is this web app for? Submit solution and run automated go test? See final results?

theonejb commented 9 years ago

Yes, all of those and maybe more. The exact features required are still under discussion.

As an example of the kind of tool we're looking at, see exercism.io.

unknwon commented 9 years ago

@theonejb , thanks!

morhekil commented 9 years ago

I think we should probably this part into two sub-issues. The website will really consist of two parts - the one with the actual web pages (which is what we should probably call the website), and the API to support the CLI tool (fetch the challenge / submit the solution).

Given that this ticket begin with templating and related stuff, I suggest to keep it focused on the website part only, and move API discussion out into another issue.

On the website side of these things, I'd like to propose the following use cases / features as the minimum viable implementation:

  1. Users should be able to sign up via Github, have their profiles created and tokens issued.
  2. Users should be able to manage their profiles (at least reissue the token, as a security consideration).
  3. There should be a public list the challenges, with the focus on the latest/current one - to not duplicate the related code, I think we should probably just expose the appropriate data through our API, so that this website becomes one of API clients (together with the CLI tool).
  4. There should be some users with "evaluator" (?) privilege, who should be able to see and download other users' submissions.

Anything else I'm missing that is critical? Things like automated go test etc are nice to have, but I don't see them as being critical on day one - let's get something off the ground first and iterate.

Maybe if someone from the crowd of current evaluators could chip in, and share some thoughts on what are (if any) the main pain points or time wasters right now, so we could put some focus on that?

idawes commented 9 years ago

Looks like an excellent starting list.

On Tuesday, March 10, 2015, Oleg Ivanov notifications@github.com wrote:

I think we should probably this part into two sub-issues. The website will really consist of two parts - the one with the actual web pages (which is what we should probably call the website), and the API to support the CLI tool (fetch the challenge / submit the solution).

Given that this ticket begin with templating and related stuff, I suggest to keep it focused on the website part only, and move API discussion out into another issue.

On the website side of these things, I'd like to propose the following use cases / features as the minimum viable implementation:

  1. Users should be able to sign up via Github, have their profiles created and tokens issued.
  2. Users should be able to manage their profiles (at least reissue the token, as a security consideration).
  3. There should be a public list the challenges, with the focus on the latest/current one - to not duplicate the related code, I think we should probably just expose the appropriate data through our API, so that this website becomes one of API clients (together with the CLI tool).
  4. There should be some users with "evaluator" (?) privilege, who should be able to see and download other users' submissions.

Anything else I'm missing that is critical? Things like automated go test etc are nice to have, but I don't see them as being critical on day one - let's get something off the ground first and iterate.

Maybe if someone from the crowd of current evaluators could chip in, and share some thoughts on what are (if any) the main pain points or time wasters right now, so we could put some focus on that?

— Reply to this email directly or view it on GitHub https://github.com/GoChallenge/gochallenge/issues/3#issuecomment-78021919 .

sreejithr commented 9 years ago

How about having an online code editor? Something roughly like the Go Playground or any one of the 'n' coding competition websites out there.

For an evaluator, he can read & run the submission code and jump rapidly to the next submission without having to download a .tar/.zip file to their machine. It should also be able to profile the code.

Might be an overkill for a user though. And there might be issues with external package dependencies.