×

Loading...

【精华】IT 入门攻略 (8) 码感

本文发表在 rolia.net 枫下论坛俺在第一篇就说过,有码感的人,做码工容易入门,做起来也轻松。但是什么是码感呢?一个初学的人怎么知道自己有没有码感呢?

俺想用自己 n 年前在加拿大上学时第一次编程的经验来感性的解释一下码感。

俺在大学本科时就对计算机有兴趣,当时想转到计算机系,可惜学校不准。报研究生的时候,俺又想报计算机系,可惜当时没有一个学校的计算机系愿意接受本科不是计算机的人。但是因为俺不喜欢自己的专业,大学成绩也不好,所以俺还是下定决心自学计算机课程,通过计算机系的研究生考试,不过报的是管理系。当时国内管理系刚刚开始,本科毕业生少,所以报管理系的研究生,通过任何系的考试都可以。

有点出乎俺的意料,俺竟然通过了考试,而且成绩还不是太坏,因为俺被录取了。

俺说这些,不是人老了就喜欢吹牛,而是想交代一下俺的计算机背景,让大家对俺下面的例子有一个客观的认识。

虽然俺自学了计算机课程,但是俺除了本科写过 FORTRAN,对编程基本上是没有经验。来加拿大的时候,初生牛犊不怕虎,投简历申请码工的职位,号称自己有 excellent understanding of Object Oriented Programming principles,其实俺是后来上学以后才明白什么是 Object Oriented。当时俺对 objects 只有朴素的理解。

上学的时候俺喜欢在网上打桥牌。这个桥牌程序叫 ok bridge,是当时功能最强最流行的桥牌程序。打牌的人可以来自世界各地,任何人都可以围观,同一桌的人可以讨论,跟现在的 group chat 一样。打了几次,俺觉得有几个功能没有真是很不爽,所以有一次打牌碰到该程序的作者,记得他叫 Matt,俺就建议他加上这几个功能,没想到他竟然没有理俺。

当时俺的小心灵很是受伤。无奈自己不懂编程,这口气只好忍了。

后来牌打的越多,俺越是觉得这几个功能非有不可。有一天俺突然想,俺要把这几个功能自己加上。

这个桥牌程序是用 C++ 写的,操作系统是 UNIX。俺当时 UNIX 已经很熟了,C++ 没有玩过,不过可能看过一两本书。俺下载了这个程序,google 了在 UNIX 上编译 C++ 的方法,试了几下,没想到竟然通过了。当时俺是异常地激动,因为这就意味着俺可以对这个程序任意修改了。

那个桥牌程序很大,功能很多,比如它有牌室,一个牌室可以有好几桌牌,你可以开桌子,可以邀请人,可以把人踢出场。虽然程序很大很复杂,找到跟俺要的几个功能有关的代码并是很困难。虽然俺当时不懂编程,照骷髅画瓢,加上连蒙带猜,俺硬是把这几个功能实现了。

俺兴高采烈的把俺的新程序寄给了 Matt,没想到他还是没理俺。不过后来他自己把这些功能都加上去了,虽然跟俺的做法不太一样。

回到俺这篇文章的主题,什么是码感?这就是码感。如果你没有什么编程背景,能下载一个比较大型的 Java 程序,在 Eclipse 里捣鼓捣鼓,能编译,能运行,能加几个功能,如果你不觉得难,不觉得吃力,没有花太多时间,不需要别人手把手地教你,俺觉得你就是有码感。这个过程肯定有卡壳的时候,但是卡住了,你自己能解决,或者 google,或者问人。

当然码感也有差别,有些人码感很好,有些人码感一般。码感很好的,花的时间就少。码感一般的,花的时间就多一些。俺觉得,做码工也许码感一般就足够了。码感太差或者一点码感都没有,可能就会很累很痛苦。

虽然卫道士们不喜欢听,俺改这个桥牌程序,跟现在大部分码工大部分时候上班做的事情并没有什么两样。俺当年在毫无编程经验的时候就已经有能力做码工,俺相信所有码感好的人都有这个能力。更多精彩文章及讨论,请光临枫下论坛 rolia.net
Sign in and Reply
Modify
Report

Replies, comments and Discussions: