Skip to content
Blog post thumbnail: Thoughts on Writing Blog Posts - A candid note on accessibility and frontend writing: limits of code-heavy posts, a shift to narratives, and how to grow this blog with feedback. (https://www.codeslog.com/en/posts/blog-writing-thoughts/)

Thoughts on Writing Blog Posts

Since I started this blog, I have written in several directions. The areas I keep digging into are web accessibility and frontend. I want to write more, and new ideas keep coming, but the speed of writing is not as fast as I hope. Right now I still have eight unfinished drafts. Starting is easy, but wrapping up always feels surprisingly hard. AI has made research and organization much faster, but my time and energy are still limited, so it often feels frustrating. I work during the day, and after work I take care of family responsibilities, side projects, this blog, and certification prep. Honestly, I wish I had ten bodies. ^^;; Still, I want to keep going, so today I am writing a candid note about how I approach blog writing. ...

Published date: 2026-02-05 · Reading time: 3 min · Word count: 579 words · Author: Isaac
Blog post thumbnail: Improving Multilingual Blog UX: Building a Smart Language Suggestion Banner - Built a banner that detects browser language and automatically suggests the appropriate language version. Designed to meet WCAG 2.2 AA with keyboard navigation and screen reader support. (https://www.codeslog.com/en/posts/language-switcher-banner/)

Improving Multilingual Blog UX: Building a Smart Language Suggestion Banner

Introduction Running a blog in both Korean and English revealed an interesting problem. When sharing blog links internationally, visitors often land on the Korean page. Those who can’t read Korean are confused, right? Similarly, when Korean readers click on English post links shared in Korean communities, they face the same issue. While there’s a language switcher button in the header, new visitors often struggle to find it. This isn’t user-friendly, and from an accessibility perspective, it’s not ideal either. ...

Published date: 2026-01-23 · Reading time: 13 min · Word count: 6082 words · Author: Isaac
Blog post thumbnail: Building a Dynamic Comment System on a Static Site: Giscus + GraphQL API - Learn how I implemented comment counts, recent comments, and an all comments page on my Hugo static blog using GitHub GraphQL API and smart caching strategies for optimal performance and UX. (https://www.codeslog.com/en/posts/blog-comment-visibility-features/)

Building a Dynamic Comment System on a Static Site: Giscus + GraphQL API

Introduction Blogs built with Static Site Generators (SSG) are incredibly fast and secure. However, adding dynamic features like comments requires careful consideration. This blog uses Giscus, a GitHub Discussions-based comment system, but there was one inconvenience. Comments only appear at the bottom of each post, making it difficult to see at a glance which articles have active discussions. So I built three features: Display comment counts in post lists - See which articles have ongoing conversations Show recent comments on the explore page - View recent blog activity at a glance Create an all comments page - Browse all comments in one place This article shares the process of bringing dynamic comment information to a static site using GitHub GraphQL API while maintaining optimal performance. ...

Published date: 2026-01-16 · Reading time: 15 min · Word count: 7440 words · Author: Isaac
Blog post thumbnail: Code Block Accessibility Improvement: Line Numbers That Screen Reader Users Can Choose - We've improved the accessibility of code blocks in our Hugo blog for screen reader users. (https://www.codeslog.com/en/posts/code-block-accessibility-improvement/)

Code Block Accessibility Improvement: Line Numbers That Screen Reader Users Can Choose

Introduction Recently, I started building and operating a blog using Hugo with the PaperMod theme. Using someone else’s theme has the advantage of quick setup, but not everything fits my needs perfectly. After customizing many parts to match my preferences, I noticed some issues with the code blocks. Line numbers were implemented with <table> tags. While this doesn’t violate accessibility guidelines, it felt not semantic. Moreover, I wondered: what’s the experience for screen reader users? I found a better approach using CSS Counters. ...

Published date: 2026-01-09 · Reading time: 16 min · Word count: 3376 words · Author: Isaac
Blog post thumbnail: Blog, Beginning - The beginning of a new journey to record and share the learning and growth of a perpetual beginner developer (https://www.codeslog.com/en/posts/first-post/)

Blog, Beginning

🚀 Starting a New Blog Hello. This is a space where I record what I learn and experience, hoping it might be of some small help to someone. I call myself a “perpetual beginner developer.” There’s always so much to learn, and sometimes I repeat small mistakes, but recording and sharing this process is both my way of growing and my joy. Why Did I Start This Blog? When developing, you encounter countless trials and errors. Sometimes you panic at error messages you’ve never seen before, and sometimes you face the same problem again today that you solved yesterday. ...