这天在书店闲遛的时候在小说架上瞧到一本《疯狂的程序员》,拿了出来翻看了半个小时,挺有趣。 说的,是主人翁从进入大学起,到最后怎么成为一“成功”的程序员的成长经历……为何成功要用双引号?我没有读完全书,我相信书中也没有完全交代主人翁的一辈子,一个人是否成功,不至于能够就这么一段经历来判断吧! 书中不少语言是相当幽默的,特别关于大学生活的描写。比如: 所以我们有时候也要理解老师,他们天天在讲台上讲,对他来说下面坐的有80%都是文盲――有文化的文盲,当然他们会很认真地记着笔记,甚至能预感到那些是 重点,那些是考点。你以为老师喜欢这样的人吗?他觉得他在对着一群猪讲课,他觉得自己心中的东西比起书上来,那都是至理名言,可是,以他们的智商,他们无 法理解。这时候当他发现了绝影,他感觉终于找到一个知音,所以,他对绝影也许更多的是感激。 很多我们一样的“IT民工”在绝影那样的道路上前仆后继,他的身影代表了程序圈中的典型。有时候我们很想看看,别人是怎么找到前进的动力,《疯狂的程序员》很不错。 每个人在年轻时都有疯狂的想法和疯狂的梦,读完这部小说后感觉自己的血液中居然也注入了“疯狂”的元素。 这部小说是值得所有年轻程序员仔细品味和阅读的佳作,因为它能够帮我们找到通往疯狂的动力。 ——ChinaUnix站长 樊强 网络连载:http://blog.csdn.net/hitetoshi/
又有人很不冷静地发了一篇不冷静的文章[回顾]清华申请退学博士作品:完全用Linux工作。 说实话文章的观点立场很不错,不过表达上有点太不冷静,文风颇为hard push,难怪在别人的评论中受到各种非议。当然,多数人没有读懂,反对Microsoft的应该是中国教育,不是中国人。 中国社会正处于一个很不冷静的时期,工作的人愁,没工作的人更愁,能静下心来研究颇有哲学意味的Unix/Linux的,实属少数,即使有,也常常是因为饭碗所需,和原汁原味的Unix哲学相去甚远。 处于校园中的莘莘学子,似乎是这个社会中最能冷静的人群了,毕竟很多社会压力对校园不起作用。然而,终日潜心研究“游戏策略与技术”的人总是大多数。也有人认识到整天游戏不对,但总感叹打开电脑上网都不知道要干什么,没事找事干,最终又是游戏。这问题完全和微软、Windows没直接关系,但在宏观的角度能反映一个事实。 中国模式下发展的社会,决定了人们之中普遍流行一种实用主义的价值观,“白猫黑猫”理论在国人间深入人心,无论在什么领域,总能见到猫价值观下呈现出来的各种现象,制造业获得极速发展,毒奶粉毒药品大行其道…… 很多人歧视Linux也是这原因:“本来点几下鼠标可以完成的工作,居然要学编写近乎天书的配置文件”。对很多人来说,学习的代价挺高的,即便在学校也如此。在我们学校的机房,同样也是Win2K + Office + VC6的标配,这现象也是一种实用主义,老师们认为“既然能方便把原理演示完,何用管什么平台?”,不过值得庆幸的是,教我们MFC的老师还大概说了下MFC的组成,然而这并不阻碍有些人成为VC6的忠实Fans:“这VS2005好难用啊,怎么也学不会,没有Class Wizard……” “白猫黑猫”对中国发展的功劳是不可否认的,但在教育领域,实用主义其实就是拔苗助长,虽然采用微软平台减少了学生的负担,但也侮辱的学生的智商,而且无奈的是多数人对此不觉得有什么不妥:“按一个按钮就编译链接好程序,让我潜心学习算法数据结构,干嘛要了解链接库和我的程序有什么关系?”,很难想象一个连链接库和程序都搞不清的程序员,把数据结构背得再熟有什么用,考试考高分点?很好。 如今在代表学术领域的高校、甚至高校里面的计算机专业,Unix/Linux都不受重视,老师都不懂,而有技术的专业人员,常常和学术界无关(人家在资本家的压榨下苦苦工作呢)。 在我个人的角度,虽然非常支持Linux,但想看到Linux有市场?10%?50%?开玩笑!Linux是给那么多人用的么!如果那么多人会Linux,咋们弄技术的还用吃饭?Linux越难学越好,越少人会越好!我也很实用主义。
WordPress中使用<!--more-->标签分隔文章在首页和单页中输出的功能很方便,在原编辑器中可以单击分隔按钮添加,但是习惯在Scribefire发文章,却无奈Scribefire没有这样的按钮。 这天无意中发现,Scribefire提供的“添加分割线”功能,虽然插入的是<hr>标签,但是文章发上去后自动转成<!--more-->标签: 仔细看一下,Scribefire插入的是<hr class="jump" />,估计WordPress中有相应机制能完成相应的转换吧。
貌似我的寒假终于开始了,昨晚11点多的时候终于把程序编译成功,发给了素未谋面的赵博士。 这次的程序颇有威客的感觉,一个老师找到我问能不能帮他朋友做个程序,那还是10月的时候,当时正想找些东西来做做,就答应了,接到“任务书”,哇,眼花缭乱,是一个模拟蛋白酶剪切蛋白序列的程序,其实也就是字符串处理,稍想了一下,就接下来了。 字符串处理本来是python阿perl阿这些的强项,无奈太不熟悉,只好操起还算顺手的C++和STL。记得写主算法的引擎大概用了两天来琢磨(也不是全部两天阿,要上课),一个星期就把命令行版本做出来了,然后跟赵博士通了几趟email,也算通过测试了,接下来搞定封装。 当时有点痴迷Linux,想趁这个机会学一下GTK这个“跨平台”的框架,结果接下来一个多月都是在看gtk的文档和捣腾例子程序,为了赶潮流,用最新的glade3啊GtkBuild啊来实现(最新常常意味着资料的不详细和奇怪问题比较多),博客之前的几篇笔记就是那时候的产物。逐渐地,构建界面的程序已经过千行了,而之前C++写的算法不到500行,虽然这个比例还不算悬殊,但也明白到为什么程序员干的是体力活,程序员就是民工。 由于还需要移植到Win平台,交叉编译是在太折腾人了,最后屈服,在vbox里面装了个精简xp用mingw来编,最后程序只有几百K,却要挎着一堆8M多的运行库,全部用rar压缩了还接近3M。(自——我安慰一下,.net框架的运行时库好几百M、java也好几十M……不过大概如果用MFC的话,200多K的文件就搞定了)
1. get a icon file name "logo.ico"2. create an file name "logo.rc", contain a line: 1 ICON "icon.ico" 3. run : (windres was include in Mingw) windres logo.rc logo.o 4. link the "logo.o" file together with other object files to the final exe file.
I found that programming gtk+ plays a lot of tricks. I implemented "editable treeview cells" today in my program, after spending quite a while looking up for examples on Google. The most I wanted to say is that, the Gtk manual was detailed enough, but it never tells you how to do, which makes me [...]
今天又奋战gtk的文档,看着别人写的旧版example代码,用GtkBuilder的方法重写,实现了一个自己想要的TreeView List。最后想在TreeView中加入一个右键菜单,却想不到小小的popup menu就给我设了两大难关。 首先找来找去没有见到有right-click的signal,Google了一下,从Maillist里面的解答找到头绪,由GtkWidget的button_press_event来实现。GTK+ Reference Manual里面一点都没提到这个信号,原来这个button指鼠标的button,键盘的键叫做key…… http://mail.gnome.org/archives/gtk-list/2002-August/msg00119.html button_press_event emits when any mouse button pressed, when handling with this signal, use a callback prototype in this way: gboolean callback (GtkWidget *widget, GdkEventButton *event, gpointer data); and you can determine which button was press with event->button (values 1,2,3...3 stands for the right button, 1 for left and [...]
Page optimized by WP Minify WordPress Plugin