Our vision:

We give a fuck.


In what3fucks, we give a fuck so you can give more fucks.

Some people don't give a fuck. But we like giving fucks, and our goal is to enable you to give more fucks.

So instead of telling other people the name of a place, you can give them several fucks, which will pinpoint that place. Every fuck you give will improve the accuracy by around 9 fucking bits. In other words, motherfucker: the more fucks you give, the more precision you get!

When you need somebody to give a fuck about somewhere, then ask them "What three fucks?". e.g.: "What three fucks are we going to?".

Start now, give a fuck today. Or better, give three fucks.

Our Core Fucks


Fuck addresses

Fuck these. Because they're boring as fuck.

Fuck squares

Fuck those. Triangles are rad, motherfucker!

Fuck politeness

We should be fucking able to use whatever fucking words we fucking like.

Fuck closed source

What3Fucks is licensed under the Do What The Fuck You Want Public License.

FFAQ: Frequently Fucked-up Ask Questions.

Nobody asks us these questions, really. It's more like a "questions we expect those cocksuckers to ask themselves when discovering What3Fucks so we don't have to pay attention to them" section.

That's not a question, dipshit. If you don't want to use What3Fucks, fuck off somewhere else. Also, fuck you.

Fuck no.

You don't have the fucking moral right to assert what a person from a different ethnic/racial/cultural/sexual group that you don't belong to feels like.

Fuck no.

We don't handle requests like these, because it's fucking impossible to keep everybody happy.

Now, if you truly believe that your group is under/overrepresented, and you can come up with terms that offend a different over/underrepresented group, and if that would make What3Fucks offend everybody more equally, then we actually would like to hear your fucking suggestion! Give us a shout!

Better yet, grow a fucking do-it-yourselfhead attitude, head to the code repo, fork the project, make the changes yourself, and submit a merge request.

The lazy fuckers who made What3Fucks actually will show a lot more respect to you if you are willing to get your hands dirty (as opposed to just bitching about problems).

That's a fucking good question.

What3Fucks is based on a few well-fucking-known pieces.

The first thing is some shit called a "Global Discrete Geodesic Grid", which is boffin-speak for "a clever way of cutting the earth in smaller pieces". What3Fucks uses one particular grid called "Octahedral Quaternary Triangular Mesh". We didn't know it was called that until we found some fucking academic papers that used that name like, 20 years ago. We would prefer the more up-to-date term "fucking triangles and shit, bro".

So you have to think that the earth is shaped like one of those funky dice with eight sides that nerds use in dungeons&dragons, and then you cut each fucking triangle into four triangles, and each of those shitty triangles you cut them again and again and again until it's small enough. So each of the faces of the funky die have a number, and each division of the triangles have four numbers, so any motherfucker with half a brain can assign a different number to each different tiny little triangle.


The second thing is fucking the digits and using words instead. So zero becomes "fuck", one becomes "shit", two becomes "piss", three becomes "dick", four becomes "cunt", and three-thousand-and-forty-one becomes "dick-fuck-cunt-shit". We looked up this shit in wikipedia and turns out that some clever smartasses were using something like that in the middle ages.

0fuck
1shit
2piss
8ass
9clit

The third thing is using more than ten words. The math boffins use a thing called radix. This shit is, like, basic stuff in mathematics so I'm not gonna explain this shit, just read the fucking example from wikipedia:

In the system with radix 13, for example, a string of digits such as 398 denotes the number 3 × 132 + 9 × 131 + 8 × 130.

Using something like 512 allows to use a lot more fucking words:

0fuck
1shit
2piss
510motherfucker
511cocksucker

So if you give What3Fucks a point on the earth, it will calculate which tiny little triangle it belongs to, then it will calculate the number of that triangle, represent that number in radix 512 or whatever, and use a different word for every digit.

The cool shit is that if a mofo splits the triangles into smaller ones, the numbers become greater, so you need more digits, so you need more words. That's why you need to give more fucks when the triangles become smaller!

We're fucking glad you give a fuck about geodesic grids!

You'll have to do some fucking academic research. Unless you're a boffin working in a fucking university, access to some of these fucking papers might be difficult. In What3Fucks, we believe that any motherfucker should be able to read whatever fucking paper they desire, so that's why we believe in sci-hub.

Enough chatter, let's cut to the fucking meat. Read these:

That list is not fucking complete, so you might need to move your fucking ass and do some work to find better stuff. If you give a fuck about this, contact us or send a merge request to the fucking repo, so this list can stop being so shitty.

What3Fucks uses the Do What The Fuck You Want Public License, which means we don't really give a fuck about what you do with this. I mean, we give a fuck so you can give a fuck, but we don't give a fuck about what do you give your fucks for.

First class shit, yo.

LeafletJS for the web map, with an OpenStreetMap base map via MapTiles CDN, plus a bit of our own javascript magic.

We're a bunch of lazy bastards, so half of the webpage design is based on a bootstrap template, with jQuery and all. The logo is a glyph from emoji-one with the corporate colour scheme. Click on the links and RTFM if you give a fuck about the differences between BSD and CC-by licenses.

What3Fucks doesn't need any of that server shit. This means that's it's easier to make What3Fucks work offline (but we're lazy bastards, so we haven't worked on that yet), and even that clever cocksuckers can copy the code and give fucks without needing to use the What3Fucks website.

We host the source code in GitLab. We don't want to use github since the allegations of sexual misconduct. Fucking is fucking awesome, but first make sure the person you're fucking is cool with that, bro. Sexual harassment is a dick move.

For a short time, we used Mapzen search to give a fuck about old boring toponyms, but they decided to be too prude for the bleeding edge in geocoding. We thought they were cool. We've switched to Photon by Komoot, which has some fucktastic terms of use.

Fuck cookies.

What3Fucks doesn't need any fucking cookies to "improve your experience" or "deliver the best content" or any of that bullshit.

On the other hand, chocolate cookies are fucking awesome.

Because the Mercator map projection is a piece of shit. The north and south pole cannot be represented, so when a triangle has a vertex on a fucking pole, we need to use a fucking artifact to display it.

All this shit would be so much easier if the earth was motherfucking flat.

It might be because you live in Fucking, Austria, or Dildo, Newfoundland or Condom, France or some other place with a motherfucking cool name.

And then sure there's the prudes who say that some fucking words cannot be used for describing fucking names. For fuck's sake, go to Hell already.

Listen, it's not our fucking fault that your town chose a name that is going to be deprecated once What3Fucks takes over all the shitty names. Some smartasses will say that this is a problem with the toponyms (which is latin for "name of the place") being confused with the fuckonyms (which is latin for "fuck this name"). Just give more fucks about where you live.

Both "W3F" and "WTF" are accepted.

In fact, if anybody is asking you "WTF?", it means they want to know What3Fucks something is happening. Give a fuck for them!

We also like emoji shit. If you get high on emojis, you can abbreviate What3Fucks to "🖕🖕🖕". That's our fucking logo, three times. Isn't that fucking cool?

You can find the fucking source code at https://gitlab.com/IvanSanchez/geogrids. We have respect for motherfuckers who don't bitch around and suggest code changes instead.

FAPI: Fucking Application Programming Interface


Get ready to do some Fucking Application Programming (or FAP)


We give a fuck about cocksuckers who write computer code. We hope some of those cocksuckers are also FAPers, and we want to help them to FAP easier.

This is motherfucking easy with our FAPI. We chose a JavaScript module FAPI because that way it's easier to fuck up your dependencies and your entire build.

Keep in mind that this is not a fucking teach-a-toddler-how-to-walk tutorial. We'll show you how to do it, then you're on your fucking own.

First, install the fucking javascript module. You do this by typing npm install geogrids.

Then, use the fucking javascript module in your code. You do this by writing var geogrids = require('geogrids');.

Tell your code to find a motherfucking triangle for a point on the earth. Give the shit a latitude and longitude (in degrees) and a number of bytes of precision, like var number = geogrids.gdgg.oqtm.latLngToNumericHash(12.86250, 48.06744, 27);.

Now get that number and convert it to some fucks (with the same precision), with var str = geogrids.encoders.fucks.hashToString(number, 27);.

Maybe you're a lazy fucker that likes to copy-paste code around, and we've given a fuck about you:

npm install geogrids
var geogrids = require('geogrids');
var lat = 12.86250;
var lng = 48.06744;
var number = geogrids.gdgg.oqtm.latLngToNumericHash(lat, lng, 27);
var str = geogrids.encoders.fucks.hashToString(number, 27);
console.log(str);

And this is how the fuck to do the inverse:

npm install geogrids
var geogrids = require('geogrids');
var fuckedUpPlace = "super swine tallowcatch gayass bullshit";
var hashAndPrecision = geogrids.encoders.fucks.stringToHash(fuckedUpPlace);
var hash = hashAndPrecision.hash;
var precision = hashAndPrecision.precision;
var point = geogrids.gdgg.oqtm.numericHashToLatLng(hash, precision);
console.log(point);
var area =  geogrids.gdgg.oqtm.numericHashToArea(hash, precision);

There's some other stuff in the JavaScript module, but if you have two brain cells you'll be able to search for them on your own. Now go FAP!

Meet our team of

Lazy Bastards


Or did you think this piece of shit appeared out of thin air?

The Pineapple

The fruit behind the idea for What3Fucks.

Mr. Balls

He had the balls to pull this off.

Ms. Pussy

She's soft anf fluffy and we like her GIFs.

Other sites of the What🖕3🖕Fucks

Network

What3Pokemon

What💺3💺Ikea

What☝3☝GoshDarnIts


Sites not affiliated with us:

What2Numbers

What3Emojis

We fucking listen.


Not satisfied with the amount of fucks that we give? Write us a fucking email. Be advised that we might or might not give a fuck about it.