evol128[Blog]

I am the bone of my code

自言自语

 

 
最近在各方面都诸多不顺啦……百无聊赖,写篇博客消遣消遣。
 
Q:为什么你会想要做程序员?当初你是为什么学这个专业的?
A:嘛,其实最初的动机也是挺单纯的啦,熟悉我的人都知道我是个重度游戏宅,中学时候觉得做了程序员就可以创造出各种各样好玩的游戏来,于是乎,就报名参加了学校的编程兴趣小组,一边学编程,还可以借机用电脑玩游戏,一举两得。后来发现做游戏好麻烦..就放弃了,不过却因此喜欢上了编程呢。非要说的话,我很享受用程序创造万物的那种感觉吧~
 
Q:你觉得成为一个优秀的程序员需要具备哪些素质?
A:Larry Wall总结的很好:懒惰,急躁,傲慢。具体说来,一个优秀的程序员因该倾向于用程序而不是人力来解决问题;迫切地想要解决问题并且能够享受解决问题那一刹那的快感;最重要的一点,相信自己是最好的。
P.S. db同学和Larry在同一家公司工作呢,想要签名的赶快联系他啊^_^
 
Q:如何才能成为一个优秀的程序员?
A:这个问题很难回答呢,因为我不知道自己是否够得上“优秀”这个词。就我看来,一个人的思维模式对其能力的影响很大。我觉得一个逻辑清晰的人在解决问题时应该要做到下面几步:
1. 怀疑:不要轻易相信从外界获取的信息,特别是“别人说的话” <-- 没有比这个更不靠谱的东西了。
2. 思考:对于每一个细小的问题,都要去思考其可能性。
3. 假设: 对于一个事物的起因,经过,结果,提出一些合理的假设。
4. 验证:不管证明还是证伪,你都得去验证你的假设,否则毫无意义。
5. 如果1-4不能解决问题,回去睡一觉,然后goto step 1,从头开始重来一遍。
6. 看到这里,如果你开始怀疑我的方法是否正确,恭喜你已经踏入了第一步。
 
Q:能对当前的各种主流平台技术做个评价么?
A:我就评价一下language吧
        C:气质型美女,最能打动我心的那种风格吧
        C++:才华横溢,只是太难相处了
        Java:清新的小可爱,也是我喜欢的类型啦
        Perl/Python/Php:感觉像3个小loli呢,各有千秋,好难取舍啊……
        Ruby:据说比上面三个都可爱,可惜我没见过……
        C#:美丽性感,可是缺乏内涵,这样的美女一点都不能打动我的心呢
        LISP:我不太方便评价火星人……
        Javascript:谁把猩猩给混进来了……
 
Q:你的对于未来的期许是什么?
A:说实话,对于未来会怎么样,我完全没有概念——只要能让我继续写程序就好了,哪怕是做最浅薄最蹩脚的程序员。
 
Q:换个问法,现在你的梦想是什么?
A:很遗憾我对成为海贼王火影忍者通灵王赏金王什么的没有太大兴趣,喂马,劈柴,周游世界——能够得到平凡的幸福的话,我就很满足了。
 
Q:你的想法似乎有点天真?
A:比起那些捐钱给aiww,投票给好庄严,认为转发几条微博就可以改变社会的家伙们来说,我觉得我很现实了。
 
Q:你的文笔似乎有待提高呢?
A:因为没有妹子来帮我修改润色。
 
Q:最后有什么想说的吗?
A:给我一台电脑,我可以创造世界。

 

[真相]对不起,我们的专业不是万能的

本文写于2011-01-31

外人通常会对学计算机的人产生种种误解,在这里我给大家澄清一下:

1.你们能修电脑么?

对于广大使用windows的同学,我很遗憾的告诉你们,windows不是我写的,它也没有公开源代码,能让我知道它工作原理的途径很有限,我真的没有办法修。这就好比你在路上捡了一个阿拉丁神灯,在实现你1个愿望后突然坏了,你希望一个机械工程师能修好它,这可能么(我打赌就算是寓言家也不会修)?非要让我修,我也只能做3件事:杀毒google重装。要说计算机专业的比非专业的有什么优势,那就是google用的比较顺手把。

使用linux和mac的同学,有问题请自己解决。这是追寻自由的代价,同时也是你的义务,你的责任,当然你也可以把它看作是一种荣耀。

至于硬件问题么,请出门左转寻求电子系同学的帮助(大概电子系的同学也需要发篇这样的文章来澄清一下专业背景)

 

 2.qq号被盗了能帮我拿回来么?

我不会说绝对不能,但这样做很难很难。大概就跟在公交车上被偷了钱包然后希望警察能抓住小偷一样难。所以,qq号被盗,请第一时间去腾讯官网寻求帮助,之后请自我反省为什么会被盗。

 

 3.被问:嘿那你能当黑客么? 然后摇头说不能。 对方的眼神唰的一下就变成了鄙视。

其实我略懂一二……计算机专业也细分了很多方向,如果对方不懂安全知识(这里我不用“黑客”这个词,因为在程序员当中它的意义是神圣的),说明他只是个应用程序员,而不是系统级的程序员。

 

 4.XXX软件你用过没? 答曰没用过。 对方吃惊:学计算机的你没用过XXX?
 恩,没有用过,我都用自己写的XXXX  <- just kidding. 学计算机的并不需要去使用那些乱七八槽的软件,一个文本编辑器就够了。即使要用,我们也倾向于使用开源软件而不是商业性质的非开源软件。

 

5. 帮忙挑一台电脑行么?

跟大家(特别是mm)普及一下科普知识:电脑和衣服鞋子化妆品是不同的,是不同的一台电脑的性能好坏,数据说明了一切,没有什么感觉不感觉的。看不懂那些乱七八槽的参数不要紧,数字越大的就是越好的。如果还是弄不清楚,那越值钱的就是越好的。购买电脑的时候请先考虑自己能够承受多少价位的电脑,然后在这个价位里面选一个看着顺眼的就可以了。

顺便说一下,女生买电脑上网看电影用的,性能什么真的无所谓,只要是市面上还在卖的电脑做这些事情完全绰绰有余。男生买电脑打游戏用的,性能什么也无所谓,再高的配置也跑不动最新出的那些游戏,有买alienware的闲钱还不如去买台x360+tv。

另外,如果真的想知道多核的工作原理,ddr3和ddr2的区别,显卡为什么重要,rpm是什么意思,欢迎找我咨询——希望你面对一大堆专业术语不会觉得boring

程序猿与爱情

本文写于2011-02-10

今天看到人人上好多朋友都在转载这个状态

程序猿 : zt:if ( you.Love(Me)==1 || you.Love(Me)==0 ) { love = love; love++; love--; } //你爱,或者不爱我,爱就在那里,不增不减

我都是24岁的老人了,本来我是懒得发表自己的爱情观人生观的,但是既然扯到程序了那我就来凑一脚。从programmer的角度来看,除了字面上的意思外,这段程序还可以引申出很多含义

if "you" equals to NULL, the whole program will crash. 你也许根本不了解你的爱人,你爱的他/她仅存在于你的幻觉之中,一旦你发现了真相,你的爱情将轻易崩溃

It seems that love returns an integer, but how do you know it only returns 0 or 1? It might range from -2^31 to 2^31-1! 你觉得这世上只有爱与不爱,但世事远比你想的复杂

love  = love might be omiited while compiling. 你的豪言壮语海誓山盟,在别人眼中,或许什么都不是

love++; love--; If love is a global value, it will change in some situations, such as race condition . 不变的爱情是不存在的。你觉得不会变,仅仅是因为让你改变的事情没有发生罢了