This Github repo is a well-designed small project to learn about web servers in C. A lot of the heavy lifting data structures and basic interactions using the socket API have been given to us. The ...
新版微軟雅黑,以及在 Windows 上優化中文顯示的多種技巧
新版微軟雅黑,代號 Noble Scarlet Windows 作業系統上的微軟雅黑字體是一個劃時代的創作,其原型可追溯至方正蘭亭黑。近年更是擴充了繁體字形(雅黑原本只有簡體字形),也涵蓋了 GBK 中的字符,在實用度和優美程度上可說是完勝了 Windows 內建所有中文黑體,甚至包括預設繁體:“微軟正黑”。但雅黑 “中宮大”,“重心低”,“字面大” 的特點,容易在現代高畫質屏幕上顯得擁擠...
C++ Uniform Initialization - Benefits & Pitfalls
Scott Meyer’s book, “Effective Modern C++”, has a nice section talking about uniform initialization, specifically, how to “distinguish between () and {} when creating objects”. This blog post su...
灣區AWS軟體工程師實習心得隨筆
這篇用輕鬆聊天的語氣,在不違反保密協定的前提下,聊聊我過去12周在亞麻遜AWS實習的感想,最後有一些面對壓力的經驗整理和小技巧分享。對我如何找到這份實習有興趣的朋友,可以參考我之前寫的這篇: Landing a FAANG Internship - 2022美國暑期找實習分享 行前心理準備 在正式上工前總是各種揣測,一畝三分地和Blind裡眾多前輩文章我是刷了又刷。不熟習FAANG文化的...
C++ East/West const, const T*, const T *const, T const *, and T *const
Understanding const in C++ Every C++ programmer must’ve at one point struggled with the subtle differences between the following declarations: const T num; T const num; T *ptr; T const *ptr; T *c...
First Look at OpenFrameworks, a C++ Creative Coding Toolkit
Discovering OpenFrameworks During my spring break week at Columbia, I had a bit of time to myself and decided to try out some creative coding frameworks, mostly just for fun. Processing (Java) and...
Profiling Performance in Emacs
This short blog post showcases the builtin “performance profiling” support that Emacs has. TLDR: all you need to know are 3 commands: M-x profiler-start, M-x profiler-stop, and M-x profiler-repo...
Git Gutter in Emacs
When I first started programming using Visual Studio Code, I’ve benefited much from the git gutter indicators that show added/deleted/modified code blocks that haven’t been committed by git. This a...
Native Emojis in Emacs
This short post will help you set up emoji support in Emacs. First, let’s see the results: Emacs showing emojis Step one, you must have an emoji font installed. I really adore the new fluent de...
Building an Intelligent Emacs
This post introduces the combination of Emacs and LSP, and how you can make your own editor “smarter” by using the same idea of communications between an editor client and multiple language serv...