作者| Aholiab
年底了,该轮到(条)出行(曹)了。最近几天有很多朋友来问我,2020年哪个行业最有前途?虽然ABCD四大技术(即人工智能AI、区块链、云计算、大数据)这两年的发展有目共睹,但作为这四大领域的“新技术”,营长还是比较看好区块链。
原因很简单。首先,区块链是国家支持的新技术,与其他几项技术相比,处于真正的“起步阶段”,大量未开发的处女地亟待勘探。第二,根据互联脉脉和猎网今年上半年发布的报告,区块链开发者的平均年薪是互联网行业的1.9倍,达到38.4万元的平均水平。而且,这个工资也是国际化的。根据Hakin9的统计,在硅谷,区块链开发者的平均薪资为15.8万美元(约合人民币1108054元)。毕竟找工作还得“看钱”。第三,虽然上半年经历了短暂的“寒流”,但泡沫退去后,区块链再次回归应用价值,企业端的人才需求依然非常巨大。
总而言之,区块链发展仍然是一个非常受欢迎的位置。然而有趣的是,据CSDN 2019 《软件开发者大调查》报道,在中国,超过一半的开发者对区块链缺乏基本的了解,甚至区块链行业的从业者对区块链也只是一知半解,想从事区块链开发。
这背后的主要原因在于区块链领域缺乏完善、系统的学习材料。即使你想学习区块链发展,你也不知道从哪里开始。另外,一个人学代码很枯燥,也很难。而国内优质的开发者社区很少,缺乏相互交流的氛围,坚持下来真的很难。
如果上面说的正是你目前面临的困境,那就不要放弃。营长今天特意为大家准备了一个开发者学习包,帮助大家系统掌握从0到1的区块链开发原理。走吧。
第一步,掌握“区块链开发者”的学习路径图
要成为一名区块链开发者,你首先需要知道什么样的能力才能被称为“区块链开发者”。在营长看来,一个区块链开发者至少需要具备以下四种基本能力(重点):
精通使用至少一种编程语言;
具备基本的项目实施和部署能力,能够解决项目中遇到的问题;
具备区分市场主流区块链底层开发平台和工具的能力,了解不同开发平台和工具的技术差异;
以上几点还没说完。这只是成为区块链开发者的第一步。在由CSDN主办、区块链大本营协办的2019区块链开发者大会上,微众银行区块链首席架构师张凯翔进一步详细总结了区块链开发者需要掌握的技能。他将区块链开发者所需的能力分为三类,即基础IT技能、区块链领域基础知识堆栈和学习能力。
张凯翔在会上发表了讲话。
基本IT技能
在张凯翔看来,要想成为一名区块链开发者,至少要达到“程序员”或“系统管理员”的技能水平。如下图所示:
在这个知识图谱中,Linux操作系统是基础中的基础,因为大部分区块链系统都可以在Linux操作系统上运行,包括CentOS和Ubuntu。因此,开发者至少需要掌握一些基本的Linux操作指令,如ls查看目录、ps或top查看进程、查找文件、netstat查看网络等。如果学会写shell脚本,那就更厉害了。这个过程大概需要一个星期。
然后,就到了网络层,因为区块链是一个分布式系统,节点是通过网络连接的,所以你还是需要了解一些网络概念。但是不需要精通网络的概念。你只需要知道什么是TCP/IP,公网/内网/本地地址的区别,如何配置端口、节点和节点,SDK和节点是否会被防火墙和网络策略屏蔽。一般来说,Linux书籍都会介绍这部分内容。
如果是基于cloud、Docker或K8S等容器环境,需要了解所使用的服务提供商或容器的功能、性能、配置方式,包括资源的分配:CPU、内存、带宽、存储等。可以参考云服务商的技术文档,相信很快就能上手。
在编程语言阶段,由于区块链不限制编程语言,开发者可以根据自己的学习路径选择不同的语言。C,C,Java,Python,Golang,Solidity都可以。
然而,仅仅熟悉这门语言是不够的。还需要掌握语言的周边工具。以java为例,还需要掌握Eclipse、IntelliJ IDEA等集成IDE,熟悉基于Gradle的工程管理软件,熟悉Spring、Springboot等Java的基础开发组件,熟悉IDE或命令行下ApplicationContext等资源路径的定义。幸运的是,这些内容可以在Java相关的社区和网站中找到。在精通Java的情况下,使用Java SDK访问区块链和运行演示样本将会非常容易。
最后,GitHub,不用说了。它不仅是区块链开发者,也是任何程序员在GitHub中冲浪的必备技能。
基础知识栈
掌握了区块链的基本知识后,你还需要了解区块链平台的基本结构。张凯翔为区块链的入门级开发者画了一个实用技能树。他认为,区块链领域的基础知识堆栈自下而上由以下几部分组成:
做个学习型的开发者
掌握一项开发技术需要长期的学习。在这方面,对于一个开发者来说,有耐心阅读文档,有能力搜索资料,有能力阅读代码是非常重要的。由于区块链开发平台的开发文档卷帙浩繁,以FISCO BCOS为例,其开发文档超过20万字(有中英文两个版本的文档)。全部看完,相当于看了一本书《白鹿原》或者《基督山伯爵》。这还不算微信官方账号里的大量技术分析和科普文章。
典型的技术实践文件如下(FISCO BCOS智能合同开发文件):
https://isco-bcos-documentation . readthedocs . io/zh _ CN/latest/docs/manual/smart _ contract . html #
如果能通读,理解透彻,无疑对以后的开发工作有很大的帮助。
嗯,以上内容有没有给你一些启发,帮助你找到一些学习方向?相信你已经注意到,这条学习之路是微众银行多年区块链实践的沉淀。微众银行作为国内较早布局区块链业务的企业之一,《区块链产业人才岗位能力要求》标准(工信部人才交流中心主办)的编写者之一,在帮助开发者学习成长方面做了很多尝试,无论是打磨开发者学习资源、举办线下技术专题训练营、区块链大赛、开设大学课程等。所有这些都帮助了一大批想学习区块链的人迈出了第一步。
区块链探索路漫漫,我们往下看。
第二步,找组织,得有人跟你斗。
要成为一名合格的区块链开发者,光学习是不够的,你必须学会自己开发。技术圈有句老话:说话便宜,给我看看你的代码(能敲代码尽量别出声)。和一群志同道合的人一起学习,一起入门,会让你的成长事半功倍。
参加行业活动可以帮助你在技术方面快速成长,结识一群和你一样对区块链技术感兴趣的人。主要线下活动如面对面交流的Meetup、注重实战操作的拓展训练营、区块链比赛、培训等。不同的开发者社区、第三方机构甚至官方机构都会定期举办这些活动。
那么,如何选择适合自己的活动呢?
首先,在参加活动之前,明确自己的核心目的。了解行业前沿技术的研究成果和应用方向,参加一场线下沙龙/Meetup是快速把握趋势的一种方式;迫切需要入门和跑步。开发一个专门的训练营,可以让你在短短两个小时内顺利完成建链。技巧在手,各种比赛恰好是一点点考验的舞台。对于区块链的初学者,营长甚至建议你参加实用开发训练营。
与一般的沙龙模式台上讲台下听不同,特训营的开发需要开发者自带电脑参加会议,按照每一场设定的主题逐一实施。主题也非常多样,从最简单的Hello World到智能合约开发、开发框架、游戏开发、Dapp开发等。有的安全社区还会现场教你花一条链子,找出一条链子的漏洞,进行一次尘埃攻击,相当刺激。
两周前,营长在深联合微众银行和FISCO BCOS开源社区举办了这样一场“区块链发展特训营”。在FISCO BCOS高级架构师莫楠为与会者解析了FISCO BCOS的核心原理后,FISCO BCOS的两位核心开发者带领大家现场搭建代码。很多开发者都在现场,只用了2个小时就完成了chaining和Dapp的开发。
“区块链开发特训营”现场
由于主题设置往往是基础的,所以这类活动更适合基础薄弱甚至“零基础”的学生。如果你已经有了一些开发知识,希望更进一步,那么黑客马拉松和开发者大赛可能是更好的选择。
根据维基百科的定义,黑客马拉松是指很多人在一定时间内聚在一起,用自己想要的方式做自己想做的事情。——整个编程过程几乎没有任何限制和方向。黑客马拉松具有时间短、强度大、想象力高、默契度高、爆发力强等特点,因此近年来在国内外都很受欢迎。今年,微众银行以FISCO BCOS为名,在北京站和深圳站举办了两场黑客马拉松。来自134个团队的500多名开发者在36个小时内“怒肝”代码,基于区块链技术创造出一个又一个创新解决方案。
第四届工业革命极客马拉松微众银行区块链支行
除了黑客马拉松,你还可以参加区块链开发者大赛。这种竞争有两个好处。第一,很多比赛都是官方组织赞助的,奖项含金量很高。二是可以获得真金白银奖励。
比如工信部中国电子技术标准化研究院每年都会举办“中国区块链开发大赛”,培育区块链应用解决方案,今年7月已经是第三届了。有趣的是,在这次竞赛的11个获奖项目中,有4个是基于FISCOBCOS开发的。
此外,去年金链联盟举办了“中国区块链应用大赛”,征集使用FISCO BCOS底层平台开发的优秀应用,获奖者可分享最高215万元的奖励。当然,竞争是激烈的,需要和中国人寿、厦门国际银行、四川长虹等知名企业,以及北大、清华等顶尖高校的团队竞争。
一场正在进行的比赛值得关注。——“BSN首届开发者大赛”。BNS(block chain Service Network),全称“区块链服务网”,是由国家信息中心、中国移动、中国银联、枣科技共同发起的基于区块链技术和共识信任机制的全球基础设施网络。比赛将每年组织四次,每次持续三个月。没有参赛门槛,所有参赛作品都将被di
本次大赛以“传统信息系统链改造方案”为主题,面向全国各行业开发者征集基于联盟链或私有链的共享账本架构的文本解决方案。征集方案截止时间为1月31日16: 00。作为国内唯一由BSN引进和改编的联盟链底层平台,参与者可以基于FISCO BCOS设计链改方案。
12月1日,BSN与微众银行签署合作协议,引入FISCO BCOS作为BSN唯一的国内联盟链底层平台。
参加黑客马拉松和开发者大赛,不仅能直接帮助你的技术提升,还能帮助你了解区块链项目分工、资源分配和项目进度控制的机制,以及高效的团队/跨团队联动。当然,最重要的是,经过一段时间的共同奋斗,你会收获很多宝贵的友谊。
上面提到的线下活动和区块链比赛,就是技术升级的“内功修炼”。你可能会问,如果我想找一份与区块链发展相关的工作,我该怎么做?没有相关经验,不如先给自己创造一些资历,而不是盲目的往墙上投简历。比如参加技术培训。
技术培训包括在线课程和大学课程。在线课程平台的公开课,如CSDN学院、FISCO BCOS开源社区、人民网运营的区块链学院海量公开课。
人民网海量开放网络课程区块链学院推出17门视频课程,面向大众免费授课。
如果是大学生,可以通过选修课或者公开课得到系统的学习。除了学分,这类课程还可以获得资格证书,可以作为进入区块链行业的敲门砖。如微众银行与全球25所大学合作联合课程,同时设立了FISCO BCOS区块链工程师认证体系。通过课程考试的学生可以获得FISCO BCOS区块链工程师认证。该证书可用于大学生就业推荐,优秀毕业生有机会获得在FISCO BCOS生态系统企业实习的机会。
当然,“组织”有很多种形式。加入组织的目的是让你在良好的氛围和及时的帮助下获得技术上的提升。除了上面提到的三种形式,还有行业会议,GitHub社区,各种平台的垂直社区,都是不错的选择。此外,还需要进入官方技术交流群进行实时互动。
作为较早拥抱开源的联盟链底层平台,FISCO BCOS用开源连接了数万个人开发者和500多家企事业单位,拥有国内最大、最活跃的开源联盟链生态,其技术组每天都有大量的技术讨论,甚至直接在群里乱涂代码;哪怕是凌晨问,也能得到即时回复。此外,FISCOBCOS每周四定期在小组中开展区块链小班教学,技术大牛和资深社区成员分享话题。日常画风如下:
有一种友情,叫半夜一起写代码;有一种默契,随时随地都可以改bug。没有几个和你一起拼搏的兄弟,你不可能成为一个真正的程序员。找到“组织”不仅能帮你收获更多的友谊。更重要的是,有一群人可以帮你看清每个阶段你应该做什么,从而实现快速成长。
找到这个组织,你就离成为区块链开发者更近了一步。
第三步,找准应用方向,另一种打开联盟链的方式。
“人们想要的不是钻子,而是墙上的洞”——英国谚语
从学习区块链的基本功,到参加各种线上线下的活动,看到这么多优秀的团队在开发者大赛中获奖,你可能还是不确定自己应该在链上做些什么。
经过上一波行业乱象,越来越多的人清楚地看到,区块链的真正价值在于其对行业的渗透。如何利用区块链改善民生,提高效率,帮助产业发展,才是区块链科技真正的出路。在这一点上,联盟链具有天然的优势
在联盟链中,供应链金融是目前各大联盟链都在发力的场景之一。由于区块链的不可篡改、交易透明等特点,中小企业可以将业务经营数据放在链条上,缩短金融机构评估其资本和经营状况的时间,从而达到快速融资的目的。传统供应链财务流程的完成时间在7天左右。通过微众银行的供应链金融服务平台,最快可在一天内放款。
正义也是联盟链实践较多的场景之一。因为互联网数据被篡改伪造的问题,普通用户取证维权非常复杂。通过区块链技术,可以在链条上记录数据产生、存储和传播的全过程。这些链条中的数据可以作为有效司法和鉴定的依据。
同样,还有版权押金证。今年7月,微众银行与人民日报联合推出“人民版权”平台,利用FISCO BCOS构建多方合作模式,引入国家监管机构、权威媒体机构、仲裁机构、公证处、互联网法院等诸多节点,构建版权保护联盟链。平台依托实体身份和可信数据交换解决方案WeIdentity,可从作者姓名、注册时间、作品名称、作品核心摘要等信息生成唯一对应的数字指纹DNA并存储于区块链,大大降低司法过程中的取证和保全成本,快速实现版权认证、取证、维权、诉讼全流程在线化。
区块链技术在智慧城市建设中也非常有用。目前很多城市已经在这方面积极探索,将居民的证明信息进行联动,缩短工作时间。在这方面,微众银行与澳门政府合作,通过FISCO BCOS、WeIdentity等区块链技术,帮助澳门居民实现文凭、学历证书等凭证的电子化管理,节省50%的政务材料处理时间。
看到这里说明你真的在思考区块链的发展。今天,我给你一个福利。FISCO BCOS开源社区出品《行业第一《应用案例精编》,列举了金融、安全、供应链、教育、司法、政务、公益、版权等领域的落地案例。希望能对你有所启发,帮助你找到最适合的发展方向。
还是那句话,应用是区块链行业每个人都在思考的问题。虽然没有一个申请方向是最适合的,但是不适合的也有很多,尤其是很多区块链项目对于区块链来说。所以,要想创造真正有价值的应用,不能闭门造车。你应该看看行业内的优秀案例,仔细分析这些应用背后的理念。
但是,在应用落地上,最好不要忘了,区块链技术只是一个工具,再好也不过如此。人真正需要的不是你手里的钻子,而是墙上的“洞”。
结束语
今天的文章通过知识体系、社区活动、申请方向三个部分为你梳理成为区块链开发者的步骤。这背后其实还有另一个重要因素,就是对区块链科技的信心。作为一名区块链开发者,你需要100%确信区块链是一个真正令人兴奋的创新,你写的每一行代码都是有价值的。与年薪无关,与投机无关,但你真的在改变和影响这个世界。