这章节我主要讲述一下为什么作为一个文科生想要学习代码,又为什么打算从 Solidity 这门语言开始,如果不感兴趣的话可以直接跳过到后面。
我本科学的是新闻学,是我自己选的,而当时就是在计算机和新闻里二选一,选了后者。原因很简单,一是受到当时韩剧《匹诺曹》的影响,觉得新闻从业者&新闻媒体机构的工作很有社会意义,怀有新闻理想;二是从小理科就不太好,高中也是文科生,虽然一直对计算机很感兴趣,但还是被固有思维束缚,觉得自己学不好计算机,同时又害怕学数理化的东西。综合以上因素,最后选了新闻学。
上了大学以后,新闻学的学习内容愈发印证了那句“新闻无学”,本质上是“新闻杂学”,包括我一直以来秉承的也是王韬先生的“新闻工作者应是知识广博的通才”。所以除了学校上课的学习内容外,我“乱七八糟”的接触了一些关于网络安全方面的东西,那会再度唤醒了我对计算机的热忱。
再后来学习到传播学相关的内容,从香农的信息论到以麦克卢汉为代表的媒介技术学派的观点,让我意识到计算机科学和跨学科学习的重要性——知识的边界绝对不可能非常清晰,我所认知里的文科其实也是受到我原先所以为的理科的影响的,它们实际上都是混沌且杂糅的。
不过我并没有后悔学习新闻学,人文社科的学习加深了我的批判性思考的范围,这点我觉得也是大部分文科生转码的优势所在——会思考,而不是做一个只会写代码的“人”。
原先是要考传播学研究生的,但太菜了没考上。进入社会后发现文科类工作不好找,薪资低不说,在家乡城市机会也不多,做过电商、广告投放相关的工作,但尝试后发现都不太喜欢。于是我开始接纳真实的自己,去挖掘自己真正喜欢什么,而非纯粹为了赚钱去逼迫自己去做不喜欢的事。
同期,在我大三到工作期间,我都有在某个 DAO 里做事,那是我很喜欢 DAO 的那种模式,工作可以远程协作,不需要每天去公司上班,也不会有一些组织里的勾心斗角,不需要去迎合你的上司做你违心的事,而全凭你的能力,相对透明和公平。所以第一份工作我就去了杭州,找了一份 web3 相关的,是做创作者生态的项目,不过后来市场进入熊市,项目也没搞起来。正好机缘巧合下认识了当时国内第一期 HackerHouse 的组织者,在第一期的时候帮他们写了文案,合作很愉快。所以第二期有机会,我就从杭州辞职去了大理做了 HackerHouse 的志愿者。现在追溯起来,第二期 HackerHouse 的参与确实改变了我很多。
首先,21天 的活动周期,这意味着你可以近距离、直观地看到一个项目的诞生,尽管我并没有实际做项目,而作为一个观察者。这对我来说是从没有过的体验,和一群开发人员真正地在一起相处那么久,听他们聊一些他们现在在做的事,直观感受他们身上的一些特质,很简单也很纯粹。
没错,我就是被这种很简单且纯粹的属于开发者的气质吸引了。后来又认识了 G 老师,发现我们竟然在一个城市离得还不远,在线下还听了他的 ZKP 小灶课,发现我竟然可以听懂一些,我内心腹诽:我好像也不是不行?不过那时候我想的是我可以转前端,因为我有一些设计的基础,理论上来说应该比一些只会代码的前端更有优势。
再后来,兜兜转转已经是半年后了,我又辞职了,并且这会我已经坚定了我要转码的心。和 G 老师说之后,他给了我一本《精通以太坊》让我看,有啥不懂的就问,找 GPT 或者是找他。我可感动坏了,这不得好好学吗?
切回正题。《精通以太坊》这本书就是 Solidity 这门语言的创始者主编的,其中的一些智能合约代码也都是与此相关,书里面还有一些关于 Vyper 的,但Solidity 的普适性更强,并且也更容易学,G 老师说我看 Solidity 那部分就够够的了,。
还有就是我也问过一些别的 Web3 开发者,他们的回答里面当然也会有别的语言,但 Solidity 基本上都是公认的当下推荐指数比较高的,尽管也有开发吐槽用 Solidity 写出的合约漏洞较多,不过那也是后话了。
值得一提的是,我刚结束 Antalpha Labs 9 月在大理的 Sui Move HackerHouse 没几天,确实有被安利到 Move 这个语言,它的优势就在于会的人比较少,竞争不卷,且有一些 bootcamp 甚至发钱让你想学。不过问题就在于 Move 其实并没有那么好学,要写 Move 首先要装 Rust,而 Rust 目前为止很多开发学了几年也没学明白,以及它需要的开发环境容量很大,所以暂时先被劝退。还是老老实实先学 Solidity 吧,Move 可以在 Rust 之后,毕竟 Rust 学完甚至还能写 ZK 电路。