我是如何走上"码农"的

来源:互联网 发布:手机端电影网站源码 编辑:程序博客网 时间:2024/04/25 20:37

 大四生涯就要与我告别了,而面对毕业我却没有太大感触.我感觉从大二开始选择走上这条 “不归路” 以来,
我的生活的主题一直是不断的学习,编程. 好吧,确实有点苦逼. 至少对于现在的我来说,我还有好长的一段路要走.嗯嗯,,好好加油努力吧.

 最近工作也比较辛苦,由于也是刚刚开始接触工作,个方面都得需要努力,个人习惯得需要规范(在这里再次自我强调 规范编程过程 , 规范编程过程 ,
规范编程过程), 源码分析能力也急需要提高等等.不过能够顺利找到实习工作并且拿到offer,内心还是很高兴的.
而且我的第一份工作核心是系统搭建与源码分析跟优化.这么快就能接触到有深度的工作我还是挺幸运的,这对提高我的 coding 能力帮助是
显而易见的了.当然随之而来的挑战也是很明显的了. 从学习到工作,我又站在了一个新的起点之上.

 从编程学习的角度去看待我的大学生活,我是满怀感激与欣慰的.感激有那么几个人在我学习编程过程中给我提供帮助,和我一起分享coding的乐趣.
欣慰自己能够一直坚持,初心不变.实属不易(哈哈).

我是如何开始的

我是从物理学领域叛逃到这里来的,说起来有点惭愧.

 不过物理太难了,我的小智商实在对付不来,有些人觉得数据结构,编译原理什么的好难. 好吧,
你去看看 数学物理方法, 量子力学什么的感受一下吧.

 其实我选择编程也是有小小的契机在里面的.我当初刚上大学那会,其实也不知道自己想做什么.整日没有目的的奔走,
也报了不少社团: 文学,图书管理,还有电脑爱好者,去了几次就没有再去了(自己不想做的事情,借口总是来的那么及时).

 后来大一暑假发生了一件事情对我的刺激蛮大的(往事如烟,休要再提..).我后来仔细对自己反思了下:

我大四毕业后该何去何从 : 没有一个真正的目的以及技能握在手里, 是不是无论面对什么样的结果,自己都会接受,不管是自愿还是被迫?不过到那个时候我又能抱怨谁呢,因为我也不知道我能做什么,或者想做什么.

我感觉确实不应该这样下去了,盲目,空虚的日子也应该到此为止了.

我想为自己创建一个出路!!!

 我当时就选择了计算机,因为大一的C语言课程我还是比较喜欢的(虽然我那时候考试还得需要考前突击才勉强及格).毕竟做了10多年的纯理论,第一次看到编程这种将逻辑转为实现的时候对我的刺激蛮大的.

 我当时在暑假里就在网上搜了下
计算机的课程,然后打算重新学习 C语言,不过家里条件比较差,没有学习资源,书也没有带了来,所以就此作罢.

 不过也没有关系,回到学校后我便从网上找了C的视频教程,巧的是当时就碰到了郝斌 C语言视频教程.

 说到这里暂停下让我膜拜下郝斌 前辈,我不知道选择这个视频对我的影响到底有多大,
但是郝斌的教学确实是让我坚持下去的一个很大的原因,在这里有人感觉我在打广告:埋藏了这么久才发现,哟!哟!套路太深了吧! 对于由此疑问的我解释下 : 真心不是 !!! .

 我感觉郝斌讲课从头到尾透漏了一种责任,一种执着,一种激情.让人很容易受到感染.而且他一直再说他也是自学的,我感觉他要是能自学,我为什么就不能呢.
而且我才大二,比他还早,我占优呀!

 跟着郝斌的视频学习,我对编程有了重新的认识,看完视频后,我抱着书又在学习了一遍,一边学习一边研究算法问题,类似矩阵,幻方,骑士棋问题,八皇后,数独,扫雷等的问题,
感觉编程实在太有趣的.

 中间也有一个小插曲,学编程的都知道算法有个有名的汉诺塔问题,当时我按照惯例先自己办法来解决,想了好久没有头绪.当看到代码的时候顿时傻了眼,我去..只有那么6,7行代码,令我震惊的不是他有多么简洁,而是仅仅这
6,7行代码把我绕来绕去愣是没明白,直到了后来遇到了同样被这个问题卡住的某位,我佯装自己已经非常熟悉了,就要给别人讲,没想到,一边讲一遍卡住,最后我竟然终于领悟了它的真谛,
实在太不容易了.直到了后来,学过数据结构跟算法,遇到红黑树,Dijkstra算法等,也没有感觉这个有汉诺塔难度大.不过我对C还是挺习惯的.我感觉用C主要是与算法结合比较大.毕竟没有像java那么多工具类.
 
后来又开始学习C++,从网上找C++的视频没有收获,只能买了本 C++ primer plus 自己抱着啃,主要学习实在大二寒假里,抱着本 800 多页的书,一边看一边翻还有多少页.而且对于那时候的
我来说 C++ 比 C 复杂,一天最多看30页.不过最终利用利用在寒假结束前顺利终结,再看那本书原先书已经到处充斥这我的笔记,早已经面目全非,电脑里也存了大量的代码笔记,
当时我的心情必然是激动的.

我走过的弯路

我感觉自学编程对我来说最难的是确定学习路线.我学完 C++ 后不知道自己该看什么了,找了好多资料,也没有找到一个能针对我这个情况详细列明路线的,
当时我也没有认识计算机类的人,所以也是全凭摸索,给自己列了个学习计划,现在我还能从我的贴吧中找到我的那个帖子
传送门.

偶然间看到了个传智博客的C++的学习视频.
他是最终做游戏方向的,当时我感觉做游戏挺好的.我比较喜欢游戏.但是等学完各个阶段最终到游戏的时候我却卡住了,
做游戏开发需要搭建 cocos2d-x 引擎.
我却怎么也搭建不起来…自己搞了三天,还是失败了(让我哭一会).然后视频就此作罢,再次回到自己的计划上来.

当时买了四本书,就是计算机的基础那一套(计算机组成原理,操作系统,数据结构,计算机网络).当时看的时候才4月初,貌似10月之前就顺利收关了.但是对计算机组成原理比较抽象,
毕竟是没有实验机会…现在还是对这个硬件不怎么了解.

看完了这些后就买了一套 Win32MFC 的书,因为从网上查的这个可以做桌面程序.说实话我当时学C++就是抱着做桌面程序去的,没想到从头到尾只有黑窗口,好吧.
这是我的错.书来了就开始windows程序的学习.这也是我真正对自己的方向作出定位的关键点:win32是用c去做window程序开发的.过程比较繁琐,如果你需要做一个软件,里面有
大量的代码是为了做窗口,有时候过了好久还没有开始功能.我当时突然感觉linux的简单,做事情比较直接奔向主题.
因为我当初看传智的视频的时候学过基础的linux,当初对它的环境不大了解,
感觉这个系统好繁琐,基本很少用桌面,大量命令行.现在才慢慢体会到linux系统的美,充斥在里面的只有逻辑,功能.

所以直到现在,我对 linux 还是越来越喜欢.

直到现在,我的win32的书看了没有 50 页.

我的linux系统编程学习

linux 中其实也是分好多方向的,像驱动编程,内核编程,网络编程. 我感觉网络编程应用会多一点,所以就选的网络编程方向.

网络编程需要看的书籍大致是:

APUE   UNP 两卷    TCP/IP 协议三卷 

看这些之前我又抱了本 鸟哥的linux私房菜上卷,从头到尾仔细看了一遍.

然后开始看 APUE , linux 下的编程其实是用c/c++ 写的,
所以语言方向并不是很困难,但是它展示的是一个全新的领域: 多进程,多线程,管道通信,消息队列,信号量,socket等等.
我便看这些的时候又翻了翻 操作系统,数据结构跟私房菜,理解又深了点.

后来学到UNP.  专攻 socket , POSIX 跟 System V 标准的通信机制.又回头看了看 计算机网络.

再到后来看了 TCP/IP 卷一后,对网络编程有了一定的了解了,还自己写了个构架简单的网络文件管理服务器
传送门. 也算是对自己的学习做了个总结.

我的 Java 学习

等到看完这些后,都已经大三下学期的三月份了,我想马上就大四了,先投简历试试吧,就在网上投了学校周围的公司.

没想到还真有招,内心小激动呀!见了面聊了才知道对方公司是做java web的,都知道 java web现在应用公司特别多,相比之下 linux c/c++ 比较少,特别在小城市里.

这个面试虽然最终以失败告终,但是让我发现了自己的不足之处.我就试着先放下 tcp/ip 后两卷.
我想等后来如果接触这个方向在抽点时间看可以来得及.

就这样我就开始了 java 的旅程 !

先从网上找了个视频从头到尾学了一边,再买了本 Java 编程思想,直到被我翻得面目全非.

等到了大四,我们学校有招培训的,做大数据跟web方向.我当时就选了web.
因为我觉得自己学不知道深浅,终于可以见到同行了,哈哈.

但是后来由于某些原因培训告知我门web不招了,只招大数据.几番周折后,我就选了现在这个职业.

在培训期也是边听老师讲边看书,我总是感觉只有书里讲的是最详细的,事实确实是如此.培训阶段就主要学习了oracle,mysql,JavaEE 技术.

主流还是 hadoop 生态,这让我 对现在程序界也有了一个新的认知.

我的实习经历

培训过后,我就通过自己投递简历找了现在这家公司,我对实习感触是蛮大的.

在实习期间,我主要是做系统搭建与代码优化.偶尔处理下公司数据.
第一次将自己的学习用到实际场景中,与自己平日的练习差距还是蛮大的.

我慢慢了解到不同语言的特性已经在不同场景中的优势,然后又巩固了自己的 bash 处理能力, 开始学习 python .

而且我发现自己在编程中确实存在一些规范问题是急需要解决的. 比如使用 maven 工程来写 java , git 的规范, linux 操作规范等.现在我也是
一边工作一遍总结自己的规范. 传送门

从学习到工作,从一个起点到另一个起点.我确实还要走好久.

回顾我的大学生活

大学四年,也是有失有得,刚进大学时候的场景还历历在目.

幸运的是自己能够一直坚持到现在,学习的时候也有加好友,有些人也是打算学习编程,过段时间就放弃了. 还好我坚持到现在,终于可以看到自己的
出路了.

悲伤的是如大多数程序猿一样,至今单身,大一时候也有喜欢过同学中的某位.可能我天生就散发着程序猿的气息,确实不怎么会搭讪(好尴尬),对于这个一直阻塞了20多年的事件,
我只能说:一切随缘. 唉!唉!唉!

还有一个容易被忽略的问题: 我都去学编程了,那物理怎么办.对于这个问题,我很淡定的告诉各位:没错!挂过科.我对不起读者.我的物理很少有不挂课的…到现在还有两没过….
在这里期待毕业要顺利通过.

总结

大学就要结束了, 我的最大的感触就是幸好自己有了明确的目标.

也劝告下正在读大学,或者考大学的各位,一定要有一个目标.不然一到大四:考研,考公,考教师等等还有各种招聘中,
都会出现你的身影.

目标是用心选择的,未来是一辈子的事!不要辜负了自己.珍重.

0 0