All Stories

期待一个合法的强大的IDE

  虽然打算使用MinGW+wxWidgets来写程序,似乎是可以抛弃VC+MFC或者BCB+VCL这类商业软件了,但是,实际上我发现我根本离不了VC,主要是离不了VAX,这个超级好用超级变态强悍的VC助手。  早先的时候,只用到VAX的智能联想提示功能和跳转到定义或声明的功能,自从看了Martin Fowler的《重构》,VAX的诸多重构功能也成了我目前最常用的功能,日常工作写代码,离了它简直痛不欲生。  写代码最好用的是VC+VAX,但看代码最好用的,个人感觉还是Source Insight这个虽然不思进取,但基础确实不错的东西。Source Insight也可以用来编辑代码,不过比起VC+VAX来还是弱太多了,而且它也是要买license的,最关键的一点易用性方面不足是,多少个版本推出来,还是不支持标签页浏览,真是不可理喻,而且对中文的支持也是一直都没任何改进。  所以最好的工具是能集VC+VAX代码编辑功能和Source Insight代码浏览功能于一身的。但是目前还没有找到能达到这种效果的软件,从免费到商业的,都没有。回到最开始提出来的,要用MinGW+wxWidgets来做开发,还是比较困难的,比较折中一点的办法是,先在VC里做debug版进行开发和调试,定期用MinGW生成release版本进行测试,先打造一个好用的CppCoding工具。

九选三,pass!

  周五的时候才知道,原来我报的是6月30日的考试,一直都以为是7月10日的,所以一直都不怎么着急,还觉得练车次数太频繁,殊不知是30日。周六吃过中饭,正在睡午觉,教练还打电话叫我下午去练一下车,我说不行,要5点半才下班,然后拖到周日上午。今天又是6点半就起了床,匆匆赶到训练场,跟江江一起练了一个半小时,单边桥的我老是右边上不去,教练说不要紧。  说好11点集合,还有2个小时空闲,于是无所事事地到百草园去,江江趁这个空隙跑去体检了,我就只好无聊地看看网页,偶然发现blogger又解封了,像是重刑犯放风一样。到10点半的时候去百草园对面吃了一碗炸酱面,太多油,腻死我了。刚好11点,教练简单讲了一下考试时的注意事项,然后把我们带到接送车的地方。  12点半不到就到车管所了,一直到大约2点半的时候才轮到我们考,当时我还多紧张的,可是抽到的是3道,除了定点停车和侧方位停车外,另一项是所有项目中最简单的直角转弯,真是太幸运了。一上去就忘了起步打左转向灯,心里顿时瓦凉瓦凉的。好在后面的都冷静沉着地正常发挥,不但是我,连电脑也是,一点意外都没有,一次就pass了,心中那块石头放下来了。  九选三,pass!

如何利用机器资源

  今天突然发现,我在公司里有使用权的机器有好几台了,除了本来一直在用的,从进部门开始就配备的那台联想台式机外,还有一台2001年的老爷机,一台双核2G内存的工作站,一台双核双至强1G内存的IBM服务器,还有一台双核2G内存的服务器。这么多可用资源,现在却发挥不出作用,对工作没有什么帮助,实在让人觉得可惜。  但是如何利用这些机器资源呢?我确实也想不出好的点子来。可以建些版本控制、数据库、HTTP之类的服务,但还是大材小用。隐隐约约脑中一个概念闪现——分布式计算!可是现在分布式计算能大众化实用化的也没怎么看到了解到,曾经用过一个号称可以加快编译速度的利用VC的分布式编译工具,但当时试用的效果并不好,四五个机器一些联合编译,最后不但编译出来的文件有问题,耗时也比单机编译的多,真让人失望。  继续想、继续想,如何利用这些机器资源呢?

Side by Side Again

  昨天随口给一个同事讲了一下怎么部署用VC2005生成的应用程序,才能解决因为先进的Side by Side技术引起的应用程序配置问题。其实我自己也是半生不熟,没有掌握到真正的精髓。今天那个同事就给我打电话,说还是没有解决这个问题。于是我就亲自出马,上午搞了半个小时,还是没搞定。于是看我原来用VC2008写的WallpaperHelper怎么弄的,以及人家的Edraw是怎么弄的。一点一点凑,最后发现那个么临界点,只要先到VC安装目录下有个redist目录,里面能找到发布用的dll和配套的manifest文件,复制出来,然后把manifest中的内容复制出来,自己填写一个新的manifest文件,作为RT_MANIFEST类型添加到exe的资源中,这样就基本解决了。而且从中看到,manifest中的版本号可能比dll的实际版本号要低,但是没关系,反而如果自己强行把manifest中的版本号改了,程序反而不能正常运行,反正照着redist目录里的那样填就行了。

升级到Firefox3

  话说本来6月17日就是FF3发布的日子,不过由于时差等因素,昨天一直没等到它的发布,于是只好等到今天。回到家迫不及待地下载安装,然后把需要的扩展也跟着升级,对于一些没有对应版本的扩展,只好再上mozilla的网站找替代器,忙乎了一阵子。  媒体传闻得沸沸扬扬,说得悬乎神技地,但我用了一个多小时后,感觉也没多少值得表扬的。比较明显的改进是,内存占用确实比以前小了,可能只有原来的2/3或1/2吧。另外一个比较明显的修改是所谓的Awesome bar,就那花里糊哨的地址栏,也许是我还没用出来吧,反正觉得原来FF2里的也没有不好用到哪里去,这个也没有方便到哪里去,所以这个特性算不算得上是改进,我保留意见。再有,就是启动速度似乎是比FF2快了一点,不过对于我这样已经习惯于龟速电脑的人来说,吸引力也不是特别大。  倒是一些原本在FF2里用得好好的扩展,到FF3里不能用了,这让我觉得很郁闷,比如Tab Mix,还有能将网页保存成mht格式的Mozilla Archive Format,都找不到够格的替代品。还有,号称的15000项改进在哪里,仅仅是我这一个半小时的使用,就崩溃了2、3次,这个品质不行啊!  好了,牢骚发完了,要不是因为不想用IE,要不是看中它扩展多,升级方便,我才不这么啰嗦哩。

专心做一体化平台了

  看了他们整理了有十几条新的需求,另外bug也确实不少,跑去请示了一下老大的意见,是要认真到这个东西做下去喽。既然这样,就暂时放下编辑器和扩展框架的事了,计划一下如何把这个东东做好点。原来的有些设计是不合理的,在时间充裕的条件下,是肯定有更好的解决方案可以替代的。  如果真要专心做这个东西,有两点是可以很大优化的。一个是图形库,整出一个像edraw样效果出来,让该死的Excel见鬼去吧。另一个是分布式文件共享,看了Kademlia的一些介绍,不禁有点蠢蠢欲动,如果自己能实现一个通用性好的,后续的价值太大了。  这两块是相对较大的改动,其中还会涉及到数据库的设计等小细节,想起来居然隐隐有点儿兴奋。

考倒桩

  考倒桩去了,有两次机会,第一次在最后倒车时,右边的观后镜刮到桩了,第二次就提前打方向盘了,有惊无险,呼呼,困死我了。

音频播放器小比拼

  如果在goolge(不是“谷歌”)中搜索关键字“音乐播放器”,排在第一位的,赫然是千千静听,第二位提QQ音乐,第四位是Kugoo,如果搜索关键字“音频播放器”,则出现的是foobar2000,而前3位则连影都没有。这一方面似乎可以看出,中国大陆用户对此类软件的偏好和定位。  因为前些天看到Kademlia的介绍,想到可以结合着做一个不需要服务器的P2P音频共享播放软件,于是偶然关注了一下现在国内流行的此类翘楚。就个人感觉,最专业的还是foobar2000,虽然它的默认界面非常简陋,没有歌词显示,没有文件搜索等诸多目前国内用户用得最多的功能,但是它做为一个音频播放软件,在纯粹的音频播放功能上可是一点儿都不马虎,尤其是它的插件机制,从效果上看,远远强于其它的竞争对手。目前最新版本0.9.x的频谱显示功能,比起前几位,也是强得不行,就比较流行的狭小范围看来,大概只有WMP能跟它匹敌吧。不过由此带来的负作用是,新手上路困难,难以获得菜鸟用户的青睐。另外随便看了一个曾经的老大Winamp,现在是5.5.x版本了,不过在我的机器上极不稳定,立马就卸载掉了,而且似乎没有做好市场调查啊,亦或是老外的使用习惯上就是那样的?  中国市场的大半江山应该是被千千、QQ、Kugoo三巨头控制了,这三个软件互相之间做得很相似,唯一大点的区别是Kugoo是以文件共享起家的,经过几年的经营,可以极其方便地以P2P的形式直接下载歌曲文件,而服务器上只需要保存些索引即可,负载压力顿时少了。千千则是以纯粹的音频播放器出身的,注重音质音效等是它早些年发展的重点,然而国内用户似乎并不特别在乎这点,当年的在线搜索歌词功能为它短时间内赢得了大量忠实用户。  其中一个重要的现象是,音乐网络化。三个软件都可以打开一个小窗口,显示一个网页,通过该网页可以查看当前的音乐流行趋势,在线试听,甚至下载(中国不像美国那么注重音乐版权,中国人真幸福)。其它的功能特点,就都很普通了,无非是换下皮肤啦(这皮肤机制也都很土,就是换一下窗口边框,这点WMP就强太多了),有个播放列表啦,搜索显示歌词啦(foobar/WMP/winamp默认的都不行,至少得装插件才能支持),支持插件啦(似乎都没公开的SDK,foobar/WMP/winamp都有,这似乎又说明了两地用户的使用习惯和素质上的差别)等等。就这些明显的特点看来,中国用户跟欧美用户的使用习惯上应该有不少的差别,本土三巨头也算是依仗本地优势,因地制宜,殊途同归啊!

似乎中毒了

  唉,回到家照往常一样打开电脑,发现explorer.exe是起来了,但界面没出来,倒是弹出个出错消息框,说是哪个进程不正常,看这名字就感觉不是正常的。等了老半天,没耐心了,重启系统,倒是能像平常一样进来了。偶然发现system32目录下有好几个奇怪的文件名诸如oooooo.dll、ffffff.dll之类的文件,而且会自动注入到其他进程中去。windows目录下也有几个文件名很怪的.exe文件,还都放到了系统启动项中了!  似乎中毒了!真烦人啊,编译个wxWidgets也是没完没了了,以前可要快得多啊!唉,得下下决心,整台好点的台式机来,装Linux来,就用来平常看网页和写程序吧。