对于技术人来说,GitHub大家肯定都不陌生,这个平台汇聚了无数开源人的优秀作品,不管你有没有在GitHub上贡献过开源代码,你一定在你的项目里应用过 GitHub 的优秀开源库;
我们都说不要重复造轮子,GitHub 为我们提供了一个检索现有轮子的绝佳平台,而且 GitHub 也是我们打造技术影响力,体现我们技术实力的绝佳平台,没事儿的时候可以多逛逛,再没事儿的时候贡献点代码,说不定一不小心就变成万种瞩目的那个 Gay~,咳咳,技术精英了呢
Github 被广大同行戏称为全球最大同性交友网站,别称 GayHub,别提多不正经了,有趣的 GayHub 系列预计会为大家呈现一系列有趣的开源库,敬请期待~
今天给大家分享的是截至目前 GayHub 上标星 10.7k 的一个有趣的开源项目:
BullshitGenerator
看看这充满霸气的名字,一句 Bull shit 脱口而出~
这个库的中文名字就更霸气了:
狗屁不同文章生成器
哈哈,看到标题就知道这是一篇逗比中夹杂着复杂技术的文章。
项目地址:请戳这里
如果想体验一下生成的狗屁不通的文章长什么样,请戳这里
这个开源库的体验效果是这样式儿的:
你没看错,真的就是狗屁不通的效果~
当然,你如果有兴趣,可以自己去扩充它的语料库,去生成更有意思的,优雅的,狗屁不通的文章;
其部分语料库如下:
{ "title":"学生会退会", "famous":[ "爱迪生a,天才是百分之一的勤奋加百分之九十九的汗水。b", "查尔斯·史a,一个人几乎可以在任何他怀有无限热忱的事情上成功。b", "培根说过,深窥自己的心,而后发觉一切的奇迹在你自己。b", "歌德曾经a,流水在碰到底处时才会释放活力。b", "莎士比亚a,那脑袋里的智慧,就像打火石里的火花一样,不去打它是不肯出来的。b", ... ], "after":[ "这不禁令我深思. ", "带着这句话, 我们还要更加慎重的审视这个问题: ", "这启发了我. ", "我希望诸位也能好好地体会这句话. ", "这句话语虽然很短, 但令我浮想联翩. ", "这句话看似简单,但其中的阴郁不禁让人深思. ", "这句话把我们带到了一个新的维度去思考这个问题: ", "这似乎解答了我的疑惑. " ], "before":[ "曾经说过", "在不经意间这样说过", "说过一句著名的话", "曾经提到过", "说过一句富有哲理的话" ]}
这个库还有一个特别有意思的地儿,就是为了方便大家理解,方法名都是中文命名的,其核心生成逻辑如下:
function 生成文章(){ let 文章 = [] for(let 空 in 主题){ let 章节 = ""; let 章节长度 = 0; while( 章节长度 < 6000 ){ let 随机数 = 随便取一个数(); if(随机数 < 5 && 章节.length > 200){ 章节 = 增加段落(章节); 文章.push(章节); 章节 = ""; }else if(随机数 < 20){ let 句子 = 来点名人名言(); 章节长度 = 章节长度 + 句子.length; 章节 = 章节 + 句子; }else{ let 句子 = 来点论述(); 章节长度 = 章节长度 + 句子.length; 章节 = 章节 + 句子; } } 章节 = 增加段落(章节); 文章.push(章节); } return 文章.join("\n");}
逻辑很简单,效果很有趣,严格来说,还很不极客风~
但是就是这么一个库,却在 Github 收获了 10.7k 的 star,作者可谓一炮而红,收获了无数精纯的技术向的粉丝,这积累的都是个人影响力啊,小马哥我反正是羡慕坏了。
好啦,逗比的部分告一段落,下面来一点正经的总结思考。
这篇文章的技术思路其实很简单,提供简单的语料库与标记,然后拼接就行了。
但是作者设计这个库的目的,仅仅是为了应对日常开发时偶尔中文文字用于GUI开发时测试文本渲染的场景,按我理解,说白了就是在测试阶段,没有真实数据,写的 UI 看不出效果,所以自己模拟数据看一眼效果。
这种事儿我相信我们每个人都没少干,但是我们往往把这个事儿干的空洞乏味且无聊,就是一遍一遍哗啦啦在键盘上敲一堆无意义的很长的一串字,然后测测,然后删除,遇到下一个类似场景,再哗啦啦在键盘上敲一堆无意义的很长的一串字。
而这个作者通过简单的技术手段就把这件事儿变得很有意思,而且顺道收获了大批流量,这是一件很值得我们思考的事情。身为一个逼格很高的工程师,我们除了日常吭哧吭哧干需求之外,原来我们还可以在这些不经意的小细节里,玩出这么多乐趣。而逐渐油腻的我们,是不是经常习惯性的忽略这些细节呢? 或者我们发现日常工作中的一些繁琐重复的事,但是我们总是一遍又一遍无意义的重复,而没有想着把这些事自动化?哪怕不自动化,趣味化也是很好的选项啊,这能让我们的工作更有滋味。
另一点思考就是,我们应该意识到 Github 作为一个程序员的集散地,是一个建立技术影响力的好平台,而通过这个开源库我们不难发现,要在 GitHub 上建立一个热门高星的库,除了可以贡献深技术性的开源库之外,贡献趣味性的库也是一个很好的方式,如果我们想借这个平台打造影响力,这是一个很好的思路,996.icu 和狗屁不同文章生成器都是很好的浅技术性,高趣味性引起大家关注的典型。
好啦,今天的文章到这里就结束啦,欢迎关注,在看,分享一条龙,哈哈
也欢迎大家在 Github 上 follow me,这样我star/fork/create 的项目就会出现在你的时间线上,让你能够打开 GitHub 通过看我的时间线,就能了解到最新、最热的开源项目,把握技术动向。
我的 GitHub 个人主页,请戳这里,欢迎 follow
有趣的 GayHub 系列文章预计会持续更新,囊括有趣的、有用的、热门的开源库深度分享,敬请期待!
下一篇文章预计会写一个有趣的互联网故事,《流氓软件诞生史》,说一说国内早期的互联网玩家的故事,如果感兴趣,欢迎关注 小Mark技术分享 防走丢哦。
完结,撒花