Why I don't trust recommendation systems

I liked Google Now. Liked. With the new Android it's changed and isn't very useful anymore. Before, you could just swipe to the left on your home screen and see all important stuff. Like how much time it takes you to go to work right now. Or when is your meeting. How is traffic. Updates about your flight. Hotel reservations. Exchange rate. They even notified you about the most important stuff.

It was scary, but very handy. At least for those who travel a lot. (Scary in a way how much Google knows about you.)

And they changed it. All important stuff is hidden behind one more click and even when I open that section, there is not as much as before. In place of all useful stuff they placed feed of articles Google thinks you would like. Well, it can be useful as well, to stay updated. But…

…but when I upgraded to the new Android there was new Marvel movie and I was looking for some info. Of course Google though “hey, he likes Marvel!” and very quickly I stayed in the Marvel bubble. I even didn't want to click to any of those articles, but I was used to to find important stuff by sliding to the left and then whenever I did that, I saw some tempting title. I would say click bait.

Good recommendation system would do the best to not keep you in some bubble. Well, Google did. I didn't want to use it and so Google kept showing me news about Marvel movies. Google started to care only about what I clicked on in that feed and not what I was searching for. Totally different attitude from previous Google Now functionality. Two years ago, my phone could detect that I go regularly every Wednesday to the same place at the same hour just based on my location and after few weeks I got card saying I should go sooner because traffic is worse that day than usual. Today I'm in some weird bubble.

Of course I noticed that and wanted to turn off that feature. To see again directly useful cards. And you guess correctly, there was no way how to turn it off. Google created something useful to get us used to to swipe left and then they changed that to something which can bring Google a lot of money.

Finally, with the latest Android (at least on Pixel phone) you can turn it off. If you like yourself, swipe left, touch three dots, settings and then under Your feed uncheck Show feed. Then the screen will stay blank, there will be no cards as before. At least it will stop trying to seduce you.

As you can see, not even Google can do recommendation system well. And this is one example why I don't trust them. I don't follow anyone on Twitter or Facebook or YouTube, I don't read any page aggregating articles, nothing. I created my own reader with support of RSS, Twitter, YouTube and so on with my own system of how I want to prioritise articles. It's not perfect and needs some help from the user, but at least I'm not in the bubble.

I think everybody should ignore and disable (if possible) any feed managed by someone else than you.

P.S.: If you would like to try my app, well, it runs on my personal server. I could give you invitation token, feel free to write me, but I cannot promise anything. :-) Anyway, this post is not about my app, but about the problems with recommendation systems.

How Twitter support works

I had problem to log in into my Twitter account because I couldn't get SMS code so I sent them message about that. They responded:


Thanks for writing in. Many people who have reported issues with login verification have found the following tips helpful:

  • Having trouble receiving push notifications? You can access pending login requests from within your Twitter app on your device: 
    1. Open the Twitter app and navigate to “Settings”.
    2. Tap “Account”, then tap “Security”.
    3. Select “Login Requests” to see a list of all requests available to approve or deny.
    4. Pull down on the list to refresh and see the most recent requests.
  • When you enrolled in login verification from your device, did you generate a backup code? If so, you can use that code to log in to your account on twitter.com from a desktop or laptop computer. Additionally, if you still have access to your app, you can generate a new code from your device. More information can be found here: https://support.twitter.com/articles/20170409#backup-code.
  • If you’re not receiving SMS notifications, but you are still logged in to your Twitter app:
    1. Navigate to your account’s “Settings”.
    2. Tap “Account”, then tap “Security”.
    3. Tap “Login code generator”.
    4. Use the code shown to log in to your Twitter account.
  • If the above tips do not work, and you can still access your account from your device, you can disable login verification by following these steps:
    1. Navigate to your account’s “Settings”.
    2. Tap “Account”, then select “Security”.
    3. Disable “Login verification”.

You can also check out our login verification troubleshooting article for more helpful tips: https://support.twitter.com/articles/20170409.  

If you’ve tried the above options and still need help accessing your account, please reply to this email for further assistance. For security reasons, we can only process this request if you contact us from the email address associated with your Twitter account. 

If you need to file a new report, you can do so here: https://support.twitter.com/forms/signin. 


Twitter Support

I still need assistance as I wrote in the original message. :-)


We may be able to help you regain access to your account by disabling login verification.

First, we'll need to confirm you as the account owner. Please try logging in once more on https://twitter.com (from a desktop/laptop computer or a mobile web browser) with your correct username and password. This will generate a notification on our end, and we may be able to use this to confirm you as the owner of the account.

Please reply to this email once you've done that, and we'll do our best to help.

Hello, I did right now.

I was able to find device where I am logged in so I could deactivate SMS confirmation. Also I know where is the problem. My phone is set up correctly but I got no confirmation code. I tried to change phone number, nothing, I tried to set up SMS confirmation again and also nothing. Probably you have problem to send SMS to my country or something? Because it was working just fine when I set it up for the first time...


Thanks for letting us know! We're happy to hear that you have resolved the issue.

If you have any other questions, you can always check our Help Center for relevant articles: https://support.twitter.com.

I haven't. I'm logged in but I still cannot use login verification because I don't get any text message... this is bug.


If you already have a Twitter account, your next step is to add your phone so you can send and receive Tweets on the go. You can do this via SMS commands, or by going to www.twitter.com.

Via SMS:

  1. First, send START to your Twitter code (40404 in the US).
  2. Reply with YES since you already have an account.
  3. When prompted, send us your username and password. You will receive a message when your sign-up is complete.
  4. Turn Tweets off or on by sending "OFF" or "ON" to Twitter from your phone.

More information can be found here: https://support.twitter.com/articles/14589#add-phone-sms

Via the web:

  1. Log in to www.twitter.com and navigate to your Mobile settings: https://twitter.com/settings/devices
  2. Enter your phone number and click "Activate Phone".
  3. You will then be prompted to send GO to your short code from your mobile device.

More information can be found here: https://support.twitter.com/articles/110250-adding-your-mobile-number-to-your-account-via-web

Hope this helps!

Do you even read my messages or is it just some automat? I didn't received any SMS! My phone number is correct and working, I got verification SMS before but not now. There has to be some problem on your part... Can you look at it?


We found a page in our help center that we think will help you out: (https://help.twitter.com/en/search?q=received+sms)

If you've checked out that page and are still confused, write back to let us know more about where you're stuck. We'll do our best to help you out!

Really? Please, read my messages. You have somewhere bug because I don't get any text message to my phone. Please check where is the problem. I would like to use 2FA but cannot because of that.


We found a page in our help center that we think will help you out: https://help.twitter.com/en/managing-your-account/two-factor-authentication

If you've checked out that page and are still confused, write back to let us know more about where you're stuck. We'll do our best to help you out!

Yeah, I'm stuck, I guess, with your support to not look into the bug I reported. What page you would recommend me to visit now?


We found a page in our help center that we think will help you out: (https://help.twitter.com/en/managing-your-account/issues-with-login-authentication)

If you've checked out that page and are still confused, write back to let us know more about where you're stuck. We'll do our best to help you out!

My phone is working and I waited more than ten minutes and still didn't get the code. Really, can you fix it or say to me what's wrong?


You tried to update a case that has been closed. Please submit a new case at http://support.twitter.com/forms. You can also visit our help center at http://support.twitter.com for self-help solutions to common problems.


So… who is afraid of AI? Not me. I just hate how it's used everywhere nowadays and it just sucks. Pretty hard.

Movie by Artificial Inteligence

Not long ago I was writing here about how I'm not afraid of artificial intelligence. Then my colleague sent me this video of how AI created a sci-fi screenplay…

I'm going to add just one note: I'm sure one day we (as humanity) will look back to this video and see how amazingly clever and deep that script was. Trust me. :-D By the way… I had almost same feeling watching this video as last Transformers. No idea what's going on.

I'm not afraid of AI

Every useful program has three parts. Input and algorithm which produce some output.

Classic programming means that you write the algorithm which can convert your input into output you want. You are the master and the code by itself cannot think because it's written only for this one use case.

All artificial intelligence right now works on a generalized algorithm which creates algorithm for the specific use case by learning from matching inputs and outputs. The problem is that it will not be perfect. You need a very good set of learning data to learn from and even if you will have awesome set, it will still produce errors.

Let's take for example simple calculator. You can put all corner cases in learning set, but it doesn't mean final algorithm will calculate those cases correctly. Every new input-output match in every learning iteration is going to change the final algorithm. Also, the algorithm is not altered in a way to pass the current example, but is changed little bit to match overall average.

To make it perfectly clear: generalized AI algorithm just looks for patterns and tries to find an algorithm which can cover it. But every corner case (like division by zero, for example) has to be handled by hand. That's why you don't see AI calculator yet. AI is not precise and is good where you have a lot of data, but is hard to make algorithm. Like image analysis, voice recognition, autonomous cars and so on.

Actually, many people say they are doing AI but in fact it's just data mining. Data mining is still classic programming. You have data which you analyze manually with the help of some tools, but in the end you are still coding the algorithm which uses those data. That's important to understand.

Now I can explain why I'm not afraid. There has to be a lot of learning data for everything. Nowadays computer has problems just to analyze what is in the image. It's getting better and better, but it's still optimized for this one problem and there are still a lot of fuck-ups which no human would do. You can be impressed by Go program, but anyhow the game is complex, the World is much more complex, and that program is still optimized for this one game only. Try to play chess with this program and you win. Maybe you could argue with IBM Watson. Well, it's very impressive but it still makes childish mistakes. And by the way, have you heard something about some big improvement lately?

So, I'm not afraid. AI is about looking for patterns. We are a very long way away from algorithm really thinking by itself.

But… I don't trust in recommendation systems.

By the way, maybe now you understand why all big companies like Google, Apple, Amazon and so on wants all data possible and why you still see an advertisement or recommendation or help from assistants you don't like or need.

Trust in recommendation systems

On the Internet is so many information which no one can consume it all. That's why almost every bigger page uses some type of recommendation system. To find what user likes and filter out undesirable content. For example look at Facebook—you would need at least half a day to read everything what just your friends shares. Google does that as well with Google Play Music, YouTube or even maps or search engine! Last one is actually called personalized search. Also Twitter for some time plays with „best Tweets“ or „in case you missed it“ which totally changes your timeline. Not even mentioning e-shops like Amazon or ad platforms.

Trend is clear. We all are just bunch of numbers in different databases and when we came to some web page, it will do some crazy math behind and show content which we probably want. Question is—can we trust in those numbers representing us?

I don't know.

I currently work on one recommendation system at Seznam.cz and I also build my own „general Internet reader which will sort automatically content by my preferences“. I'm saying that only to mention that I know little bit about those systems and it somehow shapes my point of view about trust.

And my point of view is: I don't trust them.

I'm little bit scared what some pages can do with those system. They can basically change our thinking. They can keep us in some kind of social bubble. I know it's the worst scenario but there are also everyday scenarios like when I mark I don't like something and something is similar to it, there is chance I will not see it! Or worst I will not able to easily find it.

And that's why I block 3rd-party cookies. I block not ads but everything what can track me. I don't follow anything at Facebook. I don't use YouTube recommendation. I don't care about Twitter's best Tweets for me. Actually I moved Twitter feed to my app. I don't dislike songs at Google Music. I am careful about clicking to anything which could fire some kind of signal about me, some kind of number to equations which will try to do the best to recommend me something else.

The most craziest thing about that is probably that I do that also with systems I'm programming. At work I don't use it at all and at home I know exact meaning of all signals so I am very caution about what I'm clicking at.

Actually my little project helps me to understand this new era and see all problems about it. It's very hard to do it well and I think it's similar to security. When security is messed up, users are hurt. Same applies to recommendation systems. But there is bigger problem—everyone is trying best to make the best possible security but the best recommendation system does not mean better revenue. And that's probably why generally I don't trust them and try to avoid them.

There are only two systems I trust now. Google personalized search because I never had problem with it (yet) and my own reader because I know every bit of it.