pseudoyu

pseudoyu

Blockchain | Programming | Photography | Boyi
github
twitter
telegram
mastodon
bilibili
jike

Weekly Report #26 - Blog, Custom Keyboards, and New Server

Preface#

This article is a record and reflection of life from 2023-01-10 to 2023-01-15.

The holiday is approaching, although it doesn't feel particularly ceremonial for the New Year. During that time last year, I spent over a week completing 'Pokémon Legends: Arceus' and revisiting 'Fire Emblem: Three Houses'. On New Year's Day, I cooked hot pot and video-called my family; it seems the year just passed like that. However, since I decided to go home this year, with the pet sitting arrangements and various plans during the New Year, I couldn't relax much. I wanted to finish many things in advance to free up some time to spend with my family.

Work-wise, this week was average. After finishing the already launched requirements, a few minor issues arose, and I had to drag my leader to work overtime to handle them. There are still some new features that need to be launched before the New Year that haven't been fully tested, with only two or three days left; I also encountered some problems with a project I was doing with friends. The friend who was responsible for the front end left for some reason, so I had to take over his part, which will cause some delays in the launch. I couldn't truly relax during the New Year, which is quite an adjustment.

Since I need to have my pet taken care of at a colleague's house, I went to the pet hospital today for a check-up and to trim its nails. The doctor said it was very healthy, and previous minor ailments have basically recovered, praising my good care, which made me happy. However, thinking about the pet sitting makes me a bit reluctant and worried; I will return early after the New Year, as I have something to care about.

I had a somewhat magical interview and received an incredibly cute keyboard, continued to optimize my blog (instead of writing articles, I just keep optimizing the theme), and encountered many interesting things.

Interesting Things and Objects#

Blog Tweaks#

My current version of the personal blog has been running for nearly three years. I previously used servers to set up solutions like WordPress, but due to instability and the hassle of data migration, I switched to a one-stop solution of Hugo static blog + GitHub automatic deployment + Cloudflare hosting. For details, you can check 'In 2022, Let's Talk About Why I'm Still Blogging' and 'Hugo + GitHub Action, Set Up Your Blog's Automatic Publishing System'.

I chose Hugo not only because my main job is Go development, which gives me a somewhat inexplicable but ultimately useless sense of familiarity, but also mainly because of the theme I'm currently using, 'den'. This theme was created by a developer from Taiwan who, considering factors like build speed, planned to switch from Pelican to Hugo, but liked his original theme, so he recreated it. You can check out his article 'Migrating from Pelican and WordPress to Hugo' for more details.

I started following his technical and personal thoughts blog around 2018, and I can say that my later writing style and thought patterns have been greatly influenced by him. This theme, which carries some old-school internet charm, perfectly aligns with my aesthetic, so I set it up and have been using it ever since.

Since it's primarily for personal use, this theme, while aesthetically pleasing and minimalist, still has some functional shortcomings. Over the past three years, I've continuously patched it according to my usage needs. Last year, I submitted a PR for my modifications regarding RSS Feeds, related articles, and friend links. Some of these were merged into the main branch after some communication, while a few are still pending changes (too lazy).

Recently, I discovered Pagefind on P.J. Wu 吳秉儒's blog, researched it, and integrated it into my blog, with great results.

pagefind_and_hugo_2

It uses a pre-generated article index file instead of real-time retrieval, making it very fast and not requiring additional backend services, which is perfect for static blog deployment. For an introduction and usage of Pagefind, you can check out P.J. Wu 吳秉儒's article 'How to Add a Search Function to Zola Generated Static Websites via Pagefind', although it is integrated into the Zola blog framework and published through Netlify; the principle is similar. I will configure the integration method for Hugo and write another article later. You can experience it in advance through this link, or click the 'Search' in the navigation bar (added a back-to-top feature, which you can click to return directly).

I integrated it into my original GitHub CI automatic publishing flow, and the experience is very seamless. I also integrated a search page UI using Hugo's shortcode for use, which is powerful. I will submit a PR to the theme repository to see if there is any demand for this feature.

However, I encountered some issues with Chinese support; it doesn't handle word segmentation well. For example, searching for ' 区块链 ' directly won't match; it needs to be split into ' 区块 链 ' to get the desired effect. I noted the search method on the page, it's not unusable, and I will see if there are better solutions later.

pagefind_and_hugo_1

Interestingly, I thought my blog tweaks would end there this week, but suddenly I received an email from GitHub notifying me of a PR and comments. A stranger forked my blog and made some style adjustments and modifications, adding some features. Later, they even sent me their modified CSS file for reference.

github_blog_pr

Originally, these were just some self-use solutions, and I often found myself in a state of tinkering all afternoon without writing a single word, yet enjoying it. I didn't expect that some people would notice, recognize, and adopt it, and it could even help solve some of my problems. It feels quite magical, and I'm slowly beginning to sense the joy of open source or working in public, always yielding some unexpected rewards. So, last night, I tinkered around, fixed several style issues that had been bothering me but I hadn't addressed, and added a back-to-top button effect, which made me quite happy.

Servers#

I previously mentioned in a weekly report that I figured out how to use Nginx Proxy Manager for reverse proxying my server. I launched several commonly used services and sites, such as the previous zlib.pseudoyu.com book search service. Since it gained some attention and was included in some groups and channels, I thought I should continue maintaining it to ensure service stability and access speed. However, I was using some low-performance machines, and a few services were maxing them out. So, taking advantage of 搬瓦工's new plan, I acquired a few new machines with 2C2G + 40G hard disk + CN2GIA DC6 line, which is completely sufficient for the long-term stable operation of some services.

yu_services_vps

I also had some other machines running some basic services and small applications for friends. This time, I organized everything well and migrated all services to one machine. Here, I must praise the management methods of Docker and docker-compose; the data migration was incredibly seamless. After completing the migration, it only occupied about half of the capacity, which is blissful.

Since I have more machines now (a happy problem), I also found an open-source monitoring service for management, giving me a sense of being a cyber capitalist, supervising these machines to work well and not slack off.

yu_server_status

Desktop Setup and Keyboard#

Perhaps because I don't play games, I'm not a seasoned keyboard enthusiast and find it hard to articulate the differences between different switches and keycaps. Previously, I mostly used the Mac's built-in scissor-switch keyboard and didn't feel any discomfort.

Around the end of 2020, I was asked what I had always wanted but couldn't quite bring myself to buy. After thinking for a long time, I mentioned the HHKB, which was more out of curiosity than actual need, and the retro design of the old battery compartment completely aligns with my aesthetic.

A few days later, I received the HHKB Professional Hybrid Type-S silent version, with an old-school IBM-style color scheme and the feel of electrostatic capacitive switches. Its compact size is also very appealing, and it fits perfectly on my desk.

keyboard_hhkb_type_s_1

Every morning before I start studying or working, I always set up my environment carefully, placing the keyboard gently. This keyboard has accompanied me from Hong Kong to Beijing, and I even take it with me to cafes. At first, it might have just been a habit, but gradually it became a kind of ritual, making coding and writing more enjoyable.

keyboard_hhkb_type_s_2

After using it for over a year, I loved the feel of the electrostatic capacitive switches so much that I couldn't help but want to try a few classic models. As a gift, I received a RealForce PFU collaboration version with 87 keys. This one also looks great, with a metallic feel in low light. However, I might have been too accustomed to the HHKB's unique key layout, so I often found it a bit uncomfortable switching to the 87, which led me to let her use it more for gaming. After all, a keyboard can't save my poor gaming skills.

realforce_pfu_87

The RealForce ended up sitting idle. I indeed found it hard to get used to larger keyboards, so I sent it to Ni in Australia (thinking back, my first mechanical keyboard was also a gift from him, a Cherry one, but I forgot the switch type. I used it at home for almost a year while still on Windows, and it was quite good).

Although the HHKB and RealForce are more well-known, my personal experience is that the most exquisitely crafted and best-feeling among the three classics of electrostatic capacitive switches is the Leopold FC660C, which I only acquired in mid-last year. Its color scheme and typing feel are more comfortable, truly making it enjoyable, and it later became the main keyboard on my desk at home.

keyboard_leopold_fc660c

At this point, my keyboard usage needs have been completely satisfied, and I don't have much energy to pursue extreme customization. However, one late night, I stumbled upon Zhi Hui Jun's '【DIY】I Made a Modular Mechanical Keyboard! 【Soft Core】', a keyboard that was completely redesigned from circuit hardware to firmware code. Who could resist that?

During the National Day holiday, I happened to see a co-branded keyboard with Bilibili and ordered it without hesitation. Indeed, the muscular fan design is quite appealing, and this is, in a sense, my first customized keyboard.

keyboard_hello_word_75

Then came a long wait of several months, and finally, it arrived this week. I must say, both the aesthetics and feel are fantastic, and I quickly rearranged my desktop layout, happily typing away for a week. Perhaps aesthetics is the primary productivity factor; I felt my article and code output increased this week. A friend remarked, "How did you change your keyboard and your persona changed too?"

chat_with_xiaoyu_about_keyboard

I don't have a collecting habit, nor do I seek extreme feel or customization solutions. I just have a strong desire to tinker with the desktop setup, computer, keyboard, and tools that I interact with daily. Even if it's just a slight speed improvement or a small enhancement in mood, it's something I find very enjoyable.

Personal Life Snapshot#

Learning#

I haven't studied Japanese... failed the first week's check-in!

Output#

In terms of output, I translated an article for GoCN titled '[Translation] New Changes in Go 1.20! Part One: Language Features'; after publishing the last weekly report, I met quite a few new friends, and this week I also shared several tweets about blog setup; I have a scheduled article with a minority faction, but I don't know when I'll write it.

Input#

Books#

  • My Profession is a Novelist: I started reading this book in October, but various events caused me to fall behind on my reading progress. Recently, I've been slowly reading it in my spare time. I love Murakami's speaking style and want to catch up on all his books.

Anime#

  • Mob Psycho 100: I watched it a few years ago and found the setting interesting but didn't delve deeply into it. Recently, I thought I'd catch up again. The first season has many origins, bonds, and changes of main characters, bringing many thoughts and reflections amidst the comedic daily life. I binge-watched the second and third seasons; if the first season only described some bonds, the second and third seasons brought me so much emotion—the characters' growth and the changes in those around them. Despite being about superpowers, it constantly involves self-denial and self-acceptance influenced by those around them in the little daily moments. My favorite scene is the side conversation between Mob and Reigen after the press conference; the emotions are unspoken.
  • Bungou Stray Dogs: I've heard about it for a long time and just started following it.
  • The Three-Body Problem: I guess my mindset for following anime is to see what other mind-bending operations you can come up with.
Loading...
Ownership of this post data is guaranteed by blockchain and smart contracts to the creator alone.