trials of error

I have very much appreciated Anna Lembke’s Dopamine Nation. Easy rewards brings the gremlins that sit on the pain side of the scale, and thats withdrawal. In contrast, working through a challenging task, with mini milestones along the way, is reinforcing and stimulating. And small risks in the work feel good too. This is trial and error. I suppose trial and error is a kind of one armed bandit slot machine too but it involves effort and energy and care and attention, and it lets you learn of course and you come out with some kind of end product hopefully....

May 31, 2025 · 2 min · 361 words · Michal Piekarczyk

apple photos to immich

draft A few weeks ago stumbled upon an amazing Apple iPhoto alternative, immich, a self hosted photo server, and I have been on the journey to migrate but wow Apple has been shining exceptionally in maintaining its death-grip on my assets, relentlessly reaffirming why I am trying to get off Apple Photos. Immich gives you the control Apple Photos lacks and it has really nice UI elements too. Willing to serve Seeing the bustling development on the immich github and pleased to see both geolocation pinching goodness and time granularity on a nice demo site, I started flipping through the nice looking docs, but I did not easily notice how I can start serving my immich instance in the cloud....

May 16, 2025 · (updated June 2, 2025) · 3 min · 565 words · Michal Piekarczyk

simple made easy

drafting… 2025-05-10 Simple Made Easy, Richard Hickey talk, takeaways, Listening to this presentation, from the frame of why do codebases get difficult to change , but also how you plan changes you want to make on the scale of a “story” or “bug” and also just a “day” and even a single block of time you have for a particular story. The definition of simple as simplex as one interleave and less simplex as more “concepts” that are taken together to be more “complex”....

May 9, 2025 · (updated June 2, 2025) · 4 min · 743 words · Michal Piekarczyk

Drop it Like It's null

Arghh ha ha I have been messing around with trying to understand why the transactions I see on my Tiller from my credit card, are not as many as what I see when I pull the csv of transactions straight from my credit card website. Dohh. During my data wrangling, I had to manually copy and paste transactions out of my Google Sheets, because Google Sheets oddly enough does not have the capability of “exporting as csv” what has undergone a data filter....

April 19, 2025 · (updated June 2, 2025) · 3 min · 434 words · Michal Piekarczyk

collect logseq logbook stats

Figured, I’m not good at logseq datalog queries yet, so may as well just read logseq LOGBOOK data using plain python. And with assist of chat gpt, I have a nice proof of concept. from pathlib import Path import polars as pl import time_log as tl journals_dir = "mgraphblah/journals" pattern = "2025_*.md" out_vec = tl.iterate_across_journals(journals_dir, pattern) df = pl.from_dicts(out_vec) how much time I spent on taxes? per_tag_stats = df.explode("Tags").group_by("Tags").agg(pl.col("Duration (mins)").sum().alias("Total minutes")) per_tag_stats....

April 5, 2025 · 2 min · 265 words · Michal Piekarczyk