12 comments

  • bkohlmann 2229 days ago
    Googles solution sounds very familiar to what we used in the military: GRGs or geographical reference grids.

    Every point on earth was contained within a box named with two letters. Within each box was a theoretically infinite number of digits that could be assigned.

    Practically, we had immense precision with as few as 8 numbers - 4 each for the horizontal and vertical axes on the map.

    While flying Close Air Support missions, we could be flying 30k feet overhead and within seconds have our sensors on whatever the ground controller wanted us to look at.

    It was a version of Lat/long, but far more intuitive with each digit representing a different order of magnitude of the base measurement unit.

    • stouset 2229 days ago
      For those interested, this is the Military Grid Reference System (MGRS): https://en.m.wikipedia.org/wiki/Military_Grid_Reference_Syst...
    • colek42 2229 days ago
      MGRS is a pain to program. So many edge cases.
      • pouta 2228 days ago
        Can you elaborate? I'm really interested in knowing more...
        • colek42 2217 days ago
          Polar regions are tough, not many libraries support them. Lat/Lon represents a point, MGRS represents an area. This causes issues when converting between MGRS and lat/long and back again. Also, a single location can be represented by several MGRS coordinates since the numerical value is an offset from a line, the letters represent where this line is. Then we get into other issues. When converting from lat/lon we need to know what projection the data is in. I often have to make assumptions here, if my assumptions are wrong it could cause an error of many km, depending on how far away from the equator you are. There are several other edge cases I am probably no stating. If you are interested there is some pretty good sample code here: https://svn.osgeo.org/gdal/trunk/gdal/frmts/nitf/mgrs.c
  • mtmail 2229 days ago
    The article doesn't talk about navigation, but referencing start or end point (geocoding, geohashing). The plus codes are also called open location codes and the pros and cons were recently on the frontpage https://news.ycombinator.com/item?id=16594188
    • dragonwriter 2228 days ago
      > The article doesn't talk about navigation, but referencing start or end point

      That's an essential part of navigation, and one that falls down in many places.

  • theCricketer 2229 days ago
    Plus Codes is a "system is based on dividing the geographical surface of the Earth into tiny ‘tiled areas’, attributing a unique code to each of them. "

    The original blog post: https://india.googleblog.com/2018/03/searching-for-indian-ad...

  • deanCommie 2229 days ago
    Don't we already have a system for mapping worldwide geographic coordinates?

    Or is this essentially an easier to read/remember version of latitude/longitude?

    I thought this would be about more clever pathfinding optimization in a part of the world where typical shortest-path optimizations are much harder.

    • cdirkx 2229 days ago
      A couple of years ago I visited a startup which also tried mapping worldwide coordinates, what3words [1]. They map 3x3m squares to a combination of three words (language customizable). For example: the Eifel tower would be at combos.cove.split. They had some clever tricks for mapping short memorable words to densly populated areas and longer ones to the middle of the ocean. Their aim was similar, to enable talking about a place without the existing infrastructure of adresses and streetnames and for example make it possible to deliver mail in slums.

      [1] www.what3words.com

      • pwinnski 2229 days ago
        what3words is terrible technology, and also proprietary.

        Quick, what direction do you go to get from combos.cove.split to reindeer.steak.rules? I made up the second address, but it highlights how completely useless what3words is for directions.

        Worse than useless.

        • dalemyers 2229 days ago
          Quick, what direction do you go to get from 123 Main Street to 456 Birch Street?

          Quick, what direction do you go to get from 12.34567N, 12.34567W to 56.43210N, 23.87654E?

          Not being able to immediately determine direction between 2 addresses isn't a failing.

          • dingo_bat 2228 days ago
            > Quick, what direction do you go to get from 12.34567N, 12.34567W to 56.43210N, 23.87654E?

            It's a pretty simple piece of math.

      • superlopuh 2229 days ago
        It's a shame that google didn't go with this approach, although I assume it's because of the lack of portability between all the languages in that area. Maybe what3words should pivot into what3emoji.
        • thinkloop 2229 days ago
          Good point about the portability and the emojis idea is clever, but I think the main purpose was to be able to speak then easily.
      • ClassyJacket 2229 days ago
        Our WiFi network name has been our what3words for over a year now since my housemate set it. I'm not sure what their business model is, since this is the first I've heard of them since that.
    • mtmail 2229 days ago
      I don't think I could remember 8GC2 CMXR+X6 (from the plus codes homepage) any better than latitude and longitude. Or spell that over the phone without using the NATO alphabet.
      • telotortium 2228 days ago
        There are features of the plus codes that make it easier than you think to memorize and communicate them, however:

        - Similar to a phone number, the code can be reduced to the last 4 or 6 digits in practice, because the "area code" (in this case, "8GC2") selects a large region (approximately the size of a metropolitan area) and thus can be omitted if referring to destinations in your local area.

        - The letters are selected to be minimally confusable with each other, so you don't need to use the NATO alphabet.

      • mbesto 2229 days ago
        Which is why w3w is a really novel approach to this: https://what3words.com/
        • eat_veggies 2229 days ago
          They're private, proprietary, and online (it can decode regular three word combos offline, but the one word special locations need web access). Switching the order of words results in totally different locations. Google gave the example of "banana rabbit monkey" being in Argentina, "banana monkey rabbit" in Russia [0]. And while it's localized to more languages than just English, the friction when exchanging location data across language barriers seems problematic. For example, giving an English speaker something like "пропан.зачет.некий." in an image, spoken, or written on paper would be totally opaque and hard to even enter with a US keyboard, let alone commit to memory.

          [0] https://github.com/google/open-location-code/wiki/Evaluation...

        • theDoug 2229 days ago
          As far as I can see, this seems to be a "global solution" which only outputs English
    • Piskvorrr 2229 days ago
      Coordinates are hard to get across without messing them up - any number corresponds to something in the vicinity and there's no checksum. This is supposed to be an alternative.
    • onetimemanytime 2229 days ago
      The government of that state has to adopt them to be really "it". Otherwise Google can adopt X solution, Here.com Y solution, Bing Maps Z and so on. Does it matter that Google has a "solution" when the government sends me the bill at another address?
    • rlpb 2229 days ago
      > Or is this essentially an easier to read/remember version of latitude/longitude?

      It's more like the hierarchical telephone numbering system. If you know it's local, the code can be much shorter. It doesn't need to be globally unique; just unique in the same city.

  • walrus01 2229 days ago
    these "plus codes" sound sort of like a DNS system because humans are not good at remembering or typing purely numerical coordinates. For example decimal degrees in a common system:

    48.756071,-122.482410

    (a randomly chosen location in Bellingham, WA)

    in WGS84 datum decimal degrees, six decimal places is accurate to about 0.11 meter, which is close enough for pretty much any human land navigation needs, and considerably better than the actual accuracy of a modern GPS+GLONASS+WAAS receiver.

    if you really want to be super accurate for navigation purposes go for seven decimal places. Anything beyond seven is in the range of high precision GIS/surveying tool needs only.

    https://gis.stackexchange.com/questions/8650/measuring-accur...

    so the question is how to take a string of lat/long coordinates such as the one above for bellingham and turn them into some sort of geographical code which humans can remember and type. Sort of like this:

    https://en.wikipedia.org/wiki/What3words

    the commentary elsewhere in this thread on the private, proprietary nature of what3words is quite valid. I'm not saying that this specific implementation is the best possible idea, but that the general idea of geocoding numbers into a consistent word-based system is something that is more easily remembered and written down by ordinary humans who do not interact with IP addresses and long strings of numbers on a daily basis.

    try to remember a full ipv6 address vs. remembering a DNS hostname, for example.

  • bingobob 2228 days ago
    Plus code isn't new Google talk about them before as there where developed at Google's Zürich engineering office and release in 2014

    there also called open location code https://en.wikipedia.org/wiki/Open_Location_Code

  • LeoPanthera 2228 days ago
    In the world of amateur radio, coordinates are converted into short strings of letters called the Maidenhead Locator System: https://en.wikipedia.org/wiki/Maidenhead_Locator_System

    I always wondered why this system hasn't "escaped" amateur radio and found uses elsewhere.

    • telotortium 2228 days ago
      Looking at the FAQ (https://github.com/google/open-location-code/wiki/Evaluation...), it appears that Plus Codes are very similar to the Maidenhead codes, except in these respects:

      - Maidenhead codes contain vowels, which the Plus code designers didn't want to use in order to avoid having codes spell words (which might have negative associations or be profane).

      - The addition of the "+" character is felt to make it easier to autodetect addresses when provided to Google Maps or similar systems.

  • ChaitanyaSai 2228 days ago
    Anyone know how they get traffic data in India? I am quite amazed by how accurate and near-realtime their traffic maps are. While India is heavily Android, it can't all be from crowdfarmed GPS data, or is it?
    • sumedh 2228 days ago
      Pretty sure its all data from Android phones, why do you think it would be something else?
  • nonamechicken 2228 days ago
    Anybody knows whether Google's or MapMyIndia's is better? http://www.mapmyindia.com/eloc/
  • kylehotchkiss 2229 days ago
    How much shorter could this system be with Emojis? Can they contain enough info to limit it to 3-4 emojis? That would be easier to remember.

    Emoji adoption for any smartphone issue wouldn't be an issue.

    • RustySpottedCat 2229 days ago
      Each symbol of the 11 characters in the plus code is in base 20. There are about 2500 emojis, meaning that you can encode 2 symbols from the plus code with one emoji (20*20=400, if you try to encode 3 symbols, it becomes 8000, which is way more than the current emoji count). So that would become 5 emojis, instead of 11 characters, which in my opinion would look quite nicer.
      • superlopuh 2229 days ago
        Given the data Google has, I'm sure they could come up with an efficient encoding scheme that would use far fewer emoji on average by prioritising popular coordinates.
        • arbie 2229 days ago
          Most people do not know the exact transliterations for many emoji, so aural transmission becomes difficult.
          • 84Winston 2229 days ago
            that thing... with the other thing on top... you know!
  • dingo_bat 2228 days ago
    Horrible title. This has nothing to do with navigation. Google didn't want to invest money/effort into properly mapping addresses in India. So they reinvented the lat/long system and call it "plus code".
    • jpatokal 2228 days ago
      No, there are no proper addresses for large slabs of India. The status quo is people using things like "Vijay Nagar, IFFCO Chowk, behind Maruti showroom" even for mailed correspondence.
      • jogjayr 2228 days ago
        For non-Indian readers "Vijay Nagar" is a neighborhood named "Vijay", "IFCCO Chowk" is an intersection named "IFFCO" (yes sometimes intersections have names and the names often have nothing to do with the streets that join there) and "Maruti" is an automobile brand.
      • dingo_bat 2228 days ago
        Why is that not a proper address?
        • sumedh 2228 days ago
          I guess because the govt does not have a proper standard especially in rural areas. Some areas don't have proper roads so nobody from the govt visits those areas.
  • ouzu 2228 days ago
    What3words (https://what3words.com/) offers a better solution IMO. It offers a system to represent coordinate as 3 words and is localized in many languages.