注:本文存在部分煽情语段,如果引起你的反感,实在是抱歉。

一,揭开计算机的面纱

我觉得我真正的开始接触计算机应该从大学算起。因为在大学以前,基本不会接触到电脑,生活的主旋律就是学习,考大学。尽管中途也发生了很多插曲,不过,最后还是以一个好学生的姿态结束了大学前的生活。和很多人一样,在填报志愿时,我也不知道我喜欢什么。如果非要说一个话,那当时应该是想报考管理方面的专业。可是,意愿没有那么强烈,最后还是结合自己的分数和学校专业的排名报了我现在的母校——西安电子科技大学。一直以来,我都觉得我的母校很好,特别是在电子信息方面,我一直很骄傲。而作为母校全国排名第一的专业——信息安全,毕业的我,更是觉得骄傲。好吧,不夸母校了,跑题了。
其实,学会夸别人,学会欣赏不就是一种积极的心态嘛。拍马屁就算了。
大一上学期放寒假时,我拥有了自己的第一台笔记本电脑,欣喜之情我想就不用我描述了。这里我不得不提提我的父母。其实我的家一直都不怎么富裕,但是当我说我的专业需要买电脑时,爸爸妈妈没有半句反对,就给我钱,让我买了。其实想想,从高中甚至更早,父母基本已经对我是接近100%的支持。每次想到自己的父母,和别人谈到自己的父母,我都觉得无比的骄傲。还是继续说电脑吧...其实说心里话,大一时电脑对我来说还不是必需品。而且,当时买的时候真的仅仅是因为喜欢,根本不知道该用它来做什么。不过当时还想着可以通过邮件和老师多联系什么的,不过现在看来真是天真,说到邮件,也只有上班后才觉得开始真正使用。还记得那段时间,各种在网上查,普及知识,网上有各种说法,还记得问同学JS是什么意思。不过,最后在明喆的陪伴下,出去买了一台联想刚出的Y450。现在再看,虽然是第一次买,不过眼光倒还是不错哈~因为当时系统预装的Windows7,而当时的我还不敢去捣鼓操作系统级别的东西,其实当时也不懂,以为所有的电脑都是Windows系统。自然而然的,Windows7也成为我第一个接触并非常了解的操作系统。不知道是不是自己天生就喜欢折腾,当时,乱七八糟的试用各种软件。比如说影子系统啊,还有可以使你本地的qq钻全亮的,以及如何破解一些收费软件(当时的破解当然是用现成的工具),我会大胆的去改动一些我根本无法预知后果的东西。一旦出了故障,就使用联想的一键还原功能。其实,到现在我都觉得当时的这些举动对我后来学习计算机方面的知识起了很大的作用,甚至是其他的事情。有许多东西,你不练不试永远不知道结果。而且,我觉得,对个计算机来说,只要不是严重的硬件故障,根本就不会产生什么重大的影响,最多就是重装系统,还原资料而已。

就这样,我算是揭开了计算机的面纱。

二,没有一见钟情,但也没有擦肩而过的她——C语言

再后来,我接触到了我人生中的第一门编程语言——C语言。不得不说,当时我学的很吃力,而且我对它没有什么兴趣。但是,到这门课完了以后,我却发现我开始对它有感觉了。于是,我又把当时的课本拿出来好好学习。其实,有很多东西,当你深入了解它以后,你才会发现它的魅力。再往后,我买了我第一本技术方面的经典数据《C Primer Plus》,并且在寒假的时候好好的看了一番。因为当时用的课本比较老,而这本书里面讲了很多C99的新特性,所以对比之下,让我更加喜欢C语言。所以,后来或多或少的总是在学习着C,没有将其落下。当时还不知道Linux,所以用的是C-Free5.0。说到这个编译器,我觉得我还是要大力推荐一下的。我觉得吧,在Windows下学习C或C++,Tubor C太古董了(虽然它是我第一个接触到的编译器),用VC又太大了。因为对初学者,程序不会特别长,如果你不想删除原来的代码的话,你就得不断新建工程,太麻烦。而且,名胜一时的VC6.0不支持新的语法标准,容易产生误导。而C-Free5.0就介于两者之间,简单好用,而且支持最新的语法标准,网上随便就可以找到其注册的邮箱和序列号。直到现在,在Windows下写小程序我都会使用它。

可以说,我和C的初见并没有产生什么火花,但是,后来却深深的喜欢上了它。直到现在工作了,它依旧是我使用最多的编程语言。
难道非要一见钟情的那个人才是你的归属吗?也许经得住时间考验的才是真正的归属。

三,又情陷C++,短暂偶遇小三——Java

C语言之后,我很快又接触到了第二门编程语言——C++。而且,一如既往,我很快陷入了对C++的热爱之中不能自拔。还记得当时告诉自己以后找工作就要找个C++编程的,并且在网上各种查。记得当时我们要求的课本是清华的一个叫钱什么的出的书,不过也没怎么看。因为我把心思全花在了我买的继《C Primer Plus》之后的第二本经典书籍《C++ Primer》。不过,记得看到后面的STL部分,就没有再深入研究,到现在也没有细看。怎么说呢,当时主要觉得C++对C做了很大的扩充,特别是它提供了更多的库(最喜欢其中的string和vector类了),使程序编写更加容易。而且也是在C++中第一次接触面向对象这个概念,什么类啊,多态啊,继承啊的都让我感受到这门语言的神奇和魅力。在学习C++的这段时间,基本上是忘却了家里的娇妻——C。

C++之后,又迎来了一个纯种的面向对象语言——Java。刚开始的时候,还是有点抵触的,再怎么说,当时和C++的热恋期还没结束呢。但是问题是,感情这个东西是可以靠时间培养的(当然对方也得还OK。Java这门语言自身素质还是很OK的),时间久了,感情这个东西便自然而然的有了。于是我便有迎来了短暂的小三——Java。我开始被它更加高级、优雅的语言所吸引。只是,当时时间太短,而且精力实在有限,无法同时好好的“照顾”三个XX。所以,在Java这门课结束之后,我便忍痛抛弃了它。只留给它一个还不错的成绩。

其实,除了Java,还选过C#这门课,只不过实在是没怎么看。就忽略掉了。

四,偶然的机会,遇到娇妻——Linux

说到Linux,总有一种冥冥的冲动。有喜欢,有崇拜,有亲切,还有许许多多我表达不清楚的感觉。写这篇文章的时候,有种回忆和女朋友(不过也已经成为前女友了)往事的赶脚,就觉得心里好像有一大堆的话想说,想写。虽然我很容易从过去走出来,但是我却是一个特别喜欢怀旧和回忆过去的人(不过我的记性总是让我拙计)。既然说到了我的Linux之路,现在作为一个IT技术人士,我也想回顾一下过去(可能是到年末了,总想回顾总结一些什么,而正好,今年我换了一个角色,换了一种环境)。毕竟,绝大多数回忆总是美好的。

话说情陷C++之时,从老师的最里面偶然听到Linux这个东西。当时,老师对它她表现出了明显的偏爱。让我这个好奇心满满的人不禁也要尝试一下。没想到,就是这偶然的机会,我竟遇到了娇妻——Linux。我只能说,
感情这种东西,有的时候还真的得靠缘分
就是这一试,我的魂就被娇妻勾走了。当时真的无法想象,我竟然可以那样自由的去捣鼓一个系统,甚至可以看到它的源代码,尽管看不懂,但至少看到了全是她——C的身影,这就够了,这也是我喜欢Linux的一个原因。还记得,每次看到终端里面那不断输出的密密麻麻的信息,就抑制不住内心的兴奋。总感觉小宇宙要爆发。刚开始的时候,因为对Linux操作不熟悉,所以一直用这双系统。但是,两三个月后,我毅然决然的将硬盘上的Windows系统格式化。不得不说,我后来也为此付出了代价。
这件事告诉我,做人不能过河拆桥。
特别是后来我学会玩Imba的时候,更加发现不该如此对待它。...另一方面,当时Linux的确不如现在支持的好。可以说,从接触Linux到现在,我一直使用的发行版是Ubuntu,第一个版本是Ubuntu10.10,现在使用的是Ubuntu12.04。虽然,期间还使用过Redhat、CentOS、Arch等,但都很短暂。我觉得如果还把Linux当做平时个人或办公使用的桌面系统的话,Ubuntu真的是最佳选择。而且,我发现我现在已经深深的喜欢上了Unity。记得使用Arch那段时间,特别不习惯Gnome3。当然,我没有说谁好谁不好,只是我个人的习惯和喜好问题。

从此,Linux便一直陪伴在我左右。

五,为C、C++、Linux找到了归宿——嵌入式

又不得不提C++。当时因为非常喜欢C++,所以觉得该为它找个出路。当时先是了解了VC++以及MFC,觉得很多东西不透明(虽然我也不会研究那么底层),让人不爽,而且怕以后深入研究后受限制。正好也听到老师说Linux的各种好,而且开放源代码,于是便想从这里找到C++的归宿。结果没想到...同样的,喜欢Linux,总得找一个应用方向,然后深入研究。后来,我了解到,Linux主要应用在两个方面——服务器市场和嵌入式市场。因为以后想做研发,不想做维护(其实,现在发现服务器市场也是非常讲究开创的,但还是更喜欢研发),于是就毫不犹豫的选择了嵌入式方向。这样也算给我喜欢的C、C++、Linux找到了一个归宿。因为这三者在嵌入式市场中应用非常之广泛。

但是,搞嵌入式的人都知道,嵌入式是软硬结合的东西。有了C、C++和Linux,我已经基本具备了软件的的素质。但是硬件却丝毫没有接触。

不过,至此,我与IT的初识就算完了。

华丽丽的分割线之后,开始我和电子的初识之路。


 

六,我与电子的初识

在决定自己以后要走嵌入式方向后,我便购买了我的第一块开发板mini2440,也接触到了第一个X86以外的处理器架构——ARM。只可惜自己以前在软件方面花费了太多的精力,导致自己没有认真的学习信号处理、模电、数电这些课。在学习硬件的时候遇到了很大的障碍。特别是自己以后想做嵌入式(Linux)系统工程师,所以也觉得似乎不必对硬件了解深入。就这样,硬件方面至今成为我的一个痛。唉,江湖就是这样,出来混,迟早是要还的。感情的债,一旦欠下,想还清就很难了。曾经对她的懈怠,让我现在要花更多的时间精力去学习。

特别是在工作以后,接触到的第一块开发板就是世界顶尖的高大上Xilinx Zynq7000 SoPC。FPGA的出现更是让我始料未及。虽然以前对FPGA有过短暂的接触,但从未有想过以后还会与她再见面。事情总是那么突然。
也许今天你们只是在茫茫人海中看了一眼,但或许日后的某一天,你们还会在哪里相遇,那时,是怎样的心情?欣喜?意外?还是多么痛的领悟?其实,很简单,只要你们彼此单身,而她还不错,那就没什么问题了。
SoPC是未来的潮流,而FPGA是SoPC的重要组成部分。想成为一个合格的嵌入式系统工程师,掌握(至少应该有一定程度的了解)FPGA可以说是一种必备的能力。而ARM作为SoPC的另一大组成部分,我就不多说了。不得不说,工作这半年多,我不能说自己在深度上学到了很多东西,但是从宽度上,我觉得我知道了、学到了特别多的东西(大杂烩,不分性别、类别、种族...):FPGA、SoPC、CortexA9(以前只知道ARM9、11)、C#、DirectX、OpenCV、Xilinx、ISE、PlanAhead、XPS、Vivado、Altera、Quartus、ModelSim......而且我又认识了一些和我一个世界的牛人以及另外一些个世界的人,。让我欣喜之余又倍感压力。我多少次感叹原来在学校时有时间去看书学习是多么幸福的一件事(当然当时为了考试还要看一些自己不感兴趣的东西的不爽之情例外,谁让工作后不用考试了呢),我开始后悔自己当初没有踏实的学习那些被我忽略的硬件相关的基础课。

但不管怎样,我还是步入了电子这个行业。注定了她至少要在很久的一段时间里面陪伴在我左右。而恰好我也喜欢她,那就一起愉快的玩耍吧。

没想到IT写了那么多,电子就惨淡的写了这么一点。不过,不是因为感情淡,而是键盘敲久了的确会有点累哈~~~(要学会心存善心,给人台阶下~)

这一年,对我来说也是挺有纪念意义的一年。毕竟,我离开了校园,踏上了社会。换了一种身份,换了一种环境。不同的身份与环境,也往往意味着权利与义务的改变,更多的也许是责任。而就学习方向到工作方向的接替来看,这一路走来,也算顺利。短短半年多时间,我深深的觉察到在学校的那些所谓技术在实际应用中,真的只能是模型模具。而但就技术方面来说,成长,随着毕业,才刚刚开始。

以前的相遇相识,都只是初识,只是一个开始!

写在小年之夜。