聊聊家园的技术栈(2) - 代码之外的能力

2017-05-14 kk 更多博文 » 博客 » GitHub »

原文链接 http://www.kkblog.me/notes/%E8%81%8A%E8%81%8A%E5%AE%B6%E5%9B%AD%E7%9A%84%E6%8A%80%E6%9C%AF%E6%A0%88-2
注:以下为加速网络访问所做的原文缓存,经过重新格式化,可能存在格式方面的问题,或偶有遗漏信息,请以原文为准。


技术人不能只埋头做技术。

两年前,我们做的还是 PC 端的网站。每年做一个XX周年活动,每年做一个XX届家园节,每年做一个XX届 校运会,每年做一个招新页面。为什么呢?因为是网站的传统,要沿袭下去,去年就是这样做的,前年也是 这样做的,所以今年也这样做。

那个时候,PC 端的流量已经很低,流量都到移动端去了,用户习惯了在手机上浏览信息,而我们还没有 任何移动端的东西。那时候 .NET 也是很落伍的东西了,非常庞大,臃肿,和快速发展的互联网格格不入。 我花了一年时间学习 .NET 那一套技术栈,到头来对自己几乎没任何价值。 @佛爷 做了两年 .NET,到 大三写了一年 Python,大四才专心做算法和 C++。

和我同一届的有 @张瑞 和 @田昕宗 , @张瑞 中间退了,去了学 Android, @田昕宗 主要做网络 安全,现在带团队创业去了。值得一提的还有个学长 @陈泽宇 ,他技术非常好,Linux 和 PHP 玩的溜, 大二时候退了,现在去了比特币公司。

时代在变,潮流在变,留下的脚印曲曲折折。看的越长远,走的弯路就越少。

在代码之外,很重要的一项能力就是”技术视野”,它决定了你能看的多远。

我刚学编程的时候,也是和大部分人一样,在百度,CSDN,博客园上面看,最后选了 Java。 学完基础语法,然后看《Thinking in Java》,看《Core Java》,看《设计模式》,我的视野还 仅限于 Java。等我把 Java 学的差不多了,想做点什么的时候,发现了 Android 和 JavaEE, JavaEE 是 Web 开发的一整套东西,我那时对它还完全没概念,所以选了 Android。

到了大学之后,开始学 HTML/CSS,才慢慢地有了 Web 开发的概念。但我的视野还很有限,基本是学长教 什么就学什么,用到什么就看什么,那段时间也学了很多东西,但如前面讲的,学的很大一部分知识到头来 对自己几乎没任何价值。再后来接触到 Python,Linux,开源社区,才是有比较大收获的时候。但我再次 陷入视野狭窄的困境,Web 开发用到什么就学什么,什么比较火就学什么,忽视了一些很基础的东西, 比如:算法,Linux 系统,计算机网络。这些东西决定了你的天花板,但我看的不够远,没看到它们。

提高自己,要先开阔眼界,抬头看路的人比埋头走路的人走的更远。想想自己三年后,五年后,十年后会去 做什么,是去大公司养老,是做管理层,还是去创业?想得远一些,就能少走弯路。

第二个能力,是“了解自己所处的环境”。

记得 @佛爷 在我大一时说过一句话,大意是:大一进来学技术,大二开始能做点项目,大三能力比较 好了,能独立做项目的时候,差不多又要离开了。

这是个很大的限制,这里的人决定了所做的事。这也导致我们积累下来的项目,技术上都比较浅,基础服务 很不完善,项目多而杂。

另一个限制是,学校总人数不到10万。我这么估算的:30个宿舍楼x10层x每层30个寝室x每个寝室4个人, 算出来是3.6万,加上医学院和青山湖校区,也不会超过10万。这也就意味着如果我们的产品只面向 本校的学生,用户量的天花板就是10万。

还有一个限制,和社团自身的定位有关,我们是学工处下的学生组织,做的产品也是面向本校学生的, 但我们没有盈利,服务器要靠学校经费养着。

我们做了很多产品,做的也并不完善,还有很多可做的东西。这里的环境决定了我们的试错成本很低,所以 有什么想法就尽管放手去做,有很多锻炼自己的机会。另一个是对自己的要求高一点,以提高自己为目的, 新技术不妨去试一试,BAT笔试面试会问的不妨多学一学。

想想环境(社团,自己的专业,学校,家庭等等)给你提供了什么?你能收获什么?你愿意付出什么?

第三个能力,是“能说会道”,你要和人打交道。

个人的力量是有限的,“独木不成林”。无论是做分享,做项目,还是问问题,都勇敢主动一点,多与人 交流。说到这里我也很惭愧,你们要多向 @子健 学习。