Sunday, October 18, 2026

One major problem with GeoGuessr

GeoGuessr is an online browser-based game that's heavily based on Google Maps and, especially, Google Street View. Originally, people just loved to wander the streets and roads of the world in Street View, and GeoGuessr made it into an outright game: It gives you a random street view location, removes all labels and other data that would indicate where you are, and your task is to try to guess (on the world map) where exactly you are.

Turns out that this is not just a niche curiosity of a "game". In fact, it turned out to be so immensely popular that there are millions of players and outright professional tournaments (organized by the game's developers) nowadays run in lavish stages with a big crowds of live spectators.

While (as far as I know) Google does not own the game nor the development company, they fully support it, and have added a huge amount of features and APIs to Street View to help GeoGuessr. Needless to say, the game has skyrocketed the popularity of the Google Maps and Google Street View services.

The game is also a fantastic tool to learn more about world geography than most people would have ever learned in their entire lives on their own. When you play enough, you'll get to know what several different countries look like, what kind of language they use, what the infrastructure looks like, and you learn a lot of tidbits that help you recognize which part of the world, or even which country, you are in (such as what street signs and road markings look like in particular countries.) 

The game offers one particular interesting feature: Creating your own custom maps that other players can play. In other words, a custom "level" that contains either a bunch of specific locations (that are given to players at random), or a bunch of entire areas (from which locations are given to players at random).

This is a fantastic feature because it allows people to create very interesting custom maps. For example, a map could show just stores or restaurants of a particular brand, or it could just show buildings of a particular type (say, for example, football stadiums), or the map might only contain unusually difficult locations (even for very advanced players), and so on and so forth.

There is, however, one very major problem with this feature. Part of the problem is not the fault of the GeoGuessr developers, but part of it is.

Consider and compare it to a rather different game that allows users to create and upload custom levels for other people to play: Super Mario Maker 2. That game is extraordinarily popular, and even though the game has been out for almost 8 years now, there are still literally dozens of custom levels being uploaded to it every minute, which is a truly staggering amount. The total number of user-created levels in the game is literally in the millions. The current estimate is that there are about 49 million such levels (which is a truly staggering amount.)

The thing is: Even though there are so many levels, and the number is increasing very rapidly, almost every single level will be played by at least a few people. Depending on your luck, your level might in fact be played by several hundred people, but at a very minimum a dozen or so plays is almost guaranteed. There's also a high likelihood that you will get several likes and sometimes even comments on your level.

In fact, even if you create a level that's so immensely difficult or immensely obscure that pretty much nobody can beat it, it's pretty much guaranteed that someone will beat it eventually, no matter what it takes. (In fact, there's a dedicated group of players whose mission is to beat every single level at least once. The mission is to not leave a single level unbeaten, no matter how many millions of levels there may be.)

GeoGuessr, however, is not even nearly that engaging. Creating a custom map is actually exciting in itself, because there are tons and tons of cool ideas one can come up with in order to create custom levels. The problem is that it's almost guaranteed that nobody will play your level. At most you might get a measly one play by somebody.

The major problem is that, unlike Super Mario Maker 2, the developers of GeoGuessr have not created any kind of promotion system for user-created maps.

In Super Mario Maker 2, when you upload your level it will immediately appear in a "new levels" list which is pretty much guaranteed to be seen and checked by at least a few players. And even after it falls out of that list, there's a big likelihood it might be given to people to play who are just playing random levels (such as in one of the "endless" game modes, which just gives you user-created levels of a particular estimated difficulty until you run out of lives.)

There's no such a thing in GeoGuessr, so your custom map will not be shown nor promoted by the website anywhere (at least not anywhere where people check and try them.) Also, there isn't any kind of forum where you can make a "try my new map" post either.

So unless you advertise your map somewhere outside of the web site (eg. in a Discord channel or in some dedicated Reddit forum), your new map is pretty much guaranteed to remain in complete obscurity, not being noticed nor played by anybody.

This is especially disincentivizing if you spent a lot of time and effort to create the custom map (which will quite often be the case, if you want for it to have a particular theme.)

Another even major problem is that custom maps quickly become obsolete and broken! This is an even bigger demotivating flaw in the system.

The problem is that Google is constantly updating their Street View images, and for some reason they do not preserve every single previous picture of a particular place. Which means that, essentially, after some months many of the locations you put into your custom map will essentially become broken links. For some reason the game itself doesn't recognize and realize this, and instead will just show a black picture. Which, of course, completely destroys the playability and the entire idea of the map.

This is most probably not the fault of the GeoGuessr developers, but the fault of Google. But regardless of whoever is at fault, it means that most of your maps, at least if they contain particular individual locations (rather than entire delineated areas) are transient: Over time, location after location will become broken and just start showing a black empty picture. Sometimes this can happen in mere months, if not weeks.

So if you have a cool custom map with individual locations, which you created a couple of years ago, the chances that at least half of the locations do not show up anymore, completely breaking your map, is very high. (In fact, this does cause that the authors of unusually popular maps need to be constantly updating them to replace the broken locations with updated ones. It's constant work.)

This pretty much destroys any incentive to create custom maps in GeoGuessr, which is one of its biggest flaws. 

Tuesday, October 13, 2026

Why you should not use AI to write your code

Who would have guessed ten years ago that artificial intelligence would ever, much less in less than a decade, become so incredibly advanced that not only can it program, but it can do it astonishingly well. Not only does it know how to write a program, but it doesn't even require a meticulous explanation and point-by-point specification of what the program needs to do, but a more vague description suffices. What's even more incredible is that you can actually have a fluent back-and-forth conversation with the AI about what is it that you want to achieve, just like you could do with a really smart person, the AI making suggestions and asking questions, and at the conclusion you can ask it to write the program for you, and it will understand everything that was talked about, and not only write the program, but might even do it better than you even imagined.

If you had told me ten years ago that in a decade AIs will be able to do that, I would have laughed at you. I think almost any experienced programmer and tech nerd would have. It seemed absolutely unthinkable back then, especially given the short timeframe.

Yet, here we are. Modern AIs can do exactly that, and can often do an even better job than a human programmer could, and much, much faster. Want to, for example, create a simple interactive web app, which you can upload to eg. GitHub Pages for anybody to use? Do the above, and you'll likely get a good working result.

Given that, it's extraordinarily tempting to just delegate everything to AI. Why spend weeks and months coding something when an AI can do it in a minute, based on a ten-minute conversation and refinement session? You'll get in 15 minutes something that you yourself would have probably spent a week coding. And the AI might even produce a better and richer result than you would have thought of.

However, here are some reasons why you shouldn't just start delegating everything (or even anything) to an AI, instead of writing the code yourself.

1) "Use it or lose it."

Computer programming, especially when you are implementing something that requires thought and perhaps even research, is an intellectual exercise. It requires thinking, planning, possibly some research. If, for example, the program in question implements something related to geometry, it may require you to solve some geometry problems, and think of ways to implement those solutions in code. It also often requires reaching into what you know and remember, about the programming language itself, about programming in general, and about the subject matter that you are solving in your program.

Intellectual exercise is similar to physical exercise. If you spend years not doing any physical exercise, your muscles will atrophy and lose strength and constitution, and your overall fitness and health goes down.

Lack of intellectual exercise is similar: If you spend years and years never engaging in cognitively and intellectually challenging tasks, the ability to do those tasks will slowly but surely deteriorate. If you spend years and years never accessing your memories about particular subjects, it will slowly but surely become harder and harder to access them in the future.

Your cognitive and intellectual skills are not something you cannot lose, or that cannot become weaker. They absolutely and most definitely can become weaker because of disuse, and you may even start losing things you knew, if enough time passes without you accessing and refreshing those memories.

This happens with everything. Including your very native language. Most people are actually not aware of it, and never become aware of it, but you can become extraordinarily poor at speaking and even writing your very own native language, the language that you grew up speaking and have spoken your entire life, if you never use it for many years. Spend 10 years in an environment where you never hear nor use your native language, and then try to use it again, and you'll be surprised how difficult it will have become (so much so that it's outright scary.)

Your native language (and any other language you speak with native fluency) is, however, something that comes back relatively quickly once you start actively hearing and using it once again. However, not all cognitive and intellectual knowledge is like that. Computer programming and especially algorithmic thinking may be much more laborious to relearn once it has deteriorated due to prolonged disuse.

If you have some other cognitively and intellectually challenging activities that you like to engage in, and you don't really care so much about computer programming and developing algorithms, then great. However, if programming is your passion, I would strongly recommend not shoving that passion aside and throwing it away, just because it's more convenient to delegate your coding tasks to an AI.

2) Computer programming is not just a job, it's a passion.

Sure, for many people programming is just a tedious job that they have taken in order to bring food to the table, and they'd rather be doing anything but, and they are not very interested in it.

However, for many avid programmers, coding is a hobby and a passion.

Compare it to other hobbies that people are passionate about: 

Why do painters keep painting by hand, when a computer can print you a high-quality picture in mere minutes? Why even go through the trouble of drawing a picture, when an AI can do that for you? In fact, an AI can generate a hundred versions of the same idea, and will do it much faster than you would be able to draw even one.

And the answer is: Because the passion is in the craft, in the doing, not just the end result. To a professional painter, the joy is in the manual painting process itself. The painting process is not just a tedious nuisance that one is forced to do. Instead, the painting process is the entire idea! That's where the joy is. The end result, the finished painting, is rewarding precisely because of the work you put into creating it. If you had just commissioned the painting from someone else, there would be no joy in it, there would be no sense of reward in it.

Or consider, for example, people who spend hours and hours every day tinkering with some old car. One could ask: Why spend so many hours every day, and why spend so much money, in something so useless? If you want a good car, just buy one. If you want your car fixed, then just take it to a shop where they will fix it for you.

And the answer is, once again: Because the passion is in the craft, not the end result. The passion is in the doing. It's the process that's the joy. It's the process that's rewarding. Seeing your own handiwork in action is what it's all about.

Same goes for programming. For many coders, it's the programming itself that's the passion. The thinking, the planning, the solving of problems, the act of expressing your solutions in the program code, and then see it work as it should. Even if it takes three weeks to do something that an AI could do in three minutes, so what? It's not the speed of writing the code that's the main point: It's precisely the crafting of the code.

3) Programming is an opportunity to learn something new.

This is actually something that professional mathematicians in particular are worried about, and the reason many of them have grown such a big distaste for AI-generated mathematical proofs: When an AI gives you a readymade proof for some mathematical problem, you have learned nothing in the process. When you are given the final end result of the proof, and the process of coming up with that proof is completely missing, very valuable stuff has been completely lost.

That's actually one of the primary reasons why professional mathematicians love to try to solve big and complicated unsolved mathematical problems: While the proof itself is nice, it's actually not the most important thing about it. The most important things are all the tools, techniques and new knowledge, new mathematics, that were developed in order to come up with that proof. In other words, what was learned during the process. Those new techniques are often useful in more than just that one proof.

Computer programming is not completely dissimilar to this. Very often, when you write a program, it's an opportunity to learn new things, things that you didn't know before. They might not be groundbreaking completely new territory in computer programming, but it may well be something that you yourself did not know, learned during the process of developing the program, and may be able to put to good use in the future for further programs and, perhaps, even something outside of programming.

If, however, you delegate the development and writing of the program to someone else, or something else, you will be denying yourself this opportunity to learn new things.