How to send your WP comments to QQ — the Comment2QQ plugin
Sending WordPress comment notifications to QQ seemed like a fairly new idea, and I couldn't find an existing plugin online. So—yes, “so” again—I wrote another p…
My homemade real-time COVID-19 dashboard for Niagara Region
For a while, Niagara Region barely published any data beyond a single number, so I had the idea of recording it myself and making my own charts. The site passed…
Importing My University Timetable into a WeChat Mini Program
At university, I probably check my timetable more often than anything else. Looking it up on the school website every time is a hassle. Save it to your photo li…
Mounting a School Linux Drive on Windows with SSHFS
Download WinFsp Download SSHFS-Win After installation, open Map Network Drive in Windows and enter the following path to mount the drive: \\sshfs\REMUSER@HOST[\…
A Closer Look at My Smart Home and Home Assistant Configuration
Introduction: Home Assistant is a Python-based open-source smart home system. It supports devices from many brands, so you can set up voice control and automate…
Monitoring a Webpage and Sending Notifications with Python and Selenium
A few days ago, I started exploring web scraping with Python. As it happened, I needed a crawler that could monitor a webpage over a long period and notify user…
Displaying PC temperatures and utilization on a Raspberry Pi's 5-inch screen
This project displays the PC's status information on a small Raspberry Pi screen, so I no longer need an overlay in the upper-left corner when playing games in …
Showing Custom Images on the UniFi Cloud Key Gen2 Plus OLED Display
In /lib/systemd/system, there are files such as ck-splash-reboot.service containing the following: [Unit] Description=Boot error splash screen DefaultDependenci…
Installing the UniFi VoIP Controller on a Cloud Key and Fixing a Java Dependency
Tested with UniFi CloudKey Gen2 Plus v.1.0.6 and UniFi VoIP Controller v1.0.1 1. Use wget to download the UniFi VoIP Controller installer from the official UBNT…
Using PHP to detect visits from WeChat's built-in browser
<?php if(is\_weixin()){ echo "这是微信内部浏览器"; }else{ echo "这是微信外部浏览器"; } function is\_weixin(){ if ( strpos($\_SERVER\['HTTP\_USER\_AGENT'\], 'MicroMessenger') !== …
Setting Up a Steam Cache Server in Seven Steps
Here's how to run a Steam cache in Docker on Ubuntu and download games at LAN speeds.
Arduino Starter Kit
Photo journal · 9 photos
How Xunlei Download Links Work and How to Convert Them
Next, I'll explain in detail how these links are encoded and converted. Once you understand it, you can use Xunlei to download software from FlashGet- and QQ Xu…
How to Delete a File That Even a File Shredder Cannot Remove [Repost]
There are two shortcuts for permanently deleting a file. Right-click the file while holding Shift, or left-click to select the file and press Shift+Delete to fo…
SmartSteamEmu 1.4.3 (Steam offline LAN emulator)
Microsoft's Age of Empires IV is due out this year, and I saw the trailer a few days ago. I felt like playing the original Age of Empires II again, but its reso…
Oculus Rift unboxing
UPS made me feel like I was back in China: it took just three days to ship from the US to Canada!
Adding AJAX to Selected WordPress Pages Yourself
This picks up where the earlier article left off: Adding Site-Wide AJAX to WordPress Yourself. Modify ajaxcheck_ignore(): function ajaxcheck_ignore(url) { for (…
Setting Up Wi-Fi and SSH on a Raspberry Pi Before Its First Boot
This isn't exactly a new feature. Shortly after the Raspberry Pi 3B was released, the official Raspberry Pi operating system, Raspbian, added a way to configure…
You’re all caught up. Thanks for being curious.












