Tuesday, April 12, 2016

City Location Codes (CLCs)

Mammals, particularly carnivores like tigers, have evolved rather simple ways of marking trees to show that they form part of the boundary of their territory. Forget any imagery you associate with that statement! We will go on to discuss more civilized forms of marking up places in a city or town for vehicles ordered through apps to meet you!

The problem I discuss here may be relatively more significant to people like me living in a fast-growing, crowded city using multiple languages.  GPS, I find is not enough to guide a cab driver trying to find me in a crowded area. I am one of 300 people he finds in a place where his GPS says I am. If I make the mistake standing at an intersection of two roads, he does not know which one of the four corners I am in. On a straight road, it is difficult to convey on which side of the road I am waiting. I don’t know from which direction he is coming towards me. He calls me on the phone sometimes, but we do not always find a common language. Even if that is no problem, I am often unable to describe where I stand. Street names are kept a state secret here! In any case, there are so many streets, and so many streets with popular names different from official names, nobody seems to use street names anymore. Landmarks are fine, but they are usually not where I stand!
I would like to suggest a solution, not entirely original. Cities like Singapore have numbers painted at prominent places where cabs pick up passengers. I will suggest that we use a code of the form BL 959,574. If you are a resident of Bangalore and you are using an app, “BL” could be pre-filled. If you insist, we can add a country code and say INBL instead of BL, to make it clear we refer to Bangalore, India. Suppose you are at a cab pickup place displaying a prominent dark green colored sign board, with BL 959,574 painted on it in white. All you need to do is to enter BL 959,574 into the app to say where you are. The cab driver can locate you very easily. Incidentally, in this code BL 959,574 stands for Tipu Sultan’s Palace in Bangalore.

The proposal is that a two-letter code should identify a city; I would suspect about 300 cities/towns could find easily a two-letter code each that identifies them uniquely. For smaller towns, I would suggest three letter codes.

How do you assign a numeric code? Take the latitude and longitude of a given location, each written as a decimal number rounded off to three significant places after the decimal point. Leave out the integer part. For instance, Tipu Sultan’s palace is at a place close to the point (12.959 N, 77.574 E). For our purpose, we simplify this as (959, 574) and write it as BL 959,574. Small errors do not matter as long the sign saying BL 959,574 is close enough to the place indicated and is very visible to people looking for it. If your city fits in a 100 KM x 100 KM square, this system is enough to give you unique codes for locations in the city. Any shopkeeper could mention such a code in advertisements to say where the shop is. You can give a code to your visitor to say where your home is. However, I hope that the pickup points with display signs would be regulated so that it is at a place suitable for at least 30 people to wait, protected from rain/sun, with space on the street for five vehicles to stand at a time.

Search engines such as Google could easily incorporate these codes into their city maps. Users can specify “from” and “to” addresses succinctly and accurately to apps used for ordering cabs. It is worth stating that the proposal primarily aims to make GPS location information easy to use by humans. Google API offers facilities for finding Latitude/Longitude information of a given place. It also supports mapping a point identified by such geocoding information onto a map. Students should experiment with such facilities to implement user-friendly interfaces using CLCs.

There is an interesting idea relevant to those who design apps to use CLCs. Consider CH 202,271. It is easy to find that this is the CLC of Edayanchavadi, Chennai, if you know its GPS coordinates: 13.202 N, 77.271 E. But there are places south of Latitude 13.000 N in Chennai. So, how does an app determine that the given CLC corresponds to Longitude 13.202 N and not to 12.202N? This requires that the app have access to information in some form indicating CH CLCs are to be mapped to the Latitude range 12.845:13.262 and the Longitude range 80.080:80.329. (The latitude and longitude ranges given are only indicative. App implementers should double check these ranges).

A question that may arise in the reader’s mind is this: Do you expect the common man to use a location indicator like 959,574? Yes, after all the common man does use ten-digit mobile phone numbers! The simplest way to get such location indicators is through search engines, audio search engines, contact information stored on phones, etc. Don’t under-estimate the common man! He learns quite a bit, when necessary.

I have another suggestion to simplify urban life. App based transport companies such as Uber and Ola should sell caps of distinct colors for their users to wear. Then drivers would know who is likely to be the customer that called them.  Their vehicles could sport a flag with the chosen color for the users to identify their cab.

1 comment:

Srinivasan Ramani said...

You should visit
Open Location Code
to read about a widely available location code, released in 2014. It is
supported by Google Maps, and gives short form addresses to locations.
It is not very human friendly in my opinion; this is perhaps why cab hailing Apps
like Uber and Ola don't seem to have benefitted from it as yet.

My complaint is that the plus code looks forbidding - a series of letters and numerals with a + sign inside. Secondly, if you make a single mistake in remembering it or entering it, you will end up going somewhere else!

I am not saying that my code is free of these weaknesses. However, from the point of view of the use I have discussed above, my codes as well as plus codes will suffice. If the code is displayed in a public place, or in an advertisement, and you enter it into an App without error, you specify a location pretty accurately.