Group world cities by timezone

A simple example of how to group world cities by timezone

 · 4 min · 725 words · ringsaturn

Released tzf-pg: High-Performance Lat/Lon → Time Zone PostgreSQL Extension

Developed and released tzf-pg, a PostgreSQL extension providing microsecond-level latitude/longitude to time zone conversion, based on the Rust library tzf-rs and the pgrx framework.

 · 1 min · 145 words · ringsaturn

Just Writing Something

A record of blog improvements, including multilingual support, SEO optimization, and a personalized logo generated by ChatGPT.

 · 2 min · 289 words

Short URL in Hugo

A guide to implementing short URL redirects in Hugo static sites, featuring both manual HTML redirect pages and an automated Go-based solution for generating redirect pages.

 ·  · 2 min · 288 words · ringsaturn

Auto center with caption for images in Hugo

Create a file: layouts/_default/_markup/render-image.html: 1 2 3 4 5 6 <figure class="align-center "> <img loading="lazy" src="{{ .Destination | safeURL }}#center" alt="{{ .PlainText }}" > {{ with .Text }} <figcaption><p>{{ . | safeHTML }}</p></figcaption> {{ end }} </figure> Then magic happens: 1 ![sample](/img/nmc-bin/RADAR_L3_MST_CREF_GISJPG_Tiles_CR_20250126_13_06_3_2_6.png) Render as: sample

 · 1 min · 45 words · ringsaturn
China’s first WSR-88D Doppler weather radar (Image source: [The Paper](https://www.thepaper.cn/newsDetail_forward_26004388))

Historical Fragments of China's Meteorological Radars

Some historical fragments discovered while researching.

 ·  · 11 min · 5139 words · ringsaturn

Better Python Project Maintenance

This article introduces two major pain points in Python project maintenance and their solutions: 1) Passwordless publishing using PyPI’s Trusted Publishers with GitHub Actions, and 2) Ultra-fast dependency locking with the uv tool. It also discusses version management when depending on machine learning frameworks like PyTorch, providing specific configuration examples.

 · 4 min · 644 words · ringsaturn

What Does the Python Version Number x.y Actually Mean?

At work, we use uv to manage Python projects, which allows us to quickly install dependencies and lock sub-dependency versions. After returning from a period of leave, I routinely updated the packages on my computer and noticed that uv had a new version, so I updated it. However, after updating the uv.lock file in a project, I found that many wheels for dependencies had disappeared from the lock file. For example, here’s the configuration of the pyproject.toml file: ...

 · 3 min · 441 words · ringsaturn

Better work status

I want to share 2 storirs about me on handling work status: Short term remote work Get more focus time in the morning Life in Suzhou Back in the summer of 2021, my house rental was canceled by the owner, and I had to move to another place. By then, the renting prices in Beijing were too high for me to rent a house. Fortunately, I was lucky enough to book a house one month after my current house was canceled. So, I needed to find a place to live for one month. My friend decided to move to Suzhou, a city near Shanghai, which is much more affordable than Beijing. For a month, I sat in a coffee shop and worked remotely. ...

 · 3 min · 509 words · ringsaturn

Publish crates documentation to GitHub Pages

 · 1 min · 127 words