错过了直播,别再错过回放!小编早已为您准备好了大炮评级第4期直播课回放视频
及直播内容笔记,没赶上直播的朋友快来看看吧!
判断一个项目是否是空气项目,最好的办法无疑就是直接查看其代码。但对非计算机专业或不懂计算机的投资者来讲,他们甚至都看不懂代码在讲什么,更谈不上去对其进行判断了,对此,我们采用一些量化的手段去对每个项目提交的质量进行判断,并形成每月的代码质量榜单。简单来讲,即是通过代码去看团队有没在用心干活。
一般来讲,可以到为大家所熟知的非小号(
www.feixiaohao.com)、
coinmarketcap(coinmarketcap.com)或项目方官网去查询代码。比如我看好EOS,我就会去查询这个项目有没有代码库,代码库是否开源。但是我们也发现,有很多比较知名的商业项目,他们只有一个库,但里面是空的,这其实很可能是项目方担心代码开源会被抄袭,因此暂时并未披露,对于这样的项目,我们也希望他们之后能尽快公布进度,或者在周报里做一些披露。
如果一个项目既有代码库,又开源了,我们就可以通过以下5个标准去对其进行量化打分,也就是我们每个月都会出版的代码质量榜单。
【库热度】
首先在coinmarketcap查询项目代码库地址,左下角“Source Code”就代表其代码库地址,或者在项目官网上也可以找到库地址。
点击进入代码库,可以看到ETH代码库主要界面,最上面一排可以看到主要的几个库,也是更新最频繁的几个。下方可以看到最近更新的几个库。评判代码库质量,我们首先用的指标是库热度,具体点进某个库可以看数据。我们尝试点进go-etherum,可以看到该库的详细信息。
go-etherum库界面如下图所示,在右上角我们可以看到它的Watch、Star、Fork 三项数据,这三个数据可理解为类似微博的关注、收藏、复制。这三个指标越高,我们就认为库热度越高。
我们对库热度的打星标准为:计算代码库Watch、Star、Fork三项指标的平均值,高于500定义为极高,得1星;100-500定义为高,得0.5星;20-100定义为中,20以下定义为低,中和低
不得星。
可以看出,ETH代码库里,go-etherum库热度极高,均值大于500,可以判定其得到一星评价。
【开发者数量】
查看开发数量如下图所示,可看到在go-etherum库共有266个开发者。
这也是一个非常重要的指标。一个比较优秀的项目会有很多人去进行开发。基于这几个指标我们都有定量标准。统计该库本月内提交过commits的开发者contributers数量。高于12定义为多,得1星;6-12定义为中,得0.5星;6以下定义为少,不得星。
【迭代速率】
版本迭代对项目来讲是非常关键的,假设你在那里写代码,即使一天写几千条,最后没有成品出来依然没有用,特别是应用类的产品,假如写了3个月代码最后连一个给用户的东西都没有,这款产品无疑是比较失败的。
在go-etherum库界面,“release”代表版本迭代次数,点击“release”看查看其迭代版本。
可以看到,eth在4天前有一个版本出来,13天前有一个,说明其迭代速度还是很快的,代码质量比较优秀。
我们根据发布的所有版本数量除以项目开始到现在的时间就可以算出其迭代速率,发布版本速度越快说明团队开发进度较快较活跃。以大饼、姨太主链版本迭代速度为基准值,得出区块链项目版本迭代标准为每14.25天发布一次。进而统计该库release单版本平均花费天数,除以上述基准值得出该库迭代速率。低于2定义为快,得1星;2-4定义为中,得0.5星;4以上及无release的定义为慢,不得星。
【
当月提交
】
在go-etherum库界面点击“commits”查看当月代码提交数,右边branch是指库有很多分支,可以通过不同分支写代码最后再进行合并。
对于当月代码提交数的打星标准为:0.005*提交commits次数(commits次数需大于10),最多得1星,如200及以上可得1星,100可得0.5星,10以下不得星。
【提交类型】
为防止某些无意义代码更新或重复提交,我们需对提交的代码类型进行人工审核,坚持客观数据主观分析。该项
需要建立在足够的提交样本上才能做出判定,因此,若当月提交在
10
次(含)以下,我们给出
“
提交太少,无法评判
”
的认定;
若提交次数在
10
次(不含)以上,则深度查看统计阶段内的
commits
,将其类型分为
:
【
A1
】
-
持续需求开发迭代阶段
【
A2
】
-
明显的开发迭代后的集中
BugFix
、
Test
阶段
【
A3
】
-
初始化提交导致的功能迭代、配置修改混合
【
B
】
-
日常运维型的少量
BugFix
、
Test
阶段
【
C
】
-
日常运维型的修改配置
【
D
】
-
其他难以被归类的类型
A1
及
A2
得
1
星,
A3
得
0.5
星,
B
、
C
、
D
不得星;
一月份:
1. 评价指标大丰富:本次代码质量榜将原有三项评价指标进行了扩充,融入版本迭代速率、活跃开发者数量等指标,更加全面地对各类项目进行评价。
2. 币种描述大完善:本次代码质量榜中贴心地列出所有虚拟货币名称以及其简称,方便大家快速识别各种货币。
二月份:
1. 每月排名动态变化:引入项目排名动态变化机制,可以清晰地看到各项目每月排名升降变化趋势。
2. 评判标准修正:对于当月有3个以上活跃库的项目,热度、提交次数评判不再局限于最活跃的两个库,而是将本月所有活跃库纳入考察范围中,另外对部分Fork自大饼库的热度进行了修正,Fork指标数值不再对项目本身的库热度产生影响。
3. 完善项目详细描述:拒绝刻板的定性描述,针对榜单排名前20、部分热门项目进行代码详细解读,让大家能准确知道各项目最新开发进度。(注:此项工作量较大,目前仅能对上述范围内的项目展开评测)
4. 新增风险项目预警环节,对部分进度更新缓慢、已过roadmap时点而未有效交付产品的项目进行风险提示。
三月份:
1. 扩充项目范围:利用新技术增加了评审项目的数量,目前已包含市值前200的所有项目,后续仍会进一步扩大。
2. 修正提交次数评星方法:我们认真回顾了以往排名,发现在原有阶梯式评星模式下,有部分项目因为仅提交99次commits而未达到100次的标准就导致整体评级少了0.5颗星,但本质上99与100次commits并无太大区别,原有的评判标准在临界点的评判上缺乏公允性,因此我们对提交次数的星级规则进行了修正。
3. 丰富榜单元素:在原有基础上新增各项目月底市值排名,方便读者对比发现存在较大升值空间的技术币种。
四月份:
1. 新项目加入:ela、ont、datum、ipc、ubtc
2. 鉴于前段时间bec、smt等token发现的以太坊漏洞,这次会尝试加入新的安全审计部分。
Q1:作为客观独立的自媒体,如何确保自己能一直保持客观中立,是否考虑上链?
A:首先,必须强调我们的定位并非自媒体,而是评级机构。我们自己的网站目前正在开发中,很快会有自己的网站及App出来。至于我们如何保证自己客观中立呢?首先我们评级是不收费的,即使项目方给钱我们也是拒绝的,没有利益往来才能保证自己的客观中立;第二点,如果是说结果上链的话,我们是有考虑的,并且会逐步去实现,但在我看来这个其实意义不大,因为每个报告都是公开发布的,所有人都知道结果,也是没法修改的,结果上不上链其实意义并不大。
Q2:
对公链及应用链的评级是否会有区别对待?公链是否得分会更高?
A:对不同类型的项目,我们考核的点其实是不一样的,对公链我们可能会考核项目TPS、节点分布情况,应用链则更多考核现实需求、场景对解决方案的自洽性等,所以对公链和应用链的评级肯定是会有区别的,用完全相同的方式去考核所有项目才是荒谬的做法。至于公链是否评级分数会更高,理论上,在分数上是不应该有区别对待,但是基于当前现状,这也是业内很多技术专家的共识,当前公链并不足以支撑大规模应用出现,所以公链在当前得分会略微偏高,因为很多应用链的发展可能还并不十分成熟。
DarpalRating
∣
大炮评级
观点略偏激,但真理从来不中庸
人生当如阿灰喵,不必活成狗