I was on holiday with too much free time on my hand and Claude AI had just doubled its usage limits for 7 days.
I was on holiday with too much free time on my hand and Claude AI had just doubled its usage limits for 7 days.
A quick update: all images and videos on this blog are now sitting on a Cloudflare R2 bucket!
Oh hey, I didn't know you're still here reading my blog. It's been half a year without any post I know. I've been busy....doing nothing.
Have you ever thought, what does 18px or 50% really mean when they get passed to border-radius property?
Dịch lại một đoạn koan về rust trong lúc cao hứng.
Using mem::transmute for struct inheritance in Rust
A quick look into how the browser layout process works.
A brief history of CSS & how browser process CSS values
Since I have foolishly made a promise with the first three words in the name of this series, let's build an HTML parser from scratch.
One of the main building blocks of the HTML rendering process is the DOM API. Before a browser can render the HTML document, it needs to parse the document content into a tree structure called the DOM tree. In this post, I'll break down my experimentation in building a DOM API with Rust.
Một vấn đề muôn thuở của những IME hỗ trợ gõ tiếng Việt trên Linux là việc tương thích phương pháp gõ với cả ứng dụng lẫn người dùng.
Cuối năm 2019, cộng đồng webuild đang sôi sục về chủ đề gõ tiếng Việt trên "lai nớt" thì có 2 cá nhân nảy ra cùng ý tưởng nhưng giấu nhẹm đi làm riêng. Ý tưởng là 1 bộ Input Method Editor hoàn toàn bằng Rust, hứa hẹn sẽ có thể cạnh tranh với các tên tuổi trong làng gõ chữ Quốc ngữ trên Linux như ibus hay fcitx.
This is the start of Browser from Scratch series, created to help me (and probably you too) to learn more about how a browser works by building one!