我已经完成了这个博客的开发。也就是我现在正在写文章的这个地方。我给它取名叫 Bug Loop。如果有人问我 «为什么叫 Bug Loop?»,我会回答:我意识到一个简单的真理:开发 = 不断调试的轮回。被无数 bug 困住,一遍又一遍地重复「咦?嗯?等一下……唉……」。这个过程无穷无尽、让人疲惫,却又避无可避。这,就是开发。
我发现,开发的核心并不是某个惊天动地的创意,而是能否认真解决那些没人注意到的小问题……这话听起来有点老套,但确实如此。
为什么要自己做
其实我从 2022 年开始就对网页开发感兴趣了。
做任何事情的第一步是什么?买书。(没错,我就是在自嘲。)
我买了很多书,也下载了不少免费的 PDF……但真正要动手写代码的时候,我总是被「不知道从哪里开始」的感觉压住,于是就一直只看书,看啊看,看个不停。大家都说「做比看更重要」,但我的性格就是这样:「等我觉得准备好了再开始」。然而那种「准备好了」的感觉永远不会来。结果就是一直看书。
于是「总有一天我要学网页开发」这种想法就在心里慢慢发酵。2023 年我短暂地以钢琴家身份出道,匆忙用 WordPress 做了一个自我介绍的网站,后来又放弃了钢琴,网站也被搁置……直到 2025 年,我突然意识到:ChatGPT 其实可以成为非常强大的开发辅助工具。或者更准确地说,并不是我晚才意识到,而是 ChatGPT 的能力刚好已经提升到「真的能用于开发」的程度。
说实话,我并不是「完全不懂开发」。我理解原理,也知道方法。但是在开发中,找出问题所在、判断最佳解决方案,这些都非常耗费时间和精力。而我毕竟是人类,思维并行能力有限。AI 则不同,它能基于海量知识冷静高效地分析,从而节省我被情绪与疲惫消耗掉的时间。
正因为如此,我的开发效率一下子被拉满。而内心里那份对 全栈开发 的渴望,之前只是悄悄发酵,这次终于被点燃,立刻爆发开来,开发速度也就随之飞快推进。
我亲身体验了 AI 在开发中能起到多大的作用,所以现在看到新闻里说「开发者岗位减少」之类的话,我完全能理解。当然会减少。太正常了……
实现的功能和技术栈
我真的没有用任何现成模板或组件,而是所有东西都从零开始做。
已实现的功能
- 自制发文编辑器(大概是最花时间的部分)
- 文章查看页面(带悬浮目录按钮)
- 电子书阅读页面(因为这个博客逐渐转向电子书方向)
- 注册(目前停用)
- 登录
- 具有粘性标签效果的顶部栏(sticky header)
- 可展开/收起的头部面板
- 包含个人简介和文章搜索功能的侧边栏
- 多语言系统(韩/英/法/中/日/西)
- 深色/浅色模式切换
技术栈
使用的技术如下:
前端
- HTML5 + EJS — 多语言与动态页面渲染(EJS = 嵌入式 JavaScript,可在 HTML 中直接写 JS)
- CSS3 — 响应式布局、组件样式、深色模式
- 原生 JavaScript (ES6) — 所有交互逻辑全部手写(原生 = 未使用任何框架或库)
- SVG — Logo 与角色图形的修改与动画(主要是在另一个练习博客中使用,将来会更深入学习)
后端
- Node.js — 服务器运行环境(让 JavaScript 可以在服务器上运行)
- Express.js — 路由 / 会话 / 中间件(决定不同地址返回什么内容,并管理登录状态等)
- bcrypt — 密码加密
- multer — 图片上传处理
数据库
- MySQL — 存储文章 / 用户 / 分类 / 多语言资源
- 所有 CRUD 语句均为手写 SQL
部署与服务器
- Ubuntu Linux — 服务器环境
- Nginx — 反向代理 + HTTPS
- PM2 — Node 进程管理 / 保持服务不停机运行
- Git + GitHub — 版本管理与自动部署
之后的计划
- 福利相关博客
- 开发博客
- 音乐博客
- 料理博客