其他分享
首页 > 其他分享> > 博客园的成长史,全都烙印在从古至今的帖子评论里了

博客园的成长史,全都烙印在从古至今的帖子评论里了

作者:互联网

by Conmajia

网站的成长史

每一个大神都是从菜鸟成长起来的。每一个个人网站,也都是从简陋的HTML开始的。

这个过程也许对天才来说很短暂,但多数人还是会经历一些漫长的成长。

比如 BKY。

▲ BKY 现存的第一篇帖子,编号146

这个一开始由 dudu 个人完成的向博客堂致敬的网站,在15年前刚刚诞生的时候,谁也没有想到它能活到今天并成长到现在的规模。甚至阿杜本人在当时也只是以一个爱好者的身份在玩,像个初哥似的诚惶诚恐。

▲ 现在的站长们可能无法体会和读者商量着来的感觉,毕竟可以一键建站了

回帖评论,是博客站长和读者最直接的互动方式,也是BKY成长的历史。

BKY 早期的功能,就是在站长-读者这样的对话当中一步步完善下来的。

然而不管前台还是后台,BKY的代码写得是真的随心所欲,可能这就是爱好者的风格吧。

我在研究(吐槽)过程中,抓取了BKY全部400多万条评论。

正是这些评论,让我看到了BKY的几乎整个成长史。

▲ 只有闲人,才会去浏览过期的言谈

读者的故事

技术网站的文章,也许全都是关于技术。文章下的评论,却折射着读者各自的人生。每条评论都有一个永久编号,只要不删除,它就永远不会改变。这可能正代表着评论者那一刻的人生故事,印在了岁月的年轮上,永远不会磨灭。

当然,评论里对骂互喷也是家常便饭。

浩瀚的400多万条评论里,有读者对技术的争辩,也有他们对人生的感慨。这当中,有茫然无助的北漂族,古道热肠的从业者,也有心怀大志的学生仔,奋发图强的后进生,还有为情所困的女学生,苦恼穷困的男老师,养家糊口已经对生活麻木的中年大叔。他们甚至可能是我们身边的任何一个人。

▲ 也许技术会让人相聚,但生活的道路不止一条

我不知道留下这些评论的人后来如何。

也许愿望实现了,也许感情清晰了,也许家庭和睦了,等等。

当然,事实也可能向完全相反方向走去。

即便他们当初只是随口说说,发发牢骚,转头就不记得了,但是不管如何,至少这也是他们活过的证明之一。

或者某一天,当我再次按下随便看看按钮时,刷新出来的评论,正是这些素未谋面的陌生人的另一部分故事。

过去的都已经过去

过去的都已经过去,曾经毕竟只是曾经。

——忘了·爱

这些历史,现在早就淹没在无数文章之中,不是我这么闲,根本不会有人想要去翻看十几年前的坟贴。

就像互联网拓荒时代那些潮水般涌起,又泡沫般消失芸芸网站,谁又会去纪念呢?

只有幸存者的故事能够成为励志的传说。其他的人,不过是他们功成名就的背景墙。

最后,让我用一条评论来结束这篇文章吧。

The End. \(\Box\)

评论档案柜

你可以在这里查阅全部评论(截止2019.2.25,大约共418万条),说不定能翻到你看过,甚至是你本人发表的评论。

为了降低服务器压力,我设置根据编号提取评论文字,作者、时间这些需要cross reference的信息都省略了。

这种阅读体验,很像是匿名社交。我突然在想,要不要利用BKY的服务器做一个匿名交流的插件。

emmmmm,想太多,会伤身的。

需要登录账号

你需要登录你的账号以得到查询权限。如果读到的评论中含有恶意代码,页面有小概率会崩溃或者跳转到其他网站

评论发表的时间可以根据它的编号大致判断,对应的范围大约是:

1000 - 远古(2004);100000 -(2005);4000000 - 现在(2019)

用法:输入一个编号作为起点,再输入要读取的数量,开始。或者你也可以随便看看

编号 数量

正在读取 ?,你可以不用管进度,直接开始翻阅。

永久编号 评论内容


var f1 = function (id) {
if (id < 146) id = 146;
jQuery.ajax({
url: '/mvc/comment/GetCommentBody.aspx',
type: 'post',
data: '{commentId:' + (id) + '}',
dataType: 'text',
success: function (e) {
if (e) jQuery('#dTable').DataTable().row.add([id, e]).draw(false);
},
error: function () {
jQuery('#dTable').DataTable().row.add([id, '(消失的评论)']).draw(false);
}
});
};
var f2 = function () {
var c = 0;
var strt = Math.abs(numeral(jQuery('#nStart').val()).value());
jQuery('#nStart').val(strt);
var cnt = Math.abs(numeral(jQuery('#nCount').val()).value());
jQuery('#nCount').val(cnt);
var tid = 'id' + strt + '-' + cnt;
set('tid', tid);
jQuery('#nStart').attr('disabled', true);
jQuery('#nCount').attr('disabled', true);
jQuery('#bStart').addClass('disabled');
jQuery('#bStart').attr('disabled', true);
jQuery('#bRandom').addClass('disabled');
jQuery('#bRandom').attr('disabled', true);
jQuery('#bStop').removeClass('disabled');
jQuery('#bStop').attr('disabled', false);
get('fnClear')();
jQuery('#loading').removeClass('hidden');
jQuery.doTimeout(tid, 100, function () {
get('fnGet')(strt + c);
jQuery('#ld-percent').text(numeral(c / cnt).format('0.0%'));
c++;
if (c != cnt) return true;
else get('fnStop')();
});
};
var f3 = function () {
jQuery.doTimeout(get('tid'));
jQuery('#nStart').attr('disabled', false);
jQuery('#nCount').attr('disabled', false);
jQuery('#bStart').removeClass('disabled');
jQuery('#bStart').attr('disabled', false);
jQuery('#bRandom').removeClass('disabled');
jQuery('#bRandom').attr('disabled', false);
jQuery('#bStop').addClass('disabled');
jQuery('#bStop').attr('disabled', true);
jQuery('#loading').addClass('hidden');
};
var f4 = function () {
jQuery('#dTable').DataTable().clear().draw();
};
var f5 = function () {
var strt = Math.floor(Math.random() * 4186614) + 1;
jQuery('#nStart').val(strt);
var cnt = Math.floor(Math.random() * 300) + 1;
jQuery('#nCount').val(cnt);
get('fnRetrieve')();
};
set('fnGet', f1);
set('fnRetrieve', f2);
set('fnStop', f3);
set('fnClear', f4);
set('fnRandom', f5);
jQuery('#dTable').DataTable({
scrollY: 480,
scrollCollapse: true,
"deferRender": true,
"lengthMenu": [
[10, 25, 50, 100, -1],
[10, 25, 50, 100, "全部(小心你的浏览器)"]
],
language: {
"sProcessing": "整理中...",
"sLengthMenu": "每页显示:_MENU_",
"sZeroRecords": "没有找到内容",
"sInfo": "上面是第 _START_ 至 _END_ 条,一共找到 _TOTAL_ 条",
"sInfoEmpty": "什么都没有",
"sInfoFiltered": "(由 _MAX_ 条过滤)",
"sSearch": "文字过滤器:",
"sEmptyTable": "什么都没有",
"sLoadingRecords": "整理中...",
"oPaginate": {
"sFirst": "第一页",
"sPrevious": "◄",
"sNext": "►",
"sLast": "最后一页"
},
"oAria": {
"sSortAscending": ": 升序",
"sSortDescending": ": 降序"
}
}
});
jQuery('#bStart').click();
jQuery('#nStart').val(200);
jQuery('#nCount').val(100);

标签:jQuery,function,从古至今,博客园,disabled,评论,var,成长史,attr
来源: https://www.cnblogs.com/conmajia/p/old-comment-history.html