Pages

Showing Google+ Profiles in Google Contacts is a Privacy Issue

Recently, I needed to verify someone's gmail address. I had guessed that their gmail address might be same as their Blogger URL. But I couldn't send them a mail until I was sure. Then, I remembered that gmail shows your contact's Google+ profile. I added their gmail address to my contacts and voilĂ  their Google+ profile showed up.


I later realized that this can be a privacy issue. A lot of people have their email IDs same as their Twitter or Facebook usernames or their blog addresses. Now you have a way to verify that. Even better (or worse), you can add a random gmail address to your contacts and find out to whom that address belongs.

Was this supposed to be a feature? Yes, and I actually liked having people's picture displayed along with their email address. But until they give an option to turn this "Let others find me by my email address" off, it is a privacy issue. 

Technology Vision 2035

Recently, I was invited to an Interaction Meet for 'Technology Vision 2035', an initiative by the Department of Science and Technology (DST), Government of India, to present my vision/dream with respect to disruptive technologies which can have game changing potential in the future.

Eminent nuclear scientist, Dr. Anil Kakodkar, presided the meeting. A lot of students from other IITs were also present there and many innovative ideas were discussed. The topics of discussion included Healthcare, Educational Technologies, Energy Sources, Materials and Manufacturing etc. I talked about Human Computer interaction. Here's what I said -
"The most profound technologies are those that disappear. They weave themselves into the fabric of everyday life until they are indistinguishable from it." So began Mark Weiser's seminal 1991 paper on ubiquitous computing. The essence of that vision was the creation of environments saturated with computing and communication capability, yet gracefully integrated with human users. When articulated, this was a vision too far ahead of its time — the hardware technology needed to achieve it simply did not exist.

After a couple of decades of hardware progress, many critical elements of pervasive computing that were exotic in 1991 are now viable commercial products - handheld and wearable computers, wireless connectivity and devices to sense and control appliances.

In another couple of decades, computers and connected devices will be truly ubiquitous. But will that make this technology invisible? I think not. To truly deliver on the vision of invisible pervasive computing, we need to change the way we interact with computers.

One of my tricks for generating disruptive ideas is to imagine the ways in which we'll seem backward to future generations. And I'm pretty sure that to people 20-25 years in the future, the way we interact with computers today will seem absurd. We have done a lot of progress in the field of human computer interaction. We have moved from command line interfaces to graphical user interfaces. But we are not there yet. What we need are natural user interfaces - interfaces which become effectively invisible with successive interactions. One of the very important natural user interface is the conversational voice based interface. You give voice commands to any device and the device understands it and responds accordingly. It's like conversing with another human being. There are already implementations of these voice based interfaces - Siri and Google Now comes to mind. But how relevant are these implementations for Indians? Not very much. First they are not available in Indian languages. Second even in English they sometimes don't seem to understand Indian accent.

Developing these conversational user interfaces in Indian languages can have far reaching consequences. Imagine a device with such an interface installed in an Indian village. You need to find information about some crops, just ask; Need to find medicine for an ailment, just ask. It would be so simple, and so powerful. This would require the government to generously fund researchers working in the field of Natural Language Processing, Artificial Intelligence and Machine Learning. We specially need to be mindful of the fact that we need to develop these interfaces for Indian languages too.

But are conversational user interfaces the limit? Or can we do better?
A popular maxim says - People tend to overestimate what can be achieved by technology in the short run, and to underestimate its achievement in the long run. And I think to consider conversational user interfaces the limit would be an underestimation. But what can be better than such an interface? Isn't this the way we interact with other people? Yes, but have you ever felt something lacking in this interaction? Sometimes, I know what I have in my mind but I don't know how to put it in words. In the future, I imagine having devices which tap into our brain and understand your thoughts. Imagine such a device, it has the answers to your questions before you even ask it. It would be so thrilling interacting with such a device. Investing in these 'faster than realtime' technologies would ensure that India is at the forefront of human-computer interaction innovation. And that is my vision for India in 2035.
You can also contribute to Technology Vision 2035 exercise by submitting your ideas to http://www.indiatechvision2035.in/vision/

The State Of Railway e-Ticketing In India

I am a regular user of the Indian Railways e-ticketing system. I use it almost every month to book tickets from my college to home. There is only one train from my college to home, so I never noticed all that is wrong with the ticketing system. Recently, the train which I usually travel by was already fully booked, so I had to look for alternative routes. I spent two hours on the IRCTC website and even after that I hadn't booked any tickets. I felt frustrated beyond measure. Then I started thinking about all the faults of the system and boy did I get a long list? Have a look.

To book the tickets, you have to enter source station, destination station, journey date, quota etc. Fine. Now when you click on 'Find Trains', it presents you with a long list of trains from the source station to the destination station. There is no information whether the trains have any seats available or not. To find that out you have to click individually on each train, not only that you have to click individually on every class of the train. Every. Single. Class. For. Every. Single. Train.

It presents you with even those trains which have already departed (We can obviously do time travel to the past.)

If you want to go between stations which have no direct trains connecting them, then you are in for a real ordeal. You will get an error that there are no trains between these stations. No alternative routes are shown, nothing. So what to do now? Well, look at India's map, mark the source and destination stations, then make a list of all the 'big' stations between them. Now try looking for trains from source station to one of these stations and then from these stations to your destination. Pro tip: If this doesn't work out, try this - from source to intermediate 1, from there to intermediate 2, from there to your destination. (You obviously have infinite free time. Besides, doing such mundane tasks is sooo satisfying. And the winning feeling you get after finally figuring out the route, there is nothing better than that! That's why these people didn't incorporate this functionality into the system.)

So now you have figured out the route, Great! Let's say your route has two stops. This means you have to book three tickets separately. You cannot book tickets for more than one train at one go, you just can't. This means entering all the details again. This also means that you will be charged service charge three times.

While we are at it let's talk about service charge. What about it? It is kind of a convenience charge. Hey, you are booking tickets from the convenience of your home, you should be charged for that. Right?

Wrong. You are helping to reduce the length of queues at the ticket windows, you are doing the work which is done by clerks there. If anything you should be given discounts for that. I am pretty sure that if there are discounts on e-tickets, the average queue in front of reservation windows would significantly drop in length.

Every day from 23:30 to 0:30 the server is down for maintenance. Seriously, every day? Their server needs maintenance every fucking day? Which technology are they using?

Oh and let's talk about speed, every operation on the site takes a gazillion seconds to complete. You can be on the world's fastest connection but if you have their site open it looks like you are on dial-up.

This was about the IRCTC site, don't even get me started about www.indianrail.gov.in. Compared to that the IRCTC site looks like it is powered by the world's most cutting edge technology. And that is saying something.

This concludes my rant. I am feeling better now. I will feel much better when the state of the system improves.

--Written while sitting along with three more people on a single berth.


Update: Interesting discussion about this on Hacker News - http://news.ycombinator.com/item?id=3180015

Building the IIT Ropar brand

What happen when you Google for 'IIT'? Does IIT Ropar appear on the first page?
Does Facebook has a network for Indian Institute of Technology Ropar?
Does Indian Institute of Technology Ropar appear in the drop-down list of LinkedIn when you enter your school?

The answer to all the above questions is NO and it's time we change this.
How? By having uniformity in what information we fill in our profiles.

Let's start with Facebook
Go to https://www.facebook.com/editprofile.php?sk=eduwork and set your College/University to Indian Institute of Technology Ropar. Not IIT Ropar, Not IIT Punjab and definitely not IIT ROPAR(PUNJAB). Set your Class Year to 2012, 2013 or 2014 as the case may be. Set your Concentration to Computer Science and Engineering, Electrical Engineering or Mechanical Engineering as the case may be. Not CSE, EE or ME. Many people don't understand these abbreviations. And remember that Indian Institute of Technology Ropar is your College not your Graduate School. Remove all other variations of IIT Ropar from your college/university.



Go to https://www.facebook.com/editaccount.php?networks and enter Indian Institute of Technology Ropar in the form. Do you get a "Please enter a valid network." error? If yes, Go to https://www.facebook.com/help/contact.php?show_form=add_college and send Facebook a request for adding a new network with the following details. (I know you know all these details, I am just providing this so that you can quickly copy and paste.)

Full Name of college/university: Indian Institute of Technology Ropar
Your school-supplied email address: ...@iitrpr.ac.in
Year of graduation: 2012 or 2013 or 2014
School's website: http://www.iitrpr.ac.in/

Update: You can't add a new network on Facebook. http://www.quora.com/Facebook-1/How-can-I-create-a-network-for-my-college-on-Facebook

Now let's talk about LinkedIn
LinkedIn is a professional social network, so if your display name is XYZ iamfuckingawesome please change it to your real name. It won't look good when the recruiters see your awesome surname. Also it looks good if you capitalize the first letter of your name and surname.
Now just as with Facebook enter your school name as Indian Institute of Technology, Ropar and not something else.



One other thing, please don't do this - adding a current position of "Student" at a company "IIT Ropar". No, you are not employed at IIT Ropar.

Lastly and most importantly if you have a blog and you have mentioned IIT Ropar somewhere in your blog, it will do our website a whole lot of good if you give a link to it. Here's the HTML for that.
<a href="http://www.iitrpr.ac.in/">IIT Ropar</a>
<a href="http://www.iitrpr.ac.in/">Indian Institute of Technology Ropar</a>


Do all these things... NOW!