Preface to HeThink Notes: It's 2020. Why Am I Still Keeping a Personal Blog?
Ten years ago, the golden age of personal blogs had already passed. So why am I still writing a preface for one in 2020?
Why Write
First, writing is one of the best ways to improve yourself. Writing is a process of reflection, synthesis, and organized expression, and it allows the writer to make rapid progress. When I used to cram for exams at the last minute, I often read while organizing my notes. It worked extremely well: I performed much better in exams, and I generally learned the material quite thoroughly too. There are so many programmers who write blogs for the same reason. By recording tedious processes such as fixing bugs or configuring environments, they can look things up quickly the next time the same problem appears. Writing deeper, more thoughtful summaries does more than improve technical ability; it also pushes you to keep learning.
Second, a blog is an effective way to help other people. When working with computers, you constantly run into all sorts of strange problems, and the natural reaction is always to turn to a search engine. Small, little-visited sites often document obscure problems that cannot be found anywhere else on the internet, with thoughtful code snippets and hard-earned advice from authors who have been through them before. The persistence of those site owners has rescued me from dead ends countless times. So I want to write down my own experience with the same sincerity. If something is useful, then sooner or later it will meet the person who needs it.
What to Write
To pursue the infinite, to pursue the enduring.
In terms of content, I plan to cover everything within computing: mathematical theory and academic theory at the high end, popular explanations and technical applications at the low end, and the project design and coding experience in between. Computer science has a clear sense of hierarchy: beneath programming languages lie circuits and machine language, then above them come assembly, C, and Python; software, meanwhile, can be roughly divided into the operating system layer, the middleware layer, and the application layer. Writing code relies on algorithms and data structures, and both are guided by mathematical foundations such as discrete mathematics and linear algebra. In computing, pursuing a complete body of knowledge is a way of pursuing infinite power in the virtual world.
In terms of quality, I want to publish only polished work. Because this is personal writing, I can never compete on quantity, so the only way to stand the test of time is to write good articles. Of course, the “enduring” here means the pleasant kind of permanence promised by “free forever,” not the permanence of the universe. At the level of abstract theory, that goes without saying: such ideas can remain unchanged for thousands or even tens of thousands of years. Even very practical projects can benefit generation after generation, as Dujiangyan, the internal combustion engine, and the internet all have.
How to Write
My choice is the unconventional route of building the site myself. First, heth.ink is a personal favorite among domains I own, and it would be a shame not to use it; the name HeThink Notes also grew out of it. Second, compared with the major mainstream platforms, a personal website offers the greatest freedom in both form and content. From installing and configuring the operating system to choosing and tuning databases, web servers, and other middleware, the site’s architecture, code, and appearance can all remain entirely under my control.
Building the site and writing articles are only the first step. What most distinguishes HeThink Notes is regular maintenance. Errors and imperfections in articles are inevitable, so revision is necessary. More than that, as time passes and technology advances, articles can evolve as well. If the changes become too large, a post can simply be retired. A mechanism like that is what keeps a blog’s quality evergreen.
Preface to HeThink Notes: It's 2020. Why Am I Still Keeping a Personal Blog?