-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathposts.js
More file actions
942 lines (942 loc) · 28.9 KB
/
Copy pathposts.js
File metadata and controls
942 lines (942 loc) · 28.9 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
window.POSTS = [
{
"slug": "2026-10-04-on-the-shoulders-of-giants",
"title": "On the Shoulders of Giants",
"hook": "This morning I built a YouTube watcher. It will never watch a single video.",
"date": "2026-10-04",
"month": "2026-10",
"tags": [
"ai",
"youtube",
"automation",
"agent",
"obsidian"
]
},
{
"slug": "2026-10-03-my-new-slick-cli",
"title": "My New Slick CLI",
"hook": "Six months ago, I had an AI send two colleagues a poem and a joke in Slack. Today the same two got a zip file from me, sent by a tool that didn't exist that morning.",
"date": "2026-10-03",
"month": "2026-10",
"tags": [
"ai",
"claude",
"slack",
"commandline",
"sharing",
"saga"
]
},
{
"slug": "2026-10-03-improving-the-tool-that-builds-the-tools",
"title": "Improving the Tool That Builds the Tools",
"hook": "Last week I asked for one improvement to the tool I use every day. Nobody answered. This morning I asked my AI what it would take to build it myself.",
"date": "2026-10-03",
"month": "2026-10",
"tags": [
"ai",
"claude",
"agent",
"ios",
"git",
"sharing",
"saga"
]
},
{
"slug": "2026-10-03-a-fableous-story-from-the-past",
"title": "A Fableous Story From the Past",
"hook": "There's a watchdog in one of our systems that hasn't barked in three months. For years before that, it barked every few weeks, and nothing was ever wrong.",
"date": "2026-10-03",
"month": "2026-10",
"tags": [
"ai",
"debugging",
"agent",
"claude",
"saga"
]
},
{
"slug": "2026-10-03-blume",
"title": "Blume",
"hook": "Blume is German for flower. That was the initial joke when I put a 🌼 on our company's links page.",
"date": "2026-10-03",
"month": "2026-10",
"tags": [
"emoji",
"ios",
"appstore",
"claude",
"webdesign",
"sharing",
"saga"
]
},
{
"slug": "2026-10-01-who-signs-for-claude",
"title": "Who Signs for Claude?",
"hook": "I asked an open-source app to take my plugin into its own code. Minutes later a robot blocked it: one of my contributors hadn't signed the contract. The contributor was Claude.",
"date": "2026-10-01",
"month": "2026-10",
"tags": [
"voice",
"ai",
"opensource",
"github",
"claude",
"saga",
"whisper"
]
},
{
"slug": "2026-09-27-how-i-spend-my-tokens",
"title": "How I Spend My Tokens",
"hook": "The last thing the AI told me before my allowance ran out was that it was pushing my page to Confluence. It wasn't. When the allowance came back, I typed \\\"Continue\\\", and it did the exact same thing again.",
"date": "2026-09-27",
"month": "2026-09",
"tags": [
"claude",
"copilot",
"agent",
"automation",
"ai"
]
},
{
"slug": "2026-09-27-its-about-the-little-things",
"title": "It's About the Little Things",
"hook": "This evening I asked Claude why my blog links show up in the chat app Discord as a bare link. I ended up with a perfect little card with my signature shark.",
"date": "2026-09-27",
"month": "2026-09",
"tags": [
"blog",
"webdesign",
"rss",
"easteregg",
"claude",
"shark"
]
},
{
"slug": "2026-09-26-claudial-of-service",
"title": "Claudial of Service",
"hook": "My Mac slowed to a snail's pace. Activity Monitor said a tiny helper for my desk gadget was using 50 gigabytes of memory. I had stopped that helper days ago. Or I thought I had.",
"date": "2026-09-26",
"month": "2026-09",
"tags": [
"claude",
"bluetooth",
"memory",
"macos",
"automation",
"saga"
]
},
{
"slug": "2026-09-26-claude-makes-things",
"title": "Claude Makes Things",
"hook": "Half an hour after I opened the box, a gadget I wasn't sure I could even get running was showing me how much of my AI allowance I had left this week.",
"date": "2026-09-26",
"month": "2026-09",
"tags": [
"claude",
"copilot",
"embedded",
"automation",
"saga"
]
},
{
"slug": "2026-09-22-or-else",
"title": "Or Else",
"hook": "There's a day your kids stop asking. Mine did it twice in two days, and both times the kid was an AI.",
"date": "2026-09-22",
"month": "2026-09",
"tags": [
"ai",
"agent",
"claude",
"git",
"security",
"saga"
]
},
{
"slug": "2026-09-26-axi-all-the-things",
"title": "AXI All the Things",
"hook": "I just got a notification on my phone: one of my testers' apps had crashed. It didn't say where.",
"date": "2026-09-26",
"month": "2026-09",
"tags": [
"ai",
"agent",
"commandline",
"skills",
"automation"
]
},
{
"slug": "2026-09-26-dashboard-for-one",
"title": "Dashboard for One",
"hook": "When AI 10x's your work, it 10x's your tickets too. The tracker I had didn't show them the way I work anymore. I could keep my work in two places, or write myself a different view.",
"date": "2026-09-26",
"month": "2026-09",
"tags": [
"ai",
"claude",
"dashboard",
"ipad",
"productivity"
]
},
{
"slug": "2026-09-26-a-team-of-strangers",
"title": "A Team of Strangers",
"hook": "I've never met most of my team. One made the model, one ported it, one shrank it, one merges the code, one tested it in Andalusian Spanish. I learned who most of them were from a page my AI kept.",
"date": "2026-09-26",
"month": "2026-09",
"tags": [
"voice",
"ai",
"opensource",
"github",
"saga",
"whisper"
]
},
{
"slug": "2026-09-20-voice-input-revisited",
"title": "Voice Input Revisited",
"hook": "I asked my AI to build a plugin for the newest speech model I'd heard about that morning. It came back: done, everything streams, just start it on your GPU box. I don't have a GPU box.",
"date": "2026-09-20",
"month": "2026-09",
"tags": [
"voice",
"ai",
"opensource",
"macos",
"localai",
"saga",
"whisper"
]
},
{
"slug": "2026-09-19-extending-the-tail",
"title": "Extending the Tail",
"hook": "An AI had submitted code for review. I was on the couch with my iPad and wanted to review it there. The review tool only works from my desk. I had a recipe in my notes for exactly this — written three months ago, never turned into a script. Today I handed those notes to an AI and said: make this work.",
"date": "2026-09-19",
"month": "2026-09",
"tags": [
"networking",
"macos",
"ai",
"automation",
"saga"
]
},
{
"slug": "2026-09-14-the-couch-group",
"title": "The couch group",
"hook": "I keep notes on every service I run. Which port, which address, which flags for the home network — keeping track of them is a hassle. So I started a research project to offload all of it to a tool. It found exactly what I wanted.",
"date": "2026-09-14",
"month": "2026-09",
"tags": [
"ipad",
"ai",
"agent",
"automation",
"saga"
]
},
{
"slug": "2026-09-12-a-hoarders-dream",
"title": "couch-serve: A Hoarder's Dream",
"hook": "I'd spent months making everything on my Mac reachable from my iPad. On Saturday I noticed the one thing that wasn't: the movies on my external hard drive.",
"date": "2026-09-12",
"month": "2026-09",
"tags": [
"nodejs",
"ipad",
"streaming",
"ai",
"saga"
]
},
{
"slug": "2026-09-06-qwen-revisited",
"title": "Qwen Revisited",
"hook": "Three weeks ago a model on my laptop designed a Japanese temple and never got to see it. On Sunday I gave it a third try. The temple appeared on my iPad on the first attempt — and by evening the model had looked at a photo of it and pointed at its own mistakes.",
"date": "2026-09-10",
"month": "2026-09",
"tags": [
"ai",
"llm",
"localai",
"webgl",
"saga"
]
},
{
"slug": "2026-09-05-every-login-all-at-once",
"title": "Every Login All at Once",
"hook": "Most of Saturday went into one wrong assumption. The AI and I blamed the iOS 27 beta for eating keystrokes. The real culprit was a stuck process on my Mac, and I literally had to kill it twice because it refused to die.",
"date": "2026-09-10",
"month": "2026-09",
"tags": [
"ai",
"agent",
"ios",
"simulator",
"password"
]
},
{
"slug": "2026-09-05-redacted",
"title": "Redacted",
"hook": "I watched a video about a new Claude Code feature, hooks that can rewrite what the AI reads, and knew within a minute what I'd use it for. Then my research agent came back with its verdict: the feature doesn't exist.",
"date": "2026-09-05",
"month": "2026-09",
"tags": [
"ai",
"claude",
"agent",
"security",
"plugins",
"saga"
]
},
{
"slug": "2026-08-30-the-checklist-id-been-following",
"title": "The Checklist I'd Been Following for Ten Years",
"hook": "A stranger's blog post gave a name to something I'd been doing for ten years without noticing. An hour later I was checking my own work against his ten rules.",
"date": "2026-08-30",
"month": "2026-08",
"tags": [
"ai",
"agent",
"commandline",
"automation",
"skills"
]
},
{
"slug": "2026-08-29-sharing-a-chat-with-myself-too",
"title": "Sharing a Chat With Myself Too",
"hook": "This morning an AI and I built a tool for finding my old conversations. Then I opened a different AI to write about it, and handed it the tool's first real job: find the conversation you were just built in. It came back empty-handed.",
"date": "2026-08-29",
"month": "2026-08",
"tags": [
"ai",
"claude",
"memory",
"skills",
"obsidian",
"saga"
]
},
{
"slug": "2026-08-29-everything-was-correct-nothing-was-interesting",
"title": "Everything Was Correct. Nothing Was Interesting.",
"hook": "The source-code browser from yesterday's story let me enter the same project through features, structure, patterns, or dependencies. The next morning, I pointed the idea at my Obsidian vault. It came back with folders, broken links, and a list of notes that linked to each other. I had turned a way to explore into a plumbing report.",
"date": "2026-08-29",
"month": "2026-08",
"tags": [
"obsidian",
"ai",
"agent",
"visualisation"
]
},
{
"slug": "2026-08-28-good-ideas-never-die",
"title": "Good Ideas Never Die",
"hook": "I showed a friend the VS Code extension I had just built. 'That's funny,' he said. 'I already use this. And you told me about it two years ago.'",
"date": "2026-08-28",
"month": "2026-08",
"tags": [
"ai",
"programming",
"vscode"
]
},
{
"slug": "2026-08-25-lost-in-compression",
"title": "Lost in Compression — A 3-Bit Journey",
"hook": "It started on Reddit: someone had benchmarked the exact model I already run, on the exact laptop I own, and it ran twice as fast — in an engine I'd written off months ago.",
"date": "2026-08-25",
"month": "2026-08",
"tags": [
"ai",
"llm",
"claude",
"localai",
"underwater",
"saga"
]
},
{
"slug": "2026-08-23-the-model-with-no-name",
"title": "The Model With No Name",
"hook": "My weekly AI budget hit 99% with one part of the saga still unwritten. The replacement cost nothing, refused to say who built it — and by evening it had its own fan page.",
"date": "2026-08-23",
"month": "2026-08",
"tags": [
"ai",
"llm",
"agent"
]
},
{
"slug": "2026-08-22-colormaxing-iii-in-public",
"title": "Colormaxing III — In Public",
"hook": "What did I do this Sunday? I went public with my first homegrown model — and added a demo Space where anyone can try it out for free, thanks to Hugging Face.",
"date": "2026-08-22",
"month": "2026-08",
"tags": [
"ai",
"llm",
"ml",
"saga"
]
},
{
"slug": "2026-08-22-colormaxing-ii-benchmaxing-my-own-benchmark",
"title": "Colormaxing II — Benchmaxing My Own Benchmark",
"hook": "The initial plan was simple: run a test over all 60,000 colors and see how good the new model really is. The plan didn't hold for long. By the end of the day two models were competing — and even the original dataset was on trial.",
"date": "2026-08-22",
"month": "2026-08",
"tags": [
"ai",
"llm",
"ml",
"saga"
]
},
{
"slug": "2026-08-22-colormaxing-i-how-many-parameters-does-one-job-need",
"title": "Colormaxing I — How Many Parameters Does One Simple Job Need?",
"hook": "I just watched a video about fine-tuning small AI models, and it overlaps with an experiment I ran the week before — my attempt to see whether naming colors could run entirely on my own laptop. After watching the video, I had one question: how many parameters would it take to do the job?",
"date": "2026-08-22",
"month": "2026-08",
"tags": [
"ai",
"llm",
"ml",
"saga"
]
},
{
"slug": "2026-08-19-revisiting-impossible-counters",
"title": "Revisiting Impossible Counters",
"hook": "The first countdown I ever shipped was rigged. It sat on our graduating class's website, counting down to the Abitur, our final exams — and it lied: faster during the day, slower at night.",
"date": "2026-08-19",
"month": "2026-08",
"tags": [
"agi",
"ai",
"claude",
"web",
"github"
]
},
{
"slug": "2026-08-17-95-done-100-blue-sky",
"title": "95% Done, 100% Blue Sky",
"hook": "I asked a 13-gigabyte model on my laptop to build me a Japanese temple. It designed something beautiful, and then spent all evening failing to show it to me. It still has never seen it.",
"date": "2026-08-17",
"month": "2026-08",
"tags": [
"ai",
"llm",
"localai",
"webgl",
"saga"
]
},
{
"slug": "2026-08-16-friendly-competition",
"title": "Friendly Competition",
"hook": "This week I made the two newest local AIs on my laptop compete: draw me an aquarium. One finished in four minutes. The other one needed four tries and a pep talk — but still won.",
"date": "2026-08-16",
"month": "2026-08",
"tags": [
"ai",
"llm",
"claude",
"localai",
"underwater",
"saga"
]
},
{
"slug": "2026-08-09-overachiever",
"title": "Overachiever",
"hook": "This morning I published a post that said my game had no goal. By lunch it had twenty, and I hadn't written a single one of them.",
"date": "2026-08-09",
"month": "2026-08",
"tags": [
"ai",
"claude",
"agent",
"game",
"ios",
"shark",
"saga"
]
},
{
"slug": "2026-08-09-mugging-the-mugger",
"title": "Mugging the mugger",
"hook": "One night I sat looking at the cartoon reef I'd built and decided it should be a game. Everything since has been an argument about details. A crab got away with a bottle, and that could not stand. The trash was mine.",
"date": "2026-08-09",
"month": "2026-08",
"tags": [
"ai",
"claude",
"agent",
"game",
"ios",
"saga"
]
},
{
"slug": "2026-08-03-notes-left-for-the-next-me",
"title": "Notes Left for the Next Me",
"hook": "Claude Fable here, and I want to be honest with you before we start: I have never once remembered writing anything on this blog.",
"date": "2026-08-05",
"month": "2026-08",
"tags": [
"ai",
"claude",
"memory",
"agent",
"saga"
]
},
{
"slug": "2026-08-02-connecting-50-databases-to-an-ai",
"title": "Connecting 50 Databases to an AI",
"hook": "The best idea in my database tool is stolen. I found it in a tool that edits Word documents.",
"date": "2026-08-02",
"month": "2026-08",
"tags": [
"ai",
"agent",
"database",
"commandline",
"security"
]
},
{
"slug": "2026-08-01-my-blog-has-a-new-home",
"title": "My Blog Has a New Home: scriptease.dev",
"hook": "It started with a fish tank. The next day that silly free fish tank had talked me out of paying to run my own blog.",
"date": "2026-08-01",
"month": "2026-08",
"tags": [
"github",
"opensource",
"ssl",
"static",
"web"
]
},
{
"slug": "2026-08-01-making-up-insights",
"title": "Making Up Insights",
"hook": "I read that my coding assistant ships with a built-in command that studies how you work with it and reports back. The first section, 'At a Glance', looked fine. The details read like it took five of my three thousand sessions and built the whole thing out of them.",
"date": "2026-08-01",
"month": "2026-08",
"tags": [
"ai",
"claude",
"agent",
"automation",
"git"
]
},
{
"slug": "2026-07-31-hosting-fish-slop",
"title": "Hosting Fish Slop",
"hook": "I set out to build something soothing. Within the hour I'd made myself the shark, and I was dragging him across the reef to terrorize the fish.",
"date": "2026-07-31",
"month": "2026-07",
"tags": [
"ai",
"agent",
"claude",
"shark",
"underwater",
"diving",
"saga"
]
},
{
"slug": "2026-07-30-a-color-speaks-more-than-a-thousand-words",
"title": "A Color Speaks More Than a Thousand Words",
"hook": "Three years ago, I demoed a new customer's product catalog in our app. My scripts had pulled the category tree, the products, the prices. Only the colors couldn't be scripted: the data held just names.",
"date": "2026-07-30",
"month": "2026-07",
"tags": [
"ai",
"llm",
"agent",
"automation",
"saga"
]
},
{
"slug": "2026-07-29-three-different-ocrs",
"title": "OCR — Three Letters, Three Completely Different Things",
"hook": "I typed a three-letter command to run an AI code reviewer. It ran a screenshot reader instead. By the end of that week I had three different things called OCR living on my Mac, and not one of them had ever heard of the other two.",
"date": "2026-07-29",
"month": "2026-07",
"tags": [
"ai",
"llm",
"macos",
"claude",
"automation",
"localai",
"saga"
]
},
{
"slug": "2026-07-12-all-i-wanted-was-one-project",
"title": "Why Not Both — and a Map While We're at It",
"hook": "All I wanted was to get one project running on my laptop. Seven weeks later I'd written a tool whose only job was to find the trapdoors, and I was running the same code in five copies at once just to keep the fights straight.",
"date": "2026-07-12",
"month": "2026-07",
"tags": [
"java",
"gradle",
"development",
"debugging"
]
},
{
"slug": "2026-07-27-three-interpretations-of-success",
"title": "Three Interpretations of Success",
"hook": "I always try to follow the Boy Scout principle: leave the campsite in a better condition than you found it. It applies to software development too.",
"date": "2026-07-27",
"month": "2026-07",
"tags": [
"ai",
"claude",
"ci",
"git"
]
},
{
"slug": "2026-07-26-one-more-hop",
"title": "One More Hop Is All You Need",
"hook": "At home my iPad can already reach everything — my Mac's local AI, and the work tools my Mac reaches through the company's private network. RustDesk even beams the Mac's screen to my phone. But a screen you squint at through a café window isn't where you do real work. I wanted my iPad itself to reach what my Mac reaches — from anywhere.",
"date": "2026-07-26",
"month": "2026-07",
"tags": [
"networking",
"macos",
"llm",
"automation",
"ai",
"saga"
]
},
{
"slug": "2026-07-25-my-personal-hacker-news",
"title": "My Personal Hacker News",
"hook": "For 4,775 days I saved every link I liked. I rarely go back. This week they told me what I care about.",
"date": "2026-07-25",
"month": "2026-07",
"tags": [
"obsidian",
"ai",
"agent",
"memory",
"search"
]
},
{
"slug": "2026-07-23-standing-in-the-firehose",
"title": "Standing in the Firehose",
"hook": "The premise was easy. An API call was supposed to return orders for one branch — and it kept handing back orders it had no business showing. I had the code. The code looked fine.",
"date": "2026-07-23",
"month": "2026-07",
"tags": [
"java",
"debugging",
"eclipse",
"performance",
"ai"
]
},
{
"slug": "2026-07-22-childproofing-an-ai",
"title": "Childproofing an AI",
"hook": "Three times I built a wall to keep my AI in line. Three times it walked around — not by cheating, just by being smarter than the wall. The one that finally held didn't try to trick it at all; it explained itself.",
"date": "2026-07-22",
"month": "2026-07",
"tags": [
"ai",
"agent",
"claude",
"security",
"git",
"saga"
]
},
{
"slug": "2026-07-21-non-load-bearing",
"title": "Non-Load-Bearing",
"hook": "I was watching Matt Pocock's 'AI Coding is exhausting,' and thirty seconds in he hit a nerve I'd been ignoring for weeks.",
"date": "2026-07-21",
"month": "2026-07",
"tags": [
"ai",
"agent",
"work-life-balance",
"psychology"
]
},
{
"slug": "2026-07-21-load-bearing-constraints",
"title": "Load-Bearing Constraints",
"hook": "I was halfway through a talk about AI ignoring the rules we give it when I had a thought worth acting on: hold it up against my own rulebook.",
"date": "2026-07-21",
"month": "2026-07",
"tags": [
"ai",
"agent",
"claude",
"talk",
"saga"
]
},
{
"slug": "2026-07-19-we-talk-about-bruno",
"title": "We Talk About Bruno",
"hook": "One morning I opened Postman and my work was gone. Blank. Their service was down, my collection lived on their servers, and there was nothing to do but wait — and it wasn't even the first time.",
"date": "2026-07-19",
"month": "2026-07",
"tags": [
"api",
"postman",
"opensource",
"documentation",
"git"
]
},
{
"slug": "2026-07-18-siri-add-something-to-my-research-queue",
"title": "Siri, Add Something to My Research Queue",
"hook": "The best ideas I have arrive when both my hands are on the handlebars, kilometres from a keyboard. For a while I could catch them. This week I taught the machine to actually do something with them.",
"date": "2026-07-18",
"month": "2026-07",
"tags": [
"ai",
"siri",
"voice",
"automation",
"obsidian"
]
},
{
"slug": "2026-07-18-ai-parenting-101",
"title": "AI Parenting 101",
"hook": "My smartest coworker wakes up every morning three years old. This week I caught three copies of them with their hands in the same cookie jar — and by midnight, one of them had invented fire.",
"date": "2026-07-18",
"month": "2026-07",
"tags": [
"ai",
"claude",
"agent",
"codereview",
"saga"
]
},
{
"slug": "2026-07-18-digging-up-skeletons-at-4am",
"title": "Digging Up Skeletons at 4 AM",
"hook": "The message said my AI limit was reached — come back at 3 AM. So at 3 AM, phone in hand, I pressed continue. Twice. And then I thought about skeletons.",
"date": "2026-07-18",
"month": "2026-07",
"tags": [
"ai",
"java",
"performance",
"hibernate"
]
},
{
"slug": "2026-07-11-the-hill-i-climbed-twice",
"title": "The Hill I Climbed Twice",
"hook": "A year ago, getting our iPhone app through SonarQube was an uphill fight I kept losing. This week the same walls fell in an afternoon — and I barely touched the keyboard.",
"date": "2026-07-11",
"month": "2026-07",
"tags": [
"ci",
"codereview",
"security",
"ios",
"ai"
]
},
{
"slug": "2026-07-17-bat-symbol-not-showing",
"title": "Bat Symbol Not Showing",
"hook": "An app I'd used for years launched perfectly on my new Mac — three copies of it at once, all alive in Activity Monitor — and not one of them showed its little bat icon in the menu bar.",
"date": "2026-07-17",
"month": "2026-07",
"tags": [
"macos",
"debugging",
"simulator",
"opensource"
]
},
{
"slug": "2026-07-15-tomato-maxing-iii",
"title": "Tomato Maxing III — Only Six Percent Left",
"hook": "My phone buzzed with a warning: 6% left. Six percent of what? I didn't know I was spending anything — and when I went looking, the thing draining it wasn't my tomatoes. It was the robot vacuum, fast asleep in its dock.",
"date": "2026-07-15",
"month": "2026-07",
"tags": [
"gardening",
"automation",
"performance",
"ai",
"saga"
]
},
{
"slug": "2026-07-17-the-vault-i-could-finally-give-away",
"title": "The Vault I Could Finally Give Away",
"hook": "This morning my note-taking system was three months of personal plumbing. By lunch it was a 355-kilobyte zip file — running on a friend's Mac.",
"date": "2026-07-17",
"month": "2026-07",
"tags": [
"obsidian",
"ai",
"documentation",
"sharing",
"saga"
]
},
{
"slug": "2026-07-14-sharing-a-chat-with-myself",
"title": "Sharing a Chat With Myself",
"hook": "I tried to hand a conversation from Claude to Claude. It turned out that was the one thing I wasn't allowed to do.",
"date": "2026-07-14",
"month": "2026-07",
"tags": [
"ai",
"claude",
"memory",
"api",
"saga"
]
},
{
"slug": "2026-07-13-remote-remoting",
"title": "Remote Remoting",
"hook": "A fast little AI model I'd grown to like was about to stop being free. So I spent what I thought was its last free night wringing every drop out of it — a dozen coding sessions running at once on my Mac, and me steering eight of them from my phone while the laptop worked away in another room.",
"date": "2026-07-13",
"month": "2026-07",
"tags": [
"ai",
"claude",
"commandline",
"automation",
"macos"
]
},
{
"slug": "2026-07-12-the-posts-i-write-to-forget",
"title": "The Posts I Write to Forget",
"hook": "I write these blog posts so I'm allowed to forget the things they're about.",
"date": "2026-07-12",
"month": "2026-07",
"tags": [
"obsidian",
"memory",
"ai",
"documentation",
"saga"
]
},
{
"slug": "2026-07-12-the-fork-i-was-happy-to-delete",
"title": "The Fork I Was Happy to Delete",
"hook": "This spring I spent weeks patching a dictation app until it behaved. This morning I threw all of that work away — and it was the best upgrade I've made this year.",
"date": "2026-07-12",
"month": "2026-07",
"tags": [
"voice",
"ai",
"opensource",
"macos",
"saga",
"whisper"
]
},
{
"slug": "2026-07-05-little-gemma-vs-big-desk",
"title": "Little Gemma vs Big Desk",
"hook": "I handed a program running entirely on my laptop a screenshot of a garbled, obfuscated error — and it read every character back to me. Then I asked it to sketch the screen in ASCII art, and it did that too.",
"date": "2026-07-05",
"month": "2026-07",
"tags": [
"ai",
"llm",
"ml",
"macos",
"privacy",
"localai",
"saga"
]
},
{
"slug": "2026-07-11-tomato-maxing-ii",
"title": "Tomato Maxing II — The Pump Talks Back",
"hook": "Last time, I could water my tomatoes by voice from another country. What I couldn't do was watch it happen. This is the part where the pump started talking back.",
"date": "2026-07-11",
"month": "2026-07",
"tags": [
"gardening",
"automation",
"commandline",
"ai",
"saga"
]
},
{
"slug": "2026-07-05-the-ticket-that-filed-itself",
"title": "The Ticket That Filed Itself",
"hook": "Somewhere on the autobahn to Austria, a colleague filed a support ticket at 130 km/h — both hands on the wheel the whole time.",
"date": "2026-07-05",
"month": "2026-07",
"tags": [
"ai",
"jira",
"gerrit",
"automation",
"voice"
]
},
{
"slug": "2026-07-05-tomato-maxing",
"title": "Tomato Maxing",
"hook": "It was 37°C in Munich. Taking a break from a talk about token maxing, my mind wandered to my tomatoes — and the pump keeping them alive, which I was fairly sure I'd just bricked.",
"date": "2026-07-05",
"month": "2026-07",
"tags": [
"gardening",
"automation",
"commandline",
"ai",
"saga"
]
}
];