NBA GOAT
PythonA stats-led look at the NBA GOAT debate, comparing scoring, playmaking, shooting, and custom efficiency metrics across eras. 从数据出发研究 NBA GOAT 之争,比较不同年代球员的得分、组织、投篮与自定义效率指标。
Fe · 26 · Ferrum
I build small, sharp tools — an ML wrapper that fits in one import, a Windows launcher nobody asked for, and the patches that make my robot play football better. Mostly Python and C++, mostly at night, mostly because something annoyed me first. 我写小而锋利的工具——一个只需一次 import 的机器学习封装、一个没人要求过的 Windows 启动器,以及让我的机器人把球踢得更好的补丁。多半用 Python 和 C++,多半在深夜,多半是因为某件事先惹到了我。
Currently: AP, quickrun, rms v4目前:AP、quickrun、rms v4
Now近况
Shrinking the ML boilerplate. A stateful Experiment pipeline — column typing, split management, model dedup, and full state persistence.
压缩机器学习的样板代码。有状态的 Experiment 流程——列类型推断、切分管理、模型去重与完整状态持久化。
Fixing Win+R. Windows will launch notepad from the run box but not your actual apps. quickrun binds any program to any alias, without admin rights.
修好 Win+R。Windows 能从运行框启动 notepad,却启动不了你真正在用的程序。quickrun 把任意程序绑到任意别名上,且无需管理员权限。
Making it play football. A long-running patch series for my RoboCup robot — goalie logic, shot types, team signalling, and a lot of bugs found on an actual pitch. 让它踢球。为我的 RoboCup 机器人持续维护的补丁系列——守门逻辑、射门类型、队内信号,以及大量在真实球场上发现的 bug。
Studying AP. IGCSE is finished — A* in Physics and Chemistry, A in both First Language Chinese and First Language English. 在读 AP。IGCSE 已经结束——物理与化学 A*,第一语言中文与第一语言英文均为 A。
Work作品
Mine, roughly in the order I’d defend them. 我自己的项目,大致按我愿意为它们辩护的顺序排列。
A minimalist ML toolkit wrapping scikit-learn. Import rms and go — plus a stateful Experiment class that manages the whole pipeline.
封装 scikit-learn 的极简机器学习工具包。import rms 即可开始,另有管理完整流程的有状态 Experiment 类。
The patch series for my RoboCup robot, built on the Booster T1 demo stack: goalie algorithms, shot types, team signalling, and tournament-compliance fixes. 我的 RoboCup 机器人所用的补丁系列,基于 Booster T1 演示栈,涵盖守门算法、射门类型、队内信号与赛事合规修复。
Bind any Windows program to a Win+R alias. No admin rights, no restart — it writes to your own registry hive and works immediately. 把任意 Windows 程序绑定到 Win+R 别名。无需管理员权限,无需重启——只写入用户注册表,绑定即生效。
The frontend built at my first Moonshot 48, turning text and files into mind maps. The project later grew into three repositories. 我在第一场 Moonshot 48 做的前端,把文本与文件转成思维导图。这个项目后来扩展成了三个仓库。
Real-time portfolio risk intelligence. Know your risk before the market moves. 实时投资组合风险监测。在市场变动之前先知道自己的风险。
An enhanced CSV library — automatic type handling, multithreaded read and write, and cleaning built in. 增强型 CSV 处理库——自动类型处理、多线程读写,并内置数据清洗。
My case studies我的案例研究
Data questions I turned into working Streamlit explorations. 把数据问题做成可交互的 Streamlit 案例。
A stats-led look at the NBA GOAT debate, comparing scoring, playmaking, shooting, and custom efficiency metrics across eras. 从数据出发研究 NBA GOAT 之争,比较不同年代球员的得分、组织、投篮与自定义效率指标。
A BMW sales-data study with feature engineering, interactive visualizations, and a custom Naive Bayes classifier for high and low sales volume. BMW 销售数据案例研究,包含特征工程、交互式可视化,以及用于判断高低销量的自定义朴素贝叶斯分类器。
With others参与的项目
Projects I contribute to but don’t lead. Links go to the upstream repositories. 我参与但不主导的项目。链接指向上游仓库。
A lightweight interpreted language in Rust for numerical computation and algorithmic experimentation. 用 Rust 实现的轻量解释型语言,面向数值计算与算法实验。
Collaborator协作者An open-source desktop agent built on the Cyrene_Harness framework — in-character conversation alongside real work: task handling, coding help, and built-in tools for music and weather. 基于自研 Cyrene_Harness 框架的开源桌面智能体——沉浸式人设聊天与实用能力兼顾:事务处理、编程辅助,并内置音乐、天气等工具扩展。
Collaborator协作者A realism-first tactical FPS in Godot — modular battlefields, a full weapon-cycle system, and physics that prefer accuracy to comfort. 用 Godot 开发的拟真战术 FPS——模块化战场、完整的枪机循环系统,以及宁可真实也不迁就手感的物理。
Collaborator协作者Stack技术栈
Signals经历
Three Moonshot 48 hackathons, a robot football competition, and the exams in between. 三场 Moonshot 48 黑客松、一场机器人足球比赛,以及夹在中间的考试。
Moonshot 48 — thirdMoonshot 48 — 第三场 Beijing session.北京场。
Participant参与者RoboCup — Booster T1RoboCup — Booster T1 Maintaining the patch series my robot competes on.维护我的机器人参赛所用的补丁系列。
Patch author补丁作者IGCSE completed完成 IGCSE Two A* and two A, including both first languages.两个 A* 与两个 A,包含两门第一语言。
Now on AP现读 APMoonshot 48 — secondMoonshot 48 — 第二场 Chengdu session, Group 4 — RiseTrack.成都场,第 4 组——RiseTrack。
Team团队Moonshot 48 — firstMoonshot 48 — 第一场 Built the LightningRoute frontend. The project outlived the weekend.做了 LightningRoute 的前端。这个项目活得比那个周末久。
Team团队USACOUSACO Working through past papers.刷历年真题。
Practice练习Off-hours业余
Games. I play FC 26, NBA 2K, and a few other games when I’m off the clock. 打游戏。闲下来会玩 FC 26、NBA 2K,还有其他一些游戏。
Honkai: Star Rail. Enough of a fixture that one of the projects I help on is a desktop companion built around a character from it. 《崩坏:星穹铁道》。沉迷到我参与的项目里,就有一个是围绕其中角色做的桌面伴侣。
Tooling opinions. I like Codex and Openclaw. I like Claude more, sometimes. I dislike using git, and use it constantly anyway. 关于工具的偏见。我喜欢 Codex 和 Openclaw,有时更喜欢 Claude。我不喜欢用 git,但还是天天在用。
Elsewhere其他地方