Show HN: Learn where countries are on the world map with Spaced Repetition

map.koljapluemer.com

163 points by blackbrokkoli 2 days ago

Hi HN,

I made a web game to practice country locations a while ago and HN liked it, so I thought I'd post my updated version as well.

As for how the game works and feels, I'd really recommend you checking it out for yourself, it's free, no signup, no ads.

The tech stack is Vue + ts + Tailwind/Daisy for the looks. The learning algorithm is a slight modification of the ts version of FSRS.

If you have anything to add, it's open source as well (https://github.com/koljapluemer/learn-worldmap), although not well documented yet.

In the end it's just a little sideproject, but I hope you enjoy it — any feedback welcome :)

ks2048 14 hours ago

What list did you use for the list of "countries"? (I only ask because the first one I got was Northern Cyprus which is only recognized by Turkey and not a UN state).

edit: I see the code is fetching from the following, which has 177 features:

https://raw.githubusercontent.com/holtzy/D3-graph-gallery/ma...

  • poizan42 10 hours ago

    It also has Greenland which is just an autonomous region of Denmark, but not the Faroe Islands which is our other autonomous region. I guess Greenland is just more visible due to its size (both regions actually have about the same population)

  • radicalcentrist 14 hours ago

    Interesting, thank you for the link. This answers a few questions I had about preferred country names while trying out the game, such as Czech Republic/Czechia, Swaziland/Eswatini, Turkey/Turkiye. I also found the partially recognized states curious, especially Palestine being reduced to "West Bank".

    • netsharc 13 hours ago

      Ah, geo-politics meets technology. Imagine flying into a country, and the border guards tell you "Did you make this website? Well, the depiction of our country is a few pixels off, that offends us. Hands behind your back.".

      Or that that body of water is "Gulf of America" now...

      C.f.: https://www.vox.com/culture/2023/7/13/23791805/barbie-map-ni...

  • yesbabyyes 3 hours ago

    I had a similar reaction to the borders of Western Sahara, where it seems like most of it is part of Morocco in this map.

    Apart from these issues, it's really nice, well done!

  • sh1mmer 6 hours ago

    Also “England” but the shape is the UK.

  • ethanwillis 6 hours ago

    It also includes "Somaliland" which apparently is only somewhat recognized by China.

moi2388 an hour ago

I got the countries Sweden, El Salvador and Luxembourg.

I know where these countries are. I still had to select all of them at least 5 times each before I got another country.

Spaced repetition != immediate repetition.

Please fix this. If you have something correct, it should move it to the back of the stack.

Other than that, great.

kelseydh 15 hours ago

This is a great idea, though I feel like if you guessed the country accurately the first time I would like it move on to another country. That or a button that lets me skip to new countries. I know where Australia and it's a bit tedious to be forced into spaced repetition for it three times.

  • imoverclocked 14 hours ago

    -1

    I'm surprisingly bad at the first 5 countries suggested but I managed to guess the general region well enough to hit it correctly on the global map.

    At the same time, I feel like a lot more people know where Australia is compared to (say) Laos.

    I love the zooming in; Did I just know that country was in Europe or did I really know which map-feature was the country?

  • imglorp 15 hours ago

    +1

    Also: After you guess one, a button to jump to Wikipedia to learn more.

    Today I learned Lesotho is the largest sovereign enclave; there are two smaller on the Italian peninsula.

    • gaoryrt an hour ago

      That's a good idea.

  • dwringer 12 hours ago

    I had the same experience. I played for a few minutes, and the only repetitions I got were countries I already identified on the first guess. I didn't get repeats of any country that I missed initially.

avvt4avaw 14 hours ago

Some Welsh, Scottish and Northern Irish people may take issue with your definition of "England"

  • butshouldyou 13 hours ago

    So does this english person! That's the UK.

crvdgc 2 hours ago

Related Anki deck: https://github.com/anki-geo/ultimate-geography

The data is also a bit more up to date w.r.t. the problems pointed out by sibling comments like changed names, different claims, distinguishing territories from countries.

Also commented in the original post.

martindbp 9 hours ago

Love it!

Last summer I put together a flag quizzing game with my niece, who's a geography nerd: https://flagsaroundthe.world/

I think minimally contrastive examples work well for learning, i.e. you want to first learn to distinguish between broadly different categories, and focus on more and more similar examples over time. This little app doesn't have scheduling at all, it just samples examples based on previous responses, so sampling examples you got right exponentially less often as you keep answering correctly. I think sampling has some interesting advantages to SRS scheduling actually. Add new "items" becomes a straight sampling problem, where you can set a constant probability for each item that hasn't been seen yet.

butshouldyou 13 hours ago

Nice little game! One correction: Swaziland has been called Eswatini since 2018. Lots of websites still use the old name, unfortunately.

  • pixelpoet 12 hours ago

    Eish, even as a South African (who later emigrated) I didn't know that, and now need to learn this new name. So much for "Swazi Gold"...

whiterook6 10 hours ago

I'd like to play this on my phone but everytime I try to zoom or pan it thinks I'm making a guess in the middle of the ocean. Also it often gives me a success when the country is definitely not within the chosen circle. Sometimes it starts a new view with the circle already in the right place.

codethief 14 hours ago

Nice job!

A few observations & thoughts:

- With remote islands somewhere in the oceans, the last zoom level isn't very effective since the map will essentially only show the island you're supposed to identify.

- The map's resolution could be higher.

- The challenge (top right) doesn't work for me in Firefox for Android. It always tells me I have guessed wrong (as if I had accidentally tapped somewhere on the map) when in reality I haven't even made a guess in the first place and was waiting for the game to tell me which country to identify.

LouisSayers 11 hours ago

Nice work! It's quite cool.

Feedback:

  - It'd be great to be able to move the map around, zoom in / out - staying in one place feels a bit restricting.
  - For some smaller countries you can't actually see where they were once the ring is put over them
  - Once a country has been identified it'd be handy to see their neighbouring countries to add some more context to where a country is.
  - It'd also be nice to learn a bit more about a country (e.g. unique things about it) that may help further cement the idea of a country so that it's more than just a name on a map.
kazinator 12 hours ago

Although that's a decent UI and gamification with the circles and all, if I seriously wanted to memorize this information, I would just want the data as an Anki deck.

Front of card: country name, plus possibly: recognizably large segment of world map containing that country, without highlighting.

Back of card: same graphic, with that country colored.

Determining whether you got it right is self-evaluation in Anki; if you thought of the correct map shown in by the back of the card, you hit the good button, otherwise bad.

This clever paradigm in Anki means that deck authors don't have to develop UI for the user to specify correct answers.

Say you want to go from dog breed names like "Yorkshire terrier" to photographs (rather than photo to name). How would you develop a UI by which the machine could test you and confirm that you know? Probably multiple choice is all we have. Multiple choice with too few choices gives the answer away to some extent. Too many choices will overwhelm your mobile device screen. You could ask the use to draw the animal. That would be time consuming and require talent not directly related to memorizing dogs.

With self evaluation, you don't need it. You just imagine a Yorkshire terrier as best as you can. Then if you think the back of the card is close to what you were thinking off, you hit Good. If you imagined a Westie, or German Shepherd, so that you are surprised and dismayed by the unexpected Yorkie image, then you hit Bad.

  • adamgordonbell 11 hours ago

    I've done that. You need variations though, or you learn that specific map framing. I like that this has rotations and zooms. Should generalize better.

    • kazinator 7 hours ago

      To learn where in the world Guyana or Myanmar are, all you need to work with is maps that are aligned so that North is toward the top of the screen.

      Just like to learn algebra, you don't need to solve equations upside down, or to learn to read, you don't need to read upside down. These variations don't speak to the semantics of the main activity whatsoever.

      If you know where every country is from doing spaced repetition and someone gives you a world map upside down, you will easily find a given country; you can mentally rotate the map then.

      • SuperNinKenDo 4 hours ago

        I think parent is more concerned with the way that after enough times seeing the same image and linking it to an answer, your brain does what your brain does best, which is find mental shortcuts. Gradually you come to associate the image with the answer, without regard to any kind of "why". This process happens rather quickly, and when you're faced with even only a slightly different image, you suddenly find it's very difficult to remember what the country is, despite blazing through it in your reviews.

        Changing the image slightly helps force you to actually think about _why_ you know the image is depicting the country in question, rather than simply building automatic visual recall of a country name tied to a specific image.

        You can of course achieve the same thing with just having a bunch of different "stylesheets" for your map or something, but that probably requires manual creation in order to not be a complete mess, and still probably isn't as good for building transferable knowledge. This approach on the other hand is much better at building transferable knowledge, but requires more frustration and a much longer time horizon to be able to usefully utilise the knowledge.

wyclif 5 hours ago

Some general feedback after trying it briefly a few minutes ago:

I suppose I'm slightly more geographically aware than average, but certainly by no means that good at geoguesser type games in the past. Even so, it felt way too easy for me. I got the first 40-50 correct before I closed it because it wasn't challenging enough for me.

scottmcf 15 hours ago

This is an absolutely excellent way to learn, I am surprised at just how effective it was. I'd love a "manual" mode that let me discard countries/mark them to stay in rotation.

  • RheingoldRiver 9 hours ago

    Yeah, one of the first countries I was asked to identify was "USA" and......that's just a waste of time

ripped_britches 7 hours ago

Have fun with “the small disputed territory that produces chips” - actually spoken by Dario A in a talk this week

  • readthenotes1 4 hours ago

    Are you planning on a bender, to tie one on?

radicalcentrist 14 hours ago

This is awesome, I got way more sucked into this than I expected. If you're open to adding more features, a "custom playlist" would be really cool. I'd love to drill myself on the Balkans or West Africa, for instance.

eagsalazar2 10 hours ago

I love this! A couple little points:

- After someone selects the right country, you should add country labels to the map for a second or two before transitioning so that context can reinforce the learning ("oh it's right next to Chile!") - Maybe show sattelite view for the same reason? So people can learn to ID countries by mountain ranges, lakes, etc?

vladde 15 hours ago

I am really enjoying this! I'll continue to use this for a while, and I really hope I'll learn more countries in the long term

Also, I absolutely love that it's so easy to start playing (no signup, no popups, etc)

Question: For the countries I know and select first time, I get them multiple times between countries. It's a bit odd to have to select England a couple of times, but the countries I don't know, I seem to get less often, or no repeats at all. Is this intended?

(edit) Question 2: Is there any scenario where you'd actually guess wrong more than once? After the first miss click, the country is highlighted. I don't see I'd ever get "You found country in 3 clicks".

nebalee 14 hours ago

Neat, but England is wrong. The area highlighted when clicking is the United Kingdom.

jmole 14 hours ago

This is so cool. I modified the script so that the countries are a bit darker (#777), and I found that it helped the borders pop a lot more. It would probably be equally interesting to play this game with no borders at all.

Not to scope creep, but it would be great if users could pick from 1 or 2 themes. Or maybe just refactor it so that changing a global var from the javascript would let you change the colors.

edit: also the collective north and south poles take up about 60% of the zoomed out map. I bet you could crop most of antarctica and a significant portion of the upper northern hemisphere without degrading the experience.

floodfx 15 hours ago

Love this! Played Worldle (https://worldle.teuteuf.fr/) for a while and this would have been helpful.

Great application of spaced repetition beyond cards.

  • Graziano_M 14 hours ago

    Try out travle.earth

    • codethief 14 hours ago

      Came here to mention Travle. Such a fun game! I've learnt a ton of geography through it in recent months!

cschneid 14 hours ago

A few thoughts after ~5 minutes:

* I like how the map moves around. It helps nail down relationships to neighbors * I don't mind a few extra "Where's canada", even though it's not that useful * I'd like the pause between answers be shorter. * Small countries are impossible to see when zoomed out on the first exposure, even when selected right. I find myself knowing the area it's in (ie, central america) but not which exact country. So selecting it right when zoomed out doesn't get me the correct answer.

antman 3 hours ago

Stuck in an endless loop bug argentina, libya, bangladesh

wildzzz 10 hours ago

This is really fun but the challenge mode seems to be messed up for me on Android Chrome. When I click the country, it gives me the point but seems to take that same input for the next country as well which is usually a failure. It's like it's using my finger lifting up as the next input.

rendall an hour ago

A progress status would be interesting:

  Known: 87%
Also, I'm going to add to the chorus who wants a [Skip] button for known countries.
tiktaktow 15 hours ago

This is fun!

I can identify all mainland countries but have really hard time with the island nations in Oceania and the Caribbean. Would love to have an option to select which specific area I want to practice with.

Also for countries that I can identify with first click, I have to keep clicking until the cycle is complete. It make sense to zoom and ask to identify the countries again, but maybe stop after getting it right continuously ~3 times?

Graziano_M 15 hours ago

I find it surprisingly effective how you have to get it closer when it zooms in and you have to do it with less context. There were a bunch of countries that I could point general on a map, but that I might mix up with a neighbour, e.g. Guyana and French Guyana. With this method, I got it on the first try, and each time it zoomed in I was able to remember more specifically.

mckn1ght 10 hours ago

Pretty cool, I like how it moves around, and the mechanic for guessing your way to something you don't know.

I did a lot of sporcle grinding back in the day to learn all the countries of the world. Memories unlocked!

neither_color 11 hours ago

This is fun. I'd appreciate a way to select only certain continents/regions. At the very least let us mark a country as known. As it is there are too many reps when it's a country you already know.

rafram 12 hours ago

I’d prefer if it did what Anki does — give me 10-20 new countries before cycling back to ones I’ve already done. Just switching back and forth between two countries I already know over and over again is pretty boring.

Also, why is Antarctica on there?

i_am_a_squirrel 15 hours ago

As someone who uses Anki, and has also made a country learning game, this is soooooo smart! Great job! Thank you!

sdotdev 14 hours ago

I like how the position of the map changes to center another place or zooms in to really make you think.

only slight thing is that i wish the map had more contrast, apart from that this is great

rendall 2 hours ago

I am enjoying it! Besides the other feedback that has been raised and addressed already, on mobile (Android Chrome) the instructions say to drag the circle, but the behavior is that the circle jumps to the point of first touch; more of a "click on the country" behavior than drag.

But that's minor. Really fun project!

grimgrin 15 hours ago

nice job! particularly glad when you close/open tab it continues where you left off

I am your classic american who would embarrass themselves if publicly tested on this. Never done spaced repetition outside of index card analogs, and I like the idea

I'll have to click more to experience the `spaced repetition` bit, just getting an early comment in to cheers you

dbcurtis 4 hours ago

Pffft.... that's what ham radio is for. (Note: humorous, not ill intent here. An old office mate of mine once kidded me that he thought ham radio was a conspiracy on the part of the world's geography teachers to get people to take an interest in their subject.)

straffs 11 hours ago

This is something i'll make my kids play when they are older!

Graziano_M 14 hours ago

There seems to be a bug with Fiji. It moves the map around, but never zooms in on it.

  • ks2048 14 hours ago

    That’s what they get for putting their country on the international date line.

ananmays 15 hours ago

very cool - it would be fun to load more detailed outlines at higher resolutions using map tiles or someing. at high zooms some of the shapes are quite blocky

mreichhoff 10 hours ago

cool! what modifications did you make to the default FSRS algorithm?

sciencesama 14 hours ago

Dockerize it to easy selfhost !

rahimnathwani 15 hours ago

Wow. This is really cool. After reading the headline, I was expecting to see it and think 'meh, why not just use Anki and the Ultimate Geography deck'.

I was wrong!

But the fact I get credit for knowing roughly where a country is, and then it zooms in, is a great idea. And well implemented.

I am going to try this for a bit and, if it works well, I'll ask my son (8yo) to consider adding it to his daily habits.

littlestymaar 9 hours ago

This us cool, but please don't repeat the countries we already know too soon. It gets boring very soon when it asks you in a loop 4 countries you've traveled to and you know exactly where they are!

Edit: OK I suspect there's a clear bug, because over the first 15 country or so, the only one I didn't know how to place (East Timor) hasn't been asked to me again after like 20 times asking me stupid thing like Greece and Algeria in a loop.

deadbabe 14 hours ago

This may seem odd but I don’t like knowing where countries are, it makes the world seem like a much larger more mysterious place. It’s cool to stumble across some country you never knew existed in some part of the world you barely thought about. Knowing where a country is in the world has little use these days, since transcending physical borders is pretty trivial. It’s mostly a useless fact or piece of trivia now.