今天把网站的程序更新到3.0.2，虽然每次更新我都感觉不到实质的变化，但貌似我有更新强迫症 :grin: 说点正事吧，现在日子波澜不惊了只能老三篇的念叨着那些反复的东西，比如天天都来来回回的工作，其实工作的日子过得真的很快，不知觉已经三周过去了，和同事也基本上都混了脸熟，要说的是其实媒体行业工作的人都比较容易融洽，整个社区部的同事平时工作氛围也是其乐融融。 工作还没多久，岗位却经历了一次调动，由于公司开始着力发展微博服务，所以也被调用到微博组，哈哈~现在我是名副其实的微博达人了！但工作也并不是一帆风顺，我们始终是做着开拓性的工作，为公司开辟新的服务，在现在这样微博已经竞争到白炽化的情形下，我们再做微博的难度可想而知，事实的效果也确实差强人意。这段时间也一直想着怎样才能让新项目顺利起航，一直都希望去做策划方面的工作，真正开始做了，才发现真的很难，特别是在这样一个市场饱和的情况下，差异化的思路尤为重要，总之努力吧，相信一定可以做好！明天下午下班以后要和同事去练歌，这次工作又赶上了年尾，公司的大型年会晚会要我们工作人员出一首合唱，由于公司男员工实在是稀少，所以几乎每个男同事都被逼上梁山了 :lol:这文章为什么结不了尾了？越说越多，不早了，还要写下周工作计划，再韶点就速度收笔！今天偶尔间又看到有人把自己的域名挂到国外IDC上去了，不禁又有点冲动把自己的域名也迁到国外去，国内的环境真让人不放心，但是国内黑心的IDC居然还要收手续费50元，算了，暂时先不迁，过阵子再说吧。其实有时候我甚至想索性把自己所有的资料都托管到国外的服务商，就算被和谐了也罢，这样反倒拥有了一个自己私密的空间，认识的人都看不到~嘿嘿，我就是这么矛盾，心里特别希望自己的网站是个自己的日记本，谁也不告诉，但有时候又希望别人适当的来关注自己~~这算个什么心态呢？ :???: 赶紧结束了吧，这篇日志实在太流水了，看着都不像我的风格了，速度写工作报告去，大家晚安~
没有食言，开始更新网站了，确实也总是想记录些什么，给生活留下点印记，只是现在的工作每天都要面对着电脑，不断地要去写点东西，所以下了班也就没有了写字的激情，甚至快没了打开电脑的勇气。额，理直气壮的谈论起工作，其实也不过刚满一个星期的工龄 :lol: ，很多人也能松口气，这孩子终于工作了，而且工作了一周居然还没有想辞职的想法。恩，哥其实还是很爱岗敬业的 :mrgreen: ，并不喜欢频繁的调动工作，其实工作和找女人是一样的，只有真的找对了，心或许才能真正的安静下来，虽然这才是开始，以后的路还要不断地耕种，不过相信一分耕耘一分收获吧，我会开始真正努力的工作，至少工作不会放弃努力的人。 说说这份工作吧，其实也是纠结了很久，我的专业是偏技术性的，但我却完全不想从事技术方向的工作，这点很多认识我的人表示无法理解，在面试的时候，公司极力推荐我从事研发专员，但我还是坚定地要当社区编辑，于是就这么干起了这份工作，说实话，一开始我并不是很看好这份工作，不过经过一周的工作，我不禁要承认我慢慢开始从心底接受这份工作，并不是因为薪水有多高，而是我发现，渐渐地，似乎我更靠近理想，别问我的理想是什么，不告诉你 :cool: 好吧，这儿就不扯了，努力工作最重要，加油咯~我发现自己真的是快过了“文学青年”的时代，日子也过得愈发的平淡，文思没枯竭生活倒先枯竭了，不过我坚信越平淡的生活才是真正的生活，只是不要因为平淡而平庸了就好，现在却是特别怀念大学的生活，喜欢那段澄澈激扬的时光，在我的脑海里有两段时光是洒满了金色光辉的，一个是童年，一个便是大学，现在才品鉴出，原来金色是成长的色彩，是蜕变的颜色，那么美，让人留恋，或许若干年后踌躇满志的再回想起这段时光会不会唏嘘不已，泪流满面呢？总以为毕业了，我会用一篇很长的文章来结束我的大学生活，但后来才发现，我什么都写不出，因为什么都想写，什么都不想结束，我贪婪的认为还可以沉浸在那段光辉里，即使工作了，甚至老去了，在心底总不愿意给这样美好的光阴一个结尾，相信在内心流淌的河流里，最清澈荡漾的永远是那捧闪耀着的金色光辉。PS:我在人人网已经停止日志更新好久好久好久了，但觉得这样有点对不住大学四年朝夕相伴的校内网，所以以后人人网的日志和网站同步更新~over ;-)
瑶说我这个礼拜一定会发篇日志了，我绝口否然，可是居然还是不争气的开始写了。其实写文章没什么原因没什么一定，只是我现在突然想写了，刚刚拉开窗帘，在倚着窗的床上小躺了会，暖暖的阳光就这么利落的洒满被窝，那样舒适，于是我果断有了写写东西的冲动...（额..这算什么理由）转眼看看距离上篇发表的时间已然三个月有余了，这里快长满野草了，昨天看了下后台的统计，现在的日访问量已经惨淡的降到了50IP以下了...好吧，我不坚定的决定从今天开始我要渐渐恢复博客的更新了。说些最近的变化和杂乱的事情吧，我很丢脸的从毕业后半年才终于决定真正的开始一次工作，以至于给很多人留下我不思进取的印象，我也不多辩解，事实如此，有时候心乱了生活也便乱了，只是祈望心不要累了，我有时候也自嘲二十年来才发现自己有颗无比强大的心，以至于看上去百毒不侵。按照流程，下周一应该正式报到上班了，虽然远处的路未卜，但到最后必定不要给自己遗憾就好。终于，混沌的日子可以告一段落了，街上无论何时总有人行色匆匆，也有人停下息憩，终究我还是混进了人群，虽然满地都是人影，但是不怕，阳光总在背后相伴。一个个站口路过，一点点坎坷长大，顶着妈妈最喜欢看到的小平头即使一步三蹦，即便被绊倒，揉揉膝盖，站起来，还是要开心的笑，因为从来都是这样，即便没有理由也要走向成长，影子拉长了，阳光依旧灿烂如斯，梦想和幸福从未走远，只是在不远处相随，弯下身，把路上漂亮的小碎石一个个捡起，回头望望，天那么蓝，云那么高，从不喜欢眯起眼遮挡阳光，生命本该灿烂。
我想无论怎么偷懒这篇日志是必须要写的，为什么？因为我行将离开南通，因为我有太多想说。其实我不太愿意提这次回来又让脖子挨了一刀这件事，实在是太衰的事情，我很不能理解为什么总是要在这件事上和我纠缠不清，半年都过去了居然还能螺丝滑了出来，唉~这到底是谁的人品问题啊？这次的意外给我不仅带来是身体的折磨，其实还有不少额外的变化，至少我人生的第一份靠谱的工作就因此惨淡的收场了，虽然从去年的12月15日开始到现在仅仅三个多月的工作，但却体会到很多东西。我想说，确实这几个月我成长的很快，这份工作也让我触及到一个曾经陌生的安防领域，这几个月一直忙着搞展览，接触客户，去各地出差做产品演示和提供技术支持，也算忙的像那么回事，我现在也深刻了解了为什么成长型企业更能磨练人，确实也要感谢能够让我一上手就能全方面的接触到市场和客户，这要比很多在其他公司实习的同学的经历要丰富不少。这几个月从农村到城市，从家庭住户到公安分局，我几乎接触到各个领域的客户，形形色色，也是件有趣的事情。因为我本来不应该属于大客户部，所以平时还得处理好部门之间关系，还有和部长同事的关系，这又是一件让人成长和充满挑战的事情，所以总结起来工作的这段时间真是获益匪浅，不过最后的结尾还是很遗憾的，也没能等到参加全省巡展，好了，差不多了，最后还是要感谢一个人，企划部的陈部长，谢谢你陈姐，即使到最后你都对我很关心，谢谢你的赏识和抬爱，没能最后和你一起把公司的外销做起来确实是很大的遗憾，也祝你工作顺利！最后顺便说一句：公司的老总确实蛮抠的! :lol:在家休养的这段时间其实很开心很幸福，因为大部分时间都有瑶瑶陪伴着，喜欢每天在家睁开眼就能看到你，闭上眼还能感觉到你。也喜欢拉你在南通到处乱转，哪怕没有目的，哪怕有时候甚至你比我还认识南通的路。特别喜欢和你一起在濠河上划船，那天晚上没有合适的电影实在是件幸运的事情，两个人在夜翡翠的濠河上荡漾感觉真好，我一直喜欢在濠河里划着船用这样的视角去鉴赏南通的夜景，那次一个小时的划船居然能绕着濠河游完整的半圈，从来没有划得这么完整过！现在闭上眼睛就能轻易的回溯到那个荡漾在濠河上的晚上，像一幅幸福的画照永远定格的美好。后天就要回南京了，现在剩下的工作就是把毕业设计搞定，唉，真的是很变态很无奈的课题，为什么就不能让我们自己选择呢，就算导师你帮我选好了也不用选个这么犀利的课题吧，网上半个字都搜索不到，这么折腾学生有意思吗？然后就是要把遗留下的一门科目结束掉，真讨厌，就剩下这个了！其实最重要的还是公务员考试，已经答应瑶了，要努力准备考试的，祝福我们都能考上吧。最后再应个主题，在离开南通以前也留下个给自己的祝福：祝自己离开以前那么RP混乱，随时都能拿来当韩剧本的倒霉日子，阿弥陀佛，不要再折腾了，哥吃不消的..
好喜欢阳光，特别是这样连续数天的阴霾突然拨开云雾阳光泼洒下来的感觉真好，其实气候真是反常的厉害，我甚至也都不再费脑筋去想这样的季节应该是怎样的天气，反正有这么大的太阳也就够了，不冷不热，不骄不躁。今天早上去医院把脖子上该死的线给拆了，是不是又意味着我终于可以告别同样该死的医院了呢？总之我想我是彻底的被医院给折腾累了，我不知道是不是大学这几年安安稳稳的日子都给大四一年给补回去了，就像我一度喜欢又鄙视的韩剧那样把一堆的倒霉事全砸到一个倒霉蛋身上。不过总归应该是过去了，以后小心的生活便是，只是貌似突然间我南京那份曾经觉得被压榨劳动力的工作似乎保不住了，回去还有一堆的论文要写，哎，造物主居然让一个需要好好休养的病人生活的那么惆怅。现在又回到了天天带着造型别致的颈托到处晃悠的日子，该死的平安又把瑶瑶抢回南京了，日子除了无聊还是无聊，生活除了思念还是思念，我曾经很鄙视保险行业，因为有那么多下三滥的业务员，现在我依旧鄙视，不就招个聘嘛，有必要折腾的颠来倒去来回面试吗？而且一点实质性的进展也没有！算了，讲了就来气！总觉得日子往复的运动着，就像每次享受这样的阳光，静谧而美好，沉浸其中可以慵懒到什么都不用想或者什么都懒懒的想，就像从来生活就该这样。虽然生活有够无聊，但是在暖暖的阳光下听者暖暖的歌想着她，却也过的有期盼有牵挂。就这样杂乱的记录一点最近的心情吧，我已然没有曾经那么强烈的码字欲了，但简单的生活还是要依旧继续，时不时的写上两笔，也算是给以后留个翻阅的念想，其实生活远没有文字那么平静，总有那么多料想不到的苦难，但是我相信阳光下的世界终究是趋向美好的，风渐渐会停的，就在不远处，那个阳光的角落里，我们都会安静的幸福。
还记得大二的时候就听学长说过，求职的大学生过着猪狗不如的生活。现在到了大四终于有了切身的体会。其实原本一直希望还是能回家工作，这样可以解决很多问题，比如住房，现在开始找工作以后觉得其实留在南京也不错，只要我和瑶都在南京能找到一份还可以的工作未尝不是个好结果。在求职的过程中觉得自己经历了很多，也成长了很多,人只有真正到了自己要找工作的时候才会真正明白工作对于自己是什么概念，才知道自己的喜恶，我也收到了不少公司的录用，但是之前却一直没有满意的，包括后来去实习的360教育在线，那份工作我一直实习到这个星期四，一共加起来三天，但那三天都快把我折磨得对人生失去信心，对于360我也不不多评价，那里的人都很友好和善，大家工作也很融洽，只是我很不喜欢那样的工作方式。不过总之还是幸运的，我终究还是看到了自己喜欢的公司和岗位，虽然当时的笔译和口译测试很囧，但是还是非常高兴能被录用，嘿嘿，伯乐啊。。。PS:陈企划的人很好，谢谢她的推荐和欣赏，老总的人也非常和善，感觉公司整个工作气氛很融洽。总之下周开始要好好努力了，好好工作，好好生活！
又是好久没更新日志了，时间是个能改变很多东西的神奇力量，一晃回南京将近两个月了，或许并没有觉得怎样，但恍然猛烈的回忆起来却发现自己还是被时间变了，这几个月从考研到放弃考研再到回南京找工作经历了好多事情，自己的发展轨迹也彻底的被拐了个弯，不过想想也不错，至少对未来比以前更清楚将来该怎样走了，以前还会担心和瑶能不能都考上，现在只是简单的想认真的工作，和瑶好好的在南京过我们的小日子。上周五去了博览中心的江苏本科招聘会，很心疼的让瑶为了临时入场券在寒风中排队站了一两个小时，凭生第一次去招聘会，还是那么巨型的招聘会，来了一千多家企业，像逛超市一样在三个展厅逛来逛去，投了十份左右的简历『话说觉得这场招聘会作秀的成分很大阿，说实话我对自己的面试表现还是很有信心的，而且现场的HR对我的印象都很好，结果投出去的简历绝大部分都没有下文……窘』，招聘会大概就是这样，没有想象中人多的那样恐怖，但也多的吓人。这里特别要说一下招聘会最开心的事情！不是我找到了工作，而是发现了一家非常有趣的店——酸菜的店，哈哈，看名字就很童话吧，当时出了招聘会，地铁的人太拥挤，我们就随便逛逛，结果猛然眼前一亮，发现路对面有家独立的小店，造型很别致，而且通体都用玻璃覆盖，阳光直接就懒懒的铺洒进去，走进小店，内饰非常的有特色，这是一家创意杂货小铺，卖的各种各样或很中国风或很韩潮的东东，这些东西心思巧妙的布置在店里仿佛不是俗事的产物，非常的童话，店还有第二隔层，通过漂亮的旋转木梯可以上去，店主说经常会有外国有人晚上过来开Party，真是个感觉很棒的小店阿，瑶也是看到这个店就走不动了，最后买了一对漂亮的耳环，话说东西确实卖的很贵阿！从招聘会到现在一共定下来四家公司，说实话很难取舍，现在已经不再犹豫了，准备去360教育在线了，希望这是一份不会让我失望的工作，我也会好好努力！日志也写的够长了，不过最后还是要补充一点，前一段时间瑶和我回家了几天，我们花了整整一天把狼山风景区逛了一遍，我这个土生土长的南通人还是第一次把家乡的景区玩的这么彻底，我们从狼山的前山上山，再下山，然后绕道后山再上山……还去了园博园，有点遗憾的是实在太大了，一个下午也只逛了一半，不过居然在园博园里看到了江最美最浪漫的风景，扑打礁石的江水，延伸江中的灯塔，手工搭建的江梯，江风渐远渐近的抚拭着，仿佛置身浪漫的韩剧，这种感觉真的很棒！流水账该结尾了，最后祝福，祝福未来，祝福我们，祝福家人，我们都要过的更幸福。
清华申请退学博士作品：完全用Linux工作
按: linux和windows不需要那么多的口水战，需要的是这样透彻的理解，看完后受益很多，特此转载, 这是一篇值得你从头读到尾的长篇文章.2005年9月22日，清华在读博士生王垠在水木社区BLOG上发表了《清华梦的粉碎--写给清华大学的退学申请》明确要求退学, 洋洋两万多字, 从不同角度居高临下的阐述了他眼中Linux完全优越于Windows的各种理由, 这篇文章并不简单的是一篇论述"Windows能做的事Linux都能做"这样的文章, 通篇洋溢着一个彻底批判 Windows 平台基础的计算机哲学, 计算机应用和计算机教育体系的人的万丈豪情, 尽管可能偏激, 也不乏详细的推理论述. 今天我们重温本文, 一方面也是因为CB上喜爱和推广Linux的人士很多, 有时也会爆发小规模论战, 我们希望能通过对本文的研究与讨论, 来窥测国内部分Linux推广者的心态, 同时为大家提供更宽广的讨论空间. 引起社会各界广泛争论. 他创作的长篇文章《完全用Linux工作》,我已经半年没有使用 Windows 的方式工作了。Linux 高效的完成了我所有的工作。GNU/Linux 不是每个人都想用的。如果你只需要处理一般的事务，打游戏，那么你不需要了解下面这些了。我不是一个狂热的自由软件份子，虽然我很喜欢自由软件。这篇文章也不是用来推行自由软件运动的，虽然我觉得自由软件运动是非常好的。这篇文章也不是用来比较 Linux 和 Windows 内核效率，文件系统，网络服务的。我现在是作为一个用户而不是一个开发者来说话的，我们的讨论是基于操作，应用层面的。是为了告诉大学里还不了解，或者不 理解 UNIX 的科学工作者和大学生，UNIX 比 Windows 更适合用于科学研究工作，请大家理解 UNIX 的工作方式，不要用 Windows 的标准来要求 Linux，而要用一个科学工作者的标准来要求自己，用UNIX 的思想来武装自己。我显然是反对在大学，特别是理工科专业推广 Windows 的。我也反对在对"娃娃"们的计算机启蒙教育中使用 Windows。因为 Windows 不论从技术上，经济上，思想风格上都是与我们培养高科技人才的目标格格不入的。Windows 的流行属于历史遗留问题，爷爷一级的人当然已经不可救药，但是我们不应该让下一代继续走上歧途。UNIX 不是计算机专家的专利当我建议一些非计算机专业的人用 Linux 的时候，很多人说："UNIX 是计算机系的人用的，我们不能理解。" "UNIX 是男孩用的，我们女孩不用。"但是其实世界上的大多数科学家和工程师几乎用的都是 UNIX 作为他们的电脑工具。就因为它简单，可靠，稳定，强大，有趣。甚至很多时候 UNIX 就是唯一的选择。你说："我们都会用 UNIX 的话，你们计算机专业的人还用来干什么？" 很容幸的告诉你，计算机专业的有一部分人就是专门为你们提供这样强大而方便的计算机工具的。如果他们制造的工具只有自己会用的话，那这个工具还有什么用？理解 GNU/Linux 不要用 Windows 的标准来要求 Linux。由于GNU/Linux这个词太长，下面如果没有特别指明，"Linux"就是指GNU/Linux"。在这个年代，恐怕没有人需要我来介绍 Linux 是什么了吧？如果你觉得"Linux 只不过是跟 DOS 差不多的东西"，那请问问你旁边的 Linux 用户，Linux 到底是什么？那为什么我还要写一篇这样的文章？因为，我发现还有很多人不不理解 Linux 和 UNIX，虽然他们也在用它，但是他们有时会问："为什么 Linux 不能像 Windows 那样 ……？"，"怎么Redhat Linux不能 mount NTFS 分区！"，"Linux 下用什么整理硬盘？"，"什么时候OpenOffice才能完全兼容Word文件啊？"，"现在还有什么Windows能干的事情Linux干不了的？ "……他们有40G的硬盘，却只为 Linux 分配了2G空间，有时还抱怨"这个东西怎么占这么多硬盘！" 似乎 Windows 该占用大部分硬盘。他们把重要的数据装在Windows的分区，似乎信不过Linux。他们总是到处寻找新奇的，好看的GUI程序，对命令行的东西一概不 屑一顾。他们对Drag&Drop，菜单配置，自动升级非常感兴趣。他们如果找到一个很像 Windows 程序的 Linux 程序，一定会很高兴的说："哈哈！Linux 也能……了！"如果Linux在某种测试中胜过Windows，他们会高兴得跳起来。他们没有办法用Linux 解决问题的时候，甚至用Wine来运行Windows程序。有时实在没办法，只好重起到Windows，或者干脆省得麻烦，在 Windows 下装一个 VMWare 虚拟一个 Linux 玩。你如果出现了上面的情况，说明你的思想受到了 Windows 的某种潜移默化的影响和误导。你没有能够从本质上理解存在于 Linux 身上的 UNIX 思想。你支持 Linux，你喜欢 Linux，你能从中感觉到快乐，这非常好。你现在只需要明白的是：Linux 从来就不是一个玩具，它是天才UNIX的后代。UNIX 是自晶体管发明以来最伟大的发明，它从诞生那一天开始就比 Windows 的设计出色。你要体会什么叫做"设计"，一个糟糕的设计并不是到后来缝缝补补就可以变好的，而一个出色的设计，不但可以以不变应万变，而且可以影响到后来者。一个出色的设计配上一个出色的实现，那就是非常出色的发明。Linux 就是这样的一个出色的发明。Linux 并不需要追赶 Windows，也不需要打垮微软。它的最终目标是改变整个计算机世界，还人们自由，给人们乐趣和方便。Unix 是简单的，你不需要成为一个天才也能理解这种简单。UNIX 的设计者 Dennis Ritchie 说："Unix is simple. It just takes a genius to understand its simplicity." 但是我不这么认为，因为我不是一个天才，但是我却勇敢的把 Windows 完全删除掉，遇到不明白的事情的时候努力用 UNIX 的方式去解决，而不是寻求 Windows 的帮助。现在我体会到了 UNIX 的思想和好处，我可以用比 Windows 高效几倍的效率工作。因为我相信这样的信念："Windows 能办到的事 Linux 一定能办到，而且办的更好。"这小节开头的话应该改成："Unix 是简单的，你不需要成为一个天才或是计算机专家。但是在这个冲斥着 Windows 错误观念的世界，你需要信念和勇气才能理解它的简单。" 我下面就告诉你一些我理解到的东西。首先，你要知道的是微软在国际科学领域是根本没有地位的。微软的地位微软的名声在欧洲和美国的大学里，特别是在计算机系里之坏，大家可能有所耳闻。我认识的 MIT，Stanford 的教授，贝尔实验室的专家，甚至一个欧洲小国的高中计算机老师都绝口不提微软的名字。在他们眼里，微软只是一个没有真技术，专靠在落后国家商业宣传和垄断 经营的小公司。这个"小"并不是说它人少，钱少，而是说它先进技术少。我上次和王益合作写了一个算法演示程序，那个算法是贝尔实验室一位科学家Steven Fortune很天才的发明，为了程序能够被身边大多数人使用，我们选择了 VC+MFC 作为平台。我在分析算法时还得到 Fortune 很热情的鼓励，寄给我一份资料，还多次回信耐心的给我讲解了很多细节。但是程序完成之后，我把样品发给 Fortune，他回信说："对不起。我机器上没有 MFC。" 话说的很客气，但是我已经感觉到了他对 Windows的不屑。然后我把 MFC 静态编译进程序再发给他，他就没有再回信了。他显然不是瞧不起我，而是确实有难处。你能感觉到这位科学家对微软和 Windows 是什么态度了吧？不是反感，而是他心里根本没有 Windows 这个东西 ！微软在高科技领域没有发展，那么它怎么生存呢？到发展中国家去发展一下，他们的人民还对电脑一无所知，我说不定甚至可以打入大学的计算机系呢。我送他们软件，我捐钱盖大楼，我出钱找图灵奖获得者来演讲，让他们觉得我们都是科学家！好了，现在全国的大学包括清华，几乎所有人机器必装盗版 Win2000，Office XP，学校的选课系统是非IE不能正确浏览，论文用 Word 编辑，演示用ppt做，email 的通知附件是 doc 文件，你不用 Word 打不开，连 863 项目都用 VC 写程序了。我很久以前就看到一份报纸说，"微软为什么不严厉打击盗版？" 这篇文章说，微软非但不打击中国的盗版行为，而且有放任之趋势。放长线吊大鱼，"以后我要你们加倍的来还我！" 确实如此，它的目的快实现了。Windows 笼罩下的中国计算机教育说句丢脸的话，比尔盖茨很久以前是我的偶像……在中国，比尔盖茨被很多人奉为神圣，"少年电脑天才"，甚至有的人提到他的名字就做出"抱拳对天"的姿势。很多人谈到微软的"新技术"，"高科技" 都是眉飞色舞。各种"VC编程圣经"，"深入了解 Visual C++"之类的书，在开头几页都会出现非常肉麻的字眼，"在那团团的混沌中，一个开天辟地的精灵，Windows 1.0，诞生了……"微软的软件被这么多人盗用，那么人们是怎样使用这些盗版程序的呢？先看看电脑培训班，教的都是一些 DOS 命令，打字，Windows 基本操作，Word 文档处理，PowerPoint，高级班可能有 Excel，Access…… 参加各种微软认证考试，MCSE，MSDE 的人络绎不绝。考试辅导班都贴出了"280元，考过为止"之类的字样。考试参考资料更是昂贵，有些电脑书店整整两书架都是"Microsoft Press"的东西。我有个同学参加认证考试，每门考试都要200多元。而且你一次考不过可以再考，又要交钱。他后来还津津乐道跟我说，看我，花了 XXXX(一个四位数)元考过了微软认证，得到一张比尔盖茨亲笔签名的证书和价值6000元的 Windows XP 内部发行版。"电脑要从娃娃抓起"，我们再来看看娃娃们学的是什么。大部分家长给孩子买了电脑之后，他们首先就会装一个盗版的 Windows，然后买来盗版的游戏开始玩。如果哪个孩子会用 Delphi 编程序，那可不得了。报社记者，电视台争相报导，说，某某学校的初中生某某，在别人都还在玩电脑游戏这种"初级阶段"的时候就已经用 Delphi 写程序了。镜头还瞄准了他显示器上面的像框中的比尔盖茨头像！我刚进入大学计算机系时还不懂得什么是操作系统，因为我以前只用过"中华学习机"。看到新入学的同学们各个谈论的都是 "Windows 95"，"VC"…… 我简直觉得我落后了好几十年一样，整个一土人，根本跟他们答不上话。好不容易找到一个比较熟的同学问了一下："你们天天谈论的瘟95是什么啊？"答： "win95就是一个操作系统，跟DOS是一类。""朵死是什么？" "你连DOS都不知道是什么？别在计算机系混了。" 学校上课当然不讲VC编程之类的东西，但是上 Pascal 的老师有一次就说："嗨，我们学校真是落后。现在别人都用 C, C++，甚至 VC 了，我们还在讲 Pascal。不知道什么时候才能有VC课啊。你们出去也是要用VC的，只好自学了。" 于是，有些同学很多时候上课都捧着一本很重的"Windows 编程大全"之类的书，根本没有听课。吃饭时就念念有词的跟我说，"代码的优化是无止境的"，"匈牙利命名法真是伟大的发明" …… 这就是中国很多大学计算机系的情况。感觉到无知了？这不是偶然的，而是微软长久以来埋下的伏笔。它要让无知的大家都把它奉为神圣，它要让支持UNIX，Xwindow的人一旦说 UNIX 好，Xwindow 好的时候，都被一群人围着说教："这个 Windows 也能做到"，"你对 Windows 有偏见"，"微软才是主流啊"，"你敢瞧不起 win2k？"，".NET 就是世界潮流"，"微软的毕竟是新技术"，"有钱就是有技术"…… 甚至在一番论战比较后败下来还是要说："Windows 性能差点，但是易用性强"，"Windows 是老百姓用的，要求别那么"，"微软那么有钱，以后想超过 UNIX 还不容易吗？"……发达国家的计算机教育我前段时间在 USENET 发文问有关 Scheme 语言的问题时，认识了一位丹麦人。他解决了我所有的问题，并且建议我阅读一些很"深奥"的有关程序语言语法，文法的书，他告诉我很多网站可以学习 LISP，Scheme，人工智能，算法。他叫我看 Jonathan Rees 的论文 "Syntactic Closures"。他还打包给我寄过来一份 MIT 的 "How to Design Programs"。他说他在自己的 PC 机上装的是 Linux，他用 Emacs 编辑，运行Scheme 程序。他对 Emacs 的了解和爱好真是使人惊讶。他大学本科毕业时做的毕业设计是一个 Scheme 解释器。这对于我来说是望尘末及了。他是那么的不厌其烦，我的每一个问题他都详细的回答。我有时都觉得过于详细了，怎么这么耐心啊？我觉得他似乎是我的高中老师。他是什么样的人呢？我好奇的打听了他的情况。原来，他是丹麦一所普通高中的计算机老师。他说他在高中里讲授程序设计和算法，计算机语言文法。他说用 Scheme，他的学生不用再为内存泄漏等程序语言本身的问题而烦恼，而专注于问题和算法本身。有利于培养学生解决问题的能力，特别是用计算机解决数学问题的能力。天哪！为什么欧洲出现那么多数学家，几何学家？你看看别人重视的是什么！我们的计算机教育如果继续这样下去，只会沿着弯路越走越远！微软和它的朋友们的如意算盘下面来看看微软的收入是怎么来的。首先，Windows 98系列操作系统，一个就是 100多美元，每次升级又是几乎同样的价钱。Windows NT 还要贵几倍，而且有用户数目限制，5个用户的，10个用户的…… 以后如果要增加用户数目还要按比例付钱。花了如此多钱买来的操作系统就能用了吗？它竟然连压缩程序都没有提供！你装上Windows 之后一般第一件事就是去下载一个 WinZip 吧，"只要 29 美元"。Windows会中病毒啊，马上花 70 美元买一个 Norton AntiVirus 吧。还有黑客呢？再买一个Norton Internet Security 好了，100 美元。系统需要优化，磁盘需要整理，买一个Norton System Works 是你最佳的解决方案，100美元。可是你现在还是不能干正事啊！你想要一个 Word, PowerPoint？那就买一套 Office XP 吧，一起买便宜些，$459.90。那些程序不会用啊！那些菜单怎么设置，到底有什么功能啊？看"帮助"也学不会。买本书看看吧，我推荐"Special Edition Using Microsoft Office XP"，不贵，$27.99。这本书里面大部分是屏幕抓图，还是买一本旧的比较划算，$17.85。你如果只是当个秘书，上面的差不多还凑合了。可是你有更高的追求，你想成为 Windows程序员。首先买一个 Visual Studio.NET 吧，要不然怎么编译程序。$494.95。为了紧跟微软动向，世界潮流，不能不注册个 MSDN 什么的吧？这个贵一点，不过物有所值啊，$2,799。嗯，你现在已经是上层阶级，白领人士了。你现在可以像这样"自由"的，"安全"的生活了。为什么要反对使用 Windows很多人都说不应该完全否定 Window，Windows 也有它的长处。不应该骂微软。对。 Windows 容易操作，适合普通用户。如果微软把它自己定位在 P&G，Philips 那样的地位，能够给我们的百姓提供周到的，完善的，价廉物美的服务。那我肯定是很喜欢它的。但是从上面的种种情况说明，微软是一个野心极大的国际垄断组 织！它的产品没有一个是不出问题的：Windows 不稳定，容易中病毒，而微软不为大家免费提供杀毒软件。我就是要让你们花钱买我的朋友 Symantec 的杀毒软件，谁叫你们已经上了我的贼船？这叫什么售后服务啊！你买来微软的程序，安装的时候一般都有一个 协议，说：" 由于微软的程序造成你的数据损坏或丢失，微软概不负责。" 我想很多人肯定觉得这个不合理，不想按那个 "I accept"。但是你的软件买都买来了，钱都花了，现在一按 "I decline"，安装程序马上就会退出。你只好被迫点击了 "I accept"！这不是不平等条约吗？我已经目睹了好几个朋友的文档被 Microsoft Word 损坏，有的是编辑了十多天的30多页的论文，有的是费了很大工夫做出来的个人简历，那个朋友为此失去了到自己向往的P&G 工作的机会。就在他要投简历的前一个晚上，就在那一瞬间…… 不知道他痛哭的时候有没有想起要投诉微软，可是谁叫我们用的都是盗版呢，况且你还点击了 "I accept"。微软仗势已经占有大部分PC市场，制定不符合国际标准的"微软的标准"，以不合理的方式压制其它公司的软件，这个问题已经在美国司法部闹了很久了。他甚至 在 Windows系列操作系统中放置能够通过网络泄漏用户信息的代码，以至于 Windows 刚进入澳大利亚时被澳大利亚政府禁止使用。有些人说："微软毕竟开创了一个历史，造就了今天的 IT 行业。" 但是，如果没有微软，我们今天早就用上非常稳定，非常可靠，非常方便，非常"傻瓜"的软件了！微软是阻挡信息技术发展的罪魁祸首。微软的程序的工作方式(注意，我只是说操作方式，病毒的事情另外算)确实适合于一般家庭，上上网，发发邮件，打打游戏都不错。可是微软却要把自己包装成什 么 "高科技"企业，要在世界各地设置"研究院"，在大学计算机系赠送不适合用于科研的 Windows产品，甚至出钱请图灵奖得主来中国畅谈"二十一世纪的计算"，还在大会上宣传自己的 .NET 技术。非要把别人认为自己是科学的，自己是领导世界高科技的。但是呢？它什么高科技也没有。欧洲，美国，哪一个关键部门在用微软的东西？NASA? DOE? CERN?你仔细想一想，微软的程序对人类到底有什么重大作用？什么是 Windows 能干而 Linux 干不了的事情？--- "Windows 能干而 Linux 干不了的事情，那就是不需要干的事情。"有个朋友看我半年没有用 Windows，有时就会问我："你只用 Linux，有没有发现有些Windows 能处理的事情 Linux 干不了？"--- 我回答说："Windows 能干而 Linux 干不了的事情，那就是不需要干的事情。"Windows 能做的有益的事情 Linux 都能做--- Windows 下的某些功能确实是我们需要的，那么 Linux 的开发者们和用户也需要这种功能，他们就会去实现这种功能，而且比 Windows 的方式好得多。由于大多数科学家，工程师用的都是 Linux 或者某种商业 UNIX, 所以几乎所有商业的科学工程程序，比如Matlab, Mathematica, AutoCAD, Candence的，Synopsys的，Avant! 的……全都是先有UNIX 的版本(包括Linux)，然后再考虑移植给 Windows，甚至根本不移植给Windows，因为 Windows 的机器一般没有足够的能力运行这样的程序。你不要以为只有 Windows 才有 PSpice, UNIX 的 HSpice 要好得多，而且可以运行在大型主机上。当然它们不是免费的，但是它们值那个价钱。但是 Windows 下有些东西在 Linux 下没有很相似的，或者你找到很多类似的，但是它们每一个比起 Windows 的那个程序都要差很多，那么原因有两种可能性：有一个完全类似的程序，但是由于它乍一看不漂亮，被你忽略了。而其它程序虽然看起来很漂亮，但是它们是一些初学编程的人写的。现在由于 Gtk, Qt 的诞生，Linux 下开发图形界面程序极其简单，很多初中生甚至小学生都可以随手编出一些漂亮不中用的程序。如果你整天寻找这样的程序挑来挑去，永远也找不到你满意的。当然 也有一流的程序用 Gtk 和 Qt，比如 GVIM 就可以用 Gtk 作为图形界面，我还知道 Synopsys 一些程序用了 Qt。我曾经也犯过这样的错误，从外表区分一切。结果优秀的 FVWM, lftp, Mutt, wget 都被我忽略过。当我找回它们的时候，我是那么的羞愧不已，它们现在都是我的朋友 我第一次看到 FVWM 觉得它只不过是一个有很厚很难看边框的东西。可是现在，我的同学看到 FVWM 都说："哇！真漂亮。"有另一种完全不同的方式可以达到相同的目的，甚至更好。很多人很关心 Open Office, Star Office, AbiWord, ... 他们多么盼望有一天某一个Linux 程序能够完全兼容的打开一个复杂的 doc 文档。但是你永远也不可能有那一天。为什么呢？因为微软为了占有市场，必定不会让其它系统的程序能够完全兼容它的文档格式。它一定会不断变化 doc 文档的内部结构，隐藏一些秘密，让其它公司的程序打开 doc 文档时总是有某种问题，从而你必需购买 Microsoft Office 和 Windows。你应该想一下，那么多的高智商的大学教授，科学家，学生，他们用的都是 Linux 或者其它类型的 UNIX，他们没有 Word 可用，怎么处理文档呢？这么多年没有一个像Open Office 的程序出现，难道大家没有办法写文档吗？显然不是这样。你看看那些高水平的学术杂志，论文，那些大学教授的网页，那些漂亮的幻灯片，它们是什么做的？原来 UNIX 用户早就有非常方便的 troff, LaTeX, SGML等东西可以处理文档，而且它们比起 Word 都要高明的多。Word 显然被这些大拿忽略了，以至于很久以来没有人想在 Linux 下开发一个类似 Word 的程序，除非某些公司想抢微软的饭碗。很多人留着 Windows 在硬盘上的原因无非是为了用 Word 和 PowerPoint。我见过一个教授，他的 Windows 笔记本电脑上除了 PowerPoint 什么都没有。有一天演示的时候，他指着堆乱字符说："对不起，这是一个公式……怎么每次都是这样……" 其实有比PowerPoint 好几百倍的东西可以制造幻灯片，你可以用最简单的方法制造世界一流效果的论文和幻灯片。你待会儿可以看看我的TeX网页，你就会知道为什么我可以完全离开 Windows。Windows 能做的那些没用的事情 Linux 永远做不好电脑游戏 有些人说 Linux 下不能玩 Windows 下所能得到的所有游戏。的确，Linux 下虽然也有少量的游戏，比如 Quake。但是它没有 Counter Strike, 没有 Star Craft, ……并不是说电脑游戏不该玩，但是应该适可而止。电脑是用来处理事务，帮助你学习，解决问题的工具，而不是一个玩具！整天沉迷于电脑游戏中，而不出去感觉外面的世界，你会变得越来越冷酷，越来越缺乏人情味。你与真实的世界越来越远。你可以在 CS 里杀人，你可以在 Tomb Raider 里探险，你甚至可以在 Tony Hawk's Pro Skaters 里滑板…… 但是 It's not real！你虽然有很高的"反恐技巧"，但是遇到歹徒的时候，你是那么的怯懦；你虽然控制 Laura 伸手敏捷，但是你打篮球的时候怎么总是被人断球？你虽然可以轻易的在 THPS 里作出一个 "360 kickflip to hangten grind to fakie"，但是你踩在自己的滑板上的时候还不会 ollie！说回来，如果你偶尔玩一下电脑游戏未尝不可。但是世界上有远比 Windows + PC 更好的游戏方式。Sony 的 PlayStation2, SEGA 的 DreamCast, Nintendo 的 N64，Namco的街机……每一个都比 Windows 游戏精彩，每一个都有如此高的3D性能，以至于Pentium4, Itanium + GForce4 都无法与它们比美！Linux 的用户们都是关心解决世界的关键问题的份子，他们哪里有时间用自己的机器来玩游戏啊？他们每天用Linux高效的做完自己的工作就到阳光下享受自然去了。 要玩游戏也是玩一些类似推箱子，贪吃蛇之类的智力小游戏。所以，你知道为什么 Linux 几乎没有游戏了吧？"整理硬盘，优化系统"这是一个非常有意思的话题，仅次于有关"病毒"的话题。相信很多 Windows 用户都有整理硬盘的经历。在很多 Windows 用户眼里，"硬盘用久了，会出现碎片，速度会减慢，需要一个程序来整理，整理硬盘的时候不要做其它工作"，这好像是天经地义的事情。我也曾经津津有味的看着 Norton Defrag 一点一点的把我的硬盘排序，调整，用图形的方式显示出来，然后报告100% 没有碎片。你的硬盘现在已经达到最佳状态。" 我现在才发觉我那时是多么的幼稚。Linux 和 UNIX 用户似乎从来没有"整理硬盘"这种说法呢？你觉得很奇怪吗？如果你觉得很奇怪，那说明你的思想在某种程度上被微软的垃圾程序禁锢了。你需要明白，UNIX 的大型主机很多必须是一天24小时，一年365又1/4天不停运转的，要是每个星期都要整理一次硬盘，在整理的时候几乎不能干任何事情，那是绝对行不通 的！Linux 机器根本不用整理硬盘，这就是为什么没有看到过 Linux 用户整理硬盘。Linux 的文件系统是比 Windows 的 FAT, FAT32, NTFS 高明得多的文件系统，它们不但可以对文件设置权限，实施完全的保护，而且可以"越用越整齐"，"越用碎片越少"！你应该把文件大部分放在 Linux 的分区，而不是 Windows 分区，因为它比 Windows分区可靠得多。还有更滑稽的事情就是有很多"Norton System Doctor"，"Windows 优化大师"，"超级兔仔注册表魔法" 之类的程序存在，而且价格昂贵。似乎一个操作系统本来应该有很多问题，需要别的厂商做程序来"优化"它，而且为了得到优化，你需要付钱！这些问题 Linux 根本就没有，所以不需要什么优化。Linux 内核本身就是高度优化的。IDE有些人在抱怨为什么 Linux 没有一个良好的 IDE 开发环境。Linux 现在已经有一些IDE 了，但是总是有很多问题。你是不是正在寻找，正在期望 Linux 某一天可以有一个VC那样的开发环境？你有没有发现你正在进入微软给你设下的怪圈？你为什么一定要用 IDE？你说："IDE 开发迅速，调试方便，适合大型程序……" 那说明微软的程序在你脑子里已经比较根深蒂固，你需要好好清醒一下了，看看我来告诉你。高明的 UNIX 程序员不用 IDE，IDE 从来就是给初级 Windows 程序员用的。你看看大型的 UNIX 程序，包括 Linux 内核，各种网络服务程序，Xwindow 程序在内，哪一个是 IDE 搞出来的？我们实验室的 EDA 程序也没有一个是 IDE 弄的，我还知道Candence, Synopsys，Mentor 的高性能的图形界面 EDA 程序也都不是 IDE 写的。你信不信，微软的人在写 Windows 本身的时候也根本不用 IDE。微软内部程序员最喜欢的编辑器其实是 VIM，用 VIM 的微软程序员上次向乌干达的可怜儿童捐助了1000多美元，这是值得称赞的。有一次某杂志采访一些出名的 Linux 内核程序员，包括 Linus 在内，没有一个人用IDE，有的人用 VIM，有的用 Emacs，只有 Linus 说"GNU Emacs is evil"，但是其实他用的是一种跟 Emacs 有同样键绑定功能的 MicroEmacs。大家都是用编辑器编辑了程序文件，然后用 make 这样的自动工具调用 gcc 编译器完成编译工作的。甚至高级的 Windows 程序员也不用 IDE，他们可以从命令行调用 cl，nmake 来编译自己的程序。虽然这样的 Windows 程序员很少，但是他们却是最了解 Windows，最高明的Windows 程序员。为什么 UNIX 程序员不用 IDE？明白了这个道理你就能体会到 UNIX 的设计思想了。首先，一个 IDE 集成了编辑器，编译器，汇编器，调试器，跟踪器…… 这个编辑器功能肯定比不上 VIM 或 Emacs，编译器比不上 GCC，汇编器比不上 as，调试器比不上 gdb，ddd, 跟踪器比不上 strace, ltrace, truss。你得到的是一套整合的低能的程序。如果你对调试器的功能不满意，你只好换用另外一套 IDE，但是这套 IDE 的热键，菜单，编辑器功能，按钮…… 跟原来那个有很大不同。你不得不花很多时间来熟悉新的环境，而不能保持原来的某些东西。而在 UNIX 下就不一样了。你可以用你最喜欢的 VIM 编辑程序，你在 VIM 里可以调用GNU make，make 可以调用 gcc, ld, ... make 的出错信息可以被 VIM 捕获，VIM 能帮你在源程序里定位。你如果喜欢 icc, 你可以让 make 用 icc 而不是 gcc。你如果觉得 gdb 跟踪变量时比较麻烦，你可以用 ddd 来显示各种数据结构之间的关系。你还可以在 Emacs 里调用 gdb，那样就可以同步显示源代码了。而且 VIM 和 Emacs 还可以编辑很多其它东西，比如信件，LaTeX 文档，HTML，配置文件…… 你不用另外找一个什么编辑器来干这些杂活了。很多程序比如 Mutt, tin 都可以在内部使用 VIM，这样就更方便了。实际上 make 在其它方面还能帮你很多忙，我的每一个比较大型的 LaTeX文档都是用 make 维护的。Linux 能干的高精尖的事情 Windows 都干不了当然有很多事情是Linux/UNIX的专利了。因为 Windows 只能装在 PC 机上，好像以前也有 Alpha 可以使用 Windows NT，但是就是没见到有人用。PC 机的能力是很低的，像我们编程序处理 NP-Hard 问题的人，用 Windows 的机器显然速度不够，而且有时一个问题算上几天甚至几个星期，Windows 机器是以"死机"著称的，我们怎么能放心？所以几乎所有科学计算程序，EDA 程序，高性能图像处理程序都不是 Windows 的。他们有时也会移植一些给 Windows，但是常常降低那些程序的能力。你比较过 Windows 版本的 Mathematica 和 Linux 的有什么区别吗？IBM 制造的最大的并行计算机有 8000 多个处理器，Windows 不可能有能力管理这么多处理器，它用的是什么操作系统？答案是 Linux。《泰坦尼克号》电影里的三维动画，那么细腻逼真，Windows机器能做出来吗？不行。那也是 Linux 机器做的。民航总局用来训练地情人员的虚拟现实训练设备，Windows 当然无能为力。那都是商业的 IRIX 机器。UNIX 是最早支持 TCP/IP 网络协议的系统。它上面有很多可以互相协作的网络服务程序，它们经过多年的使用和修订，已经达到比较完善的程度。而就在1997年，微软的比尔盖茨还在扬 言："Internet 是没有前途的。" 微软的这个"远见卓识"大家应该都已见识，它后来加上的网络服务程序IIS漏洞之多，让公安部都频频发出警报，大家也是见识了的。其实你知道了，Windows 没有一样有用的事情能比 UNIX 干的更好。Linux 干不了的有用的事情 Windows 照样干不了 当然 Linux 不是万能的。它也有不能干的事情，电脑也有干不了的事情。但是 Linux干不了的事情，Windows 肯定也干不了。这些事情就是我们需要探索，需要努力的事情了。在你探索的过程中，Linux 必定是你的好伙伴。不要把Linux和Xwindow掩盖起来！不要把我们的用户当成傻瓜。什么？你早就知道 Windows 是垃圾？噢！你怎么不早说呢！害我废话这么多。嘿嘿。"好了。你知道 Windows 是垃圾，你现在用什么""Linux + Xwindow""那我问你，Xwindow 是什么样的？""不就是跟 Windows 差不多吗？只不过 'Start' 按钮比较方，而且上面不是一个Windows 标志，而是一个脚丫子。点击一下居然还有很漂亮的中文菜单。我喜欢！""你知道什么是'根窗口'吗？""不知道。从来没听说过呢？""根窗口就是遮盖整个屏幕的那个最大的窗口。""哪儿有什么窗口啊！我没有看到呢？"你发现了问题吗？这些 Linux 用户说是在用 Linux 和 Xwindow，但是他们对 Linux和 Xwindow 几乎完全不了解。很多人用了那么久 Xwindow 都不知道根窗口是什么东西，不知道其实按钮也是窗口，不知道窗口管理器和其它程序有什么关系，大家都以为窗口上面的按钮是程序自己放上去的，不知道窗口? quot;class name"，"resource name"是什么东西。他们也不知道 .Xdefaults 是用来干什么的。特别是他们很多人都不知道 Xwindow 的字体是如何命名的，什么是 fontset，有了一个新的字体也不知道怎么安装。他们被遮在 Linux 之上的一层一层的包装迷惑了，他们等待有图形界面的工具来帮助完成一切事情，他们认为 Linux 跟 Windows 一样，只是麻烦一点。他们知道 Linux内核很好，但是他们感觉不到 Linux 和 Xwindow 在操作层面的天生的先进性，随后不久就把 Linux 完全删除掉了。你发现没有，要用户理解 UNIX 和 Xwindow 的操作层面的先进性，才是留住用户的最好办法。如果用户体会不到操作时的方便和高效，内核再好他们也不会理会。但是用摹仿 Windows 的作法来吸引用户，永远会失败的。因为 Linux 如果摹仿Windows那一套低效率的方式，那么 Linux 的这套"低效率方式"永远比不上Windows 的那一套"低效率方式"。那么用户就会说："这个 Linux，没有一样比的上 Windows。"Linux 天生就是继承了 UNIX 的高效的工作方式，为什么我们要把它掩盖起来？我们为什么只告诉用户 KDE 的菜单怎么用？我们为什么不能像早期的 Xwindow 书籍那样第一节就告诉用户什么是 X server, 什么是 X client，什么是 Window Manager, 什么是根窗口。第二章就告诉用户窗口有哪些属性，什么是 classname, resource name, hint，怎样使用 .Xdefaults, xrdb ……在这里我又不得不说一下那些 Linux 的发行公司和写书的人，他们把 Linux 和Xwindow 包装起来，却没有从基本上告诉用户 Xwindow 的工作原理。很多书籍讲授的层次就是在Gnome, KDE 的菜单操作的层次，靠大量抓图来占篇幅，"繁荣"Linux 书籍市场。现在很多人已经把能够利用别人的库写出一个好看的程序作为自己编程水平的象征。在这"图形化"，"可视化" 的年代，你如果还在用 troff, LaTeX 写文档，你还在用VIM 自己编辑 HTML，用 Mutt 处理邮件，你还在用文本模式的 gdb 调试程序，你还在用Xlib 写程序, 你还在用 tin 上 USENET，你还在自己写 Makefile，写机器代码，你还在玩 Clossal Cave 这样的字符模式冒险游戏，那你就是老古董。其实这种思想是错误的。虽然你是一个坚决的 Linux 支持者，但是你的思想是 Windows的思想。你认为图形界面，菜单，按钮就可以解决一切问题，就可以给你高效方便。你还是没能摆脱微软给你的潜移默化的东西。你其实离不开 Windows 那样的环境，你迟早会删掉自己的 Linux。GUI vs. CLI 做一个坚定不移的"两面派"大家看到这个标题是不是热血沸腾？两派大虾都可以围攻我了：GUI派用户："哇！我一看你这小子就是 CLI 的。要不然自己写什么 Makefile？用什么Mutt？"CLI派用户："切～ 你还用 X！高手都不用 X。你是 GUI 那边的。"可怜的我："555～～ 你们都不要我～～ GUI 和 CLI 就那么水火不容吗？"计算机界这样的门派之分还很多。很有特点的就是 CLI 和 GUI 了。CLI (Command LIne)的狂热份子声称永远不用 X。我上次在实验室看到一个同学用一个 SecureCRT 登录到Sun 机器，然后用一个 vanilla vi 编辑程序，我建议他启动一个 GVIM 过来显示在Exceed 上可以有语法加亮。但是他坚决反对，说："高手不用X。你想想，要是我在一个很慢的网络连接怎么用 X？而且好多服务器没有装 X 程序。"但是我们实验室的网速可够快，Windows 机器都有 Exceed 啊，而且 Sun 机器有全套X 客户程序包括 GVIM。他说他是 CLI 的坚决拥护者，但是他却在用 Windows，他后来打开了好几个 SecureCRT，每次从文本框输入地址，用户名和密码，从下拉菜单选择"SSH2"，然后点击"Connnect"。他还不断的夸SecureCRT 是"网络管理员投票选出的最受欢迎的登录方式"。老天，SecureCRT 本身就是个 GUI 啊，他其实没有明白Xwindow 的好处。你说我是 GUI 的？我虽然很少在 console 下工作。但是我对 bash, VIM 很熟悉，我可以让 bash 按照我的键绑定方式来工作。我可以在 rxvt 里使用 Mutt 来收发 email。我的每个桌面上都常常堆放着一打不同大小的 rxvt。我用 VIM 编辑 LaTeX。我自己写Makefile 来维护 LaTeX 文档。我有时用 mpg321 来放 mp3。我上BBS用的我自己写的expect 脚本。 好了，CLI 派的朋友可以收我做盟友了你说我是 CLI 的老古董？我的 FVWM 被我配置为可以"手写操作"，我只要画一个"r"就可以启动 rxvt，我只要画一个 "U" 就可以启动 GVIM，…… 我用 GVIM 语法加亮模式编辑程序，我用 Mozilla 浏览网页，…… GUI 派的现在好像认我做朋友了好了。CLI 派的朋友，虽然我很喜欢命令行，但是我有时在屏幕上左右画一下就可以执行:Module FvwmConsole -terminal rxvt -geometry 45x5-0+0 -bg gold -fg midnightblue -fn "-adobe-courier-medium-r-*-*-14-*-*-*-*-*-*-*" 你是不是现在又想把我逐出师门？GUI 派的朋友，虽然我很喜欢窗口。但是我可以在 FvwmConsole 里输入：All (rxvt) MoveToDesk 把我所有的 rxvt 移动到我现在工作的桌面。"这家伙，怎么这么快就叛变了！"其实何必分什么 GUI 和 CLI，UNIX 和 Xwindow 都是工业标准，它们从设计那天开始就有非常灵活的用法，各个程序，不管是 GUI 还是命令行的都可以互相协作。UNIX 和X 是一家，何必搞的那么偏激，非此即彼？你从我上面的行为可以看出 GUI 和 CLI的模糊界线吗？我就是坚定不移的"两面派"。UNIX 是简单的-- "我相信简单就是最好，如果太复杂，我是不能理解的。" -Seymour Cray很 多第一次用 Linux 的人会惊奇的发现，Linux 的程序居然不"安装"就可以运行，程序拷贝到随便那个目录都可以用，而不是一定要占用你第一个分区的空间。程序的设置只是一些简简单单的文本文件。你根本 不需要什么"注册表修改器" 就可以改变系统的设置。这就叫做简单，但是简单就是美。虽然这只是 UNIX 简单性的一个肤浅的认识，你已经体会到了某些东西。但是简单并不意味着功能弱，并不意味着落后。相反，简单意味着强大，意味着生命力。我不会再继续阐述我理解到的"UNIX 的简单"，因为这个需要自己去体会。UNIX 是永恒的 有人说："Plan9 会取代 UNIX，Mach 会取代 Linux 内核。"但是你如果是一个深入体会了 UNIX 的人，你就会知道：UNIX 的思想是永恒的，不管时过境迁，Plan9 是否代替 UNIX，UNIX 的灵魂都会在 Plan9 身上现形！我为同一个设备写过 Linux 内核和 Windows VxD 驱动程序。写 Linux 驱动程序时，我对 UNIX 设计的完美的一致性，远见性所折服。UNIX 用同样界面的 read(), write()系统调用就可以对不同的对象：普通文件，设备文件，管道，管道文件，socket，……进行统一的读写操作。我跟本不需要写一个测试用的应 用程序就可以对我的设备驱动进行测试，因为 cat, cp, dd, 它们也使用了同样的 read(), write()，设备和普通文件在应用程序眼里没有区别。在那个还没有 Smalltalk, 没有 C++ 的年代，UNIX 的设计者已经使用了所谓的 "面向对象方法"。对，C 语言也可以实现面向对象。UNIX的系统调用几十年都没有很大变化，这非但不是顽固，不进步的象征，反而是UNIX 的远见卓识的体现！这就跟 TeX程序几十年都不变的情况差不多。这些才是真正的永恒的 master piece!你应该改变所有软件都必需从 0.1, 1.0, 1.1, 1.2, 2.0, ..., 3.0, 3.1,95, 98, 2000, XP, ... 不断升级的想法。Windows 就不同了，它在最开头只是一个 DOS之上的图形包装而已。后来为了兼容以前的糟糕设计，不得不加上很多累赘。我写VxD 驱动程序的时候就深有体会，Windows 95 程序对设备的操作只有用DeviceIoControl，我不得不写了两个应用程序来对设备驱动进行测试。Windows内核的不一致性和隐密性使我非常 恼火。不过 Windows WDM驱动程序现在也有了 ReadFile, WriteFile，…… 那说明什么？那说明Windows 在向 UNIX 学习，或者有可能是某个 UNIX设计人员在微软打了几天临工，顺手加了几个UNIX的东西进去。这样做是没有用的，Windows从一开始就是非常糟糕的设计，它的历史的包袱太 沉重了，缝缝补补有什么用？它只能永远的被UNIX 甩在身后！UNIX 是强大的 让聪明人干任何他们想干的事情。UNIX 的一个特点就是非常高的灵活性，Xwindow也具有这种灵活性。这种灵活性体现在哪里呢？UNIX 的程序一般都有很多参数，不管你现在用的着用不着，总有人需要某些参数。它们的行为很多都可以用配置文件来改变。比如GNU bash, 通常缺省的命令行输入方式是 Emacs 方式，但是只要我编辑一个.inputrc 文件，就可以把它变成 vi的输入方式，而且我还可以自己绑定键序列到某些操作。我可以用 shopt来设置它的很多特点，比如是否进行通配符扩展，是否可以把一个变量当作一个目录来cd，是否可以自动纠正某些明显的目录名打字错误……UNIX程序设计的思想是提供给用户“机制”，而不限制用户制定“政策”。这是一个重要的尊重用户的作法。我们再来看看 Xwindow。Xwindow是一个出色的设计，它把显示服务器和客户程序分开。一个显示上既可以显示本机上的程序，也可以显示别的机器上的X程序，而 它们都遵守你的窗口管理器的统一指挥，它们之间可以方便的传送剪贴版数据，各种事件…… 比如有时我的 XFree86 上会出现四个不同机器上的XTerm，两个不同机器上的 GVIM，…… 它们统一受本机上的 FVWM指挥。Xwindow 程序都具有很多很多命令行参数和 resource参数。你可以随意的在命令行或者 .Xdefaults文件设置所有的颜色，字体，尺寸…… 而且如果你用 xrdb 把 .Xdefaults导入到根窗口，那么其它机器上没有经过配置的同样的程序，显示到你的机器上的时候也会遵守同样的外观规定。Xwindow 的窗口具有 Property,也就是一些可以自己定义的共享数据(原子)。正是因为这些 Property的存在，使得 Xwindow 具有无比强大的生命力。X的窗口管理器和其它客户程序之间并没有统一的协议，但是后来出现了ICCCM(客户程序间通信规范)，这个规范就是通过 property定义的。现在又有人定义了一套“扩展的窗口协议(EWM Hints)”，使得Xwindow 可以具有某些 Windows 的特征，比如一个工具条程序可以告 诉窗口管理器：“这个屏幕下面被我占据了24个像素的空间，你最大化程序的时候不要越过这个界线。”一个强大的窗口管理程序比如FVWM，它收到这样的提示时，可以答应工具条程序的这个要求，也可以不答应。一切选择的权力在于谁？当然是用户了！你想想，是不是有些 Windows 程序常常弹出一个窗口要你选择 "Yes orNo"？你不点击它它就不下去。你觉不觉得你的程序在侵犯你的尊严？你是一个人，一个智慧的生物，怎能受到一个程序如此的待遇？还有就是很多 Windows程序把人当成傻瓜，而它是“智能程序”。比如，有一个程序就是喜欢把你的每句话第一个字母都变成大写，我不说它是谁了，你遇到的时候就知道了。如果连“一句话开头一个字母要大写”这么明显的问题都需要程序帮你纠正的话，人脑还用来干什么？况且如果你故意想要不大写的话，那就更麻烦了，我楞是没有从它那一大堆菜单里找到怎么关闭这个愚蠢的选项。只有符号才能完全操纵计算机我们来说说很多初学 Linux 的用户。虽然他们在用 Linux，但是他们打心眼儿里是觉得 Windows 的工作方式好，他们希望 Linux 有一天能"像Windows那样"。你说："我鼠标一点，我菜单一拉，...... 就可以完成我的操作。" 但是我要告诉你："Linux 从来没有摹仿 Windows，将来也不会。Linux 从诞生之日起，它的工作方式就比 Windows 的先进。Linux 属于能勇敢面对符号的人。只有符号才能完全操纵计算机。"看看优秀的 UNIX 程序，XFree86, FVWM, VIM, Emacs, proftpd, Mutt, wget,tin, ... 没有一个不是用配置文件来设置选项的。为什么这些程序没有方便的菜单可以用来配置?难道它们的设计者就那么低能，连个图形配置界面也写不出来?当然不是。因为图形界面配置方式的能力是极其有限的，而配置文件和程序语言的表达能力却是无限的。用图形界面配置这些程序的话，如果你想达到配 置文件的效果，你需要成百上千的菜单，checkbox, radio button, ... 到时候你根本没办法找到你需要修改的地方了!而各个程序的配置文件的语法都有很多相似之处，一般就是一些命令，设置一些变量，参数，...... 一旦用会了一个，其它的也就容易理解了。如果你用惯了 awk, sed, Perl，你会觉得那才是真正的自动化啊。鼠标虽然是很好的工具，但是它的表达能力是有限的。你不可能光用鼠标就让电脑完全明白你的意思，它毕竟只有3个按钮。看看我的MetaPost页你就能体会到鼠标的这一弱点。所以我们虽然很喜欢鼠标，但是却不能完全依赖它。各个小程序的完美配合这就是UNIX最重要的特点了，它就是UNIX设计的思想。让每个程序只具有一项专门的能力，然后让它们合作。Xwindow也继承了这种好传统。这恐怕就是Windows和其它操作系统望尘莫及的地方了。UNIX 程序设计之统一，配合之完美，真使我难以置信!shell, grep, find, awk, sed, make, Perl,Emacs, vi, tin, Mutt, ... 它们是那么的具有一致性!你一旦学会了 sed 的正则表达式，其它程序基本上都能用了。你一旦学会了 vi 和 VIM, 你会发现它的操作是那么的有规律性，似乎vi的设计者在几十年前就已经设计好了 VIM 在今天的完美而统一的操作方式!而且vi的操作还体现在 Mutt, tin 等很多程序中。你甚至可以把 bash 设置为 vi 的输入方式来输入命令行，我就是这么做的。一个程序可以调用另外一个程序来得到数据，可以把数据交给它处理后返回来，可以在自己的窗口里"嵌入"另外一个 程序。在 Windows 和其它非 UNIX 操作系统中，这种合作是非常困难的。我曾经在Windows 下使用 Perl来进行一些自动工作。但是 Windows 的文件操作，管道是如此的不稳定，程序之间基本不能合作。你别想在 Visual Studio 窗口里面嵌入UltraEdit 编辑器，你别想用一个 expect 脚本来控制 telnet 到水木清华BBS，这就是为什么 helloooo 诞生在 Linux 而不是 Windows。我曾经试图从Windows + Exceed + SecureCRT ssh 登录到 Sun 机器，然后通过 ssh 的隧道(X11 tunnel)把 X 程序传到 Exceed 上运行，但是搞了两天都没有成功!而在Linux 下这个事情根本就是不用怎么配置的，OpenSSH 和 XFree86 本来就是完美结合，只要打开 ssh 的 "forward X11" 选项就什么都搞定了。Windows 的程序都是大而全，大而杂，所有的电子邮件程序都需要自己提供编辑器，自己发送和收取邮件，自己显示邮件的附件。每一个BBS程序都提供自己的 Virtual Terminal, 自己的通讯代码。每一个 IDE 都自己提供编辑器，编译器，汇编器，调试器。人们为了使用一种新的程序，需要适应所有这些它提供的界面，而不能使用自己喜欢的编辑器的键绑定，菜单组 织...... 不能 DIY!你要知道，最高级的电脑是定做的，自己想要什么什么CPU，什么主板，多少内存，什么硬盘，键盘，鼠标，显示器都是自己选择的。最高级的滑板，自己想要什 么牌子的版面，什么牌子的沙，什么桥，什么轮子，什么轴承，也都是自己选的。最高级的乒乓球拍，木板，胶皮，海绵，胶水都是可以自己选择...... 而用Windows 程序，你得到的是大杂烩，就像你去买"品牌机"，只有那么几种配置，而且附带很多你不需要的软件和服务;就像你去买组装好的滑板，你想要大一点的轮子和窄 一点的板子，但是你没有这种选择余地!Windo ws 程序就相当于最廉价，最次的滑板。但是它却会花你更多的钱，因为一旦一个部件坏了，或者你不喜欢了，你不能另外找一个好的换掉它，你必需重新买全套配件!而 UNIX 和 Xwindow 就是高档的"组装货"。比如我用 Mutt 的时候，我可以用VIM 也可以用 pico 来编辑邮件，我可以用 ImageMagick 也可以用 xv 来显示附件里的图片，我可以用 lynx 把 HTML 附件转成文本嵌入窗口中，我也可以把HTML 附件交给 Mozilla 图形显示。我可以让 GnuPG 帮我把邮件进行数字签名和加密，我也可以用其它 PGP 程序。我想让 Postfix 而不是 sendmail 帮我发出邮件，我想让 fetchmail 帮我收邮件，转发给 postfix，然后被我自己写的Perl过滤器处理...... 这一切我都可以办到!我可以选择我最喜欢的专门的程序来完成专门的工作，然后把它们结合在一起，我也可以分别得到它们的好处。结论我写这么多的目的是什么?我希望喜欢 Linux 的朋友，完全清除微软和Windows 灌输在你脑子里的谬论，别再相信它们所谓的"新技术"，别再追赶Windows，因为追赶 Windows =倒退。 马克思有一个思想很重要，"新生事物并不一定是在最近出现的。" UNIX，Xwindow, TeX 虽然都比 Windows 先出现，但是它们才是先进生产力的代表。我们要清楚的认识到什么才是真正的现代化，什么才是真正的自动化。勇敢的拿起像 bash, FVWM, VIM, Emacs, Mutt, lftp ...... 这样强大的程序，不要再埋怨"Linux 为什么不能像 Windows 那样"，不要再浪费时间试用这样那样的程序，不要再忙着升级。是你需要改变而不是 Linux 和 UNIX，Linux 现在就可以成为你的好朋友。你需要认识它，了解它，信任它，才能完全的靠它来高效的工作，省出时间来处理世界上更加值得处理的事情。