• No results found

Teaching Computational Thinking and Music Theory in an Interactive and Adaptive Learning Environment

N/A
N/A
Protected

Academic year: 2021

Share "Teaching Computational Thinking and Music Theory in an Interactive and Adaptive Learning Environment"

Copied!
16
0
0

Bezig met laden.... (Bekijk nu de volledige tekst)

Hele tekst

(1)

Teaching Computational

Thinking and Music Theory

in an Interactive and

Adaptive Learning

Environment

(2)

Layout: typeset by the author using LATEX.

(3)

Teaching Computational Thinking and

Music Theory in an Interactive and

Adaptive Learning Environment

Alexander Dekker 10761012

Bachelor thesis Credits: 18 EC

Bachelor Kunstmatige Intelligentie

University of Amsterdam Faculty of Science Science Park 904 1098 XH Amsterdam Supervisor dr. B. Bredeweg

Institute for Logic, Language and Computation Faculty of Science

University of Amsterdam Science Park 907 1098 XG Amsterdam

(4)

Abstract

Computational Thinking is becoming more important to function in contemporary soci-ety, and this is why ways to teach it are studied. A suited approach is teaching music theory, because music theory is very structured. This research investigates the development of a tool to teach learners pattern recognition and systematic problem solving while also learning about music. A tool is designed to teach major scales to the learner. While practicing, the learner should get a grasp of how scales are structured and how to recognize them. This way, a two-sided goal can be accomplished. Firstly, learners are stimulated to handle prob-lems in a systematic way, which is one of the main aspects of Computational Thinking and secondly they develop fundamental knowledge about music that should help them learn to play instruments more efficiently. The main challenge of the study is to create an interactive and adaptive learning environment that adjusts its program to the learner’s behaviour.

1

Introduction

Nowadays it has become popular to develop interactive software tools to help people develop skills, while also learning to think in an algorithmic way. This algorithmic way of thinking is often referred to as Computational Thinking (CT), which can be implemented in many areas of education [1]. This study investigates developing an adaptive and interactive tool that teaches learners pattern recognition and systematic problem solving by learning about musical scales.

Many children learn to play some instrument at primary or music school, however, teaching them to comprehend music theory is often overlooked in their learning processes. For instance, they often learn how to play different scales, but not how the scales are structured. Music theory is very structured, and thus can be approached in an algorithmic matter [2]. By constructing a system that trains learners in pattern recognition in context of the structure of musical scales, both CT and musical understanding can increase.

To create and design such a tool, the following question is examined: How can a tool be created that provides and interactive and adaptive learning method for teaching muscial scales? To make the tool adaptive, it is investigated how the program can adjust to different levels of preemptive knowledge of scales and different learning rates among learners. Not only must the tool be able to create programs for different kinds of learners, but should also be able to change the program when the learner starts behaving differently. To make the tool interactive, it has been examined which possible interaction the program must provide, how the program can provide feedback to the user’s input and how hints can be provided to help the user when necessary.

2

Computational Thinking

Computational Thinking is already being integrated into primary, secondary and post-secondary curricula [3], because it is starting to be seen as a fundamental skill to function in modern society [1]. It helps formulating and solving problems, also in fields that are not related to computer science [4]. CT does not only help in someone’s own field, once they have learned it, they can also apply it to fields that you are not an expert in [5].

To integrate CT in these curricula, it must be known what kind of tools help in making computational thinking easily accesible to non-computational learners [6]. A popular and easily accesible way to teach people and let people execute tasks is gamification [7]. Because gamifica-tion can be used as a tool to make educagamifica-tions modules more fun for learners it will be integrated into the tool.

(5)

Musical theory is very structured and can be looked at from an algorithmic perspective. For example, Edwards describes a historical context of algorithmic composition [2]. He writes about how composing music is done by the composer’s own computational thinking. The main argument the article advocates, is that when one knows more about the structure of music and the theory behind it, it is easier to make original compositions and integrate different and new styles into the composition. For this reason, a tool which teaches music theory implicitly also teaches CT.

Bell and Bell have provided several examples of how CT and music theory education can be combined and used for the benefit of both of these subjects [8]. Examples of this combination include robotics, visualize harmonic theory and also learning theory through programming se-quences. There are many aspects in which CT can be used to see connections between notes and to learn about the algorithmic way music theory works. An example of structurized music theory is to make a binary map to describe which notes are being played [9].

Because of the arguments listed above, a tool which teaches musical scales through pattern matching and algorithmic repetition can be stated as a way to teach CT in music.

3

Music Theory - Domain Knowledge

The major scale (also called Ionian scale) is the most common used scale in western music. In western music we use a system with twelve notes in an octave, which means that we have twelve notes before reaching the first one again (a note with exactly twice the frequency is one octave higher, and the same note, only with a higher pitch) [10]. It is a diatonic scale, which means that the scale is made up of five whole steps, and two halves. Whole steps mean that there is a note between a given note and the next in the scale. When going up half a step, no note is skipped. The major scale, regardless of on what note it starts, consists of the following pattern: whole, whole, half, whole, whole, whole, half. This sequence is hereinafter referred to as the major scale pattern. After the seventh step the pattern can be repeated again infinitely.

When looking at the names of notes that are used in the western music system, one could argue that it is a representation of the keys of a piano. In this study, we only look at the keys on a piano, not the staves used in regular western music notation. In figure 1 the piano used throughout the entire study is shown. The black keys in between the white keys are located above the white keys, but in pitch and note value, they should be seen as if they were in between white keys. For instance, the C

\

is half a step up from C, and also half a step down from D (called C

\

and D

Z

, respectively).

The easiest major scale to play on a piano is the C scale (figure 1a). This is because it starts at C and consists of all white keys and no black keys: from C to D is a whole step (C

\

/ D

Z

is in between the two), D to E is a whole step, E to F is half a step (there is no black key (read: note) between them), and so on. The sequence of the consecutive white keys, when starting at C, follows the major scale pattern. When a different scale is played, a certain amount of white keys need to be replaced by black keys, to ensure that the major scale pattern stays the same. For instance, when starting at G, the F needs to be replaced by a F

\

to create the same interval sequence. In figure 1b the scale of C

\

(/ D

Z

) is shown. It looks more complicated than the scale of C, but every note of the scale of C is only moved one note to the right on the piano.

4

Design

The piano shown in figure 1 is the piano used in the tool. To learn scales and solving problems in an algorithmic way, the user goes through the program that is designed as follows.

(6)

Figure 1: Different scales on a piano. The pattern in terms of note distance is the same for both scales, although the scales look very different. a) On this piano the C scale is shown. b) On this piano C

\

scale is shown.

4.1

User Interface

Once the program is started, the user is asked to give their name in a login screen. A recurrent user can select their name from the list of saved users. When the user starts the program for the first time, they are asked if they have experience in music theory. The first question the user will get is to recognize which scale is shown (see figure 2a). In all the other exercises, the user is asked to correct and / or add notes on the piano, given a certain scale (see figure 2b). All keys are clickable, and highlighted in orange when selected. When a note is clicked, regardless of whether it is already selected or not, the note will be played. On the bottom right of the screen a button with the text "Play Notes" is used to play the notes that are currently selected. When playing these notes the key of the note that is heard on that moment is highlighted in blue.

Once the user is satisfied with their given selection, they press the "CHECK" button to move on to the next exercise. If the given answer was correct, the "CHECK" button turns green, and the major chord is heard of the sought after scale. For example: if the asked scale was G, G major is being played for half a second. If the user’s answer was wrong, the button turns red instead and the minor chord is played instead. To illustrate, in case of G, G minor would be played. After providing a wrong answer, the user will be shown the correct answer before they move on to the next exercise. This way, the tool provides multiple ways for the learner to interact with the tool and to get direct audible and visible feedback when they answer a question.

Once the user has done enough exercises on a certain scale, one final assignment is given regarding that scale. When that is, is explained in section 4.2.2.The user must provide the scale given zero selected notes beforehand. Only when this question is answered correctly, the scale will not return until the final test of the program. When the user has finished all but the last three

(7)

scales of the program, the user will be given the final test. This test consists of reconstructing every scale from scratch. After this test fireworks are shown, and the program is finished.

Figure 2: Examples of exercises. a) First exercise (the answer to this question is "C") b) An example of exercise number 4. The unhighlighted "B" should be selected, and the "D

\

" should be replaced by the "D" next to it.

4.2

Exercises

The program generates five different kinds of exercises, with different levels of difficulty, also depending on the scale. Each level consists of a selection of these exercises applied to certain practiced or newly introduced scales. The five different exercises for any scale, and any missing notes or wrong notes are as follows:

1. "What scale is this?"

The user should enter the name of the scale. The name of the scale is the same as the key it starts on, since only major scales are asked over the span of two octaves. While, for instance, "C major" would be a correct answer, the program only accepts "C" or "c". When the scale of a black key is asked, either the sharp or flat term are accepted. For instance, if the asked scale is B

Z

, either "A#" or "Bb" are correct.

2. "Complete the scale: scale X "

A certain number of notes are missing from the selection. For instance, the scale of F could be asked, and two notes are not selected that should be. The user must click on the notes that are missing.

3. "Correct the scale: scale X "

In this exercise some notes on the given selection are off by one key. The user must deselect these keys, and select the correct notes instead.

4. "Correct and Complete the scale: scale X "

This exercise is a combination of the previous two. There are a certain number of notes missing, and the same number of notes are wrong in the given selection. The user must fulfill both assignments in one. (As shown in figure 1b), where in this case one note is missing and one note is wrong.

(8)

5. "Make the following scale: scale X "

No notes are selected beforehand and there is no "Play Notes" button. The user still hears the notes on selection, so if the user benefits from listening this support is not completely removed.

4.2.1 Order of Scales

To determine in what order the scales are introducted, the circle of fifths is used. In western music theory, the circle of fifths is used to determine how many sharps or flats are needed to construct a major scale (figure 3) [11]. For every step from C, one sharp is added when moving clockwise, and one flat is added counterclockwise. While the pattern of the major scale stays the same, it becomes more confusing on the piano. In every level of the program one step is made in both directions on the circle to add new scales. During the first level, the user only works with C. In the second level F and G are introduced, etc. This sequence goes until F

\

(/ G

Z

) is reached. At that point all twelve scales are treated, over seven levels. The program continues generating levels, until the number of missing and wrong notes (explained in the next section) for the last scale is four. This means that there have been sufficient exercises for every scale.

Figure 3: Circle of Fifths. For every step from C, one sharp is added when moving clockwise, and one flat is added counterclockwise

4.2.2 Number of Missing and Wrong Notes

As described above, whenever the user advances to a higher level new scales are introduced. For exercise 2, 3 and 4, a certain number of missing and/or wrong notes are provided by the program. This number is dependent on the level of the user. When a user is shown a new scale, all exercises for this scale will have one note missing and wrong. How this number increases is shown in table 1.

(9)

When a scale would reach five missing and wrong notes, it will no longer appear in the exercises. Instead, exercise 5 will be given instead, completing the exercises regarding that scale. When this exercise is answered correctly, it will not reappear. However, if the user their answer is wrong, the exercise 5 will reappear in the next level with the same scale. The reason five missing and wrong notes is chosen, is because when five notes would be wrong and five would be missing, the exercise is just as complicated as exercise 5. An earlier moment in the program would result in not many exercises being generated per scale, which would result in levels only creating exercises with the same scales.

user level 1 2 3

scale C C F G C F G B

Z

D wrong/missing 1 2 1 1 3 2 2 1 1

Table 1: Number of missing and wrong notes per scale in the first, second and third level.

4.3

User Progress

Whether a user progresses to the next level is dependent on the percentage of questions they answered correctly in the latest attempt of a level. The normalized ratio of correct answers to total exercises in a level will hereinafter be called the user’s progress. If the progress is bigger than 0.85, the user will advance to the next level. If this requirement is not met, the user will have to redo the level. This threshold of 0.85 allows users to make at least one mistake in later levels, while only letting users advance the first level when no mistakes are made.

To illustrate how the thresholds level advancement and level composition work an example of how a user progresses through a level is shown (see figure 4). It is visible that the user reaches a better score in each attempt, and when they nearly reach the threshold for the next level it is not desired that they would have to do every exercise agian. This is one of the reasons the level composition is introduced. The next section elaborates on what a level composition is.

4.3.1 Level Composition

The number of exercises in a level is determined by the level composition the user is placed in. The level composition is dependent on the user’s progress in their previous attempt(s) on a level. There are three levels of level composition:

0. No exercises are removed

1. All exercises 2 are removed

2. All exercises 3 are also removed

For instance: when the user’s level composition for a certain level is 2, only varations of exercise 1, 4 and 5 are generated.

There are two situations in which a level is generated: the user’s progress is above the threshold of 0.85, in which case the user advances to the next level, or the progress is below the threshold, in which case the user has to do another attempt at the same level. Both situations are summarized in figure 5.

In the first case, the level composition will be determined by the average progress over all the attempts at the latest level. If the average progress of the last level was less than 0.5, the user will be placed in level composition 0 for the next level. If the average progress is 0.99, the

(10)

Figure 4: Progression of a simulated user through the fourth level of the program. Two attempts were done before the user reached the threshold to go to the next level. Because in the second attempt (1) the user almost reaches the threshold, he can do the level again with level composition 2. Note the difference in lengths of the same level with different level compositions.

user will be placed in level composition 2. Otherwise the user’s level composition will be 1. This means that only if the user passed the last level in one try without making any mistakes, they will continue with level composition 2.

In the second case, where a user needs to retry the level, only the progress of the last attempt is taken into consideration. When the user has a progress of 0.75 or higher (but lower than 0.85) they will end up with level composition 2. Between 0.5 and 0.75 is level composition 1, and below 0.5 is level composition 0. This way, if a user has answered most question correctly, but not quite enough for level advancement, they will have a relative small amount of exercises to complete before they can possibly advance to the next level.

If a user fails a level with a progress of less than 0.5 and it is at least the user’s third attempt, the user is degraded one level back.

Because of the level composition system, the program is different for each learner. This makes the tool adaptive, as fast learners have a different experience than slow learners. The level composition is adjusted after each attempt at any level. This makes it so that the tool is constantly updating it’s program, according to how the user performs.

(11)

Figure 5: Detailed overview of progression in the program. In the end of level x, a certain threshold is obtained, and depending on that treshold value the program sends you back to the previous level, to redo te current level or lets you progress to the next level. Depending on the average progress over all the tries you re-start the current level or next level with a certain level composition.

4.3.2 Boost

Once the user has reached a point where they make little to no mistakes, it is evident that the user will also be able to solve the levels with more difficult scales (read: scales with more black keys), thus that have found the major scale pattern. Because of this, the boost functionality is implemented. When a user has completed three levels in their first try in a row, the boost will be activated. Once a user is boosted, the number of missing and wrong notes increases by two instead of one each level.

A comparance of the numbers of missing and wrong notes in the same level with and without boost can be seen in table 2. This implies that when a user is boosted, it will reach the final level of each scale significantly sooner, reducing the total number of exercises they need to complete in the program.

The boost will help make the program adapt to user that have understood the pattern, so that they do no have to do exercises that are unecessary for their learning process.

Scale Nr wrong and missing No Boost Boost C 4 8* F 3 6* G 3 6* B

Z

2 4 D 2 4 E

Z

1 2 A 1 2

Table 2: Number of missing and wrong notes per scale in the fourth level, boosted and not boosted. * C, F and G have a number higher than 4, which implies that their exercises will be removed, and three final exercises (exercise 5 for each of them) will be added.

(12)

4.3.3 Hints

When a user is not able to solve the problems frequently, hints will show up in a pop-up window. There is one exercise-specific hint, one hint when too many keys are selected by the user, and two hints that give general information when many mistakes are made.

The exercise-specific hint shows up every time exercise 1 (in any scale) is answered incorrectly twice. The hint is as follows: "The name of the scale is the same as the starting note!"

Whenever a user has more than 15 notes selected in any exercise, the following hint is shown: "You need to put in the scale over two octaves. There should always be 15 notes selected!"

At the end of a level attempt, if a user’s progress is less than 0.5, one of the following hints is shown:

"Every scale is essentially the same! The starting note is different, but the distance (half or whole) between the consecutive notes is in the same order for every scale."

Or: "The difference between each key is the same. You can think of the black keys as if they are in between two white ones."

Finally, when a user has ten exercises in a row correct, they are encouraged by getting a notification which tells them the following: "Good job! X in a row correct! It seems like you really get it!" This message is shown every ten exercises done correctly. So, X could be any multiple of ten.

The hints and encouragement system make the program more interactive, as direct user feedback is provided. The score that is shown each ten exercises in a row correct give the user a sense of accomplishment, which is an important part of gamification [7].

4.4

Implementation

The program is built in Python, with use of the Pygame modules. Pygame is a set of modules designed to write videogames in Python [12]. Playback of the piano sounds are in MIDI, and user data has been saved using Pandas library. Pickle is used for saving progress in between sessions.

When the user creates an account, a User Object is created. In this object, the user’s global results are stored, such as the current level the user is at, the total number of mistakes made, the user’s correct- and wrong streaks and whether the user is ready for the final level. One of the most important data attributes stored in this Object is a default dictionary that keeps track of the level scores. Each level number, stored as integer, is a key and has an empty list as value. Each attempt at a level, a Level_score Object is appended to the list. Finally, the user’s level composition and if the user is boosted are stored in the object.

The Level_score Object is created each time a level is started. The object is necessary to keep track of the user’s progress in an attempt. After every exercise the progress in the Level_score object gets updated. After a level attempt is finished, the object is stored in the level score dictionary of the user’s own User Object.

Every time a level is started, the program generates a list of exercises. First the latest results get checked to see if the user is boosted. The exercise list is then generated as described in sections 4.2 and 4.3, and the order of the exercises is randomized. When exercises with G

Z

(/ F

\

) are in the list with at least four missing and wrong notes, the User Object gets notified, because this means the user is ready for the final test. The boolean ready_for_final is set to True. When the user finishes a level while this boolean is true, the final level gets generated.

The exercises are created in a general create_exercise function. The piano gets drawn, and for each key a Note Object gets created. In these Note Objects is stored whether a note is selected, amongst other information, such as the pitch and what key signature a major scale has

(13)

if it is started on that note. To check the user’s answer with the correct one, the selected note objects are compared with the desired selection.

5

Evaluation

To test the program, five people were asked to try (part of) the program. The test subjects ranged from people that have experience in music theory to people who have none. There were two things that were told beforehand: (1) the name of the scale must be written the same as on the key and (2) that the scales are spanned over two octaves. To get some insight into how people progress through the different levels, the result of each exercise is saved. This means that per exercise, what level, the how many’th attempt it was, the time it took to do this exercise, what note, and the progress through the level (the result of the answer to this question) are saved.

Finally, an attempt to generalize these results is performed. Different simulated users were made, with their own learning rates. See the different users and respective parameters in table 3. For the users with linear and exponential learning curves, it is important to note that they have been executed in two ways: (1) their progress resets after completing a level, or (2) the learning rate continues throughout the program.

Name Progress All_Correct 1

One_Mistake (N − 1)/N

Linear (N − (0.05x + 0.6))/N Exponential (N − (0.6e−x))/N

Table 3: Simulated Users with different learning curves. N equals the total number of exercises in one attempt. x indicates the attempt. 0.6 is the chosen number of mistakes on their first try.

6

Results

6.1

User Experience

The feedback from users is generally positive. Some of them already knew what scales looked like, however, none of them knew all the scales by heart. All users were asked to follow the program at least until the point where (almost) no mistakes were made. Afterwards a few questions were asked regarding the method of providing the answers to the exercises. All users said they applied the whole whole half whole whole whole half pattern on the scales. This is the algorithmic way to solve the problems, so one could say computational thinking is stimulated. Two users explained that they would apply the pattern to the scale over one octave, and then copy that sequence on the second octave. This is also a systematic way to solve the problem.

The two users that did not have knowledge beforehand pointed out that they wanted to match the pattern of the first octave on the second one, or vise versa, depending on which one looked more intuitively correct. This approach is a computational way to approach easier exercises, but is not sufficient to complete the program. Both these users struggled after the second level (when D and B

Z

are introduced). When the easier scales (C, G and F) had exercises with multiple missing notes and wrong notes, their method no longer functioned. Unfortunately, the hint system only gives hints with insight in the pattern and how to approach the scales after

(14)

multiple mistakes are made in a row. Because there are also easier exercises in between the more difficult ones, the users did not get a single hint before the second try of the third level.

The users who knew how to create a major scale beforehand all pointed out that the program helped them practice learning to remember all the scales, because repetition is a useful way to memorize sequences. For people who already know scales (and thus are able to recognize the pattern really quickly), the program is found to be too long. The boost functionality is not enough to remove the feeling of unnecessary repetition.

6.2

Simulated Users

When examining the simulated data, it seems the chosen thresholds for level composition are generally near the desired level. Of course, with more data these thresholds could be improved. With different learning curves, the results were all the same overall for simulated users that don’t reset their learning each level: because a user only advances a level when they make very few mistakes in a level, the users gets stuck in the first levels for a long time, and finally advances to the next levels without making any mistakes.

Looking at the simulated users with a learning curve that is reset each level, when the user tries a level for the first time, it will make many mistakes, and every following attempt a higher percentage is answered correctly. The level composition grows accordingly, and at the final try of each level, the user has reached level composition 2, meaning it has few exercises to complete before advancing to the next level. The user then makes many mistakes on their first try, meaning that on the second try they will also have to do more difficult exercises. Because of this, it could be stated that the level composition system does what it is designed to do.

7

Conclusion

An interactive software tool has been created to teach musical scales to people. The tool is capable of adjusting the difficulty and number of exercises the learner needs to complete. The tool adjusts the program according to how the learner has been performing. If the learner makes many mistakes, the learner will need to do extra excercises with lower difficulty which helps the leaner practice and understand the given scales. Once a learner understands the concept and makes zero or very few mistakes, the program will be significantly shorter. When the learner has learned all the twelve major scales, they will perform one final task in which the learner’s knowledge of all the scales will be tested.

When using the created tool, even experienced musicians use algorithmic thinking to provide answers; both in recognising scales as well as in reconstructing them.

Creating an interactive environment for learning muscial scales with little to no preemptive explaination is possible, but more user data is needed to be able to improve the program.

8

Discussion

There are several points of improvement that will be adressed in this section.

8.1

User Progress

User testing showed that hints do not show up early enough. More user data is necessary to make the hint system properly functional for learners with no preemptive knowledge. Also, the number of hints and how much they explain should have been further examined. Currently, if a

(15)

learner does not seem to recognize the pattern, and the currently available hints are not enough for a learner to understand the system, the learner will learn very little from the program.

There can be time invested in creating a design for what happens when a learner degrades one level. Now it simply removes the data from the failed level, and the level composition is the same as it was during the last attempt.

8.2

Evaluation

To evaluate if CT is actually improved by learners who have used the tool, extra research is necessary. At the current stage, one can only assume it improves CT because it stimulates pattern recognition and the same kind of sequence (algorithm) is applied on several cases (in this case: different scales).

Results from the five users that were collected were useful for preliminary results and feedback on how the program worked, but for further feedback people from wider audiences should be asked to participate.

The main issue with simulated data is that without a lot of data, it is not possible to realisticly simulate a learner. Although the simulated data helped fixing problems during development, it only shows that the program does what it is designed to do. It does not provide insight into whether the chosen thresholds for advancing a level and level composition are at proper values. Thus, it is not possible to use these kinds of simulations to optimise the way the levels are structured.

Overall, the philosophy behind the level composition structure is that the learner needs as few as exercises possible to learn about the scales. Without psychological research on how users learn these structures, or without data, it is not possible to optimise the system for minimal repetition.

9

Future Research

To keep the program enjoyable, some small elements of gamification are implemented. The learner gets a notification if they are doing well, and cheerful chords are played when exercises are answered correcty. This, however, gets very repetative very quickly. Ways to improve the experience are to integrate leaderboards, let learners unlock certain achievements, or make the feedback more interesting, by adding melodies or granting access to additional functions. These functions are not integrated at this point, but can be experimented with in the future.

In its current state, the tool only teaches major scales. Other lessons can also be included. Examples would be lessons about the minor scales (which would be almost identical as the lessons about the major scale). In addition, lessons about chords, progressions, rhythm and harmonies could be integrated.

It should be investigated when a learner recognizes the pattern that helps him with other CT exercises. An idea would be to see if the way the learner recognizes the pattern is relevant. Ideas to test this are: hearing if the notes are right, seeing if the notes are right from either memorizing or counting the pattern.

An interesting study would be to tell the participants to look for a pattern and see how much that would help them going through the exercises. If someone is aware of what to look for, it might go a lot faster than when they are thrown into the deep end.

There are thresholds chosen for level advancement and level composition. These thresholds are currently arbitrarily chosen based on what seems reasonable. To tune these thresholds, a model wchich uses the simulated users could be made. Parameters could be tuned using a grid search. For this we need some kind of score, which could be based on the amount of time a lesson

(16)

is supposed to take. More information on the learner’s progression is needed in order to make this.

Many models that could be applied on the system need large datasets. To generate more user data that is realistc, Learner Modelling can be applied using the currently available data [13].

References

[1] Jeannette M Wing. Computational thinking. Communications of the ACM, 49(3), 2006.

[2] Michael Edwards. Algorithmic composition: Computational thinking in music. Commun. ACM, 54(7):58–67, July 2011.

[3] Jake Qualls and Linda Sherrell. Why computational thinking should be integrated into the curriculum. Journal of Computing Sciences in Colleges, 25:66–71, 05 2010.

[4] Jeanette Wing. Research notebook: Computational thinking—what and why. The link magazine, 6, 2011.

[5] Punya Mishra et al. Rethinking technology & creativity in the 21st century: Crayons are the future. TechTrends, 56(5):13–16, 2012.

[6] Mark Guzdial. Education paving the way for computational thinking. Communications of the ACM, 51(8):25–27, 2008.

[7] Weinan Zhao and Valerie J. Shute. Can playing a video game foster computational thinking skills? Computers Education, 141:103633, 2019.

[8] Judith Bell and Tim Bell. Integrating computational thinking with a music education context. Informatics in Education, 17:151–166, 10 2018.

[9] F. Seifert and M. Rentzsch. Generic modeling of music for computational education and recognition of song variations. In 5th International Conference on Computer Sciences and Convergence Information Technology, pages 1046–1051, 2010.

[10] Thomas Christensen. The Cambridge history of Western music theory. Cambridge Univer-sity Press, 2006.

[11] John Clough and Gerald Myerson. Musical scales and the generalized circle of fifths. The american mathematical monthly, 93(9):695–701, 1986.

[12] Pete Shinners. Pygame. http://pygame.org/, 2011.

[13] Xiaolin Niu. Purpose based learner modelling. In Proceedings of the Grad Symposium. Citeseer, 2002.

Referenties

GERELATEERDE DOCUMENTEN

It must be noted that there are some limitations concerning the methodology presented. First of all, there are some caveats concerning the Gini coefficient as mentioned in section

There are no significant differences between illness reporting by area (rural vs urban), insurance tenure or being Haitian or not.. In the case of seeking medical services, the

This questionnaire is part of the FLAGH (Farm Labourers And General Health) Intervention research. It aims at improving qualify of life of communities. By participating in

It was consequently determined how much electricity was used through different electricity consuming systems (lighting, heating, etc) and which of those technologies

As losses in banks’ trading books during the financial crisis in 2007/08 have increase to a level which is higher than the minimum capital requirements under the Pillar 1 market

Apart from presenting this framework, we also present a quantitative method for measuring the level of nonverbal synchrony in an interaction and observations on

We found for three industry specialist variables; auditor industry specialist based on number of clients in a two-digit SIC industry code, auditors industry specialist based

The Limpopo Department of Agriculture and Rural Development have identified livestock as an important driver of rural development and have focused on