blog/source/_drafts/bjwz-tree-hole.md

5.1 KiB
Raw Blame History

title date cover tags categories toc
开发树洞有感 2023-01-22 https://pic.rmb.bdstatic.com/bjh/a5a79c32320475bd69aed54f5371065a.png
总结
写 BUG 日常
野生技术协会
日常生活
学业
高中
true

记录北京五中树洞,立项 、开发、运营的过程。

引言

今年 1 月份末,我在我们动漫社的微信群里水群的时候,一些同学提出了「表白墙」类似的话题,也就是一个类似于一个匿名的发帖站点。我马上就提出说这个东西可以做,然后马山脑子里面就想到了用 Waline 来做这个「表白墙」。同时也有一个同学(后称郑老师)想要来做树洞项目,于是他主动找到我 (别问为什么是他找的我)于是我们就开始着手开始做树洞项目。1 月 20 日,我在 Vercel 上部署了一个 Waline 实例。

关于消息推送的斟酌

这一部分在我认为是整个项目中最令人头疼的。因为这个面向的用户群体是真真正正的学生,是一群会用手机,喜欢使用微信客户端的学生

所以这个让我头疼了好机会,因为 Waline 没有什么能够推送到微信的方法。一开始想的是微信公众号,但是根本不可能。于是后来郑老师搞了个企业微信,我便尝试通过企业微信来发消息推送。

但是后来再想想,通过企业微信群推送,还是不太现实。因为同学们必须得再注册一个企业微信,再加入企业,非常麻烦,根本不符合微信的小而美。

最后还是郑老师出的招,人工收集帖子然后发到他小号朋友圈。一开始我不是很喜欢这个方法,但是确实没有什么自动化的功能,考虑到那时候我觉得可能树洞项目会和我的博客评论一样冷清,于是便麻烦郑老师去手动转。

前端设计

后端是采用的 Waline,在事后的角度出发,当时选择他切切实实是没错的。但是前端设计将会怎样呢?

最开始我想的是直接用 Waline Example,也就是他部署完在根目录默认会提供的一个评论区示例。这个方法使用了一段时间我的眼睛就受不了了,又是默认英文,还有各种不顺眼的地方,而且空空荡荡,过于简洁,无法自定义其他内容,属实令人难蚌。

Waline Example

所以到最后,还是我出手写了前端,也不能算前端吧,就是一个 HTML 5 的页面,这样通过引入就可以实现固定内容 + 评论区这样的排版了。

当然还是基于万能的 Bulma CSS 咯!甚至还是拿我 Nofated095/nofated.win 直接改的。

在简单修改完后,我们的前端变得好看一些了。这个时候已经是 1 月 20 日。在完成前端后,郑老师找到我,说准备大年初一的凌晨正式上线树洞,也就是 1 月 21 日(除夕夜)的凌晨。

在当时我其实有点想反对,因为在完成前端后,基本上就已经可以使用了。

有意思的是, 20 号夜里郑老师在动漫社微信群里水了一下树洞的开发情况,说明了要大年初一上线后,一大群同学们听说表白墙搞完了,纷纷提出要内测资格。而且真的想体验的人还很多,于是乎,迫于无奈, 郑老师官宣了树洞的网址,大家可以在微信里内置浏览器里直接发帖。

非同凡响的热度

在地址开放之后,好多同学纷纷来到树洞来测试、表白、发癫。在写前端的时候,我在上方的说明部分添加了一个统计信息的栏,来统计访问次数和评论数量,这样能很直观地看到访问量相关的数据。

确实是“非同凡响”,为之震撼的使用量。

非同凡响可能有点偏主观,但是我盯着树洞前端刷新了几次,评论数量和访问量真的是增长的很快,这是最开始开放时同学们表达的最强烈的时候。

当天晚上,评论就已经有 150 多条了,因为我基本上不需要再做什么调整,所以满怀着激动,安心了下来。

数据库统计的上线当天的评论总数

令人捧腹的是,因为评论的数量太多,亲爱的郑老师非常崩溃地复制粘贴,工作量巨大。并且因为是一条评论一个朋友圈,所以他小号还顺便朋友圈刷屏了(笑。

郑老师崩溃瞬间(乐

评论监测与审核

由于树洞的特殊性,只是排除黄赌毒的内容并不够,需要再排除各种开盒、水贴、不尊重老师的内容。这个时候单靠自动审核(其实也没有)就远远达不到目的,必须引入人工审核。

最开始所有网页端的评论都是我审核、删除,郑老师把控微信朋友圈那边的。流量不大,我审核起来也很轻松。后来又有两个好朋友过来,想要帮忙审核,我就让他们注册账号,提拔他们为管理员权限,他们就也来帮我审核了,也很轻松,因为 Waline 前端写的很容易操作。

似乎我的工作到这里就完了,~~只要看着数据库会不会爆炸就行了。~~但实际上并没有完。因为很快便有用户提出了新的问题。

用户反馈与优化