I built a Lily58 split keyboard so you don't have to
The differences between junior and senior software engineers
How can you tell whether you are dealing with a junior or a senior engineer, when it comes to software? And if you are looking to advance your career, how can you become senior? What …
The proof that Go channels aid concurrency
Posted on Sat 01 July 2023 in IT, programming
All the buzz about Go being the best modern language to handle concurrency... When I rewrote the Neo4j Go Driver manual I needed to get to the bottom of it. And indeed, there is some …
The best ways to organize pointless meetings
All good meetings are similar, but each bad meeting is shitty in its own way. I could also say that it's hard to formalize elements that make meetings ineffective, but that's not true: I have …
Dissecting explanations of Javascript Promises
What is a Javascript Promise
? When I was documenting the Neo4j Javascript driver, I did not know. So let's find out, and in so doing tear to pieces explanations I found online. My favorite past …
The shit show of Google Analytics 4 (GA4) and the retirement of Universal Analytics
Posted on Sat 26 November 2022 in IT, programming, google
Early in 2022, I started getting emails from Google, warning that starting from 2023 they would retire Universal Analytics (UA), which is what everybody uses to track views from Google Analytics in this decade. Closer …
How to implement the 6-hour workday in a company
It is difficult to argue that the current, wide popular 8-hour workday in cognitive-demanding jobs is in any way efficient. It is bad both for employees and employers. Quoting the Harvard Business Review,
Many of …
Setup OpenWRT on Raspberry Pi 3 B+ to avoid data trackers
Posted on Fri 18 September 2020 in security, IT, open source
Thanks to my local ISP for a shitty black-box running their proprietary vomit, but no thanks. I had a spare Raspberry Pi and the urge of having my home internet powered by open source software …
Automatically delete spam/pending comments in WordPress + bbPress
If you expose your bbPress forums to the public, it is likely you will be getting loads of spam every day. Most of it is actually caught either by WordPress itself, and set as pending …
A fix for broken (virtual) buttons and dead touch area on Android phones
My old Android smartphone fell too many times and had its physical buttons (back, home, recent apps) not working, which was problematic to do anything. You can go back with in-app buttons most of the …
FOSS Android Apps and my quest for going Google free on OnePlus 6
Posted on Sun 07 June 2020 in android, google, open source, IT
A while ago I decided I did not want to be a product anymore, and start paying for services. I started by breaking free from all the free-but-commercial company services such as Dropbox and Gmail …
A setup for remote piano lesson over Zoom
First create a new sink:
pactl load-module module-null-sink sink_name=zoom_input sink_properties=device.description=zoom_input
then remap into a Zoom monitor source that Zoom will allow selection of:
pactl load-module module-remap-source master=zoom_input.monitor source_name=zoom_mic …
FEniCS differences between Function, TrialFunction and TestFunction
Posted on Thu 06 February 2020 in finite element method, IT, programming, mathematics
The FEniCS project allows for simple solution of partial differential equations. However, getting started from examples is so quick, it is easy to miss how the inner-workings of it behave. This should not happen (especially …
Create a WP test site with lots of users and posts
Posted on Sun 05 January 2020 in programming, IT, wordpress
The following WP-CLI command data create
creates a lot of test data into a WordPress site: 1000 new users, each with 50 posts. Each post gets a random date in the last year and a …
Troubleshooting the installation of IRAF on Ubuntu
So, found myself installing IRAF on a friend's laptop running Ubuntu. There are some decent tutorials online about the general steps: for example, this one, and the official one. However, they all skip all possible …
Install Windows 7 on a modern, Intel 8th generation computer
I spent a good week trying to get Windows 7 to work on a modern laptop, having an Intel i3 8th generation CPU and other recent components, such as a NVMe SSD. What I did …
Meltdown - Overview of a security vulnerability (Slides)
Here is the pdf slides of my presentation about Meltdown, the security vulnerability. First are full slides, then real presentation slides (with stops when asking questions/pausing and pondering). Free for re-use, but nice to …
Endless Christmas X-MAS CTF Writeup
Posted on Sat 22 December 2018 in binary reverse, IT, security
This is a writeup for the Endless Christmas challenge, md5 hash 866c92038d6e9fc47db4424f71f6167a (download binary). It appeared in the X-MAS CTF, and it's a Reverse challenge.
Using afl
with Radare we can see there are calls …
Is every piece of software doomed to become bloated?
One of the very few things I learnt in art class is what role Jackson Pollock played in his art. Because, we were asked, what is the role of the artist, if the only thing …
Tasks un-owned are task that go forgotten
If you are a tech company, and your people commit code, then you probably have some code review policy. And if you do not, you definitely should: you want to have an extra pair of …
A/B testing on WordPress: a framework for developers and tutorial
Posted on Fri 13 April 2018 in wordpress, programming, IT
Some months ago, I changed one link in the menu in my website postpaycounter.com. After that, it looked to me more people were purchasing products, i.e. the conversion rate had increased. But how …
Numpy histogram density does not sum to 1
During a Computational Vision lab, while comparing histograms, I stumbled upon a peculiar behavior. The histograms pairwise kernel matrix - which is just a fancy name for the matrix holding histograms correlations one with another - did …
The Distributional Hypothesis: semantic models in theory and practice
Posted on Sat 03 March 2018 in IT
This was the final project for the Data Semantics course at university - A report on distributional semantics and Latent Semantic Analysis.
Here is the nicely-formatted pdf version (with references).
What is the Distributional Hypothesis
When …