The N Benefits of Having Your Own Website
Why bother maintaining your own blog in this era of short-form video and social media? Here are my thoughts after writing a blog for nearly ten years.
Good technical writing conveys not just knowledge, but perspective. This is where I think and write.
Why bother maintaining your own blog in this era of short-form video and social media? Here are my thoughts after writing a blog for nearly ten years.
Sharing my recent weight-training reflections
How do you make employees work overtime every day? How do you make them work as hard as a boss? Give them the same equity.
Based on an article by Jake Archibald, this post organizes how modern responsive images should be written: why `width`/`height` still matter, when to use CSS `aspect-ratio`, how to choose between AVIF and WebP, and how to use `picture`/`source`/`srcset` for switching images on mobile.
Just go code
An essay extending Wiwi’s “Default” — discussing the unwritten rules of Fukuoka escalators, how AI content takes over SEO rankings, and Voltaire’s definition of taste.
Many engineers end a discussion with “it depends.” But to me, what matters most is whether a discussion can actually move forward.
Making a textarea auto-resize used to require JavaScript to watch scrollHeight. CSS field-sizing: content replaces all of that in one line, supporting textarea, input, and select.
Being a cynical critic feels great and makes you feel superior, but in the end you’ll realize it leaves you with nothing but emptiness.
What scenarios are JWTs and session cookies each suited for? This article revisits the old debate from the perspectives of security, implementation cost, and user experience.
Many people use terms like startup, growth stage, and stable stage to describe companies, but these words are too vague to serve as useful criteria. What is this company surviving on right now? How does it grow? What is its most painful problem? If you understand company stage, you’ll know what problems you’re solving every day, and whether this company is actually a good fit for you.
From ChatGPT 3.5 to Claude Code, software development has undergone dramatic changes in less than three years. Observations, reflections, and confusion from a software engineer amid this transformation
Access Keys are an easily overlooked security risk on AWS. Use OIDC with IAM Roles so GitHub Actions can securely access AWS resources without any secrets.
Before choosing a cloud platform, calculate the real cost your team pays for AWS.
When running containerized services on AWS, why ECS is a more pragmatic choice than EC2 or EKS, and how deployment complexity eats into your budget
Backend developers often have to decide on a primary key: auto increment or UUID? What about collisions? How much faster is UUIDv7 compared with created_at + index? After benchmarking 20 million rows and looking at the design trade-offs, this post gives you the answer.
Huffman coding is one of the most classic lossless compression algorithms in information theory. Starting from the concept of information content, this article breaks down the principles of Huffman coding step by step, and includes an interactive tool so you can try it yourself.
Everyone is familiar with JPG, but there are many compression techniques behind it worth learning from. This article breaks down JPEG’s compression principles step by step—from the YCbCr color space and discrete cosine transform to quantization tables and Huffman coding—and includes an interactive DCT visualization tool.
With the dramatic progress of LLMs, the shape of software development has already been completely transformed; building an application now has almost no barrier to entry.
Sunwide View and Vigilante Justice