The working directory was changed to /cloud/project/morse-data inside a notebook chunk. The working directory will be reset when the chunk is finished running. Use the knitr root.dir option in the setup chunk to change the working directory for notebook chunks.

How far people usually go?

In current design of data collection, many users are counted as few users, not just one. For example, instead of 1 user who has progress from 0 to 70, we might have 3 users – with progress from 0 to 23, from 23 to 40 and from 40 to 70.

So we can’t really tell, how far in progress people usually go. Instead, let’s take a look at distribution of lengths of progress we have in our dataset.

Most users have progress near to zero. Few users had progress from 0 to almost 100.

Here is the table, which shows minimal and maximal progress for each user:

Minimal progress Maximal progress Length of progress
-5 -5 0
-5 -5 0
-2 -2 0
-2 -2 0
-2 -2 0
-5 -2 3
-1 -1 0
-1 -1 0
-1 -1 0
-2 -1 1
-1 -1 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
-1 0 1
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
-4 0 4
0 0 0
-5 0 5
0 0 0
-5 0 5
0 0 0
0 0 0
0 0 0
0 0 0
-1 0 1
-1 0 1
0 0 0
0 0 0
1 1 0
1 1 0
-1 2 3
0 2 2
3 3 0
3 3 0
3 3 0
0 4 4
0 4 4
1 4 3
-1 4 5
0 4 4
0 5 5
0 5 5
5 5 0
6 6 0
-3 6 9
6 6 0
-5 6 11
0 6 6
7 7 0
7 7 0
7 7 0
7 7 0
8 8 0
1 8 7
0 8 8
3 8 5
0 8 8
0 8 8
1 8 7
0 9 9
9 9 0
1 9 8
-2 9 11
-1 10 11
-5 11 16
11 11 0
11 11 0
3 11 8
3 12 9
3 12 9
11 12 1
0 13 13
0 13 13
0 13 13
0 13 13
1 14 13
0 14 14
8 14 6
-1 15 16
14 15 1
-3 15 18
1 15 14
5 15 10
15 15 0
16 16 0
0 16 16
1 16 15
6 17 11
2 17 15
12 17 5
6 18 12
10 18 8
18 18 0
12 18 6
2 18 16
0 18 18
0 19 19
19 19 0
12 20 8
21 21 0
0 21 21
5 21 16
22 22 0
0 23 23
23 23 0
1 25 24
-1 25 26
25 25 0
0 25 25
25 25 0
24 25 1
26 26 0
26 26 0
6 26 20
2 27 25
0 28 28
0 30 30
26 30 4
11 32 21
17 34 17
34 34 0
35 35 0
4 35 31
-1 35 36
26 36 10
36 36 0
36 36 0
-2 38 40
0 38 38
-3 39 42
1 41 40
25 44 19
3 45 42
36 45 9
46 46 0
13 47 34
51 51 0
0 51 51
36 54 18
0 55 55
0 56 56
0 58 58
47 63 16
25 64 39
0 75 75
0 84 84
45 89 44
0 90 90
90 91 1
91 91 0
92 92 0
0 92 92
10 92 82
94 94 0
94 95 1
75 95 20
95 95 0
96 96 0
93 96 3
0 96 96
97 97 0
97 97 0
13 97 84
97 97 0
97 97 0
2 98 96
11 98 87
95 98 3
0 98 98
80 99 19
39 99 60
99 99 0
-1 99 100
99 99 0
3 99 96
99 99 0
1 99 98
65 99 34
4 100 96
49 100 51
99 100 1

How much time it takes to learn Morse code?

Even though we don’t know real time, which was required for each user to learn Morse code, we can estimate it. Let’s take all users, who have length of progress at least 20%, calculate speed of that progress and estimate, how much time it would take for them to learn Morse code.

According to our estimation, 33 of 42 users (79%) would learned all letters for 16-80 minutes.

Users, who have length of progress more than 30%

Which hint options are better for learning?

top_settings = d_aggr %>%
        mutate(users=as.integer(1)) %>%
        filter(progress_interval > 10) %>%
        group_by(settings) %>%
        summarize(est_time = mean(est_time),
                  total_progress = sum(progress_interval),
                  users = sum(users)
        ) %>%
        arrange(est_time)
LS0tCnRpdGxlOiAnTW9yc2UgY29kZSBsZWFybmluZycKb3V0cHV0OiBodG1sX25vdGVib29rCi0tLQoKCmBgYHtyIG1lc3NhZ2U9RiwgZWNobz1GfQojIExvYWRpbmcgcmVxdWlyZWQgbGlicmFyaWVzCmxpYnJhcnkodGlkeXZlcnNlKQpsaWJyYXJ5KG1hZ3JpdHRyKQpsaWJyYXJ5KGNvcnJtb3JhbnQpCmxpYnJhcnkoc2NhbGVzKQpsaWJyYXJ5KG9wZW54bHN4KQpsaWJyYXJ5KGtuaXRyKQpsaWJyYXJ5KGthYmxlRXh0cmEpCgp0aGVtZV9zZXQodGhlbWVfbGlnaHQoKSkKCiMgTG9hZGluZyBkYXRhc2V0CnNldHdkKCcvY2xvdWQvcHJvamVjdC9tb3JzZS1kYXRhLycpICAgICMgQ2hhbmdlIHRoaXMgcGF0aCB0byB5b3VyIGRpcmVjdG9yeSB3aXRoIGNzdiBmaWxlcwpkID0gcmVhZC5jc3YoJ3Byb2dyZXNzX2xvZ18yMDIxMDYxNDA5MTguY3N2JykKIyBkMiA9IHJlYWQuY3N2KCd1c2VyX2FnZ3JlZ2F0ZV8yMDIxMDYxNDA5MTguY3N2JykKYGBgCmBgYHtyIGVjaG89Riwgd2FybmluZz1GfQojIFRyYW5zZm9ybWluZyBkYXRhCmxldHRlcnMgPSBzdHJfZXh0cmFjdF9hbGwoZCRwcm9ncmVzc0R1bXBbMV0sICdbYS16XScpW1sxXV0KCmQgJTw+JQogIG11dGF0ZShzY29yZXMgPSBzdHJfZXh0cmFjdF9hbGwocHJvZ3Jlc3NEdW1wLCAnLSpbMC05XScpLAogICAgICAgICBtaW51dGVzID0gdGltZVBsYXllZCAvIDEwMDAgLyA2MCwKICAgICAgICAgc2V0dGluZ3MgPSBwYXN0ZTAodmlzdWFsSGludHMsIHNwZWVjaEhpbnRzLCBzb3VuZCksCiAgICAgICAgIHVzZXIgPSB1c2VySWRlbnRpZmllciwKICAgICAgICAgcHJvZ3Jlc3MgPSBwcm9ncmVzc1BlcmNlbnQsCiAgICAgICAgKSAlPiUKICBzZWxlY3QodXNlciwgcHJvZ3Jlc3MsIG1pbnV0ZXMsIHNldHRpbmdzLCBzY29yZXMpCgpmb3IgKGkgaW4gMTpucm93KGQpKSB7CiAgZCRyZWFjaGVkX2VuZFtpXSA9IGQkc2NvcmVzW2ldW1sxXV1bMjZdID4gMCB9CgpkX2FnZ3IgPSBkICU+JQogIGdyb3VwX2J5KHVzZXIpICU+JQogIHN1bW1hcml6ZShtaW51dGVzID0gbWF4KG1pbnV0ZXMpLAogICAgICAgICAgICBtaW5fcHJvZ3Jlc3MgPSBtaW4ocHJvZ3Jlc3MpLAogICAgICAgICAgICBtYXhfcHJvZ3Jlc3MgPSBtYXgocHJvZ3Jlc3MpLAogICAgICAgICAgICBzZXR0aW5ncyA9IG1heChzZXR0aW5ncyksCiAgICAgICAgICAgIHJlYWNoZWRfZW5kID0gYXMubG9naWNhbChtYXgocmVhY2hlZF9lbmQpKSwKICAgICAgICAgICAgcHJvZ3Jlc3NfaW50ZXJ2YWwgPSBtYXhfcHJvZ3Jlc3MgLSBtaW5fcHJvZ3Jlc3MsCiAgICAgICAgICAgIHNwZWVkID0gcHJvZ3Jlc3NfaW50ZXJ2YWwgLyBtaW51dGVzLAogICAgICAgICAgICBlc3RfdGltZSA9IG1pbnV0ZXMgLyBwcm9ncmVzc19pbnRlcnZhbCAqIDEwMAogICAgICAgICAgICkgJT4lCiAgYXJyYW5nZShtYXhfcHJvZ3Jlc3MpCmBgYAojIyBIb3cgZmFyIHBlb3BsZSB1c3VhbGx5IGdvPwpJbiBjdXJyZW50IGRlc2lnbiBvZiBkYXRhIGNvbGxlY3Rpb24sIG1hbnkgdXNlcnMgYXJlIGNvdW50ZWQgYXMgZmV3IHVzZXJzLCBub3QganVzdCBvbmUuCkZvciBleGFtcGxlLCBpbnN0ZWFkIG9mIDEgdXNlciB3aG8gaGFzIHByb2dyZXNzIGZyb20gMCB0byA3MCwgd2UgbWlnaHQgaGF2ZSAzIHVzZXJzIOKAkwp3aXRoIHByb2dyZXNzIGZyb20gMCB0byAyMywgZnJvbSAyMyB0byA0MCBhbmQgZnJvbSA0MCB0byA3MC4KClNvIHdlIGNhbid0IHJlYWxseSB0ZWxsLCBob3cgZmFyIGluIHByb2dyZXNzIHBlb3BsZSB1c3VhbGx5IGdvLgpJbnN0ZWFkLCBsZXQncyB0YWtlIGEgbG9vayBhdCBkaXN0cmlidXRpb24gb2YgbGVuZ3RocyBvZiBwcm9ncmVzcyB3ZSBoYXZlIGluIG91ciBkYXRhc2V0LgpgYGB7ciBlY2hvID0gRn0KZF9hZ2dyICU+JQogIGdncGxvdChhZXMocHJvZ3Jlc3NfaW50ZXJ2YWwpKSArCiAgICBnZW9tX2hpc3RvZ3JhbShmaWxsID0gJyMwMEFBMjInLCBiaW5zPTIwKSArCiAgICB4bGFiKCdMZW5ndGggb2YgcHJvZ3Jlc3MnKSArIHlsYWIoJ0Ftb3VudCBvZiB1c2VycycpICsKICAgIHRoZW1lX2NsYXNzaWMoKQpgYGAKTW9zdCB1c2VycyBoYXZlIHByb2dyZXNzIG5lYXIgdG8gemVyby4gRmV3IHVzZXJzIGhhZCBwcm9ncmVzcyBmcm9tIDAgdG8gYWxtb3N0IDEwMC4KCkhlcmUgaXMgdGhlIHRhYmxlLCB3aGljaCBzaG93cyBtaW5pbWFsIGFuZCBtYXhpbWFsIHByb2dyZXNzIGZvciBlYWNoIHVzZXI6CmBgYHtyIGVjaG89RiwgbWVzc2FnZT1GLCByZXN1bHRzPSdhc2lzJ30KZF9hZ2dyWywgYygnbWluX3Byb2dyZXNzJywgJ21heF9wcm9ncmVzcycsICdwcm9ncmVzc19pbnRlcnZhbCcpXSAlPiUKICAgIGthYmxlKGZvcm1hdD0naHRtbCcsIHRhYmxlLmF0dHIgPSAnc3R5bGU9IndpZHRoOjQwJSInLAogICAgICAgICAgY29sLm5hbWVzPWMoJ01pbmltYWwgcHJvZ3Jlc3MnLCAnTWF4aW1hbCBwcm9ncmVzcycsICdMZW5ndGggb2YgcHJvZ3Jlc3MnKSwgYWxpZ24gPSAnY2NjJykgJT4lCiAgICBrYWJsZV9zdHlsaW5nKGJvb3RzdHJhcF9vcHRpb25zID0gYygnc3RyaXBlZCcsICdob3ZlcicpKSAlPiUKICAgIHNjcm9sbF9ib3goaGVpZ2h0ID0gIjUwMHB4IikKYGBgCgoKIyMgSG93IG11Y2ggdGltZSBpdCB0YWtlcyB0byBsZWFybiBNb3JzZSBjb2RlPwoKRXZlbiB0aG91Z2ggd2UgZG9uJ3Qga25vdyByZWFsIHRpbWUsIHdoaWNoIHdhcyByZXF1aXJlZCBmb3IgZWFjaCB1c2VyIHRvIGxlYXJuIE1vcnNlIGNvZGUsIHdlIGNhbiBlc3RpbWF0ZSBpdC4KTGV0J3MgdGFrZSBhbGwgdXNlcnMsIHdobyBoYXZlIGxlbmd0aCBvZiBwcm9ncmVzcyBhdCBsZWFzdCAyMCUsCmNhbGN1bGF0ZSBzcGVlZCBvZiB0aGF0IHByb2dyZXNzIGFuZCBlc3RpbWF0ZSwgaG93IG11Y2ggdGltZSBpdCB3b3VsZCB0YWtlIGZvciB0aGVtIHRvIGxlYXJuIE1vcnNlIGNvZGUuCgpgYGB7ciBlY2hvID0gRn0KZF9hZ2dyICU+JQogIGZpbHRlcihwcm9ncmVzc19pbnRlcnZhbCA+PSAyMCwKICAgICAgICAgZXN0X3RpbWUgPCA1MDApICU+JQogIGdncGxvdChhZXMoZXN0X3RpbWUpKSArCiAgICBnZW9tX2hpc3RvZ3JhbShiaW5zID0gMzAsIGZpbGwgPSAnIzIyMjJCQicpICsKICAgIHhsYWIoJ0VzdGltYXRlZCB0aW1lIHRvIGxlYXJuIE1vcnNlIGNvZGUnKSArIHlsYWIoJ0Ftb3VudCBvZiB1c2VycycpICsKICAgIHNjYWxlX3hfY29udGludW91cyhicmVha3MgPSBzZXEoMCwgMjQwLCAyMCkpICsKICAgIHRoZW1lX2NsYXNzaWMoKQpgYGAKQWNjb3JkaW5nIHRvIG91ciBlc3RpbWF0aW9uLApgciBkX2FnZ3IgJT4lIGZpbHRlcihwcm9ncmVzc19pbnRlcnZhbCA+PSAyMCwgZXN0X3RpbWUgPj0gMTYsIGVzdF90aW1lIDw9IDgwKSAlPiUgbnJvdygpYApvZgpgciBkX2FnZ3IgJT4lIGZpbHRlcihwcm9ncmVzc19pbnRlcnZhbCA+PSAyMCkgJT4lIG5yb3coKWAgdXNlcnMKKGByIChkX2FnZ3IgJT4lIGZpbHRlcihwcm9ncmVzc19pbnRlcnZhbCA+PSAyMCwgZXN0X3RpbWUgPj0gMTYsIGVzdF90aW1lIDw9IDgwKSAlPiUgbnJvdygpIC8gZF9hZ2dyICU+JSBmaWx0ZXIocHJvZ3Jlc3NfaW50ZXJ2YWwgPj0gMjApICU+JSBucm93KCkpICU+JSByb3VuZCgyKSoxMDBgJSkKd291bGQgbGVhcm5lZCBhbGwgbGV0dGVycyBmb3IgMTYtODAgbWludXRlcy4KCiMgVXNlcnMsIHdobyBoYXZlIGxlbmd0aCBvZiBwcm9ncmVzcyBtb3JlIHRoYW4gMzAlCmBgYHtyIGVjaG89RiwgbWVzc2FnZT1GLCB3YXJuaW5nPUYsIGZpZy53aWR0aD0xMiwgZmlnLmhlaWdodD0yMH0KZCAlPiUKICAgICAgICBncm91cF9ieSh1c2VyKSAlPiUKICAgICAgICAjIGZpbHRlcihtYXgocHJvZ3Jlc3MpID49IDUwLCBtYXgocHJvZ3Jlc3MpIDw9MTAwKSAlPiUKICAgICAgICBmaWx0ZXIobWF4KHByb2dyZXNzKSAtIG1pbihwcm9ncmVzcykgPiAzMCkgJT4lCiAgICAgICAgZ2dwbG90KCkgKwogICAgICAgIGdlb21fbGluZShhZXMocHJvZ3Jlc3MgLyAxMDAsIG1pbnV0ZXMvNjApLCBjb2xvcj0nZGFya2JsdWUnKSArCiAgICAgICAgc2NhbGVfeF9jb250aW51b3VzKGxhYmVscyA9IHBlcmNlbnRfZm9ybWF0KCkpICsKICAgICAgICBleHBhbmRfbGltaXRzKHg9YygwLCAxKSkgKwogICAgICAgIGZhY2V0X3dyYXAofiB1c2VyLCBuY29sPTUpICsKICAgICAgICB0aGVtZShheGlzLnRleHQueCA9IGVsZW1lbnRfdGV4dChhbmdsZT05MCwgaGp1c3Q9MSkpICsKICAgICAgICB4bGFiKCdQcm9ncmVzcycpICsgeWxhYignSG91cnMgcGxheWVkJykKCmBgYAojIFdoaWNoIGhpbnQgb3B0aW9ucyBhcmUgYmV0dGVyIGZvciBsZWFybmluZz8KCmBgYHtyfQp0b3Bfc2V0dGluZ3MgPSBkX2FnZ3IgJT4lCiAgICAgICAgbXV0YXRlKHVzZXJzPWFzLmludGVnZXIoMSkpICU+JQogICAgICAgIGZpbHRlcihwcm9ncmVzc19pbnRlcnZhbCA+IDEwKSAlPiUKICAgICAgICBncm91cF9ieShzZXR0aW5ncykgJT4lCiAgICAgICAgc3VtbWFyaXplKGVzdF90aW1lID0gbWVhbihlc3RfdGltZSksCiAgICAgICAgICAgICAgICAgIHRvdGFsX3Byb2dyZXNzID0gc3VtKHByb2dyZXNzX2ludGVydmFsKSwKICAgICAgICAgICAgICAgICAgdXNlcnMgPSBzdW0odXNlcnMpCiAgICAgICAgKSAlPiUKICAgICAgICBhcnJhbmdlKGVzdF90aW1lKQpgYGAK