Skip to content

Commit

Permalink
config.json: Add difficulties (#252)
Browse files Browse the repository at this point in the history
As noted in #195, difficulty rating is hard.

This commit proposes a difficulty rating scale that should be completely
unambiguous, requiring no judgment:

In the last version of problems.md before it was rewritten in #242:

* Everything in "Introduction" stays at 1.
* Everything in "Getting Rusty" gets a 4.
* Everything in "Rust Gets Strange" gets a 7.
* Everything in "Putting it all Together" gets a 10.

It is acknowledged that this is not a perfect difficulty scheme. See,
for example, how many exercises are at 4.
However, it is more accurate than leaving them all at 1 because it is
generally true that those exercises in "Getting Rusty" are more
difficult than those in "Introduction".
It is a starting point from which further adjustments can be made.
I posit that there is little motivation to adjust further until the
difficulty ratings actually show up on the website, since until then
they are just arbitrary numbers with no meaning.

Closes #179.
  • Loading branch information
petertseng authored Jan 30, 2017
1 parent 65de2c9 commit d3c0afe
Showing 1 changed file with 41 additions and 41 deletions.
82 changes: 41 additions & 41 deletions config.json
Original file line number Diff line number Diff line change
Expand Up @@ -81,14 +81,14 @@
},
{
"slug": "hamming",
"difficulty": 1,
"difficulty": 4,
"topics": [
"Result"
]
},
{
"slug": "pascals-triangle",
"difficulty": 1,
"difficulty": 4,
"topics": [
"Math",
"Vec",
Expand All @@ -97,23 +97,23 @@
},
{
"slug": "scrabble-score",
"difficulty": 1,
"difficulty": 4,
"topics": [
"chaining higher-order functions",
"HashMap (optional)"
]
},
{
"slug": "pangram",
"difficulty": 1,
"difficulty": 4,
"topics": [
"filter",
"ascii (optional)"
]
},
{
"slug": "nucleotide-count",
"difficulty": 1,
"difficulty": 4,
"topics": [
"Result",
"filter",
Expand All @@ -124,7 +124,7 @@
},
{
"slug": "luhn",
"difficulty": 1,
"difficulty": 4,
"topics": [
"str to digits",
"iterators",
Expand All @@ -133,7 +133,7 @@
},
{
"slug": "largest-series-product",
"difficulty": 1,
"difficulty": 4,
"topics": [
"Result",
"windows",
Expand All @@ -143,7 +143,7 @@
},
{
"slug": "word-count",
"difficulty": 1,
"difficulty": 4,
"topics": [
"hashmap",
"str vs string",
Expand All @@ -153,7 +153,7 @@
},
{
"slug": "atbash-cipher",
"difficulty": 1,
"difficulty": 4,
"topics": [
"str vs string",
"primitive types",
Expand All @@ -164,14 +164,14 @@
},
{
"slug": "etl",
"difficulty": 1,
"difficulty": 4,
"topics": [
"btree"
]
},
{
"slug": "acronym",
"difficulty": 1,
"difficulty": 4,
"topics": [
"map",
"flat_map",
Expand All @@ -182,7 +182,7 @@
},
{
"slug": "sieve",
"difficulty": 1,
"difficulty": 4,
"topics": [
"vector",
"map",
Expand All @@ -191,7 +191,7 @@
},
{
"slug": "rna-transcription",
"difficulty": 1,
"difficulty": 4,
"topics": [
"match",
"struct",
Expand All @@ -200,15 +200,15 @@
},
{
"slug": "triangle",
"difficulty": 1,
"difficulty": 4,
"topics": [
"Math",
"Struct"
]
},
{
"slug": "roman-numerals",
"difficulty": 1,
"difficulty": 4,
"topics": [
"mutable",
"results",
Expand All @@ -219,7 +219,7 @@
},
{
"slug": "all-your-base",
"difficulty": 1,
"difficulty": 4,
"topics": [
"Result",
"enumerate",
Expand All @@ -229,7 +229,7 @@
},
{
"slug": "grade-school",
"difficulty": 1,
"difficulty": 4,
"topics": [
"struct",
"entry api",
Expand All @@ -239,23 +239,23 @@
},
{
"slug": "robot-simulator",
"difficulty": 1,
"difficulty": 4,
"topics": [
"Immutability",
"enum"
]
},
{
"slug": "bracket-push",
"difficulty": 1,
"difficulty": 4,
"topics": [
"From trait",
"stack or recursion"
]
},
{
"slug": "queen-attack",
"difficulty": 1,
"difficulty": 4,
"topics": [
"struct",
"trait (optional)",
Expand All @@ -264,7 +264,7 @@
},
{
"slug": "bowling",
"difficulty": 1,
"difficulty": 4,
"topics": [
"struct",
"Result",
Expand All @@ -273,15 +273,15 @@
},
{
"slug": "sublist",
"difficulty": 1,
"difficulty": 4,
"topics": [
"enum",
"generic over type"
]
},
{
"slug": "space-age",
"difficulty": 1,
"difficulty": 4,
"topics": [
"Custom Trait",
"From Trait",
Expand All @@ -290,7 +290,7 @@
},
{
"slug": "allergies",
"difficulty": 1,
"difficulty": 4,
"topics": [
"struct",
"enum",
Expand All @@ -301,7 +301,7 @@
},
{
"slug": "variable-length-quantity",
"difficulty": 1,
"difficulty": 4,
"topics": [
"Encodings",
"slices",
Expand All @@ -311,7 +311,7 @@
},
{
"slug": "phone-number",
"difficulty": 1,
"difficulty": 4,
"topics": [
"option",
"format",
Expand All @@ -322,7 +322,7 @@
},
{
"slug": "wordy",
"difficulty": 1,
"difficulty": 4,
"topics": [
"Result",
"string parsing",
Expand All @@ -331,7 +331,7 @@
},
{
"slug": "tournament",
"difficulty": 1,
"difficulty": 4,
"topics": [
"enum",
"sorting",
Expand All @@ -341,7 +341,7 @@
},
{
"slug": "custom-set",
"difficulty": 1,
"difficulty": 4,
"topics": [
"generic over type",
"vector",
Expand All @@ -351,7 +351,7 @@
},
{
"slug": "alphametics",
"difficulty": 1,
"difficulty": 4,
"topics": [
"string parsing",
"combinations",
Expand All @@ -361,7 +361,7 @@
},
{
"slug": "anagram",
"difficulty": 1,
"difficulty": 7,
"topics": [
"lifetimes",
"str vs string",
Expand All @@ -372,7 +372,7 @@
},
{
"slug": "nucleotide-codons",
"difficulty": 1,
"difficulty": 7,
"topics": [
"struct",
"hash map",
Expand All @@ -382,7 +382,7 @@
},
{
"slug": "robot-name",
"difficulty": 1,
"difficulty": 7,
"topics": [
"struct",
"slices",
Expand All @@ -393,7 +393,7 @@
},
{
"slug": "ocr-numbers",
"difficulty": 1,
"difficulty": 10,
"topics": [
"Lines",
"Chunks",
Expand All @@ -402,29 +402,29 @@
},
{
"slug": "minesweeper",
"difficulty": 1,
"difficulty": 10,
"topics": [
"Board state"
]
},
{
"slug": "dominoes",
"difficulty": 1,
"difficulty": 10,
"topics": [
"Graph theory",
"searching"
]
},
{
"slug": "parallel-letter-frequency",
"difficulty": 1,
"difficulty": 10,
"topics": [
"multi-threading"
]
},
{
"slug": "rectangles",
"difficulty": 1,
"difficulty": 10,
"topics": [
"Enum",
"structs",
Expand All @@ -434,22 +434,22 @@
},
{
"slug": "forth",
"difficulty": 1,
"difficulty": 10,
"topics": [
"Parser reimplementation"
]
},
{
"slug": "circular-buffer",
"difficulty": 1,
"difficulty": 10,
"topics": [
"Buffer reimplementation",
"Generics"
]
},
{
"slug": "react",
"difficulty": 1,
"difficulty": 10,
"topics": [
"Lifetimes",
"generics",
Expand Down

0 comments on commit d3c0afe

Please sign in to comment.