Blog

2025.12.27

Porting nimf.c to Ada and Implementing the Clair Event Loop

Over the past few days, I have been working on porting nimf.c to the Ada language (nimf_main.adb). While my current focus is on developing an Ada-based GUI toolkit, I am taking a moment during the build process to share my technical insights and the results of this porting effort.


2025.12.16

Interojo (119610) Corporate Status and Key Issue Analysis Report

This report analyzes the operational status, financial performance, and governance issues of Interojo Co., Ltd. as of December 15, 2025, based on factual data.


2025.12.10

Nimf 2025.12.10 Released

Hello. Nimf 2025.12.10 is released.


2025.12.07

Cim 2.0.0 Released

On December 7, 2025, Cim (Common Input Method) version 2.0.0 was released. This update marks a major version change, featuring ABI (Application Binary Interface) changes in libcim, the addition of Qt6 support, and a refactoring of the plugin architecture.


2025.11.14

How to Generate Skia C API Library on FreeBSD Using rust-skia

Introduction: The C++ ABI Incompatibility Problem


2025.08.08

Building a Package by Adding Ada Support to GCC14 in FreeBSD Ports

This guide explains the entire process of modifying the lang/gcc14 port in FreeBSD to enable Ada language support, compiling it, and finally generating an installable package file.


2025.07.28

Don't Waste Your Life on Rust, Deceived by Zealots (Based on TIOBE Data & a GPU Case Study)

In every online community and blog, you’ll find people proclaiming, “Rust is the future.” I call them “Rust zealots.” I’m writing this in the hope that you don’t waste your precious time and career, deceived by their sweet talk. This argument is now based on objective data and concrete case studies.


2025.07.24

The Widescreen Paradox: Why the 80-Column Rule Isn't a Relic

In 2025, with 4K ultrawide monitors filling our desks, why are we still talking about the 80-column line limit—a relic from the era of 1970s IBM punch cards? Technological progress has gifted us with infinite horizontal space, and clinging to these old shackles seems like an anachronistic inefficiency.


2025.07.23

[C] Safe Signal Handling: The Self-Pipe Trick

When developing servers or daemons in C/C++ on Linux/Unix environments, you’ll inevitably face a tricky challenge: signals. Whether it’s terminating a program with Ctrl + C (SIGINT) or directing specific behavior with the kill command, signals are powerful asynchronous events from outside the process.


2025.07.15

Anatomy of Language Fanaticism: From Group Psychology to Narcissism

In a corner of an online forum, we often witness a scene where the comment section of a post that began with a simple technical question has turned into a fierce battlefield. The debate between those who claim the superiority of a specific programming language and those who defend others teeters on the edge of a technical discussion before quickly devolving into scorn and contempt. They praise the low-level control of C++ while demeaning languages with garbage collectors as ‘toys,’ or they preach the memory safety of Rust while asserting that all other languages are potential heaps of bugs.