25 岁推倒重来

2015-08-03 02:05:16 +08:00
 wohenyingyu01
23个月之前,24岁的我第一次用python写下了hello world。而如今我竟然是一个安卓fullstack工程师,而且iOS也在接手中。这个安卓项目在百万行代码左右,1.5g源代码,c语言和java用ndk交叉编译,是个通讯软件,只有我一个人负责开发。iOS平台也一样。突然想写一篇攻略,教大家怎么在25岁后推倒重来。

在大学之前,我对计算机没有任何基础。上大学之后,还是没有。大学学的是会计与法律,唯一和计算机有关的课是教我们怎么使用office 2003写简历。我本科学了5年会计,3年国内,2年国外。本科毕业在我24岁的时候我成功成为了英国top 20的计算机postgraduate,开始实现小时候的梦想。我之所以不翻译为研究生,是因为它只有一年,扣去毕业设计和放假的时间,只有7个月。作为一个对计算机零基础的我,7个月能到什么程度,大家可想而知。这7个月一共6门课,我觉得真正有用的是三门,第一门基础,教一些类似intel 8086的构架,汇编语言,加法器电路,半导体原理,二进制转换等,让我明白计算机的底层是怎么运行起来的。我当时写了800行的汇编对一个数组进行排序,还不支持3位数,最后发现其他人只写了300行,因为老师还提供了一个库我不知道= =。第二门python入门,教会我什么是编程,以及一些算法,比如冒泡法,从一本百万字的书中找出使用频率最高的前10个单词等,十分有意思。但是我当时还没有编译这个概念,还不知道高级的语言是怎么在底层执行的。第三门是java,虽然只有se这个部分,但是让我明白了面向对象的概念,明白了和脚本语言的区别,明白了编译这个概念,从此一发不可收拾。但是我当时特别痴迷与写出一个界面来(以为那样才算是一个程序),除了学校教的awt,swing,我还去官网自学了javaFX。其他三科,一个软件工程,只讲一些项目管理和开发模型的,UML之类,我没什么兴趣(我连代码还不会写呢)。还有一个电子商务,教你怎么在kickstarter上集资,怎么写规划,怎么申请创业资金,怎么开公司,基本没啥用。最后一科特别神奇,感觉是讲人机交互体验的,也没有教代码,只是空讲理论,界面应该怎么设计,系统应该怎么设计,按钮应该放那个位置,统计图应该选哪种。

这6科学完我的计算机学习生涯就结束了。今年2月我研究生毕业的时候,不知道什么是html,没听过mysql,没接触过c语言。最欠缺的是网络web这块,我甚至不知道什么是端口。我以first class最高学分等级毕业,回国过了年就开始找工作了。英国top 20计算机研究生一等荣誉学位,事实证明金光闪闪的学历确实有用。

今年4月的时候我开始了国内第一份实习工作,java安卓开发,百万级代码,我一个人。c语言的部分就几十万行,别说我没学过c语言,就算是安卓我也没接触过。没人带我怎么办?我先花了一周过了一遍c语言,到指针那块。然后翻墙从谷歌安卓官网的how to get started开始看起。当时我根本不知道我第一天学的东西在国内叫“安卓四大组件”。又过了2周的时候我基本可以开始开发了。但是当时公司有一个网管系统急需后端,又临时叫我去了,又是我一个人。这个项目其实算是外包的,但是由于配合这个系统的云平台在不断地改协议,所以需要一个人能够维护网管系统同步更新。这个网管系统是基于SNMP协议的,基于eclipse rap开发,osgi框架支持组件热插拔,代码1g左右。这是我第一次用eclipse(学校都是netbeans)。最搞笑的是,这个项目代码不对我们开放,在eclipse里面以一种target platform的形式存在。如果需要修改则直接继承父类过来重写。外包公司写了一个demo给我,没有文档,没有注释,没有源代码,完全一抓瞎,很多方法都不知道是干嘛的,只能照着写。参数都叫param,变量都叫value。后来开发完需要打包部署到服务器,我在eclipse的help里面找到的打包war包的流程,然后通过谷歌我第一次知道tomcat可以用来部署(顺带了解阿帕奇),第一次知道端口的含义,第一次见到了公司服务器,学会了许多Linux命令,第一次知道ssh可以远程,第一次用mysql数据库来存放网管的数据,第一次学了jdbc,第一次知道java的单例模式,没有任何人教我。这两个月有了我太多的第一次,每天都能发现新大陆。

现在我又回到了移动端项目,开始按照产品经理的设计文档开发。之前刚看完安卓的content provider,现在打算看animation这块。iOS也等着我开发,可是我还不会用swift写hello world。比起之前会计的枯燥无味,每天都能过的很有激情,也是在追随小时候的梦想。发出来希望和每一个想推倒重来的人共勉,只要你想学计算机,多晚都不迟。
6024 次点击
所在节点    随想
159 条回复
cnnblike
2015-08-03 12:51:07 +08:00
呵呵,这就算fullstack?
leassy
2015-08-03 13:44:40 +08:00
看标题我以为楼主要把25岁妹子推倒~~~
brucefeng
2015-08-03 13:51:55 +08:00
25岁,好年轻
a591826944
2015-08-03 13:58:08 +08:00
@scys 现在的人说的安卓全栈。。其实就是个写界面的。。
Ansen
2015-08-03 14:35:28 +08:00
跟楼主一比,我无地自容了
amon
2015-08-03 14:41:20 +08:00
只有我一个人看着楼主的帖子感到深深的不适和悲哀吗?
不断的重复强调代码多么多么庞大,开发环境有多么多么糟糕,事情有多么多么乱,so,你到底想表达什么?
scys
2015-08-03 14:53:24 +08:00
@a591826944 见到V2上不少招聘,都说有个全栈的老大带,总感觉这样不靠谱
sunjiayao
2015-08-03 15:00:25 +08:00
看样子是时候发一篇高一学渣学java的帖子了
zongwan
2015-08-03 15:00:32 +08:00
25岁学会了模仿
编程难 但抄代码 换皮挺简单的
都是前辈走过的路,谷歌百度下 就有解决方案了 抄抄抄

不是研究生,没拿过英国什么的 TOP20,
只要有机会去模仿/抄袭别人成果,多少岁都能重来

Hello world!

Hello v2ex!
wanglie
2015-08-03 15:12:43 +08:00
这么水的研究生项目,随便一个本科学位都能申的。回答了上面的朋友了。
zxy
2015-08-03 15:15:47 +08:00
LZ积极向上的学习精神值得肯定的,態度很好!
jsyangwenjie
2015-08-03 15:27:52 +08:00
英国的top20.。还闪亮亮。。。
原谅我笑了。。
wohenyingyu01
2015-08-03 15:41:16 +08:00
@jsyangwenjie 也就清华北大排名高点
wohenyingyu01
2015-08-03 15:45:40 +08:00
@wanglie
@a591826944
@scys
@liuhk388
@zmj1316
@lsmgeb89
@woojuno
@cnnblike
@i8s301a
@tracyone
@learnshare

fullstack这个词我用错了,不是想表示多牛逼,只是想说我入门了。。。其他解释可见append内容
allan888
2015-08-03 15:47:57 +08:00
英国top20甩清华真的要笑了。。。
国外本科后直接博士的话,那那么多人去上的master是啥?
从觉得国外没有master和老师提供个库你都不知道来看,你这英语也捉急才对。
说到这里我突然觉得楼主挺萌的,大家快别欺负楼主了。
townboy
2015-08-03 15:59:37 +08:00
1.5GByte 源代码。楼主真的确定嘛。原谅我笑了
cnnblike
2015-08-03 16:07:21 +08:00
国外没有像中国一样的研究生,本科完都是直接博士的?
服了。呵呵
cnnblike
2015-08-03 16:09:04 +08:00
master和phd都分不清楚,上过的课连国内本科一学期的都比不上。你这研究生读的他么成教吧
rayshen
2015-08-03 16:16:04 +08:00
1.5G源代码。。。。1.4G的本地AV再加个播放器源码吗
scys
2015-08-03 16:20:28 +08:00
@wohenyingyu01 还是比我厉害~嗯嗯

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/210329

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX