-
Notifications
You must be signed in to change notification settings - Fork 0
Admin Section
What is a category?
A category is a field a registrant wants to specialize in, E.g. Front End. In their registration process, registrants will choose the category they wish to specialize in. Tasks will be assigned to them only from the chosen category. More about tasks -> later.
Go to Admin -> Category Manager. You'll see a list of categories there.
To create a new category, hit the Add Category button. You'll see a Name and a Status field.
Statuses are divided into 3 types - Draft, Published and Disabled.
- Draft categories are usually new ones and you'd like to add tasks to them before publishing. Draft categories cannot be chosen from other registrants. It is recommended you choose this status for new categories.
- Published categories can be chosen from other registrants. Once you've added tasks to the category, you could publish it.
- Disabled categories are ones that you'd like to exclude from the queue. Registrants cannot choose disabled categories.
No game changers will happen if you create a category with a Draft status. So you could freely add as many categories as you'd want and publish them only when they are ready.
As far as deleting goes, only draft categories that have nothing assigned to them can be deleted. Published categories can be disabled, which means they won't be available for new registrants. They cannot be deleted though since there probably will be information in the database about previous registrants that have filled in their tasks on the given category.
What is a Task?
A Task is a "TO DO", something you ask the registrant to do. Example - read these 5 articles about front end.
Go to Admin -> Task Manager. To create a task, hit the Create Task button. There are several options there:
- Category - choose the category you wish to assign the task to.
- Title - this is the name of the task, e.g. Reading.
- Description - explanation containing everything you wish the user to do.
- Estimation - how much time would the user need to fulfill the task in hours. E.g. - 4.
- Enabled - is the task enabled for selection. If it is enabled, it gets appended to the chosen category and new registrants will get this task assigned if they choose the same category.
- One thing to note - if the task doesn't have an assessment attached to it, it won't get assigned because it's marked invalid. More about this later.
- Assessment Type - how the task will be examined at the end. More about this later.
That is how you create a task.
Reviewing tasks - on the same screen, we have a category dropdown. Once we choose a category from it, tasks from the same category will show up on the screen.
If we wish to view / update a task, we click on it's title.
Now let's examine a situation where you've created a category - Front End - and have assigned 5 tasks to that category. Two users have registered and chosen Front End as their category - all 5 tasks get assigned to them. All's good.
But now we wish to update one of the tasks for some reason. We wish to add something extra to the description because we don't feel we're getting the value out of the task. Or we've figured the estimation is too low and users can't cope with it in time.
Okay, we can do this - but since these 5 users have already started working on those tasks, it would be quite confusing to change their estimation / description / something else while they are working on it. We know how frustrating it is the task you're working on to get changed halfway through as well.
So when we're updating the task, the update will apply only to new registered users. The old ones will keep their tasks as they are while new ones will have the updated tasks.
This is done behind the scenes so you don't have to worry about it. This is a brief explanation on how the system works so you don't get confused while updating tasks.
So, to conclude, we've updated task number 4 in our system. A new user registers - he gets that tasks. Old users keep the previous one.
Tasks cannot be deleted - they can be disabled. Once a task is disabled, it doesn't get assigned to new users. Old users will keep working on it.
What is an Assessment?
An assessment is a exam / test at the end of the task. It's a way to confirm that the user has finished his task successfully.
There are three assessment types:
- Answer to a question - we give the user a question and he has to answer it, it's as simple as that.
- Micro Project - we give the user a mini project to complete. He has to offer a repository.
- Exam - we give multiple questions to the user A-B-C-D format. User passes if all of his answers are correct.
As we discussed, the assessment type is chosen when you create the task. Afterwards, you need to create the assessment.
Go to Admin -> Assessment Manager. You'll see a task dropdown. Select the task you wish to create an assessment for.
A form appears depending on the assessment type you've chosen for the given task.
- Answer to a question and Micro project have a description textarea. You'll only need to fill in the question / project that the user will have to complete at the end of his task.
- Exam is a little bit more complicated.
- Each exam can have as many question as you need.
- Each exam has one correct answer and three wrong answers.
- Each exam has an explanation field on why is this answer correct. We display the answer to the user after his submission because the point of the project is to educate the registrant as well, not only test his skills.
After completing the form and saving, the task has a legit assessment and, if enabled, will be safely attached to new registrants who've chosen the same category.
Updating assessments is handled the same way updating tasks is. If an assessment for a given task is a micro project and 5 users are already working on it, changing the assessment won't affect their work. Only new users will receive the new version -> you could freely swap the whole exam of a task and it won't affect current users, they will have their old copy to complete.
What is a Submission?
A submission is the result of "Answer to a Question" or "Micro Project" assessment type of a single registrant. After a registrant completes his assignment, it's up to the admin to check and approve it.
Go to Admin -> Submission Manager. Choose a category from the dropdown. All submissions from that category popup. Select a submission to view it's details.
On the single submission screen, you'll see the question and the answer to it. Afterwards, it's up to you to Approve or Deny it.
- Approving means the task is labeled successful. The registrant receives an email with congratulations.
- Denying means the task is labeled unsuccessful. The user needs to do his assignment once again ( Be kind and don't do this often ).
That's all there is to it.
The bonus section is where users gain extra experience points.
Wait, what? Experience points?
Yes, each task earns the user experience points. The experience points earned are 10 points x task_time_estimation + 2 points extra bonus if the task is finished on time. ( Kalo is a skinflint, that's why only 2 points bonus. )
So this is pretty straightforward and doesn't require us to do a thing.
BUT... users can gain extra experience points by submitting something extra:
- Public Activity - has the person been a lecturer, does he write articles about the sphere he's interested in or has he helped someone / somewhere ( helping getting someone drunk doesn't count )
- Stack Overflow Account - let's see his reputation.
- Contributions - Has he contributed to an open source project.
- Side Project - does he have a project, small or big, that he runs in his free time.
It's the admin's job to reward users with extra experience points if they've submitted something of the kind in this section ( Admin -> Bonuses ).
The maximum experience you could reward an user is 40. Don't worry, if you input more by mistake, the back end reverts it back to 40 ( I'm not saying the front end is unreliable... but thank God there's back end. )