======================= Configuring the Project ======================= If you are the owner of a project, you can configure it using the web interface. When you are the owner (also an administrator of the PyBossa server) a new link in the left local navigation bar of the project will appear with the name **Settings**. .. image:: http://i.imgur.com/IiB0sMG.png :width: 100% The **Settings** page will give you three basic options: #. :ref:`project-details`: here you will be able to change the name of the project, the description, icon, etc. #. :ref:`task-settings`: this button will open the :ref:`task-settings` page where you will be able to configure the :ref:`task-scheduler`, change the :ref:`task-priority`, modify the :ref:`task-redundancy` and :ref:`delete-tasks` and its associated task runs (also known as answers). #. :ref:`project-delete`: if you click in this button you will be able to completely remove the project from the system. A big warning message will be shown before allowing you to delete the project. .. _project-details: Edit the project details ============================ In this section you can change the following parameters of your project: * **Name**: the full name of your project, i.e. Flickr Person Finder * **Short name**: (also known as *slug*) the string that will be used to access your project, http://server/project/short_name. * **Description**: A **short** description of the project, e.g. *Image pattern recognition*. By default, it will have been autogenerated for you from the **Long description** you filled in the previous step (but without the Markdown!). * **Long Description**: A *long* description where you can use Markdown to format the description of your project. This field is usually used to provide information about the project, the developer, the researcher group or institutions involved in the project, etc. * **Allow Anonymous Contributors**: By default anonymous and authenticated users can participate in all the projects, however you can change it to only allow authenticated volunteers to participate. * **Password**: If you want to control who can contribute or access to your project, you can set a password here to share with those you allow to do it. If you leave it blank, then no password will protect your project! * **Category**: Select a category that fits your project. :ref:`categories` are added and managed by the server :ref:`administrators`. * In addition, you will be able to select and upload an **image** from your local computer to set it as the project image thoroughout the server. .. image:: http://i.imgur.com/DH8Qa8c.png :width: 100% .. _`Markdown`: http://daringfireball.net/projects/markdown/ .. _task-settings: Task Settings ============= The *Task Settings* is only accessible for the project owner and server administrators. The page can be reached via the **Settings** menu, but also from the **Tasks** link in the left local navigation bar. .. image:: http://i.imgur.com/znVy3ON.png :width: 100% The page shows four different blocks: #. **Task Scheduler**: this block allows you to specify how the project should send tasks to the volunteers. #. **Task Priority**: this block allows you to change the priority of the tasks. #. **Task Redundancy**: use this block to change the default number of answers (30 by default) that you want to obtain before marking a task as completed. #. **Delete Tasks**: this final block allows you to flush all the tasks and its associated task runs (answers). .. _task-scheduler: Task Scheduler -------------- PyBossa provides different task scheduler that will send tasks to the users in very different ways. .. image:: http://i.imgur.com/1KeSido.png :width: 100% Default or Depth First ~~~~~~~~~~~~~~~~~~~~~~ The Default task scheduler (also known as Depth First) has the following features: #. It sends the tasks in the order that were created, first in first out. #. Users (anonymous and authenticated) will only be allowed to participate once in the same task. Once a user has submitted a Task Run (or answer) for a given task, the scheduler will never send that task to the same user. #. It will send the same task until the :ref:`task-redundancy` is achieved. In other words, if a task has a redundancy value of 3, the task will be always sent until those 3 answers have been submitted. Once the 3 answers have been collected, the task will be marked as *completed* and it will not be sent again. #. When a user has submitted a Task Run for a given task, the scheduler will send to the same user the next task. In summary, from the point of view of a user (authenticated or anonymous) the system will be sending the project tasks in the order they were created. If the user tries to reload a task that he or she already participated, the system will detect it, and warn the user giving the option to try with another task (the scheduler will search for the proper task for the given user). From the point of view of the project, the scheduler will be trying to complete (get all the answers requested by the :ref:`task-redundancy` value) all the tasks as soon as possible. Breadth First ~~~~~~~~~~~~~ The Breadth First scheduler has the following features: #. It sends the tasks in the order that were created, first in first out. #. It ignores the :ref:`task-redundancy` value, so it will keep sending tasks no matter even though that value has been achieved. #. It sends always the task with the least number of task runs in the system. #. A task will be never marked as completed, as the :ref:`task-redundancy` is not respected. In summary, from the point of view of a user (authenticated or anonymous) the system will be sending the project's tasks that have less answers (in case of not having an answer, the creation time will be used to send them like in a FIFO --first in first out). From the point of view of the project, the scheduler will be trying to obtain as soon as possible an answer for all the available tasks. .. note:: If your project needs to do an statistical analysis, be sure to check if the answer has been submitted by the same user, and how many answers you have obtained per task. Random ~~~~~~ The Random scheduler has the following features: #. It sends a task randomly to the users. #. A user (authenticated or anonymous) can receive the same task two or more times in a row. #. It ignores the :ref:`task-redundancy` value, so tasks will be never marked as *completed*. In summary, from the point of view of a user (authenticated or anonymous) the system will be sending tasks randomly as the user could receive in a row the same task several times. From the point of view of the project, the scheduler will be sending tasks randomly. .. note:: By using this scheduler, you may end up with some tasks that receive only a few answers. If you want to avoid this issue, change to the other two schedulers. .. _task-priority: Task Priority -------------- PyBossa allows you to prioritize the tasks, or in other words, which tasks should be delivered first to the volunteers. .. image:: http://i.imgur.com/gay8VAw.png :width: 100% .. note:: **Important**: Task Priority is only respected by the default scheduler. The page shows you two input boxes: #. **Task IDs**: comma separated Task IDs of your project tasks. Note: not spaces between the values or commas. #. **Priority**: the priority that you want to set for the Task IDs. This must be a value between 0.0 and 1.0. A task with a priority 1.0 will be the first Task to be delivered to a given user. In case that two or more tasks have the same priority value, the first task that will be delivered will be the one with the lower Task.ID value. .. _task-redundancy: Task Redundancy --------------- The Task Redundancy is a feature that will allow you to analyze statistically the results that your project are getting for each of its tasks. PyBossa by default assigns a value of 30 task runs --answers-- per task, as this value is commonly used for analyzing the population statistically. This page will allow you to change the default value, 30, to whatever you like between a minimum of 1 or a maximum of 10000 answers per task. We recommend to have at use at least 3 answers per task, otherwise you will not be able to run a proper analysis on a given task if two uses answer different. .. image:: http://i.imgur.com/rDrG8Bp.png :width: 100% For example, imagine that the goal of the task is to answer if you see a human in a picture, and the available answers are Yes and No. If you set up the redundancy value to 2, and two different users answer respectively Yes and No, you will not know the correct answer for the task. By increasing the redundancy value to 5 (or even bigger) you will be able to run a statistical analysis more accurately. .. _delete-tasks: Delete Tasks ------------ This section will allow you to complete remove all the Tasks and associated Task Runs (answers) of your project. .. image:: http://i.imgur.com/VmUeaWq.png :width: 100% .. note:: This step cannot be undone, once you delete all the tasks and associated task runs they will be lost forever. .. note:: **Only tasks not associated with a result can be deleted.** This feature is useful when you are testing your project, and you are deciding the structure that you are going to build in your answers. .. _autoimport-tasks: Import tasks automatically ========================== Both pro users and server administrators can have access to this feature, which allows to schedule a background job that will automatically import tasks every 24 hours. This option is accessible from the **Tasks** link in the left local navigation bar: .. image:: http://i.imgur.com/0bNR60P.png Tasks can be imported using any of the PyBossa built-in importers, such as :ref:`csv-import` and :ref:`epicollect-import`. To set up an autoimporter, please refer to the instructions for :ref:`csv-import`, :ref:`epicollect-import`, :ref:`flickr-import` or :ref:`twitter-import`, as the procedure is the same: .. image:: http://i.imgur.com/20PHlHe.png The only difference is that the tasks won't be imported only once, but regularly, as explained. However, the same behaviour should be expected, so autoimporting a CSV file that does not change will result in no new tasks being imported. .. note:: The Dropbox and Amazon S3 importers are not available for being used as an autoimporter. Once an autoimporter has been set up, it can also be cancelled anytime: .. image:: http://i.imgur.com/gu6CJG0.png And a new one can then be created. .. _project-delete: Delete the project ================== In case that you want to completely remove the project and all its tasks and task runs, use this section to delete the project. .. image:: http://i.imgur.com/Et4EAyj.png :width: 100% .. note:: This action cannot be undone, so be sure before proceeding. .. note:: Only projects without results can be deleted.