Changes between Version 21 and Version 22 of BoltIntro


Ignore:
Timestamp:
Dec 3, 2007, 9:08:41 PM (16 years ago)
Author:
davea
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • BoltIntro

    v21 v22  
    44
    55[BoltGoals Goals]
     6
    67[BoltRef Reference manual]
     8
     9[BoltAnalytics Analytics]
     10
    711[BoltImpl Implementation notes]
    812
    9 It is designed to meet the needs of:
    10 
    11  * Distributed thinking projects, in which volunteers must be trained to perform various tasks.
    12  * Volunteer computing projects, in which educating participants can increase their enthusiasm and commitment.
    13 
    14 These areas have the following properties:
    15 
    16  * Churn: constant turnover (scores or hundreds of new students per day);
    17  * Wide geographical distribution;
    18  * Wide age distribution;
    19  * Motivation: most volunteers have a pre-existing interest in the topic, and are motivated by recognition (e.g. being marked as an "expert" on the project web site).
    20 
    21 == What Bolt does ==
    22 
    23 Using Bolt, you can
    24 
    25  * Create exercises of various types: multiple-choice, fill-in-the-blank, graphical, etc.
    26  * Specify a ''course'' as a sequence of lessons and exercises.
    27 
    28 Given such a course, Bolt does the following:
    29 
    30  * It guides students sequentially through the course;
    31  * If the student fails an exercise, they repeat one or more lessons and retry the exercise(Bolt courses are designed to be "fail-proof");
    32  * Each student's progress is recorded in a database, and when they return to the course later they resume at that point.
    33  * Bolt maintain an estimate of each student's mastery of the course material.
    34  
    35 In addition, Bolt lets you create better courses; specifically, you can
    36  * make statistically valid comparisons of alternative lessons;
    37  * make "adaptive" courses in which different lessons are used for different groups of students
    38 
    39 This is done as follows:
    40 
    41  * Bolt records the timing and results of each student interaction (viewing a lesson or completing an exercise) in a database.
    42  * Demographics (age, sex, education level, nationality) are stored for each student.
    43  * Course documents can have various types of "control structures".  For example, they can specify that a lesson should be chosen randomly from a given set, or should be chosen based on student demographics.
    44  * Bolt offers analytic tools that let you evaluate the effectiveness of your lessons, and that help you make your course  adapt itself to different types of students.
    45 
    46 == Creating exercises ==
    47 
    48 A Bolt exercise is a PHP script.
    49 Here's an example consisting of a multiple-choice question:
    50 {{{
    51 <?php
    52 echo 'Conifers are so named because:';
    53 bolt_exclusive_choice(
    54    array(
    55       'They carry their seeds in cones.'
    56       'They are cone-shaped.',
    57       'They originated during the Coniceous era.',
    58    ),
    59 );
    60 ?>
    61 }}}
    62 Each time the question is shown,
    63 the choices are shown in a random order.
    64 The correct choice is the first element of the array.
    65 
    66 Here's an example that shows an image;
    67 a correct answer is a click in the indicated subrectangle.
    68 {{{
    69 <?php
    70 echo "Click on the dog's nose:<p>";
    71 bolt_image_rect(
    72    'dog.jpg',
    73    array(100, 60, 110, 70)
    74 );
    75 ?>
    76 }}}
    77 
    78 Bolt supplies functions for other types of questions,
    79 such as inclusive multiple-choice and fill-in-the-blank.
    80 An exercise can include multiple questions.
    8113
    8214
    83 == Course documents ==
    84 
    85 The structure of a Bolt course is defined by a [RFC:4627 JSON] document.
    86 Here's an example of a course with two lessons followed by an exercise:
    87 {{{
    88 {
    89    "name": "Identifying Sierra Conifers",
    90    "description: "Learn to identify the major conifers of California's Sierra Nevada",
    91    "items": [
    92       {
    93           "type": "lesson",
    94           "name": "Introduction",
    95           "file": "intro.html"
    96       },
    97       {
    98           "type": "lesson",
    99           "name": "The Linnaean hierarchy",
    100           "file": "linnaean.html"
    101       },
    102       {
    103           "type": "exercise",
    104           "file": "linnaean.php"
    105       }
    106    ]
    107 }
    108 }}}
    109 
    110 Course items can be grouped into '''sets'''; for example:
    111 
    112 {{{
    113 {
    114    "type": "set",
    115    "show_n": 1,
    116    "order": "random",
    117    "items": {
    118       {
    119       ...
    120       }
    121    }
    122 }
    123 }}}
    124 
    125 The attributes of a set include:
    126 
    127  * show_n: the number of items in the set to show
    128  * order: whether to show the items sequentially or randomly
    129 
    130 Items (lessons, exercises, and sets) can include '''properties''', e.g.:
    131 
    132 {{{
    133 {
    134    "type": "lesson",
    135    "name": "The Linnaean hierarchy",
    136    "file": "linnaean.html"
    137    "properties": {
    138       "verbal_level": 12,
    139       "detail_level": 0.8
    140    }
    141 },
    142 }}}
    143 
    144 When Bolt has a choice of items (e.g. when it encounters a set from which a
    145 single item is to be shown) it calls, for each item, a course-supplied
    146 '''matchmaking function''', passing to it the student object
    147 (which includes demographics such as age)
    148 and the item's properties (represented as a PHP object).
    149 The matchmaking function returns a number representing the estimated
    150 effectiveness of that item for that student,
    151 and Bolt chooses the item with the highest value.
    152 
    153 == Memory refresh ==
    154 
    155 Bolt offers a ''memory refresh'' system that periodically repeats exercises
    156 and, if necessary, lessons.
    157 Memory research suggests that this is necessary for students to shift
    158 learning to long-term memory.
    159 This mechanism works as follows:
    160 
    161  * A sequence of ''inter-refresh intervals'' is defined.  For example, (7, 28) means that an exercise should be repeated 7 days after it is first taken, and then every 28 days thereafter.
    162  * Bolt provides a function that returns the set of items, for a given student, for which refresh is due.  Your course can use this function to implement a "Review now" button on web pages.
    163  * Bolt provides a "review mode" in which the student is presented with exercises due for review.
    16415
    16516
    166 == Analytics ==
    16717
    168 Bolt offers two web-based analytic tools, ''course maps'' and ''lesson comparer''.
    169 You can use these tools to iteratively refine your course:
    170 
    171  1. Develop an initial course
    172  1. Operate the course until a statistically significant sample size of interactions exists
    173  1. Use the course map tool to find problem spots
    174  1. Develop alternative lessons
    175  1. Operate the course some more
    176  1. Use the lesson comparer to find better lessons or to do demographic adaptation
    177  1. go to 1.
    178 
    179 === Course maps ===
    180 
    181 A ''course map'' shows you the overall flow of students through your course
    182 (in the style of Charles Minard's map of Napoleon's march to Moscow in the war of 1812),
    183 revealing the points where they are getting bored or discouraged.
    184 
    185 [[Image(http://boinc.berkeley.edu/images/minard_napoleon.jpg)]]
    186 
    187 A course map shows you graphically how many students enter each step of the course,
    188 how many seconds they spend there,
    189 and their average performance on exercises.
    190 You can get a color-coded breakdown by any student attribute,
    191 and you can select a subpopulation based on attributes.
    192 
    193 === Lesson comparer ===
    194 
    195 You can develop several alternative lessons for the same concept and,
    196 using the "set" construct, arrange for them to be selected randomly,
    197 followed by a single exercise.
    198 You can then use Bolt's ''lesson comparer'' tool to study the results.
    199 The tool will tell you, for a given statistical confidence level:
    200  * whether one lesson is worse than another, e.g. students viewing lesson A score worse than students viewing lesson B
    201  * whether a given lesson is better for a particular demographic subgroup, e.g. a lesson is highly effective for females under 18.
    20218
    20319== Other features of Bolt ==