Weekly Review W48
- published: November 27, 2025 estimate: 4 min read view-cnt: 12 views
Time flies. I feel that the only writing I can do for now is a plain weekly review.
Surprisingly, I used to post daily when I started this blog.
I hope things will become more structured eventually, where all my work will have proper checkpoints, and I can fit in posts about my work regularly.
Major stuff happened this week:
- I rewrote a 5-year-old exporter to extract TSV from a RTF file
- I first rewrote it myself, and made the codebase 10 times smaller
- however, it cost me 1+ working days
- then, I found out AI can achieve the same result in less than 30 mins
- learned a few best practices through empirical AI agent exercises
- I also spent an extra day deep diving into regex due to pure obsession
- a few more empirical best practices discovered
- I figured out something interesting in the web frontend via the vimkeys game project
- the relationship between tabindex, keydown and click events is fascinating
- think about “how to make shortcuts only work on a certain area of the DOM?”
- where you may have a dialog in the front AND a game map in the background?
- switched back to VSCode for a better code review experience plus tons of language features from the .NET SDK extension
- dove deep into JSInterop in Blazor, learned the difference between JsonElement and JsonNode
- learned different patterns to handle events in-between .NET and JS
- I spent some time playing around with minifiers, just to make sure I ship the working data URL clean and short
- learned the word mangle, the state of the ecosystem
- the difference between base64 encoding and encodeURIComponent on a data URL
- also made my own way to squeeze the minification a bit further
- polishing my website: introduced tag pages and an upcoming mood tracker
- learned how to manage color schemes efficiently
- learned how width, padding, translate, position work together
- Supabase MCP first impression: FABULOUS 😍
- spent some time adding tags to my blog posts, organized a dedicated metadata management file
- verified an AI-generated post, identified a few caveats
Possible Follow Up Articles
- RTF to TSV converter
- details on how I managed to rewrite and simplify the codebase by 10x
- comparing design decisions: past vs present
- some opinions on these one-shot shipment applications
- browser custom hotkeys gotchas and Blazor JSInterop
- details on how I dissected the problems, and patterns for event handling I discovered
- heuristic methods for AI agents and regular expressions
- my empirical take on AI agent and regular expression best practices
- the regex part focuses on development and performance
- the AI agent part focuses on how to work with AI agents efficiently
- adventures with data URLs and minifiers
- introducing data URL capabilities, and what I did to port the original C# console app to the browser frontend
- a brief overview of the minifier ecosystem
- enable and start posting actual content on the mood tracker
- review educational recall
- review a few podcasts I recently listened to
- talks about abandonware and the randomness I am seeking
- detailing the progress of polishing my website
- line-height is critical for inline or content elements
- buttons require tons of normalization (buttons inherit differently)
- flex vs “margin + width + display”
- difference between padding and margin
- how to manage color scheme (color tone practically aesthetic decision)
- useful IIFE
- “margin-inline auto” + “position relative/ absolute” + “width fit-content”
- “button, a” vs “span”
- “skip to content”
- how AI nailed grid and flex
- give AI a few happy-path options to simplify the algorithm
Closing Thoughts
It seems a lot happened this week, and one of the things I learned is that I have a limited amount of time
When I started working on the converter, I stopped working on the game project
When I deep dive into unnecessary technical details, I lose the chance to write about what I did or polish my website
If I choose to write a detailed blog post about my work, I lose the chance to share random moments from my life
For now, I can feel the loss of keeping all these notes and ideas as-is without expanding them into dedicated articles
And that’s how time and life work essentially—we must learn to cope with it and appreciate the beauty of limitation
That said, I still have my own priorities for expanding these topics—for now, I’m going to work on the mood tracker first
Then, adapt to whatever comes my way
Stay tuned for the unexpected—I’ll catch you at the next checkpoint 💾
No comments yet
Be the first to comment!