|
我的技术之旅始于2020年新冠疫情初期。居家隔离的寂静中,我偶然接触到了HTML网站编程。那时没有AI工具的辅助,只能依靠最原始的“手动”探索,在CSDN、菜鸟教程等平台碎片化地搜集知识,逐行复制、反复调试,像拼图一样艰难地组装每一个功能模块。这种“缝补式”学习虽然低效,却让我深刻理解了基础语法的逻辑,也锤炼出面对问题时的韧性。 2022年,我迈出了实践的第一步:用积蓄购买了人生第一台服务器。但由于对国内备案政策不熟悉,误选了境内服务器,导致网站无法直接上线。在几近放弃之际,一位朋友(后来创立怊猫科技/TechCat)慷慨提供了备案授权码,解了燃眉之急。然而服务器稳定性问题接踵而至——因厂商遭遇攻击,网站被迫迁移至另一位朋友的中国服务器,他无偿支持了整整一年半。这段经历让我真切体会到:技术社区的互助,是开发者成长中不可或缺的光。 我的第一个实战项目是为Hypixel游戏公会 ChinaVacation 构建官网。最初版本简陋且功能单一,但通过持续自学与迭代,旧公会解散重组,它逐渐演变为“茶话会”(TeaTalk Guild)。然而,代码在反复修补中沦为“屎山”,最终不得不推倒重来。尽管公会后来解散,我却因此结识了新公会的会长,并开启了真正的协作开发。这段经历让我从单纯写代码,走向了对项目架构与团队协作的思考。 2023年,我用暑假打工的收入购置了专属服务器,成功备案新域名,并建立了个人博客站。这一阶段,我不再局限于前端,而是通过真实项目掌握了数据库优化、服务部署与全栈思维。 2022年底至2023年初,ChatGPT 3.5 的诞生彻底改变了我的学习范式。它将我从“搜索到试错”的循环中解放出来,能快速解答疑问、提供优化建议。随后 GitHub Copilot 减轻了重复编码负担,随着AI技术的发展出现了Claude 3.5 Sonnet,GPT-4o,Gemini 1.5等等高级模型,而 2024 至 2025 年间出现的 Cursor 仅凭自然语言指令,即可修复错误、重构代码甚至生成完整页面。然而,因模型服务商限制,Cursor 的高级功能无法在中国大陆及香港使用,这让我意识到:过度依赖外部工具终有边界。真正的自由,来自对底层原理的掌握。 2023 年底,我正式加入致远光辉;2024 年进入大学后,开始系统性地创作属于自己的独立项目。同年年底,我首次发布了 CloudMusicMiniPagePlayer(CMP) 一个试图整合网易云、QQ音乐、酷狗等多平台的迷你播放器。但因后端逻辑混乱、接口调用不稳定,项目屡屡失败。痛定思痛后,我决定聚焦单一平台,于 2025 年 5 月将其彻底重构为 NeteaseMiniPlayer(NMP),依托成熟的 NeteaseCloudMusicApi,大幅简化架构。 初期 NMP 仍依赖 Node.js 启动,代码臃肿。我意识到:为何不将后端完全交给公开 API,只保留轻量前端?于是删繁就简,从 25 个文件压缩至仅 1 个 JS 与 1 个 CSS。但在 v1.0.9 版本中,用户反馈“音频与封面、歌词错位”根源竟是竞态条件引发的状态混乱。我最终通过引入请求队列与强制串行化机制,根治了这一“历史债”。 然而,UI 被批“平庸如网易云复刻”,配置也过于繁琐。于是我在 v1.1.8 中将五文件合并为一,并在 v1.1.9 引入 回望这段旅程,我最大的收获并非技术本身,而是对“技术为何存在”的理解:
|
🏠
在家工作
Die Welt ist so wunderschön und doch so grausam, aber ich liebe sie dennoch.
- 中国香港
-
09:20
(UTC +08:00) - https://me.tianbeigm.cn
- @numakkiyu
- @numakkiyu
- IMBHCNS
- https://space.bilibili.com/426143852
Pinned Loading
-
NeteaseMiniPlayer
NeteaseMiniPlayer Public基于 NeteaseCloudMusicApi 轻级、可嵌入、支持短代码快速生成的网易云迷你播放器
-
-
ViaForgePlusCN
ViaForgePlusCN PublicForked from ViaVersionMCP/ViaForgePlus
ViaForgePlus 是面向客户端的 ViaForge 替代品,并基于 ViaForge 开发。 本存储库存储已经翻译后的 Mappings.nbt文件
Java 1
-
-
Something went wrong, please refresh the page to try again.
If the problem persists, check the GitHub status page or contact support.
If the problem persists, check the GitHub status page or contact support.









