干货 | 想转行做区块链开发?这几个项目值得尝试

blockchain-and-the-supply-chain

2018 年 IT 圈最火的话题非区块链莫属,自 2017 年末比特币价格突破两万美元大关,再到后来的三点钟无眠区块链微信群引燃社交网络,我们可以看到:有越来越多的名人跨界参与到这一热潮中来。与此同时,区块链开发者也越来越受到职场和婚恋场的青睐。就在今年的 5 月 10 日,阿里巴巴在西溪园区举行了第 13 届阿里日集体婚礼,由马云亲自证婚。马云在证婚词中调侃:“我听说蚂蚁金服有一个工程师,他写了一个求婚简历,里面的工作写了一个‘码农’,结果很久没有人点开来看,后来他把自己的工作经历改为‘区块链’,一下子收到了 381 封求爱信。

zhilian

在国内某著名招聘网站上搜索区块链工程师职位

 

另外,现在在国内各大求职网站上搜索区块链相关的技术性职位,我们会发现其月薪普遍都在 15,000 元以上,甚至有些职位月薪可以达到 50,000 元。但即便是这样,区块链开发岗仍然处于供不应求的状况,究其原因,主要有以下两点:1.区块链作为新兴技术,学术方面的研究仍然不够透彻,只有极少数高校设立了相关专业,培养出来的毕业生对这一技术掌握不深。2. 人们对新技术有畏惧心理,认为其风险较大,因而在求职时有所顾虑。

 

有句电影台词说得很好 — “我们一路奋战,不是为了改变世界,而是不让世界改变我们”。如果我们安于现状,那么被时代所淘汰将是大概率事件;与其固守所成,不如拥抱变化。行文至此,您是否对转行做区块链开发跃跃欲试了呢?当然,万事开头难,对于咱们这些新手来说,最头疼的问题莫过于缺乏领路人的指引,但是没关系,接下来笔者将为您介绍一些值得动手写代码的区块链项目,这些项目都有大神手把手教导您。在花一些时间认真研究之后,相信你在区块链方面的技术经验已经足够谋得一份薪水还不错的工作了。Let’s Go!

 

区块浏览器

 

区块浏览器是一个可以在线查看区块链运行状态的网站,使用起来就和我们用 Chrome 访问某个普通网址一样直观。它可以显示某个特定区块的内容、交易历史记录、某一地址上币的余额等信息。

block explorer

通过 Block Explorer 查询某个币的全网算力变化情况

 

每个对象(即交易ID、地址、区块编号等)都以网页的形式呈现出来,可读性很强,并具有独一无二的 URL。通过使用超链接,用户只需点击一下,就可以从某一对象的数据页面切换到其他相关对象的数据页面。如果您点击对象的哈希值,那么就会跳转到哈希数据详情页。这样一来,您就能从某一个交易页面,跳转到为该交易提供输入的先前交易页面。所有的区块数据都是公开的,要么人眼可读,要么可以被机器识别。我们甚至可以通过区块浏览器查看到一些不包含在区块内的信息。

 

区块浏览器主要针对的是中高级用户,他们已经了解了区块链的基本知识,并知道每个区块中都包含哪几种信息,不过即使您不知道也没有关系,因为区块浏览器通常都会提供小贴士,对每个功能进行详细介绍。

explorer

LiveEdu 上美国大牛手把手指点如何用 JS 创建区块浏览器

 

咱们推荐的第一个练手项目就是 — 区块浏览器。听上去很难吧?但只要具备一些基础的 Javascript 和数据库相关知识,您就能实现它。诚意推荐来自美国 tvle83 大牛的视频教程 —  如何用 Javascript 创建一个区块浏览器? 他具有 10 年的前端开发经验,并在区块链技术方面有自己的独到见解,因此聆听他的讲课会让您有醍醐灌顶的感觉。试试吧!真的没有想象中那么难。

 

炒币机器人

 

炒币机器人其实并不算一个新鲜的概念,它脱胎于之前传统证券市场的股票交易机器人,其特点是根据预先设定的交易规则,自动读取历史的时间、价格、成交量、持仓量等数据,从而判断是否进行交易。它还会自动统计每一笔投资的成交时间、成交金额、盈亏次数和交易成功率等重要信息并绘制出图形。但与股票交易机器人相比,创建一个炒币机器人更具挑战性,因为币市的波动性大于传统金融市场,而且没有涨跌停限制,允许 24 小时交易,这就对我们如何设置交易规则并合理部署提出了一个难题。

PROJECT: HOW TO BUILD AN ADVANCED CRYPTOCURRENCY TRADING BOT IN NODE.JS

LiveEdu 上程序员小哥指导如何开发高级炒币机器人

 

听到这儿,您可能会觉得:我勒个去,既然炒币机器人这么高大上,是不是只有专业的金融科技公司才能开发呢?但答案显然不是。在 LiveEdu 上有一个很火的视频教程 — 如何用 Node.js 开发一个高级炒币机器人。当然,在观看教程前,你需要对 Javascript 和 Node.js 等技术有一些最基本的了解。教授这个的项目的主播 Elliotminns 除了在软件开发方面具有丰富经验之外,对于区块链技术也研究颇深,此外他还十分具有亲和力,喜欢与观众进行互动。所以,不妨试试吧!

 

Solidity 智能合约

 

智能合约(Smart Contract)是一种旨在以信息化方式传播、验证或执行合同的计算机协议,允许在没有第三方的情况下进行可信交易,这些交易可追踪且不可逆。该概念早在 1994 年就由 Nick Szabo 提出来了,但直到以太坊(Ethereum)的诞生,才让这项技术部署到区块链上,从而真正实现落地。

smartcontracts

基于区块链的智能合约与传统的书面合同相比,拥有几大好处:

1、合约内容记录在链上,得到多个节点公认,篡改、删除内容几乎不可能;

2、由于采用了计算机代码,一旦现实中的情况触发了合约里的某个条件,那么相关条款将自动执行,从而避免了传统书面合同执行难的问题;

3、传统的书面合同容易因条款文字有歧义而产生争执,使用代码的智能合约可以消除文字上的歧义,双方在签订时心中有数。

 

作为以太坊技术开发的底层语言,Solidity 最近一段时间成为了编程界炙手可热的新宠。它是一种静态类型编程语言,用于开发在 EVM 上运行的智能合约。借助 Solidity,开发者能够编写应用,实现智能合约中自我执行的业务逻辑,从而留下不可篡改和权威的交易记录。对于那些熟练掌握编程技能的人来说,用 Solidity 这样的专用语言编写智能合约并不是一件难事。

 

现阶段关于 Solidity 智能合约开发的中文资料较少,如果您对自己的英文有信心,笔者推荐您直接阅读原版开发文档;如果您的英文还不够好,没关系,目前该开发文档的中文版正在翻译中,请耐心等待哟。

 

Hyperledger 超级账本

hyper

超级账本(Hyperledger)是 Linux 基金会于2015年发起的推进区块链数字技术和交易验证的开源项目,加入成员包括:荷兰银行(ABN AMRO)、埃森哲(Accenture)等十几个不同利益体,目标是让成员共同合作,共建开放平台,满足来自多个不同行业的各种用户场景,并简化业务流程。由于点对点网络的特性,分布式账本技术是完全共享、透明和去中心化的,故非常适合用于金融行业,也适用于制造、银行、保险、物联网等行业。

 

由于该项目的开源特性,我们可以利用它的源代码来开发属于自己的区块链。此外,我们还可以在 Github 上查看热心网友为其提交的代码,从中加深自己对区块链技术的理解。一个多月前,Hyperledger Fabric 发布了 1.1 版本,其中有一些有意思的新特性,感兴趣的朋友可以了解一下。

 

总结

 

区块链开发是今后几年 IT 行业的重头戏,为了做好拿高薪的准备,我们必须认真武装自己。如果大家能够将笔者推荐的这几个项目认真码一遍,想必会在职场上颇具竞争力。另外,我们也欢迎对于区块链开发有一定经验的人将自己的项目通过直播的方式分享给大家,共同交流、学习、进步。

 

-->
Read previous post:
remote1
想从事远程工作吗?您应该掌握这六大技能

2018 年,远程工作正越来越成为行业的宠儿。随着人才需求的水涨船高,许多公司都开始考虑远程招聘。LiveEdu 的大部分工作人员都是远程工作者,因为这符合企业文化;我们的目标是吸引更多的观众,并提供一个帮助任何人提高技能和职业竞争力的平台。多元化的员工构成可以更好地应对不同地区的受众,并帮助他们成功兑现潜力。 许多人都认为,“远程工作” 即可以按照自己的规则来工作并享受尽可能多的闲暇。但这种想法是错误的,实际上远程工作比传统工作更具挑战性,并且需要更多的自制力和技能。你确实会获得更多的空闲时间,但这并非天堂。不过,远程工作还是有很多好处的,我们稍后会谈到。 远程工作可并不好找。公司在招聘远程工作者时会考虑多种因素。此外,由于职位性质或企业文化可能会与远程工作相抵触,并非所有的职位都可以进行远程作业。 尽管如此,美国员工远程工作的比例接近 40%。远程工作在普通工作人员中也很受欢迎。如果他们可以选择短期远程办公(注意短期远程办公与远程工作不同),他们会很乐意接受这一提议。其缺点是:许多刚刚接触短期远程办公或远程工作的人可能不喜欢这种转变,也许马上就改回原来的工作方式了。 如前所述,远程工作很难找,因此您不应该因为求职的漫长过程而失去信心。公司在筛选人才上很严格,只有少数人才有机会远程工作。但是,这并不意味着您无法找到一份远程工作。如果您想实现梦想的话,请关注我们将在下面谈及的六大技能。顺便一提:在 LiveEdu ,我们擅长帮助人们提高他们在编程、游戏开发、数据科学、设计、AR/VR 和人工智能等方面的技能。 他们可以在网络上创建个人口碑,从而在职业发展中获得优势。 话不多说,让我们切入正题,谈谈哪些技能有助于您找到一份远程工作。 熟练使用沟通和协作工具 远程工作需要对技术和相关工具有很好的理解。远程工作时,您需要使用工具进行沟通、跟进任务并密切留意公司的其他重要活动。然而,不必深入理解技术 - 拥有最基本的理解,并对学习新事物持开放心态可以让您走得很远。 诸如 Skype、Trello、Google...

Close