已经度过了大学第一个学期。第一篇博客想讲讲网站建立之前的故事。

我自认为算是同龄人中相对较早接触计算机技术的人了。很早就对折腾计算机有某种特别的热爱。记得初中自己在破笔记本上折腾linux,在实体机上安装了自己第一个linux发行版Linux Mint。不久被Arch的包管理器吸引,又尝试装Arch,因为笔记本网卡驱动问题,Archiso连不上网,没有成功。于是先装上了Manjaro,又换核成Arch。

初中时,出于什么目的才去接触linux,我已经记不得了。也许是因为想让破笔记本多活几年,也可能只是觉得这样很酷很极客。

自己也尝试过自学编程,因为想试试写MC模组。但在江苏的中学,很难有时间让自己系统地学写代码,自己乱摸索到最后也只是能记住语法。但对于各种现实开发中要用到的工具,软件工程的思维,怎样的代码才是好的,一概不知。

高考结束。在南邮,南信工,南工程的电气工程之间选择了杭电。或许后面会想聊聊我的高考。

高三时,我的一位好友司沐和我说,我更适合上大学而不是高中。

学习这个词,在中学高压的环境下,在我周围人的眼中,似乎对应着无穷无尽的刷题,语数英物化生。学习,只是为了应试,只是为了更高的分数。一切与应试无关的,那不叫学习,那叫不务正业。但我其实一直很清楚,我是热爱学习的。在我的理解里,学习这个词,必须和“为了应试而做出的练习”这个概念分离开。

而我对大学学习的理解,是这四年中,我能有充分的机会,去学习自己所真正想要学习的知识,能真正落以实践的知识。

高考后的暑假,通过CS自学指南, 认识到CS61A这门课。这门课算是学完了一大半吧。刷完了视频,但还是有一些Homework和一个Project没做。但这算是我第一次系统的去学习计算机知识。同时因为在杭电贴吧群被人注意到准大一就已经在用Arch被拉到计科协。通过科协的朋友们接触到了不少的学习和实践的机会。关于科协,以后再聊吧。

早就对黑客技术感兴趣(菜鸡也有当大黑客的梦),又去玩了玩Vidar-Team的Hgame-mini,后来过了Web提前批面试进了预备役。

然而在这之后,我在CTF这方面就有点摆了。这样一道道题目的形式也许可能引起PTSD了。我害怕再落入为了比赛而刷CTF题,刷了题又只是为了比赛拿分的循环,像高考刷题一样的循环。

做那些hgame-mini题目的时候,我就已经有一种迷茫感。我刚上手编程没多久,我甚至看到稍微长一点的代码都会有点怕,我连一个网站的后端的开发流程,项目结构都不理解,从未自己上手写过什么项目。要做出那些级别的CTF题目,我只需要看懂一点点的代码就够了。但是现实中呢?我想,实际开发的过程中,这种给新生的题目中的漏洞,可能很轻松就可以避免。我会好奇,真正的渗透测试是什么样的,这些基本的东西会怎样出现在实际环境,会用到什么自动化工具,那些前辈们又是怎么从看起来很庞大的某个网站或是什么软件中,在我这样一个小白眼里,大海捞针一样找到漏洞的。

对于一个以比赛为主要活动的社团,可能这样是维持社团活跃的最好方案了,也就是老带新的去打比赛写题解。毕竟新生们冲着黑客技术,冲着CTF来的,总不能说,让Web新生先去学习个一个月后端开发之类的。那不现实。这对于一个社团而言可能是没法避免的。

我并不是对于黑客技术失去了兴趣,也不是说通过CTF这样比赛的形式学习就是不对。只是对我自己而言,我有一点自己的节奏。也许我可能会想学习一年开发,大二时再重拾CTF。

后面接触了字节青训营,尝试用hertz框架去合作写一个电商项目的后端,这里必须特别感谢爱飞的鸟。我第一次体验到实际去从零开始构建一个项目的流程,第一次不再为复杂的项目结构和动辄几百上千行的代码感到害怕,第一次接触到比较先进的后端开发技术。虽然没能真的在一个月的时间内真的完成这个项目,但是实实在在的学到了不少。

紧接着就是期末。期末之后我建立了这个博客。