杨超越杯编程大赛登上 GitHub,程序员为追星都开发了什么?

百家 作者:程序人生 2019-03-15 04:10:06

作者 | 徐麟
责编 | 伍杏玲

【程序人生 编者按】上周,百度贴吧吧主一刀两断,在杨超越吧为自己的爱豆组织了第一届杨超越杯编程大赛,今天作为报名的最后一天,我们也从中看到了技术宅追星的火热。接下来,本文将为你揭晓程序员们追星过程中带来了哪些技术含量极高、脑洞极大的项目?

前段时间,笔者看到一则新闻,提到杨超越粉丝策划了一场“杨超越杯编程大赛”, 题目是做任何与相关的游戏、网页、工具等。刚开始看到这则新闻,笔者以为又是一次博眼球的明星营销策划活动。后来在好(chi)奇(gua)心的驱动型下,还是去看了一下关于活动的介绍。

然而当笔者在杨超越的贴吧中看到上面这个活动的海报及赛事介绍,开始愈发感觉这次活动并不是一次之前所理解的单纯的博眼球营销,可能会是一次真正的有技术含量的赛事。于是我们顺藤摸瓜来到了赛事的GitHub主页,想要一探究竟:

看到了大家提出的项目方案,其中有一些具备了相当高的技术含量和整体方案。我们开始认定了这将是一次认真的,技术含量极高,脑洞极大,具有“跨时代意义”的编程大赛。

下面我们就从中选择了一些或是脑洞大开,或者极富技术含量的参赛项目为大家盘。


精彩项目


TOP6——游戏:超越矿工

有过在4399、7k7k等小游戏网站活跃的读者,一定会对超级矿工这个游戏印象深刻,游戏中充满着不确定性和惊喜。有参赛选手就想到了将这款经典的游戏和杨超越相结合,目前选手已经在GitHub上po出了初步的游戏界面效果图:

笔者还是非常看好这个项目的,从趣味性和可行性上看都是很不错的。同时也提议可以在游戏中增加多人对抗项目,丰富幸运袋中的礼物内容,如直接劝退对手或者更加实际的参与杨超越线下粉丝见面会的机会……

TOP5——区块链类项目:超越村 

区块链成为了近几年来非常火爆的一个技术话题,喜欢杨超越的“村民”们也不甘落后,致力于打造与一个平行世界中的真实村落“超越村”,下面是项目的简单介绍:

同时我们也在这里为大家简单科普一下关于区块链和比特币的一些知识,我们从网上找到了关于区块链的比较通俗的定义:

区块链是一种去中心化的分布式账本数据库。去中心化,即与传统中心化的方式不同,这里是没有中心,或者说人人都是中心;分布式账本数据库,即每个节点都参与整个账本的变动记录,并同步共享复制整个账本的数据。

上述定义非常清晰地指出了区块链的两大特点去中心化和分布式账本数据库,那么比特币又是什么呢?

比特币是一种P2P形式的数字货币,P2P(即点对点)的传输意味着一个去中心化的支付系统,不依靠特定货币机构发行,它依据特定算法,通过大量的计算产生。

综上所述,可以看出区块链是比特币的底层技术,比特币相当于区块链技术的一个应用,大家切忌不要讲二者混为一谈,更不要让区块链去背比特币的锅。

TOP4——小程序类:超越吧!村村

该项目旨在通过小程序记录喜欢杨超越的村民们为自己的爱豆做出更多贡献,并且能够多做一些正能量的事情,真正打动我们的是这个项目作者所展现的非常清晰的思维导图:

思维导图(又称脑图)在项目开始时有着非常重要的作用,一方面可以有效收集大家头脑风暴的内容,另一方面也可以在项目初期保证项目整体按照预期的规划方向进行

TOP3——视频类:ycy dance now

这个项目的作者目前的介绍非常简短,然而往往字数越少的新闻可能越重要,我们来看一下作者简短的介绍:

实际上杨超越现在的舞蹈水平已经有了长足的进步,不再是那个不会跳舞的超越。关于这个项目,我们跟大家一起聊聊GAN(生成对抗网络),我们借此机会也跟大家一起去了解一下GAN的基本概念:

GAN的核心思想来源于博弈论的纳什均衡。它设定参与游戏双方分别为一个生成器(Generator)和一个判别器(Discriminator),生成器的目的是尽量去学习真实的数据分布,而判别器的目的是尽量正确判别输入数据是来自真实数据还是来自生成器;为了取得游戏胜利,这两个游戏参与者需要不断优化,各自提高自己的生成能力和判别能力,这个学习优化过程就是寻找二者之间的一个纳什均衡。

GAN的计算流程与结构如图所示:

看到这里是不是有些晕了,笔者在这里就斗胆用比较通俗的方式来总结一下:学生Generator(简称小G)为了完成教授判别器Discriminator(简称D教授)布置的寒假作业,决定在假期最后一天疯狂补作业,并且拉来了自己的好基友们一起帮忙,力图让好基友们的字迹能够蒙混过关,而D教授也在不断提高自己来力图识别出来不是小G自己完成的作业部分,二者就这样相爱相杀。

TOP2——工具类:超越聊天机器人

目前我们可以用到非常多的聊天机器人,比如微软小冰,苹果Siri……,超越本身就有着非常鲜明的语言特点,怎么能没有一款超越聊天机器人呢?

看到这里,笔者不禁脑补出未来这块产品在微信上线后的场景:

TOP1——游戏:保护我发杨超越

守护自己的爱豆是每个粉丝应该做的事情,超越的粉丝们当然也不甘落后,用尽自己的才华去为超越保驾护航,下面这个项目融合了各种棋类,结合了创造101的元素:

好吧,作者需要承认,其实仔细研究了好久都没有彻底搞清楚规则,智商被项目发起者彻底碾压,有兴趣的朋友,可以去看一下这个非常有趣、走心的游戏方案,一起守护杨超越。

看到这里,或许大家已经被超越的粉丝们所折服,不仅是能够有着非常丰富的想法,并且具备非常强的技术背景和执行力。然而,你以为这就结束了吗,显然不是,我们看看下面这个项目:

TOP 0:超越语言YCYL!

能被排在TOP0的项目,一定是不同寻常的,话不多说,我们直接看一下作者的介绍:

这个厉害了,YCYL未来能否取代Java、Python就看你们的了!


结语


通过今天的文章,我们不禁被杨超越的粉丝们所折服,这应该才是“追星“的正确姿势,希望大家都能多多努力,因为再不努力连追星的机会都没有,想要参与赛事的朋友,可以通去下面的赛事GitHub主页一探究竟:

https://github.com/ccyyycy/ycy/issues 

作者:徐麟,某互联网公司数据分析狮,个人公众号数据森麟(id:shujusenlin)。

声明:本文为作者投稿,版权归对方所有。


 热 文 推 荐 

找 Bug 赚了 6,700,000元!这位 00 后是怎么做到的?

第一批 90 后程序媛已爆发焦虑症 | 程序员有话说

漫画:如何给女朋友解释为什么有些网站域名不以 WWW 开头

再见,中国移动 3G!

少儿编程只学会 Coding 就够了?比这更重要的是……

杨超越第一,Python第二

以安全之名:2019年DevSecOps社区调研白皮书解读

虎口夺食! 打破Facebook谷歌垄断, MIT大神和他的区块链数据库传奇! |人物志

那些简历造假拿 Offer 的程序员,后来都怎样了?

System.out.println("点个在看吧!");
console.log("点个在看吧!");
print("点个在看吧!");
printf("点个在看吧!n");
cout < < "点个在看吧!" < < endl;
Console.WriteLine("点个在看吧!");
Response.Write("点个在看吧!");
alert("点个在看吧!")
echo "点个在看吧!"

喜欢就点击“在看”吧!


关注公众号:拾黑(shiheibook)了解更多

[广告]赞助链接:

四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/

公众号 关注网络尖刀微信公众号
随时掌握互联网精彩
赞助链接