All Stories

专心做一体化平台了

专心做一体化平台了

  看了他们整理了有十几条新的需求,另外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来,就用来平常看网页和写程序吧。

软件该升级时还得升啊

软件该升级时还得升啊

  为了用上比较新版本的flex和bison,又不想额外装个啥Linux,于是只好走旁门左道了,在Windows上装个cygwin暂解燃眉之急。这个cygwin也是个小气的东西,只提供一个大小只有几百KB的在线安装程序,这个程序从远程服务器上下载了文件列表,根据用户选择,下载需要的文件到本地再进行安装。无奈的是我贪心了一点,想把所有的软件包都下载下来,结果昨天晚上开了一晚上,卡在一个包上,后面的都没动静了。  今天回来看了一下这个软件包列表,提取出所有软件包的远程地址,导入到FlashGet中进行批量下载,可是这个1.9.x版本的FlashGet有不小的问题,平常还看不出来,在下载项很多时,总是不时地卡住下载不下来,而要暂停一下再开始,才能继续下载。当时用它来下载那几千个sogou的皮肤,也把我弄烦死了。今天又是这个状况,偶然兴起,上网看了一下最新的版本,已经到了2.0了,于是索性装一个来试试,哈哈,似乎没有这个问题了哦,而且界面上也改得面目全非了呢!软件该升级的时候还得升啊,呵呵!  再扯些其它的,这东东放了一堆的广告上去,这也是没办法的,谁叫它是个免费软件呢,人家也要吃饭的。好久之前就听说它是能下BT的东西,不过我已经久不用BT了,改用eMule了。另外又看到它也用到了DHT技术,大概是为了下BT下载才用的吧。前些天看到一篇blog,讲了eMule的Kademlia相关内容,让我有点热血沸腾,这个技术再搭上一个音频播放器,只要用户足够多,就不用什么Kugoo了嘛!

开源的东西要用还得多用用

开源的东西要用还得多用用

  几天无聊中,又拿起TeX来玩,这东东用来做PDF真不错,可用来写软件的user guide或manual,也不用做htm或chm了。  编译器用gcc,界面库用wxWidgets,多语言和国际化用gettext和iconv……  今天偶然发现cygwin中的flex已经是2.5.35版本了,而gnuwin32中的才是2.5.4,bison在cygwin中是2.3,而gnuwin32的是2.1,差了不少了啊,看来得装个简装版的cygwin才行。  也不单是为了不用盗版,而是这些开源产品确实质量已经足够了,尤其是在开发方面。

为了无界面运行Redmine

为了无界面运行Redmine

  项目组把mantis换成了redmine,相比之下,redmine似乎提供了更多功能,也更符合我们目前的需要。redmine是一个ROR(Ruby On Rails)应用,于是简单起见,我们使用了InstantRails这个傻瓜包,但是,有一个问题是,我们总是在InstantRails的界面上使用Mongrel启动Redmine,于是会出现一个Ruby运行的黑窗口,一直到运行结束。  从网上找了一些资料,发现至少有两种办法可以解决这个问题。一种使用Apache之类的专业Web服务器,然后安装FastCGI,把ROR在后台运行,所有外部请求由Apache来转发。另一种是使用Mongrel_service,把mongrel注册成Windows服务,这样就可以在后台运行了。于是我想试一下第二种方案。  本来gem install mongrel_service这样一条命令似乎就可以把这个gem包安装到本地,但实际上我发现我根本不能安装任何一个远程服务器上的gem包,可能跟网络环境有关。于是我只好到它的官方网站下一个gem文件下来,用gem install mongrel_service -l命令进行本地安装。这时会提示需要win32-service包,于是到Rubyforge上去找到官方发布,也下载到本地安装,然后又提示说要windows-pr,下来安装以提示说要windows-api、继续下来安装,继续提示说要win32-api,再下来安装,然后反向这个顺序依次安装,到了后来,提示win32-service的版本要是≥0.5.2或<0.6.0的,而我装的是0.6.1的,于是只好反安装,rubyforge上又找不到0.5.2的,从其他地方搜了一个源代码包,解开后,执行命令ruby win32-service.gemspec,会生成gem包文件,再来安装,又提示要VC,而且经过试验,如果是用的InstantRails 2.0中的Ruby,则要用6.0版本的VC才能正常编译。终于mongrel_service也安装好了,可以注册一个Windows服务器,启动这个服务,则用ruby运行一个rails应用,我这里就是redmine了,当然redmine需要MySQL支持,不想直接使用Instantrails了,把MySQL也添加到服务中,Apache是不需要了,启动这2个服务,就能无界面运行redmine了,哈,开源的东西,还真是有点麻烦呢!

这个世界有点疯

这个世界有点疯

  偶然看到一则消息,遨游将自主开发浏览器内核,真是让我觉得有点不可理喻。当今世界,IE、Firefox、Opera、Safari几大流行浏览器正拼了个你死我活,遨游从MyIE开始,多少年来一直使用IE内核的外壳程序突然从中插一脚,在我看来,实在是前途困难重重,希望渺茫啊!  先不说遨游是否有这个技术实力,就算有了水平堪与一流产品比肩的成品,最后的宣传推广,以及后续维护发展,也是前景相当不乐观的!

困了累了不想动了

困了累了不想动了

  总觉得心事重重,走在路上焦躁不安,忍不住安慰自己“熬过这个六月就好了”,心里刚刚默念完,突然觉得这句话很熟悉,似乎以前自己说过。不过要说真的说过的,那肯定得是一年前才可能的事了,去年的六月我又在烦些什么呢!确实好像这一年多来,一直过得很不顺心,每次都劝自己说“熬过这段时间就好了”,结果这样的时间一段接着一段。  计划有点宏伟,但对于我这么一个懒散的人来说,着实有点困难:WallpaperHelper——VC/MFC;SourceCoding——MinGW/wxWidgets;DCoding——MinGW/wxWidgets;CppCoding——MinGW/wxWidgets;PHPCoding——MinGW/wxWidgets;RubyCoding——MinGW/wxWidgets;PyCoding——MinGW/wxWidgets;LuaCoding——MinGW/wxWidgets;TclCoding——MinGW/wxWidgets;PerlCoding——MinGW/wxWidgets;TeXCoding——MinGW/wxWidgets;XMLCoding——MinGW/wxWidgets;Flowchart——MinGW/wxWidgets;SoftwareDiagram——MinGW/wxWidgets;NetworkDiagram——MinGW/wxWidgets;Go——MinGW/wxWidgets;Chess——MinGW/wxWidgets。