<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>nhat.dev — Blog</title><description>Notes on macOS, disk cleanup, dev workflow, and personal projects.</description><link>https://nhatdote.io.vn/</link><language>en-US</language><item><title>iPhone Fold vs Samsung Z Fold 7 — Apple&apos;s first fold against Samsung&apos;s seventh</title><link>https://nhatdote.io.vn/en/blog/iphone-fold-vs-samsung-z-fold-7/</link><guid isPermaLink="true">https://nhatdote.io.vn/en/blog/iphone-fold-vs-samsung-z-fold-7/</guid><description>One is a rookie carrying 14 years of iPad luggage. The other is a 7-generation veteran. I&apos;ve used the Z Fold 7 for almost a year and the iPhone Fold for two weeks — here&apos;s the category-by-category comparison, and a decision tree for which to buy.</description><pubDate>Fri, 05 Jun 2026 00:00:00 GMT</pubDate></item><item><title>One month with the MacBook Air M5 as my main dev machine — is a fanless laptop enough for full-stack freelance?</title><link>https://nhatdote.io.vn/en/blog/macbook-air-m5-dev-machine/</link><guid isPermaLink="true">https://nhatdote.io.vn/en/blog/macbook-air-m5-dev-machine/</guid><description>I sold my MacBook Pro 14 M3 and bought a MacBook Air M5. The reason sounds backwards: because I moved my 16-container stack to a VPS, my local machine no longer needs to be a beast. One month in — here&apos;s when the Air is enough, when it throttles, and why a powerful dev machine is becoming overkill.</description><pubDate>Wed, 03 Jun 2026 00:00:00 GMT</pubDate></item><item><title>iPhone Fold after two weeks — Apple&apos;s first fold, seen through a Z Fold 7 owner&apos;s eyes</title><link>https://nhatdote.io.vn/en/blog/iphone-fold-first-two-weeks/</link><guid isPermaLink="true">https://nhatdote.io.vn/en/blog/iphone-fold-first-two-weeks/</guid><description>Apple finally made a folding phone. I&apos;ve been on a Z Fold 7 for almost a year, so I picked up the iPhone Fold with one clear question: if Apple is 7 years late, did they do it better? After two weeks — here&apos;s what Apple got right, what they got wrong, and why the software is the real story.</description><pubDate>Mon, 01 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Solo Leveling season 2 — can a power fantasy have any depth?</title><link>https://nhatdote.io.vn/en/blog/solo-leveling-season-2-power-fantasy-depth/</link><guid isPermaLink="true">https://nhatdote.io.vn/en/blog/solo-leveling-season-2-power-fantasy-depth/</guid><description>Solo Leveling season 2 (A-1 Pictures, Winter 2026) wrapped. Animation is top-tier, fight choreography is clean, Hiroyuki Sawano&apos;s OST still slaps. But after 13 episodes I keep asking the same question: can a power fantasy actually be &apos;great,&apos; or is it forever just 22 minutes of dopamine a week?</description><pubDate>Thu, 28 May 2026 00:00:00 GMT</pubDate></item><item><title>Six months on a $500 phone (Pixel 9a) — what flagship actually buys you</title><link>https://nhatdote.io.vn/en/blog/six-months-budget-phone-pixel-9a/</link><guid isPermaLink="true">https://nhatdote.io.vn/en/blog/six-months-budget-phone-pixel-9a/</guid><description>I traded my Pixel 10 Pro for a Pixel 9a six months ago — not because of money, but out of curiosity. Camera 90% of the flagship, screen 70%, performance 95%, battery 110%. Here&apos;s the honest verdict after 6 months, and the 5 things flagships actually give you for the extra $500.</description><pubDate>Mon, 25 May 2026 00:00:00 GMT</pubDate></item><item><title>Dandadan Season 2 — the best action-comedy anime of 2026, and why this combo is almost impossible to land</title><link>https://nhatdote.io.vn/en/blog/dandadan-season-2-anime/</link><guid isPermaLink="true">https://nhatdote.io.vn/en/blog/dandadan-season-2-anime/</guid><description>Dandadan S2 (Spring 2026, Science SARU) is 7 episodes in. Pacing tighter than S1, animation a step up, still unmistakably Tatsu Yukinobu&apos;s humor. This is the piece I wrote after sampling every Spring 2026 anime — and the reason a great action-comedy is one of the hardest combos in the medium.</description><pubDate>Wed, 20 May 2026 00:00:00 GMT</pubDate></item><item><title>I moved my VPS from Hetzner (Germany) to Vultr (Singapore) — 280ms latency gone overnight</title><link>https://nhatdote.io.vn/en/blog/hetzner-eu-to-vultr-singapore-vps/</link><guid isPermaLink="true">https://nhatdote.io.vn/en/blog/hetzner-eu-to-vultr-singapore-vps/</guid><description>Hetzner CPX31 (4 vCPU AMD EPYC, 8GB) in Falkenstein is fast and dirt cheap — but 280ms RTT to Vietnam pushed TTFB to 1.2s. Moved to Vultr High Frequency AMD Singapore: $20 more per month, 60ms RTT, TTFB 280ms. Real benchmark + when region beats CPU price.</description><pubDate>Wed, 20 May 2026 00:00:00 GMT</pubDate></item><item><title>Logitech MX Master 4 after 6 months — the mouse that knows which workspace I&apos;m in</title><link>https://nhatdote.io.vn/en/blog/logitech-mx-master-4-six-months/</link><guid isPermaLink="true">https://nhatdote.io.vn/en/blog/logitech-mx-master-4-six-months/</guid><description>I&apos;ve been daily-driving the MX Master 4 (launched Sept 2025) since November. 6 months in — 3 things Logitech got right (Actions Ring, haptic feedback, USB-C at last) and 2 they still got wrong. Review for devs writing code 8 hours a day, not a 10-minute unbox.</description><pubDate>Wed, 20 May 2026 00:00:00 GMT</pubDate></item><item><title>Sakamoto Days anime — how TMS dropped the ball on a great manga</title><link>https://nhatdote.io.vn/en/blog/sakamoto-days-anime-adaptation-fail/</link><guid isPermaLink="true">https://nhatdote.io.vn/en/blog/sakamoto-days-anime-adaptation-fail/</guid><description>Sakamoto Days (TMS Entertainment, 2025-2026, 2 cours) is one of the most disappointing adaptations in the last two years. Yuto Suzuki&apos;s manga is a masterclass in pacing fight choreography against comedy. The anime cut 40% of what made it work — and here&apos;s exactly how.</description><pubDate>Mon, 18 May 2026 00:00:00 GMT</pubDate></item><item><title>10 anime openings I rewatch while coding — and why anime music is its own genre</title><link>https://nhatdote.io.vn/en/blog/anime-openings-coding-music/</link><guid isPermaLink="true">https://nhatdote.io.vn/en/blog/anime-openings-coding-music/</guid><description>After 7 years coding with music, I realised anime OPs have something ambient music doesn&apos;t: 90 seconds of buildup + climax + outro — full emotional arc in under 2 minutes. Here are the 10 OPs I&apos;ve looped through 2025-2026 and why anime music fits coding strangely well.</description><pubDate>Sun, 10 May 2026 00:00:00 GMT</pubDate></item><item><title>iPhone 17 → Pixel 10 Pro as a developer — 3 things I lost, 2 I gained</title><link>https://nhatdote.io.vn/en/blog/iphone-to-pixel-10-pro-developer/</link><guid isPermaLink="true">https://nhatdote.io.vn/en/blog/iphone-to-pixel-10-pro-developer/</guid><description>I went from iPhone 12 Pro all the way to iPhone 17, then jumped to Pixel 10 Pro in early 2026. 3 months as daily driver: Termux + ADB + open file system is real, but losing iMessage / AirDrop with the MacBook hurt more than I expected. Honest verdict.</description><pubDate>Sun, 10 May 2026 00:00:00 GMT</pubDate></item><item><title>I ran Zed instead of VS Code for 4 months — here&apos;s why I went back</title><link>https://nhatdote.io.vn/en/blog/zed-vs-vscode-4-months/</link><guid isPermaLink="true">https://nhatdote.io.vn/en/blog/zed-vs-vscode-4-months/</guid><description>Zed opens projects 3x faster, multibuffer is a refactor superpower, and the AI panel doesn&apos;t lag the editor. But the extension ecosystem is thin, remote dev is weak, and the debugger is patchy. Honest take after using Zed as my daily driver for 4 months.</description><pubDate>Sun, 10 May 2026 00:00:00 GMT</pubDate></item><item><title>git pull + docker compose up -d but nothing changed? — 5 traps that cost me 30 minutes each</title><link>https://nhatdote.io.vn/en/blog/docker-rebuild-vps-pitfalls/</link><guid isPermaLink="true">https://nhatdote.io.vn/en/blog/docker-rebuild-vps-pitfalls/</guid><description>SSH into VPS, git pull, docker compose up -d... and the new code still isn&apos;t live. Here are the 5 culprits I&apos;ve burned real time on — plus a 60-second checklist to catch which one is biting you.</description><pubDate>Sat, 09 May 2026 00:00:00 GMT</pubDate></item><item><title>Frieren season 2 — even as a manga reader, Madhouse keeps catching me off-guard</title><link>https://nhatdote.io.vn/en/blog/frieren-season-2-manga-reader-perspective/</link><guid isPermaLink="true">https://nhatdote.io.vn/en/blog/frieren-season-2-manga-reader-perspective/</guid><description>I&apos;ve read Sōsō no Frieren through chapter 130. I know every plot beat. I still haven&apos;t skipped an episode of season 2. Here are 3 things Madhouse does better than the manga — and why Frieren is the counter-example to my JJK / Chainsaw Man worries.</description><pubDate>Sat, 09 May 2026 00:00:00 GMT</pubDate></item><item><title>I self-host analytics with SQLite + Astro middleware — and GA4 is never coming back</title><link>https://nhatdote.io.vn/en/blog/sqlite-analytics-vs-google-analytics/</link><guid isPermaLink="true">https://nhatdote.io.vn/en/blog/sqlite-analytics-vs-google-analytics/</guid><description>One .db file, 200 lines of TypeScript, no client-side JS, no cookie banner. Here&apos;s how I count visitors for this portfolio — and when this setup is NOT enough.</description><pubDate>Sat, 09 May 2026 00:00:00 GMT</pubDate></item><item><title>Why I tell developers to buy a MacBook over Windows — after 8 years on both</title><link>https://nhatdote.io.vn/en/blog/macbook-vs-windows-developer/</link><guid isPermaLink="true">https://nhatdote.io.vn/en/blog/macbook-vs-windows-developer/</guid><description>macOS is Unix. The server you deploy to is Linux. The match between your laptop and your servers is the real reason developers pick Mac — not Apple aesthetics. Here are 6 practical reasons.</description><pubDate>Tue, 05 May 2026 00:00:00 GMT</pubDate></item><item><title>Z Fold 7 after 10 months — review by a developer who got addicted to a foldable</title><link>https://nhatdote.io.vn/en/blog/samsung-z-fold-7-review/</link><guid isPermaLink="true">https://nhatdote.io.vn/en/blog/samsung-z-fold-7-review/</guid><description>I bought a Galaxy Z Fold 7 in July 2025. Still using it. Here&apos;s what 10 months of real use taught me — and whether a $2000 phone is worth it for a developer.</description><pubDate>Tue, 05 May 2026 00:00:00 GMT</pubDate></item><item><title>Chainsaw Man season 2 is announced — and I&apos;m hyped and terrified at the same time</title><link>https://nhatdote.io.vn/en/blog/chainsaw-man-season-2-anime/</link><guid isPermaLink="true">https://nhatdote.io.vn/en/blog/chainsaw-man-season-2-anime/</guid><description>MAPPA confirmed Chainsaw Man season 2 &apos;Assassins Arc&apos; at Jump Festa 2026. Here&apos;s what I want, and here&apos;s why I&apos;m still nervous.</description><pubDate>Mon, 04 May 2026 00:00:00 GMT</pubDate></item><item><title>3 production bugs I shipped over time zones — and the 4 rules I now live by</title><link>https://nhatdote.io.vn/en/blog/timezone-bugs-production/</link><guid isPermaLink="true">https://nhatdote.io.vn/en/blog/timezone-bugs-production/</guid><description>Server in UTC, app in local time, database doesn&apos;t know what to store. Three times I burned real hours on time-zone bugs and the rules I keep ever since.</description><pubDate>Mon, 04 May 2026 00:00:00 GMT</pubDate></item><item><title>JJK is over in the manga — and I&apos;m still waiting for MAPPA to animate Higuruma vs Sukuna</title><link>https://nhatdote.io.vn/en/blog/jjk-gojo-higuruma-sukuna-anime/</link><guid isPermaLink="true">https://nhatdote.io.vn/en/blog/jjk-gojo-higuruma-sukuna-anime/</guid><description>Jujutsu Kaisen ended at chapter 271. The Gojo vs Sukuna fight is already legend. But it&apos;s the Higuruma + Yuji vs Sukuna fight I&apos;m most desperate to see animated.</description><pubDate>Sun, 03 May 2026 00:00:00 GMT</pubDate></item><item><title>Cron works locally, fails on the server — 6 reasons I&apos;ve hit a hundred times</title><link>https://nhatdote.io.vn/en/blog/cron-not-running-server/</link><guid isPermaLink="true">https://nhatdote.io.vn/en/blog/cron-not-running-server/</guid><description>Missing PATH, different $HOME, silent logs, time-zone drift. Here&apos;s the 6-step checklist I run every time a cron job &apos;runs but doesn&apos;t run&apos;.</description><pubDate>Sat, 02 May 2026 00:00:00 GMT</pubDate></item><item><title>~/.ssh/config: 10 lines that saved me a million keystrokes</title><link>https://nhatdote.io.vn/en/blog/ssh-config-multi-server/</link><guid isPermaLink="true">https://nhatdote.io.vn/en/blog/ssh-config-multi-server/</guid><description>After 8 years of SSHing into dozens of servers across many clients, here&apos;s the ~/.ssh/config setup I wish I knew on day one — aliases, ProxyJump, ControlMaster, and the speed tricks.</description><pubDate>Wed, 29 Apr 2026 00:00:00 GMT</pubDate></item><item><title>Your 256 GB MacBook is full? Here are the 7 places your GB actually went</title><link>https://nhatdote.io.vn/en/blog/macbook-storage-full/</link><guid isPermaLink="true">https://nhatdote.io.vn/en/blog/macbook-storage-full/</guid><description>Disk full even though you barely installed anything? These are the 7 real culprits on macOS and how to find them with Terminal — no CleanMyMac required.</description><pubDate>Fri, 24 Apr 2026 00:00:00 GMT</pubDate></item><item><title>Mac says &apos;Storage Almost Full&apos; but you&apos;re only using 200 of 512 GB — what&apos;s &apos;purgeable&apos;?</title><link>https://nhatdote.io.vn/en/blog/macos-purgeable-storage/</link><guid isPermaLink="true">https://nhatdote.io.vn/en/blog/macos-purgeable-storage/</guid><description>APFS snapshots, Time Machine local, iCloud cache — what &apos;purgeable space&apos; on macOS actually is, why it doesn&apos;t self-clean, and how to force it.</description><pubDate>Fri, 24 Apr 2026 00:00:00 GMT</pubDate></item><item><title>I reclaimed 47 GB by deleting old node_modules — script + pitfalls</title><link>https://nhatdote.io.vn/en/blog/node-modules-cleanup-macos/</link><guid isPermaLink="true">https://nhatdote.io.vn/en/blog/node-modules-cleanup-macos/</guid><description>A 3-year-old dev machine can hold 50–100 GB of dead node_modules. Here&apos;s how to find and remove them safely, plus the target/, .venv, Pods/ folders you probably forgot.</description><pubDate>Fri, 24 Apr 2026 00:00:00 GMT</pubDate></item></channel></rss>