这个学期对于我来说,到这里才结束,因为我终于要和学校say goodbye了,回家去教训教训我那个不懂事的弟弟,享受家里的温馨与美食。of course , 这个学期的句号是下面这堆东东。
【参加电子设计大赛】
我是学计算机的,当然也要学一些基本的电子技术,才能更好地理解计算机工作原理。本来小时候就对那些电子产品感兴趣,拆过机器人和那个CRT,现在上了电子技术的课,就更加梦想能够像geek一样做出一个潘多拉盒子。也只有大学有这样的机会,高中根本就是不可能的。大一兴趣冲冲地组织培训讲座,也就买了单片机学习板。而且有一段时间还热衷于学习汇编语言。虽然学过高级语言C,理解起汇编来方便多了,但是由于种种原因未拿下。
正好这次有电子设计大赛这次机会,我还是拉起人马干一场吧,否则会留下很多遗憾。为了秉承计算机极客们疯狂的伟大精神,我决定将我们队命名为geek,刚好也和我们的专业名号“geek”同音。哈哈,得来全不费功夫。geek呢,就是要与众不同,我将与众不同定义为把常人做的事情做到极致。自此,我们三条友成为了geeker,由我担任组长。做什么呢?考虑到是第一次做,就挑一个最难的吧,最好能够获奖,好吧,那我们就做一个MP3播放器。我的天哪,这个干半年未必能干出来呢?换一个,难的做不出,就做一个简单又有挑战的吧——电子温度计。
说干就干,期末考试一结束,我就开始筹划了。今后的一个礼拜,我们就要焚膏继晷、废寝忘食地大干一场了。一切按照计划进行,我们用了一天来查找资料,用了一天搭建仿真电路,用了两天编程,用一天来写文档,到今天刚好一个礼拜。长舒一口气,终于干完了。其实并没有怎么熬夜,干IT这行的根本不需要那么拼命去熬夜,每天因为各种原因熬到深夜或者凌晨1、2点的都是不明智的,谁会傻到拿身体来做赌注呢?前段时间听闻某个IT人士英年早逝,想起来就觉得不值。熬夜的童鞋都是不知道怎样把时间安排得符合大自然规律的人,也就是天人交战。关于这次参加电子设计大赛,对下面几点我有深刻感想:
【结对编程】
在《程序员思维修炼》里边看到这个概念的,然后我想何不效仿一下呢?于是我就和另外一个组员一起编程。我们先讨论要实现怎样的功能,然后我来写代码,他在旁边看着。我碰到一个需要思考的时候就把问题说出来,这时候他也可以用他的思想参与到编码中来。这里应该这样这样,我觉得这个可以这样,于是我们的讨论就这样非常有默契地进行着。结果我们的编码进行的非常顺利,那些函数应该封装,那些逻辑应该怎样设置,整个思路都非常的清晰。更重要的一点是,这样编码出来的代码几乎不需要更改,即使是实现最新功能的代码,测试的时候也几乎没有漏洞。难怪别人说结对编程的效率会同样多的人分开编码的效率要高,看来这是真的。今后,我们做project或者实验的时候也可以两个或者三个人一起编程,这样的结对编程绝对非常有效。可能是因为每个人想的不一样,经过讨论之后找到了问题的本质,然后也就势如破竹了。久而久之,当自己一个人的时候,编码的思路也会变得非常地开阔,从而思路更加清晰,考虑问题更加周全,而且做过之后印象也更加深刻。
【困难总会有的】
任何学过电子技术或者单片机的同学都可能有能力完成这样一个电子高灵敏温度计。但是我们,再简单的东西都会有它困难的地方。有时候困难,往往是成功的征兆。当越过这个困难之后,发现一切都是这么简单,这是我们不禁感叹一声“原来如此”。碰到困难是时常有的事情,以前总以为做事情本来就是顺顺利利的,不会有什么困难。现在不同了,在求解问题的时候发现总会碰到我们之前没有碰到过的东西,而这个东西需要上下的推敲摸索才能解决。一开始,我们不知道要怎样解决一个函数出现时,另外一个函数就工作异常的问题,然后经过多次的观察,终于发现了去掉这个函数的时候居然能够运行了,发现是这个函数里面,使用到了中断的I/O口,而这个温度仪又是用计时器中断控制测温的。故而抓住了问题的本质,解决起来就容易多了。好几个困难解决了之后,我发现“原来如此”,片刻便恍然大悟了。有时候我们不能到达我们的目的地,可能是有困难阻拦了我们,但是我们经过一番探视,打通了任督二脉,回过头来看是自己没有想到。
【geek做的更好】
前面我说了我对geek的理解,就是把常人做的事情做到了极致,做到不寻常叫做geek。我们做一个东西,很容易就失去原有的热情,尤其是遭遇了一轮的困难之后,热情就蜕变为一种忍受的耐心了。用耐心来做事情,是因为觉得做的事情很不耐烦。geek需要的不是这样的一种心态,geek的热情永远保持到较高水平,所以做出来的东西也比一般人的要好。就算我们不熬夜,我们狂打机,但是我们一样可以做到很好。这需要一种追求完美的心态,我们要做的是一个漂亮东西,这个东西能够让我们学到很多东西,真的很不错。这么说来,我们再加把劲,把这个困难给克服了。就这样我们一次又一次在战胜困难中欢呼雀跃,当我们的温度计仿真时调低调高可以显示到LCD的时候,我们高兴坏了,当我们结对编程的时候我们情绪高昂,差点就要打一盘游戏庆祝一下 : P。生活中也是一样,你是否看到过这样的人,上课看起来超认真,记很多的笔记,平时还狂去图书馆,结果学习的效率却不怎么高。一个人认不认真不是由他看起来人不认真决定的,而是他精力是否集中,是否吸收或者学会了什么东西(入脑)。就算一个人上课看起来再怎么认真,他脑海里想的也可能是别的东西。而有的人看起来不认真,但是真正学的时候一定会集中精力,争取最高效率。所以geek做事,是充满热情,精力超级集中,效率特别高,希望这个精神在我们组员当中一直传承下去。至于没有体会过的童鞋,我说的也只不过是普普通通的几行文字,只有亲身体验过了,才知道“认真”二字的重要性。
不管怎么样,解决电子设计大赛这个过程学到的不仅仅是知识上的东西,而是更多的领悟,更多的智慧。
-----------------------the end------------------------------------------------------------------------------------------------------------------
by bibodeng 2012-01-13