The You Suck At Geography Map Quiz site has actually been live for a bit, but days blurred together, life got in the way, and I burned myself out trying to work on it with very little forward progress, so it’s only now that I’m finally getting around to announcing it.
As it stands now, there’s still no answer checking. The initial launch was even more minimal than that: “what is this country?” and it would show you a random country on the map and a “show answer” button. You, dear reader, were on the honor system for whether you got the answer right or not. Now, I’ve gone and implemented multiple choice answers, but the same system: click any of the answers and it just shows you the correct one. It currently has no idea if you clicked the right one.
Obviously, that’s all got to change, because my biggest goal here isn’t to be just another map quiz, it’s to actually effectively teach you the geography you don’t know. Because there’s no shortage of sites dedicated to random map quizzes, but I’ve felt they all fell short on actually teaching you the location of countries, aside from sheer repetition.
And as user #1 of my map quiz site, the biggest hurdle I’m actually going to face is learning through repetition before I have a chance to implement any of the things that I feel would be useful as teaching tools. Given that I have to test the site as I go. I can’t magically get amnesia and forget all of the countries I’ve learned.
tech problems
I hit two major hurdles in trying to build the site: figuring out how to do randomness in Elm, and building a JSON decoder to properly handle multipolygons (like how the US has the main land and then Alaska and Hawaii are detached) versus countries with a single polygon.
On the plus side, once I figure out how to handle seeds and randomness with Elm, it’s actually going to come in handy as a way to have repeatable quizzes without having to store the data somewhere. But otherwise, it’s been a nightmare of WTF? because I’m used to Ruby where getting a random array element is as simple as [1,3,5].sample
. But in Elm… I still don’t understand it enough to even attempt an explanation.
And when it comes to polygons versus multi polygons… well, compromises were made so let’s just say that, as of now, only countries with polygons are supported because I haven’t figured out how to simultaneously handle the polygon and multi-polygon data structures. It’s kind of on the back burner anyhow because the dataset I used was a compromise itself (borders are “dumbed down” in order to make the data set much less complicated and smaller), so that might get swapped out soon for something else. I’ll definitely revisit the whole thing when I’m more comfortable with JSON decoding in Elm.
For now though, I’m content enough with what I’ve got. I already suck less at geography!