SSH Port Forwarding Guide

Port forwarding

Setting up proper port forwarding for SSH connections, servers or just test purposes is crucial but isn't as straight forward as your connection should be. This post aims to be a quick guide for different use cases.

Convert Python Scripts to Windows Executables (.py to .exe) - Pyinstaller and Pandas | 2021 WORKING VERSION

Python and pandas are a great team for data science. But what if you need to deliver a script to a Windows client who does not have Python installed?

This is a quick tutorial for converting Python scripts (.py) to standalone, one-file Windows executables (.exe).

1
pyinstaller -F my_script.py

Get a 20Mb exe file that is fully functional on every Windows machine!

Life Hacking: Adding Geographical Filters to Flat Search Websites with Turf.js

Milano Metro Stops

Flat hunting can be a big pain - particularly for European metropoles. Most flat search platforms already offer good filter options but until now, I didn't see any with custom geographic filters. Apart from drawing your own area of interest on a map, you seldomly find filters such as “How far is the next metro stop?” or “How close are important facilities?".

This article will show a quick and universal workaround for custom geographic filters based on the fantastic pure javascript GIS Turf.js. I implement a buffer based on Milano's metro stops, verify that the flat is located within the buffer and open the respective offer in a new browser tab.

Using HyperLogLog with Leaflet-Hexbins

Leaflet hexbins

Leaflet-Hexbins is a powerful tool to aggregate data and visualize it quickly on a map. It can size the hexbin radius based on a feature values. But what if we used HyperLogLog data to preserve user-privacy? This post will provide a convenient way to quickly perform on-the-fly HyperLogLog unions for leaflet-hexbins.

No more backend-constraint for HyperLogLog

There are many HyperLogLog implementations out there but few work as well as postgres-hll and js-hll. They can even talk to each other by exchanging hexstrings! Usually postgres-hll is pretty much the standard extension to use, when dealing with HyperLogLog but is obviously bound to a postgres database running somewhere. With js-hll, the backend-constraint for HyperLogLog is gone, just so that users can perform any HyperLogLog action in their frontend!