Skip to main content


Showing posts from 2020

See how Google is tracking your location. With Python, Jupyter, Pandas, Geopandas and Matplotlib

In sales, you can hear the acronym ABC: Always Be Closing . Closing means making a deal with a customer. Last decade gave rise to another acronym ABCD: Always Be Collecting Data . We use Google for mail, maps, photos, storage, videos, and much more. We use Twitter to read a stream of consciousness of one President. We use Facebook for messaging and… well, pretty much it. Our parents use it though. We use TikTok… I have no idea what for. Actually, turns out most of the above are useless… Nevermind, the bottom line is: we use them. We use them, and they are free. In XXI-century economy, if you are not paying for the product, you are the product. So, long story short, I wanted to investigate how much Alphabet corporation , the owner of Google, knows about me. Just a tiny fraction, I looked at geolocation history. I never turned off location services because I was valuing comfort over privacy. Bad idea. Download your data In order to download all data Google collected about you, go to

GraphQL server in Java: Part III: Improving concurrency

The idea behind GraphQL is to reduce the number of network round-trips by batching multiple, often unrelated requests, into a single network call. This greatly reduces latency by delivering many pieces of information at once. It’s especially useful when multiple sequential network round-trips can be replaced with a single one. Well, honestly, every web browser does that automatically for us. For example, when we open a website with several images, the browser will send HTTP requests for each image concurrently. Or, to be precise, it will start not more than a certain number of connections to the same host. It’s something between 2 and 8, depending on the browser. The same applies to multiple AJAX/RESTful calls (see fetch() API ), which are concurrent by default with no extra work on a developer’s side. Actually, that’s what A stands for in AJAX 1 . So, what’s the advantage of GraphQL? If a web browser can make concurrent requests to multiple pieces of data at once already, why bot