Mindblown: a blog about philosophy.
-
2025/08/14 [GADM-api]
I’ve found, fixed and deployed fix to the reverse geocode sql query bug. I started refactoring the code – first step is to extract database “stuff” from main package. I will probably get inspired by repository patter from DDD. I started working on leveraging adm and adm_geometries tables for all existing endpoints. This is required…
-
2025/08/12
Last couple of days I am spending my eventings on a new project – a figma plugin. This plugin will integrate figma with templating api – this way designers will be in control of pdf reports style while developers will not need to worry about html templates. The plugin will convert figma designs to html,…
-
2025/08/11 [GADM-api]
Reverse geocode endpoint is deployed to production π
-
2025/08/09 [GADM-api]
I implemented the reverse geocode endpoint. Once I deploy new endpoint I will take some time to refactor the code. I need to better organize the packages and get rid of duplicated GADM data.
-
2025/08/09 [GADM-api]
Today I completed the setup for reverse geocoding. The structure is built around two tables:adm β contains all GADM levels, but without their geometries.adm_geometries β holds all unique GADM geometries. The two tables are linked via a geometry hash. Original GADM properties are stored in the adm.metadata column as JSONB. The adm_geometries table also includes…
-
2025/08/08 [GADM-api]
I analyzed geometry duplication across GADM levels and found over 9,000 duplicate geometries. This duplication often occurs in small countries, such as the Vatican, or in islands. To verify whether geometries were truly duplicated, I compared their hashes, point counts, and areas β an approach that should eliminate hash collisions. An unexpected benefit of this…
-
2025/08/07
I took a break from my main projects β GADM-api and book reviews β and spent a day improving this blog. The number of posts has been growing quickly with daily updates. I used to query all posts at once on my landing page. However, now that the number of posts exceeds 100, itβs time…
-
2025/08/06 [GADM-api]
I started working on reverse geocoding endpoint. I decided I will store the geometries in a single table adm_geometries. This should help optimizing the st_within query across GADM levels. The id of a geometry will be calculated as md5 hash of its shape. However I encountered a problem – there are duplicated md5 hashes across…
-
2025/08/05 [GADM-api]
I polished and refined docker compose files. Additionally I tested if “up” migrations work and intended and I added capability to run “down” migrations.
-
2025/08/04 [GADM-api]
Horay! I finally deployed first version of my GADM api service. It is very rough at the moment. The deployment process is semi-automated. I can initialize new ubuntu VM, launch dockerized server and database, ingest GADM geopackage and run migrations with just few manual interventions. Some bash script that I wrote will help me to…
Got any book recommendations?