Sorry, your browser cannot access this site
This page requires browser support (enable) JavaScript
Learn more >

I’ve developed a habit of listening to videos during my bike ride home after work. This week, I came across a video by XPIN about RISC-V. The video presents a viewpoint: RISC-V, as an instruction set architecture, suffers from severe fragmentation in its chip products, which poses significant challenges to the development of its application ecosystem. Therefore, it’s argued that fragmentation must be addressed through unified standards to achieve rapid development. This perspective reminded me of my years of experience using Linux, Android, and the R language, leading me to believe that the video’s argument might not be entirely accurate.

I’m still quite fond of my current Hexo theme. From using its predecessor material-x in 2021 to upgrading to Volantis 5.x in 2023, the theme’s functionality has completely met my personal needs, to the point where I haven’t upgraded to the author’s subsequent versions 6 and 7. However, after using AI to batch-translate my blog content into English earlier this year, there have been persistent issues with some interface elements remaining in Chinese. This year, instead of undertaking major renovations, I decided to fix these minor bugs myself under AI guidance.

Recently, I attempted to use pixi to compile and run podman on FydeOS. While I made some progress, it ultimately only achieved half success. In this blog post, I’ll share the entire process and the issues encountered.

When using pixi to manage bioinformatics analysis environments, we often encounter issues where some Bioconductor R packages show missing dependencies after installation. The exact cause of this problem is currently unclear. After using pixi for a year, this issue still hasn’t been fixed (as of October 2025). This article introduces how to use pixi’s tasks feature to resolve such problems.

In our current single-cell analysis pipeline based on scanpy, there’s a step that requires saving AnnData objects in loom format. However, unlike saving to h5ad format, when we write an AnnData object to a loom file without any special handling and then read it back, we find that the index information of obs and var (typically cell barcodes and gene names) is lost, and these indices become ordinary numeric identifiers.

Milo is a differential abundance analysis method for single-cell RNA sequencing data that can detect compositional changes in cell neighborhoods across different conditions.

DevPod is an open-source development environment management tool that allows you to create development environments similar to GitHub Codespaces on any Kubernetes cluster or Docker host. This article will introduce how to use the DevPod CLI to create workspaces and provide a detailed explanation of writing DevContainer configuration files.

As my classmate said, I’m currently experiencing a situation of “being forced to code”… The several websites I maintain each have their own frontend, backend databases, and some even have test code and migration code, involving languages ranging from Python commonly used in bioinformatics to JS, TS, HTML, C#, which I rarely used before. In actual work, there isn’t much time to systematically learn each language from scratch, so mastering the most basic debugging methods is crucial. Among them, I find the debugging methods for JavaScript and TypeScript particularly worth recording, as they do have some unique aspects compared to other languages.

Uptime Kuma is an extremely user-friendly open-source monitoring tool that makes monitoring various network services simple and efficient. It supports multiple protocol monitoring including HTTP(s), TCP, Ping, DNS queries, and even simulates real user access through Chrome engine mode to more accurately monitor service stability. Additionally, it supports dozens of notification methods for alerts and can integrate with various applications we use daily. It also offers a unique Push monitoring method, allowing users to extend monitoring functionality through custom code (such as monitoring SSH service availability).

In cancer research, comparing genomic features between tumor samples and organoid models is crucial for validating model reliability. Circos plots provide an intuitive way to visualize detected mutations across the genome, making them commonly used for representing overall detection results of representative samples. While reading the circlize documentation, I came across an example demonstrating paired samples, which I found suitable for showcasing paired primary samples and organoids. I’ve adapted it to create a plot for displaying paired samples. The code is primarily based on the official documentation’s 9.5 Concatenating two genomes