How to find out if your phone is spying on you

<tinfoil-hat>

I browse 9gag a lot during my commute. Sitting shoulder-to-shoulder with my fellow commuters I find it uncomfortable to do something on my laptop, and at least in the mornings I'm not awake enough yet to properly enjoy a book or audiobook. So instead, I turn to 9gag for my cheap entertainment. As such, I see quite a lot of ads.

Over the past few months I've managed to convince myself somehow that the ads that I'm seeing are targeting things that I've only ever mentioned verbally, but never digitally. It's just extremely suspicious to see an ad for one particular brand the day after you've spoken about it to someone. This kept happening to me, so I thought of a way to try and 'prove' that my phone is indeed listening in. My wife and I had a running joke for a while where we'd shout odd terms ("ARNE JACOBSEN CHAIR!", "NISSAN MICRA!") at my phone to see if ads for them would show up. (No for the Arne Jacobsen chair, yes for the Nissan Micra, but cars in general are already a natural search term for me and there's a digital trail showing that I like cars, so no solid evidence there).

To take it one step further I devised an experiment. For a few days my wife and I brainstormed about topics that we would never ever look up naturally; topics that are so far removed from our daily (digital) lives that it would be very unlikely for us to see targeted ads for them. We tried to focus on popular topics that people or companies would actually buy ads for. All this was done offline, on a small piece of paper, and to the best of my knowledge neither of us ever uttered one of these topics out loud or typed it in digitally until the experiment was over.

While we were devising the list of topics I took screenshots of all the ads I saw on 9gag, as well as a few on Facebook and in my browser. The idea is to compare these to the ads I got served after uttering each of these topics out loud.

With the list of topics finished, rather than manually conversating through them in the vicinity of my phone, I instead prepared an old laptop of mine with a text-to-speech script which I ran overnight. I downloaded PyTTSx, made sure that it worked, then disconnected the laptop, which had a clean Windows installation with no personal information about myself, from the network, and uninstalled the network drivers. Then I wrote a Python script to run some plausible conversations about the topics we had written down on paper thought the TTS engine, and set it to loop. I had to listen through each topic several times to make small adjustments to the spelling because the TTS didn't quite pronounce all the words right unless you spelled it slightly wrong. I added in a few voices and a few speeds and ran the script overnight with my phone charging right next to the laptop, far far away from the bedroom. Because listening to a computer having a fake conversation about topics you couldn't possibly be less interested in does get boring after a while.

At this point the topics did exist digitally, but only on a laptop that was disconnected from the internet. I continued my daily routines as usual and again took screenshots of all the ads that I saw. I kept this up for 2 days before I got bored of taking screenshots, after which I categorized all the ads I saw into one or two categories and tallied up the results. 

The Topic column contains whether the category would be something I'd expect to see naturally anyway, or one of the "highly unlikely taboo topics" that I would otherwise never search for or would never even come up in my daily life. The rows highlighted in yellow are where the taboo topics overlap with the ads I saw, and the rows highlighted in red are the particularly suspicious rows of topics of which I suddenly got served a lot more ads after running the taboo topic script. There were also a whole bunch of taboo topics that I never saw ads for, presumably because no company paid for ads for those topics, or because I'm a crazy tinfoil-hat guy who's just a bit too paranoid.

I'll try and be generous and explain away both the medical category and the pets category. I was already served one ad in the medical category before running the script (which uttered some new and much more.. un-science-y medical keywords), so a slight increase is not entirely unbelievable. The same goes for pets: although the keywords in the taboo script were very heavily focused on dogs (whereas my wife and I are very much of the cat persuasion), we do have a pet and it's not unlikely that this information could have crept up in our digital life during the course of the experiment, outside of the TTS script.

Then there's the third red category that shows a sharp increase, for which I just can't find a reasonable explanation: loans. The ads in this category were for 1. credit ratings, 2. leasing cars, and 3. short term loans. I've been employed pretty much continuously over the past 12 years, have never searched for or had a loan (other than my mortgage, which is a very specific loan category that hasn't popped up either before or after the experiment). The TTS script contained several passages about wanting to buy or build (expensive) DIY things as well as the actual term "pay day loan", and some other words that could perhaps imply increased gullibility to these kind of ads. When I was categorizing the ads I saw a very clear distinction between ads that focused on investing capital (category 'Investing' in the image) and ads that focused on how to loan things or improve one's ability to loan things.

I can think of several explanations of why the ads changed after the experiment:

  • Coincidence. Ads change over time. Maybe the loan companies just didn't buy any (targeted) ads until in the middle of my experiment. I didn't run the experiment anywhere near long enough to rule this out.
  • Leaks. Maybe I changed something about my online behaviour that changed the ads I was served.
  • Something on my phone or in my house is listening in. Could be the phone OS, could be an app on the phone, could be a nearby TV or PS3.
It would be possible to go one step further and intercept the network traffic coming from my phone, but I don't think I would be able to conclusively prove anything one way or another. If the speech recognition happens client-side then I wouldn't see any speech data over the network. Or it could be encrypted. It might be worth a try, but I suspect I won't find anything obvious.

Is this enough evidence for me to say that my phone is definitely listening in on me? Definitely not. But this, combined with earlier incidents of ads matching conversation topics over the course of the past few months, I think is more than enough reason for me to be suspicious. It would be interesting to see other people try the same experiment. If they find the same results then we could start comparing phone OS, installed apps, other nearby electronic devices, etc.

For now, since I hardly ever speak on my phone anyway, I've put a little bit of blu tac over the microphones. I tested this with by calling my wife to confirm that no audio is heard on her end when I speak. If, over the course of the next few weeks, I find myself not noticing a single instance of an ad matching a conversation topic, I would consider that pretty strong proof that something on my phone is listening in. No matter the outcome, it's probably worth a followup experiment. Time to think of new categories.. (Don't send ideas for new categories to me, obviously! Unless it's a handwritten letter..)

</tinfoil-hat>

Posted in Daily Life , Tech | Tagged , , , , , ,

London Overground's biggest problem

Nearly every working day I take the London Overground to work. I am quite lucky: my working hours are flexible so I can avoid rush hour. The stations I get on and off are near the first stop and the very last stop on the line, so I am pretty much guaranteed a seat every time. The trains are airconditioned in summer and nicely heated in winter, which is a fantastic improvement on the Bakerloo line, whose trains may be the draftiest place in the UK. There's just one thing that bothers me a lot about the overground, and it's not even the delays. But I can't talk about my gripe with the overground without talking about the delays.

There's always been delays on the overground, ever since I came here 3-4 years ago. Sometimes there's this sign in the carriage telling you that x% of the overground trains ran on time in the last quarter. I've occasionally snapped pictures of those signs because I never once got the impression that things were getting better. TFL is pretty good in providing statistics on their website about their service, and I've done the math once to check if it actually was getting worse. Turns out I was wrong on that one. But things aren't getting much better either, and I can see those numbers just as easily go down again in the near future. There's nothing that inspired confidence in me to believe that there's an ever-decreasing amount of delays.

This leads me to the reason I hate the overground: the utter lack of accurate real-time reporting. The most common occurrence is a delay of under ten minutes. TFL's strategy of dealing with this is by not dealing with this. Every TFL employee just stays absolutely silent and hopes nobody notices. They certainly won't be updating the arrival times on the signs until well after it's too late. This is not a hard problem! Unless the staff are utterly and disastrously incompetent they would be immediately aware of the delay. They've got a website that everyone in London uses to check the delays which they could update immediately, but TFL deliberately chooses to take no action whatsoever whenever this happens, I guess in the hopes that the problem will magically go away?

Small delays don't always stay small delays, though. Sometimes a train needs to be taken out of service, or is delayed even further to even out gaps in the service, or any other reason really. That's perfectly fine. Once something's bad happened it of course make sense to return to normal service by whatever means necessary. But you need to report that to your customers, dammit! If I'm standing there at the bloody station for a train that's already ten minutes delayed without receiving any information at all about the state of the service, of course I am going to be even more annoyed if I suddenly hear that the next train is cancelled and I have to wait the better part of an hour for my next service. Whereas if TFL had reported immediately on the initial delay I would have stayed home just a little longer, checked the situation from their website and would have been much better off in the end. I wouldn't even have thought worse on TFL in that case, but if they make me walk to the station and make me wait in the winter cold when they could have told me already that there were delays, that's what really pisses me off. The problem is not the delays, it's TFL's lack of reporting on it which causes annoyance.

I realize that this is not a world-ending issue. No one will die from this problem, nor does it seriously affect the days of anyone involved. I can work from home, others may take taxis or busses, and in the end everything ends up just fine. But what really bothers me about this is that it's completely preventable. There is absolutely zero need for me or any other passengers to get annoyed at TFL for the delays if they just improved their reporting. There's staff at every station on my overground line, which is great, but they're all doing fuck-all whenever there's a delay when in fact they could be reporting the delay immediately so the TFL site can update. Not reporting on a delay until X minutes have passed is a terrible idea because it's not at all uncommon for smaller delays to snowball and become something worse.

Rant over. I am working from home today.

Posted in Daily Life , UK | Tagged , , ,

Be direct

People are too polite. Politeness causes misunderstanding, especially across cultures or across nationalities, but even within the same culture it can be a problem. British people are sometimes ridiculously polite and indirect to the point where it serves no logical purpose and only slows down social progression.

Example: two people are getting to know each other and want to be better friends, but neither is sure about the other whether they want to improve their relationship or not. They are not sure because, at the end of their meeting, they repeat set phrases such as "That was fun, let's do it again some time". Then, when setting up the next meetup, quite often the tone of the next message is something like "Hey, last time was kind of fun. Do you maybe kind of perhaps in the future want to do something similar again? Only if you have time though. I wouldn't want to impose on you or anything.." - Totally British tsundere.

Don't fucking do this. There is absolutely no need to make communication this complicated. Just say "Last time was fun. I want to do X with you again. Do you have time Monday?" It really is that simple. There is no need to beat around the bush. Just say what you think. No one will think worse of you, or if they do, you are not a good match and there's no point in hanging out anyway. Be direct.

I see this kind of behaviour a lot more when interacting with native English speakers, or in a group that is largely composed of people that are very adept at speaking English even if it isn't their first language. The more adept you get, the more subtle the language becomes. This is not a good thing. At least not in this context. When it comes to social situations it is very important to be completely unambiguous. I've noticed this in Japan a lot while hanging out with people from various countries at the same time: eventually people realize nobody gets the cultural subtleties that they put in their speech, or they just don't translate well to English, so after a while people tend to become more direct with each other. This is a great thing because it saves time for everyone.

Playing with language subtleties is fun when you're having pub banter or lifelong friends or just two native speakers with an interest in language, but as soon as you're not 100% sure that the other party will interpret your signals correctly, be direct. Use more easily understandable phrasing. Don't leave things to be misinterpreted.

That's for the sending end. As for the receiving end, I'm very comfortable with taking people at face value and not spending ages trying to analyze what they're trying to say. I do find myself occasionally encountering people who throw linguistic subtleties at me. I take "That was fun, let's meet up again" to mean "That was fun, let's meet up again". Even if I usually get that there is (or might be) a deeper meaning behind something, I am very comfortable pretending not to understand it. As a result people have become more direct with me and life is simpler for both me and the person I'm interacting with. It saves me a lot of mental processing power to spend instead on things that I enjoy. Miscommunication is not a thing that I enjoy.

Keep it simple. Baka.

Posted in Daily Life , Thoughts , UK | Tagged ,

The Friend Situation

(after writing this post I realized it is somewhat of a followup to The Intern Effect.)

It's been a long time since I started blogging. I'm no longer a green 20-year-old. Life has happened and is continuing to happen, but rather than levelling up all of my skills, some of them have begun to atrophy from lack of use. One such skill is that of being social. My life at this point is so comfortable that I can usually get away with only talking to the people I need to, eg. the colleagues in my team and my significant other and on occasion an old friend or two. Over the course of last week I've had the opportunity to engage in social interaction with a much larger group of people, who are all unknown yet amazingly interesting to talk to. It was an event that I won't soon forget. Let's call it the "going on a trip with people you think can be your friends but you don't know them that well yet and then you end up being pleasantly surprised by everyone" kind of feeling. It's the AK feeling all over again! How fitting that the company I would go to after AK ended up being part of something called AKQA. Life gets better if you just keep adding letters.

But hey, this blog wouldn't be this blog if I couldn't find something to bitch about, so here goes. There's one thing in my current life that I am not very happy with, and the effect of which kind of got hammered home during last week's events: I don't have any super best friends. I mean, I've got close friends, and I've got one or two people who may take offence at my saying this, but I don't really have any one or multiple people that I know I can and will be able to hang out with at any time now or in the future, and that's entirely my own fault. Life has happened, and all my old friends (and myself!) now have their own situation that takes precedence over 'hanging out with friends'. I don't blame them of course; none of us live near each other any more so it's not like we can see each other every week. As a result everyone spends more time with their significant other which leads to babies, which leads to even less time spent with close friends. That's life. But that's also choices.

That's where I left it at in 2009 in The Intern Effect. What I feel I am lacking is something that, at the time, I attributed to Japan being Japan and interns being knowingly temporary, but it was really much simpler: I was younger. Greener. I still seek the same thing, but I am seeking it at a level further than I even thought about back then. Close personal connections. Connections that are hampered by those pesky little personal lives that everyone has. A perfect example of this: one of my friends changed cities recently and I promised to visit him, yet I still haven't done so, even after I had read a blogpost from him complaining about the exact same feeling of friend disconnection. We're all seeking a more fulfilling form of friendship, yet we're all somehow not doing the things we need to to get it.

I dare not answer yet what could be the reason for this, or how to 'solve' it. Perhaps that'll just automatically make sense when I'm older. But I think I'm old enough to see the problem clearly now, and to have some ideas of where to look for a solution.

Learning a new skill is easy in that you can quickly get up to a reasonable level, and then need an extra-ordinate amount of time after that to become an expert. It's no different with friendships. True friendships require a lot of time and commitment, with no guarantee of payoff. Just like when learning chess or playing a game or training your body, you might plateau and be unable to get any better. I think that's a little bit what is happening to me: I've built up the social skills and experience needed to easily make friends and quickly get up to a quite-satisfying level of friendship, but then I plateau. I need to improve (or recover) my social skills as well as just spend more time with people in general. I haven't made it easy for myself by moving away from a lot of people who I could be closer to, but that's something I can fix. Not easily, though. Getting better at something takes time, and I need to finally make a proper decision on what (or who) to spend that time on. Like I said in 2009, I want to make the world a better place. I am becoming more aware of my own personal limitations within that context. Perhaps many people taking many small steps is as effective as one person taking a giant leap. Just don't jump off a cliff.

Posted in Daily Life , Thoughts

True

ajDLzBG_700b

I've got a great idea for a space game. I can make something a million times better than No Man's Sky. It'll take me forever, though.

 

Posted in Daily Life

Daily life and fulfillment

Usually when I'm happy I tend to think that I am happy despite daily life. I tend to think that spicing things up and doing random things is part of what makes life fun. I still think that, but I also think that doesn't necessarily imply that not doing that makes life not fun. I find pleasure in doing something well, and I'm getting better at doing my every day things, every day. If you focus on something and focus on getting better at it, then you can find enjoyment.

I love building things. I love it when there's a problem I can't quite grasp, but then I start working on it and, as I am working on it, the solution becomes clear. That's just such a satisfying moment. But it's also where my flaw lies, because as soon as I grasp the solution I lose interest. I get the fulfillment from thinking about the problem, starting to solve it and finding the solution in my mind, but not from working it out until the end. So after I find the solution it just becomes a chore; yet another thing to finish.

(No moral or life lesson. Just observations.)

 

Posted in Daily Life , Thoughts

Guidelines

I've been following three 'principles' of sorts lately. I think they've been quite useful for me. Maybe they'll work on other people too. In no particular order:

  • Own it - whatever you do, don't feel embarrassed about it. Pretend if you have to. Eventually it becomes second nature.
  • Always leave something left to do for the next opportunity. Be it programming, gaming, travel, or that TV show that you were intending to binge-watch. Leaving something open means it's easy to get back into things the next time.
  • Avoid procrastination by not thinking things through too much and just taking the first step. Don't try to solve the entire thing in your head from beginning to end, just start somewhere and keep making progress incrementally. It works for me especially on the things I don't like, because once I've started I feel like I might as well finish it.
Mental health, y'all.

Posted in Daily Life , Thoughts

Fatigue, part two

First off, let's call the beast by its name: burnout. When I'm working on things, my natural state is to use an unsustainable amount of brainpower. Sometimes I get recharge moments and everything works out ok, but at other times I reach the bottom and cease to be effective. Once I reach that point it's damn hard to get out of it. It takes weeks or even months to return back to the mindset of peak performance after burnout. I've experienced burnout quite a few times in the past, and I know exactly what to do to get myself back from it. But preventing it from happening in the first place, that appears to be a lot trickier. You need willpower to tell yourself to stop working on something interesting, and if you continue working at that point your willpower slowly slips away. It's easy to get lost. Especially if you're faced with the exact thing that would keep your brain busy.

An interesting problem is like a burnout virus for the mind. All you need is a problem that is challenging, exciting and complex, but also not complex enough to seem too daunting. Maybe you'll know how to solve 90% of it and the challenge of solving the remaining 10% is what motivates you to keep working on it. Then after you've worked it on for a while you start to realize that the remaining 10% of the problem is actually another problem that is as difficult as the original one. Once again, you know how to solve 90% of that problem and the remaining 10% is a challenge. Repeat ad infinitum. Or until your willpower is gone and you've achieved peak burnout. Congratulations.

Recognizing that you're about to get stuck in this loop is important. It's the mindset of believing that you'll solve these kinds of problems immediately, or by just devoting more brain-time to them, because then you'll get into the willpower-draining self-loop that eventually leads to burnout. There's always one more thing to solve; one more thing that needs fixing or thinking about. What matters more than solving the problem is keeping yourself in a state where you're able to solve problems. And draining yourself towards burnout is the exact opposite of what you should be doing. Take time off. Think about other things. Don't worry if you still think about the problem in the shower or before going to sleep, it'll drain itself from your brain eventually. No problem is as important as keeping your mental self in its best possible state.

(Yes, this post was totally advice to myself. Felt good to write about it though.)

Posted in Daily Life , Thoughts

The Brexit

I swore to myself I wouldn't let this crap get into my head, but I am bombarded my brexit-ness in my daily life so I might as well write a bit about it. Is it a good idea? I have no fucking clue. I'm not allowed to vote, despite being a EU citizen who has lived in the UK for over five years already. I never bothered to do the required research about whether or not the UK leaving the EU is a good idea. My gut instinct says it's a bad idea, but I have not poured across the countless articles and documents describing what the effects of leaving versus staying would be. But I am really annoyed at how politicians and media are turning something that could be a purely rational decision based on empirical data and facts into one of bullshit propaganda and dumbing-down of the issue to appeal to the mass public. It utterly disgusts me how this turned out. A politician got stabbed because of her position on the brexit, other politicians are using it for their own personal gain and the more ignorant among the population are using it as an excuse to spew some generic anti-foreigner hate. Regardless of the final outcome, I already am not happy about how this turned out.

Seriously though, do people really see the world as a whole being a better place if the UK and the EU go their separate ways? Even if the UK gets stronger in the short term, I believe if you look at it in a timespan of 10-20 years, the UK won't be stronger from leaving. I have no hard arguments for this, it's all probabilities based on reading stuff on the internet and talking to people who know more about it than me. It might be the best game-theoretical decision to maximize your own benefits right now, and then later, as soon as you get more benefit from rejoining, get back in. But the whole would suffer from that, and the end result could be better for everyone involved if the UK stays in. In the long term.

Also, why the hell are votes not weighted? There should be a general political knowledge test to see how much a voter understands about politics in general, and then another specific one about whichever problem or party or thing being voted on. People who have more knowledge about the issues should be better able to predict what would be the best course of action, and they should get votes that weigh heavier than those of people who know nothing and just vote whatever their family or friends are voting. I seriously don't get why this is not a thing yet. Would love to hear counterarguments to this.

Posted in Daily Life , Thoughts

Lazy context switcher

I often hear programmers complain about being interrupted by people, breaking their concentration. Strangely enough I rarely have that issue. Every time people interrupt me my current context doesn't really get 'switched', rather I just do away with the interruption with the bare minimum of effort while keeping the context in my head. It takes a pretty big interruption to really disrupt my context, but as a consequence I probably seem a bit 'away' when responding to people while I'm trying to hold in the context. In some occasions when I've walked to the kitchen to get a drink, while concentrating on a difficult programming problem, I somehow lose the ability to have regular conversation, and I can only come up with standard replies to things. The same thing has happened to me in the elevator on the way out right after work, especially on days where I had to leave a problem unsolved. Oops. There's pros and cons to not being easily disruptable, I guess.

Posted in Daily Life , Thoughts