How Facebook recommends this random person you only met once

I wrote before about designing for creepiness, which is this simple idea that companies should inform users about why something is recommended to avoid freaking them out on how the service got to this info.

Recently in multiple conversations with people, it came to my attention that many are surprised by how Facebook recommended this person whom they only met once with nothing common.

For those who don’t know how it works, it is very simple. Facebook matches information from multiple sources to identify a person to recommend, then the software ranks those people based on a specific criteria that’s only known  to those inside Facebook, and decides which accounts to display.

So, here is a list of possible ways by which Facebook recommends friends (I don’t know which ones they actually use):

  • If you give Facebook access to your email contacts, it will match those emails with Facebook accounts and starts recommending users using Facebook with the same email in your contacts list.
  • If someone has just joined the network and started to get a lot of friends who are mutual with you, Facebook will assume you also know this person and will recommend him/her for you.
  • If someone is using the same computer to login to Facebook, Facebook might recommend friends of that user to you on the basis they might be mutual. (If you use multiple accounts on the same computer you will notice this).
  • Facebook owns WhatsApp, for WhatsApp to work it needs access to your phone contacts, and it uploads them to the servers. If Facebook knows that I have your phone number on my phone it can start recommending you to me and visa-versa.
  • If you and I meet in the same location everyday from 9-5 (Facebook knows that from our phone location, or the network we use to login to our accounts like work network). If one of us lists on their account where they work (Or even without that), it will consider us working at the same place and start recommending us to each other along with other work mates.
  • If we both attended the same event (Visited the event page, said attending or maybe..etc) then our GPS locations confirmed our location at the time of the event, it might start recommending us to each other.
  • If we are in a group picture with mutual friends, it will definitely recommend us to each other.
  • This one is interesting: If you stalk someone by visiting their profile, Facebook can start recommending you to this person.
  • If two friends have your number/email, one of them is your friend, Facebook will recommend the other one as your friend.

This is what I got on top of my mind, what other ways Facebook might be matching information to recommend you friends?


It has been on my list for long but I finally decided to audit all my accounts, & passwords. The longer we are on the internet, the more we start not paying attention to security, and the more vulnerable we become.

The key triggers that drove me to pay attention to this were a security session I attended at work where the speaker told us about how a hacker hacked a wired editor’s apple account, remotely wiped his phone, ipad, and macbook, then deleted his Gmail with all backed up photos and emails, all of this to steal his 3 letters twitter account! While this wasn’t a normal hack, it was engineered by exploiting the friendliness of customer support agents at Apple and Amazon. You should read the story.

The second trigger was these two videos I watched on Computerphile where they explained how computers got really fast that they can now crack 8 characters passwords very easily & what you should do to protect your accounts.



Here are the things you should do to make sure your passwords are secure:

  • Never recycle passwords. It takes hackers hacking one website to get access to your accounts on all other websites. You don’t want this to happen so make sure you have a different password for every website.
  • It is very hard to memorize a password for every website, so use a password manager to store all these passwords, and have it generate a random password for each website. This way you can have a single strong password that you need to memorize while offloading the rest of the work to the password manager.
    • Password managers simply encrypt all the passwords you store on their website where they can’t decrypt it unless you enter the master password. This way even if a password manager got hacked the hackers won’t be able to know the passwords you stored without knowing your master password (Not exactly like this but let’s not get into the technicalities).
  • Make a list of all the accounts you have, and go change the password for each of them with a new randomly generated password. Store the new passwords in the password manager and if you store passwords in your browser (Chrome/Firefox) make sure to delete them or not store the new password there.
  • NEVER exchange passwords electronically, NEVER give your master password to anyone or store it anywhere except your head.
  • One might say, who cares about me? I am no one to hack. This is true, but you will be surprised at how many websites you have your credit cards, Photos, and Personal info into. Should I only secure those? NO, because hackers collect different pieces of information from different websites to hack other websites. If one account gets hacked, they can use the info there to hack other websites.

Nothing will make you a 100% secure. And I am sure I forgot some accounts that I didn’t secure. Yet before you let go remember that security is like unsafe sex, it takes one mistake to regret for the rest of your life.

3D printed wheelchairs, and shoes

A month ago I got my new wheelchair. It is a personally fitted TiLITE AERO T. It is my first time to have such a personalized chair that’s not an off the shelf one.

I won’t discuss here pros and cons of custom made wheelchairs, however what was amusing was the fact that you need to get an appointment with someone from the dealership who will take your measurements, then you have to wait for 6 weeks until you receive the chair because it is hand made in US, and you pay tons of money. The starting price is $2500 and with every option you can reach $5000 easily. You can get part or all of it if you are insured, if not you will pay a hefty sum.

My new TiLITE. The frame is one piece of aluminum made of smaller pieces welded together.

I don’t know what’s the cost structure of making one of these, but I bet most of the cost is in the labor to build it. After all, aluminum isn’t that expensive, and most of the other parts – such as the wheels & paint – are from other manufacturers.

My doctor recommended that I should get custom made shoes that take the shape of my feet to better support them. I made an appointment with the shoemaker, they made a cast on my foot and quickly removed it before it gets dry and solid. Then few weeks later they came with some basic plastic models to ensure they fit. Then after some iterations back and forth, I have to wait another 6 weeks before the shoes are ready.

Both cases of the wheelchair and the shoes made perfect sense for 3D printers, & scanners. I think it is inevitable the next generations of wheelchair frames will be 3D printed. After all their sizes isn’t that big & they are constructed of one material, either aluminum or carbon fiber. The labor and time needed to make one chair will go significantly down, and it will make it way more possible for people in other countries to afford one. After all, if I weren’t living in Europe I wouldn’t be able to afford one. This costs almost a year of a software engineer’s salary in Egypt.

The case will be similar for the shoes, getting the right shape & dimensions will no longer require a cast and few weeks of preparations for one iteration. Imagine putting your foot inside a 3D scanner attached to a printer that would print exactly the shape of your shoe. Then the shoemaker can use that model to build the final product (Shoes are more complex because multiple types of materials are involved).

I wished I had the ability & willingness to build one, because I can see the opportunity, and potential for such a thing.