
项目
GitHub Contributions
近一年提交了 1683 次
就像首页所说,我给我自己贴的标签是全栈开发者。但我对这个称呼其实并不自信,所以后面加了小字「存疑」。因为 —— 我知道自己的能力和经验都不足以支撑起「全栈」这个词语,半桶水而已。
发展路径
先说说我的技术发展路径。
我写的最多的语言就是 TypeScript。尽管也用过 Python、Java 甚至 Rust,但 90% 以上都是 Agent 写的 —— 只是为了完成特定的任务(大作业、比赛的项目等,都是一次性的),所以就不把它们算作熟练掌握的语言了。
不过我的第一个项目,其实是前端。我最先接触的领域就是前端,这点在我的 GitHub 主页有提到(大概是 2022 年左右)。
至于后端,那时只了解一些基本的概念,写过一些简单的 Demo(2023 年玩过 PHP 和 Node.js)。一直到 2024 年才第一次用 TS 写了个 Nest 项目(标类型嫌麻烦基本都写的 any 哈哈)。
不过也是从 2024 年开始我才陆续接触除了前端以外的领域,比如 DevOps。2025 年帮老师干活的时候体验了一下若依(Java 的 SpringBoot),最大的感受就是 Java 真臃肿……
但是,建站、运维这一块我反而接触的比较早,大概是 2020 年。那会用 Typecho 和 WordPress 搞了个和学校相关的网站,也算是打开了计算机的大门了。
也得益于这一点,后续反过来学习 Web 领域的知识时压力并不大…… 我这种从建站反过来到 Web 的可能确实不多。Anyway,如果非要说一个我最熟练的语言,可能是 CSS?
因为我练前端的那个时候(2023 年初),LLM 几乎没有能力独立编写前端…… CSS 只能纯靠手调。就算是现在的 Agent,在 UI 设计方面也很难一句话生成出「有美感」的界面(个人观点)。
不过,现在 LLM 的发展速度确实很惊人,一月一变样。GPT 3.5 发布后的三个月,大概是 2023 年 1 月?我第一次接触了 GPT,拿来应付 VB 期末考的。震撼的是,GPT 3.5 给我的答案真的能跑。完全不可思议的,我当时对 AI 的印象还停留在 YOLO、小爱同学这种简单的 ML,LLM 完全不知道是什么。
反正,我后面找了个合租 GPT Plus 会员的群续了两年左右。2025 年开始自己单独开了个账号续费,现在还在用。不过震惊归震惊,当时用 AI 一直都没什么危机感。我一直是当作 Tutor 去问问题的,项目复杂度一高就搞不定了。
—— 其实一直到 2025 年上半年我都没什么危机感。直到下半年的 Vibe Coding 概念的出圈和 Claude 4、GPT 5 在编码方面的提升,进度确实有点超乎想象了。
但该用还是得用,目前我开了 GPT Plus 和 Google AI One。GPT 的发散性思考和 Gemini 的 Pro 都能给我的学习提供很大的帮助。我学习高数、微积分的时候就靠 Gemini 搞定了很多问题。Google AI One 附带的 NotebookLM 更是极大提高了学习和复习的效率。Agent Coding 上我使用的最频繁的工具是 Codex 和 GitHub Copilot。
从 GPT 3.5 问世到现在不过短短三年…… 虽然三年也不短了。当初叱咤一方的 GPT 4、o3 在如今已经被新模型拉开了很大的差距。我近期真的在想要不要换个行业,现在可能还没入行就要失业了。
以前,甚至一直到上个月月底,我都在幻想:要不要转到嵌入式、硬件开发去?这很像是从一个天坑跳到另一个天坑,确实只能幻想幻想。但是,不觉得很酷吗?能在现实世界中直接接触到自己的作品。
里程碑
这里列几个有里程碑意义的项目,不过不怎么多,估计一只手数得过来。写的小工具或者意义不大的项目就不列出来了。
- 自己 Minecraft 服务器的 Wiki 和门户站(2022)。因为当时自己 MC 服务器有 MediaWiki 维护的需求,作为服主的我前前后后设计了很多版首页的 UI 方案。在设计的过程中,接触到了 HTML、CSS、JavaScript 和 PHP(MediaWiki)。
两年后的 2024 年 7 月,为了设计服务器门户站,我第一次接触了 Vue(第一次选的 Vue 2),用 Vue 实现了我前端学习史上第一个标准的(包管理器)前端项目。不过这个项目后续没有上线,因为功能有点混乱,想着后续花时间改改,但一直拖到现在了。
总之,给自己 MC 服务器设计的过程中也被迫学习和接触了不少知识,除了前端还有一些网站运维和建站的知识。 - 中职时期给班上人和自己写的考试刷题系统(2024),基于 Nest + Vue + TS 的前后端分离的 Web 项目。其实初版是传统 JavaScript + PHP 简易后端组成的,现在的 Nest 框架是 2024 年暑假重构的时候才选的。
网站一直更新到 2025 年中(下一届学弟学妹们也要用,但学弟学妹们没有下一届了,所以就停更了),目前已经 Public Archive 了。
但这是我第一次用正经的后端框架写的标准后端项目。而且还完整的从编写、上线、测试到用户反馈的过程(班上同学和学弟学妹们)。虽然目前回头看也有一点黑历史。 - 给 Wiki.js 写的覆盖 CSS(2024),纯 SCSS 项目,GitHub Star 数最多的一个项目。技术上没有什么值得拿出来说的,放在这当个纪念。或许这也是我最出名的项目,加我的蛮多 Coder 都是因为这个项目,也有一些是关于 Wiki.js 或者是 MediaWiki 部署的问题来的 —— 或许正在看这个页面的你也是从这里来的吧?
- 自己的介绍网站(2024),也就是本站。第一次接触 Nuxt 全栈框架后写的项目,不过除此之外并没有很出彩的地方。—— 哦!有的,出彩的地方正是我超天才般的 UI 设计啊!认真地。我确实比较满意。别说我是 Agent 写的,Agent 只负责我已经想好的内容。本站所有 UI 都是我一点点调的,不要侮辱我,要攻击我可以直接说我是 SB,不要喷我的项目,谢谢!
- 自己 Minecraft 服务器的信息聚合站(2025),基于 Nest + Vue + TS 的前后端分离的 Web 项目。第一次上手配置了 GitHub Actions 推送到源站部署、且配置了 EdgeOne 及其周围规则的项目。从了解到上手实践的感受是截然不同的。在这期间还首次通过 DNS 解析、Cloudflare 优选等花活实现了以前没想过的操作。这可能是我第一个算得上「大」和「杂」的项目,目前正在开发中。最令人头疼的就是 Agent Coding 使用范式,现在还在探索……。
总结来看,我可能是把从 Web 诞生一直到现在的技术发展路径都大概走了个遍,以前我确实是写过在 HTML 文件之间切换、完全不依赖任何新的技术规范(比如 ES6)的项目,写起来极其痛苦。
……虽然这样干有利于理解宏观结构,即便从就业的角度来看其实学习速度还是有点慢,离毕业也没多少时间了。我 2025 年全忙着在学校里干活,跟着老师做了几个项目,结果并不理想。到了 2026 年的现在,即便专升本已经结束,但后续的计划安排中大部分也是备考、备考、备考。
碎碎念
但是 —— 做了这么多项目,只会感觉越来越悲观。我曾经下意识的以为,只需要把基本的语法知识掌握,大部分难题可以迎刃而解。但现实告诉我并不是这样。所谓「掌握知识」,并非只是记住一套 API 的调用规则,或者熟练背诵几段 TypeScript 的高级类型体操和设计模式。
我以前真的下意识的认为,只要搞懂了 Vue 的响应式原理或者 Node.js 的事件循环,就能在工程里横推一切,我还真买过这些课程。我也天真的认为,算法和数据结构,只需要知道大概的原理就好了,反正在社交场合中可以作为彰显自己技术能力的谈资。
事教人一次会。一到真实场景就露馅了。比如从零构建一套前后端分离的架构、处理 CI/CD Workflow,甚至只是在重构项目时把底层从 SQLite 迁移到 PostgreSQL。我才慢慢的意识到,语法只是扳手,最核心的能力其实是对整个系统的把控,即「工程直觉」。
现在的我永远无法理解为什么当初自己会遵循一套这样毫无逻辑的学习范式。仔细推敲一想,其实非常不合理。或许只有在现在才能有时间和精力好好的总结和复盘。
甚至,这套学习范式还影响了英语学习。我以前确实也认为,学习语法、背单词就是英语学习的真谛。但考试考出的分数似乎并不会为这套说辞买单。不去总结自身存在的问题,不写出阅读过程中的每一个思考过程,不 Debug,是根本是找不出问题的。
我还因为四六级阅读题的得分不稳定反刍了相当长一段时间。一直在想是不是因为单词不认识、亦或是没仔细看?这些理由都不具有说服力,主观色彩极重。
直到我学习高数、微积分的时候才发现,似乎得把所有条件理清楚,仔细分析可能出现的情况。这本质上和项目开发没有很大的区别。人的确会下意识地美化和掩盖自己的行为,出现问题时简单糊弄过去就行了嘛。或许,这些问题的根源正是我从小以来没有培养良好的学习习惯和复盘习惯导致的。
不过,更现实的问题是:即便知道了英语学习的方法,这个方法也很累。比如英语的写作能力最好的方法就是练习回译。但这会不会浪费很多的时间?没有产出成果怎么办?
世界可能是一个巨大的混沌系统,学习本身就是一件很累的事情,是一件需要持续投入、耗费大量精力的事情。但「会不会」只有自己知道。
遗憾的是,最近我才意识到:学习是必须要输出的(Obsidian 里从头梳理也累)。自己不去复盘、回忆、总结,怎么可能快速提升自己的能力?我所谓的「项目经验」,可能只是多年经营网站的过程中,无意识间积累的经验,当回头去看对应的知识点的时候,理解只是水到渠成的事。
但这种单纯依靠实践而不总结的学习速度实在是太慢了。但如果想要进步,就必须付诸行动。随着了解的深入,越能感受到自己的渺小。事实上我只是一个连做 i18n 都需要问 LLM 的人,Nuxt 的打包和 HMR 更新问题偶尔都会让我花很久的时间,每一个环节和细节都需要考虑到,即便现在的开发生态已经是高度抽象的。
虽然我的标签里写着 DevOps,但众所周知…… DevOps 的领域太复杂了,可能我折腾一天,也只能是刚配好一个 Workflow,当中间出现什么意外的时候,有需要花费很久的时间去处理。虽然我知道,这是学习的必经之路。
当我给自己贴上 DevOps 这个标签的时候,确实有一种强烈的背德感,我确实在给自己贴标签。更不用说 Web、TypeScript。这些其实是我不自信的表现之一。Engineer 确实是一个责任感很重的词。
唉。优雅的处理细节和边界条件是一个很难的事情,从这个角度来看,我只是一个卑微的代码缝合工。再换个角度来看,人又何尝不是大语言模型呢?
技术广度
扯远了。其实除了 TypeScript、Web 以外的语言和领域,我也多多少少接触过一些,毕竟我第一个系统学习的语言是 C(2021 年),虽然了解的不多。稍微列几个用过的语言在下方。
- 用 Java 写过一些 Minecraft Mods 和 Plugins(Agent 协助)。
- 用 Rust 写过一个比赛的 Web 项目(Agent 协助),后续是国三。
- 用 Python 写过一些 Excel、自动签到或是 ML 训练的脚本(部分 Agent 协助)。此外,因为专升本的专业课包含 Python,所以复习了一两个月 Python 的基本语法。
- 最近在做 ESP32S3 的毕设。
简单列一个掌握程度表的话,是这样的:
- T0(最熟悉的):HTML、CSS、TypeScript(含 JavaScript)。
- T1(比较熟悉):Java、Python。
- T2(看着眼熟):Android 开发(上过一段时间的课,做过几个大作业)、Rust、C、C++。
我 GitHub 上占比最高的应该是 Vue 和 TypeScript。可以关注我的 GitHub Contributions,一般一周里会有四五天有 Commit 提交。有时候忙活了一整天,打开 Profile 一看到满满的绿点点就会很有成就感,哈哈哈。
2026 年 4 月 10 日 13:36
3538 字 / 15 分钟