懒惰的我和不顺手的GTD工具

2007年12月3号

星期六的晚上, 我在超市里, 想买些吃的东西好星期天自己做饭吃. 但是在我焦虑(这个词真TM恰当)地转了好几圈之后, 发现阻碍我将任何类型的食物放入购物篮的居然是我的懒惰: 我当时实在是不想去考虑明天要吃什么, 做哪几个菜, 怎么搭配, 如何烹调这些细节问题. 而随着人流在超市里折返是一件非常没有快感的事情, 于是拿着一袋鸡精和一袋淀粉去了收银.

其实要让自己远离懒惰的一个好方法就是做计划, 而做计划就很自然的想到了GTD工具. 但是我用过的GTD工具都给人一种不那么顺手的感觉. 之前用过比较多的是Remember The Milk, 它可以将需要做的事情分成几个类别, 并且写预计完成日期, 添加备注什么的, 并且并且, AJAX做的很漂亮. 但是就是觉得用的不顺手.

我至今为止用过最顺手的GTD反而是去年在CTGUSEC的时候自己用来记事的一个本子. 我会在每天晚上把明天要做的事情一项一项的列出来, 必要的时候大项下面分小项; 第二天晚上先检查昨天写的那一页, 做完的打勾, 没做完的抄到新的一页上来(这点很重要), 再加上其他明天要做的事情. 后来事情多了, 有些事情不是必须明天做完, 但是又必须记得有这么个事, 并且随时要放进明天的, 就把每页分成两部分, 下面放不需要明天立即做完的事.

记得在哪个blog里看到过(还是译言, 忘了), GTD的功能就是让你排除其他事情对你的干扰, 让你集中精神对付手头的事情, 因为你知道其他事情已经都安排好了. 但是在用Remember The Milk的时候, 那些分类反而让我无所适从. 所以, 我想我可能需要自己给自己设计一个GTD了.

基本的想法就是上面说过的我之前写记事本的方式, 看情况加一些其他的功能吧.

我总是认为, 没有一个自己正在写的小项目的程序员是可耻的. 在这方面我的老同事比我做的好很多. 恩, 从明天晚上开始.

Fundamental

2007年12月2号

我一直认为, 基础是很重要的.

所以, 考试前, 大家都在抱佛脚, 拼命做卷子的时候, 我就偏偏喜欢看书. 恩, 但是效果貌似不是很好. 咳…

如果你注意到了我blog右边的”My Douban”, 可能会猜到我为什么提起”基础”这个话题. 是的, 我最近在听The Beatles.

最开始知道Beatles, 是高中班长阿牛告诉我有一首很好听的英文歌叫Yesterday. 那时都还很懵懂, 所以也没有留下什么印象. 一直到上大学以后, 一头扎进了DT里面, 并且在03年的现代鼓手音乐节上看到了Mike的那个向Beatles致敬的乐队——Yellow Matter Custard. 那时候就发现原来While My Guitar Gently Weeps是这么好听的一首歌, 并且在麦子同学的电台节目里做了重点的推荐. 再后来就是最近, 看了Mike的新DVD In Constant Motion, 里面放出了03年鼓手节DVD里没有收录的一首Yellow Matter Custard现场表演——Magical Mystery Tour.

有趣的事情就在此时发生了. 我拿起吉他尝试扒这首歌的和弦——我自认为扒和弦还是比较强的——在结束了半个小时的尝试之后, 我终于还是决定向我们的好朋友Google求助. 是的, 我败了.

很有趣的巧合将这一切串联起来. DT, 复杂音乐的代表乐队, 他们的鼓手向40年前的Beatles致敬, 并且我没能扒出Beatles 40年前写的歌的和弦. 于是我开始认真的听, 认真的听40年前他们写的东西. 我惊讶的发现, 当下很多所谓的流行音乐, 还不及人家40年前所创作的东西来的有创意, 来的丰富. Beatles虽然整体上也是给人一种简单而又舒服的感觉, 但又绝不呆板. 而一些相对更简单的歌像A Day in the Life还有The Fool On The Hill, 也给我很温暖的感觉. 也许是因为DT最近的音乐完全没有了大调, 听到大调觉得很舒服.

不要一下子告诉我太多东西, 我想就这样慢慢地听, 从1967年开始, 慢慢的继续这个Magical Mystery Tour.

مرحبا العالم

2007年11月26号

最近老大说要把我们的系统翻译成越南话和阿拉伯话.

当然, 不是让我们来做翻译, 是让我们把要翻译的东西导出来, 交给越南翻译和阿拉伯翻译. 但是老大说, 在给他们翻译的文件里, 最好有个”建议翻译”, 这样可以减少别人的工作量.

OK, 那么我们现在来看一下据说是目前全球最好的机器翻译系统——Google翻译.

首先, 这是一个设计给人用的界面(废话). 咳咳, 恩, 我的意思是说, 目前Google还没有一个可以直接通过程序访问的翻译API(又貌似是有一个, 但是附加条款很多, 且每天只能访问1000次, 等于对我们没用). 于是乎找到了这个项目.

很简单的一个东东, 用java写的, 核心部分就是用一个HttpURLConnection把Google翻译的网页搞下来, 然后分析字符串, 抠出翻译过的文字.

它里面附带了一个测试用的主类. 在里面用几个String把各种语言的”Hello world”保存在里面, 并调用Google的翻译, 将翻译结果与之对比. 我直接跑了一下, 居然……编译通不过? 提示”编码 GBK 的不可映射字符”.

去网上搜了一下, 终于知道原来netBeans(中文版)的默认编码字符集是”GBK”!

把netBeans的默认文件编码改成”UTF-8″, 并且修改了项目的编译属性之后, 总算可以运行了, 但是对比的结果大多都是错的.

于是又是一顿狂查资料, 前后差不多历时将近一个星期. 结论就是: java虚拟机有一个系统属性叫做默认字符集的东东(Charset.defaultCharset()), 在生成String对象的时候, 如果没有特别指定, 则使用默认字符集. 而这个默认字符集又是根据底层操作系统来决定的. 于是乎, 在Win XP下就成了”GBK”(此”GBK”非netBeans储存源代码时的默认编码”GBK”). 而那个获取Google网页的代码又是直接用BufferedReader.readLine()来读取的, 没有加任何字符集参数, 于是乎, 全都给编成GBK了. 导致的结果就是, 除了几个欧洲语言和中文之外, 其他如日语阿拉伯语朝鲜语俄语统统出错.

再次充分研读了Java API Doc之后, 重写了那个InputStream转到String的方法:

[coolcode lang="java" linenum="off"]
private static String toUTF8String(InputStream inputStream) throws IOException
{
Charset utf8 = Charset.forName(”UTF-8″);
CharsetDecoder utf8Dec = utf8.newDecoder();
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream, utf8Dec));
StringBuilder sb = new StringBuilder();
String buffer;
while(null != (buffer = reader.readLine()))
{
sb.append(buffer);
sb.append(’\n’);
}
return sb.toString();
}
[/coolcode]

其中的重点在于:

1. 通过一个Charset对象生成一个对应该字符集的CharsetDecoder
2. 用这个CharsetDecoder生成InputStreamReader, 它将会使用指定的字符集编码规则, 将流中的数据转换成字符.

经过改造之后, 所有语言终于都返回了true. 但是还是有点不爽的就是, 阿拉伯语和朝鲜语在netBeans的输出里都变成了问号. 我后来又试了一下, 在cmd里面是同样的效果. 本来我怀疑是中文版的Windows不支持这两种语言, 但是我试着用阿拉伯语做名字新建了一个文件夹发现没有问题. 于是乎这个问题目前还暂时无解. 但是输出里看不到好像并不影响使用, 因为我尝试输出到文件里面, 再打开发现是正常的.

冲破层层艰难险阻, 终于可以从Google那里得到传说中的阿拉伯话了. 这时候组长大人突然告诉我说:”你不知道在短时间内访问Google太多次他就会让你输验证码么? 那个防病毒的机制…”

“哦”.

后来, 我们还是只给了他们纯英文的文件.

我来啦~

2007年11月11号

他们来啦!

2007年10月23号

我什么都想说, 我什么都不想说.

2008年1月22日是星期二, 所以我可能需要请4天假, 周一到周四. 飞机貌似要1000米, 太贵, 所以还是做火车好了, 450米的样子, 还得坐一天一夜. 星期六中午上车, 星期天中午到, 下午休息一下, 晚上小玩一下, 星期一玩一天, 星期二白天小玩一下或者直接去”蹲坑”, 晚上不知道要High到什么时候……星期三白天睡觉, 晚上上火车, 星期四晚上回来, 星期五上班, 然后紧接着又是周末. 所以也可以直接把星期五也请了, 星期四和星期五和星期六可以在北京好好玩玩, 星期六晚上坐车, 星期天晚上回来.

预算是火车票乘以2约等于900米加上门票, 就算1000米吧, 不可能再贵了吧~~(但是也不排除到时候推出所谓的VIP大礼包, 包括纪念品和签名留影机会的, 对我那可是”相当有杀伤力”……), 合共约等于2000米, 其他没有了, 某人, 你知道你该做些什么了吧~~挖咔咔咔咔咔~~~

至于那个”MG Live House”到底是什么东东, 我搜了一下, 发现是吉他中国现代乐手合作搞的一个东东, 号称是一个”移动Live House”, 估计是说没有固定的地点吧, 所以到时候究竟会在哪里演还不知道. 我发了一个帖子问吉他中国的人, 目前还没有得到任何明确的答复.

我已经有些倾向于请5天假了.

我们为什么需要博客搜索引擎

2007年10月10号

之前我也不知道为什么专门要给blog搞个搜索引擎——如果是想知道一些问题的答案, 特别是一些技术问题的话, 网页搜索完全可以给我足够好的答案, 并且网页搜索中其实也是包括blog的, 所以那时并不知道blog搜索引擎究竟能给我什么不一样的东西.

直到最近, 越来越多地遇到这样的情况: 想求证某件事情或者了解某个人/机构, 但是如果直接用网页搜索搜的话, 只会被”官媒”们的”一大块红布”蒙住了眼睛. 于是我突然想到, 何不看看”他们”是怎么说的? 对了, 他们, blogger.

而且我确实能在他们那里得到我想得到的答案. Blogger在中国, 是群很棒的人. 他们有清醒的头脑, 有自己的想法, 有独立的意识, 而且最重要的, 他们有发表的欲望与条件. 这一切使得blogger成为了可信度颇高的一个评论群体. 也许你对某个.cn网站心存疑虑, 不清楚它与它的.com老爸之间的关系, 听听他们是怎么说的吧; 也许你对某个最近突然蹿红的”网络名人”感到莫名其妙, 听听他们是怎么说的吧; 也许你对某个被吹的天花乱坠的东东拿捏不准, 听听他们是怎么说的吧. 你不一定能找到那个最正确的答案, 但是你绝对能找到对你有帮助的观点. 因为, 他们表达的目的与他们思维的方式一样——不轻信, 所以也不会为了让别人相信而表达. 拥有自己独立的思考能力是他们共有的标签.

我最近常用的blog搜索引擎是有道博客搜索. 有道是我一直关注的一个新搜索引擎, 隶属网易, 他们给我的感觉还比较好, 像是在做事情的一群人. 最近我就用这个博客搜索引擎找到了很多对我很有用的东西. 其他的博客搜索引擎包括Google博客搜索, 百度博客搜索等, 由于基本上没怎么用过, 就不评论了.

当然, 最后但是不最少, 只要是国内的搜索类工具, 总是这样的, 这也是没办法的事情. 我说的是, 如果你想知道他们说十七大怎么样的话, 没门.

本来想做顶图的

2007年09月16号

tc3w

但是在MyCSS里怎么搞都搞不好, 索性贴出来给大家看吧……

液体张力实验室(LTE)的新动向

2007年09月9号

大家都知道DT的鼓手Mike是个爱玩Side Project的家伙. 包括他的那一系列致敬乐队的话, Mike搞过的SP差不多要有上十个了. 但是如果要在所有Mike的SP里选一个最经典的, 无疑还是LTE.

Liquid Tension Experiment, 在1997年由Mike牵头组建, 包括了DT自家的吉他手John Petrucci, 前摇界的老杆子Bass手Tony Levin, 还有当时还在Dixie Dregs乐队的Jordan Rudess. 乐队在1998和1999年分别发表了专辑. 无论如何, 我都一直偏执地认为, LTE可以称得上是纯器乐前摇的登峰造极之作.

之后的故事大家都比较熟悉了. 由LTE的成功, 促成了Jordan Rudess最终答应正式加入Dream Theater乐队担纲全职键盘手. 也由于LTE的成员中3/4已经是DT”自家人”, 所以Mike也多次表示过”不会再有LTE了”.

但是, 但是…你不会觉得心里有些痒痒的么? LTE带给我们的听觉享受, 那种爽快的感觉, 是DT无法代替的. 我并不是在日诀John Myung, 他和Tony Levin是完全不同的两个类型的大师. 再从DT整个团队的角度来说, 也有着自己的方向. 所以, 所以…为什么LTE不能再来一次呢?

好了, 铺垫的差不多了, 以下放出消息:

在DT的5位同学在去年年底忙于在录音棚中录制Systematic Chaos专辑的时候, 他们的老朋友, LTE阵容中唯一一位不是DT成员的老大哥, Tony Levin, 来到了录音棚探班, 并与DT成员亲切交谈(恩, 这句很新闻连播, 我知道). 会谈的内容并没有向外界透露, 但是可以肯定的是, 这4个人重新聚在一起, 是肯定会讨论到LTE重组的可能性的. 进一步的消息, 大家就等吧…

图一是Tony去探班的时候和原LTE成员Mike, John, Jordan的合影:


[图一]

这里还有Mike自己在他的论坛里发的帖子(在11楼).

仅仅是一张照片, 仅仅是探班? 还有.

2007年9月25号, Magna Carta唱片公司(LTE的签约公司)将发售一张CD, 封面如图二所示:


[图二]

大家可以看到, 这是一张”Liquid Trio Experiment”的碟. 别被忽悠了. 这张碟的实质内容是: 在98年年底LTE制作第二章专辑的时候, John Petrucci的老婆正好生了, 所以John得花很多时间去照顾老婆和小女儿. 这时候被晾在录音棚里的3个无B聊的人(名字详见图二)就开始瞎搞——他们叫Jam, 嗯. 就这样, 等John照顾完老婆回来的时候, 就将一部分瞎搞出来的东西加上吉他部分, 然后就成了第二章专辑里的”914″, “Chewbacca”, “Liquid Dreams”等等这些歌. 当然, 还有一些瞎搞的东西到最后没用上, 但是Magna Carta又觉得丢在那里太可惜了, 于是就有了图二所示的这张碟.

当然, 还有一件事在这里不得不表. Mike后期和Magna Carta唱片的关系搞的很差. 具体的原因搞不清楚, 反正照Mike的意思, 他实在是不愿意再在Magna Carta出碟了. 但是由于合同啊什么的这方面的烂事, 要想真的出一张不在Magna Carta名下的LTE新专辑, 还是有些麻烦.

所以, Mike最后说, “不幸的是, 有一个很麻烦的问题困扰着LTE的新专辑计划…而且我要说的是, 这麻烦并不是来自图一中的任何一人!!”

汕头在挨踢圈傻B了一把

2007年09月1号

而且还不是一般的傻B.

可以在搜索引擎上找到这些

更傻B的还在后头, 听说因为那些啤酒肚们要去开个会, 所以你们这段时间都不许说话了.

本来这么久没更新, 上来应该写点好玩的东西, 但是, 很抱歉, 现在的氛围就是……很好, 很河蟹……

近期小作

2007年07月27号

Train of Thought

在2007年7月7日这一天, 我不管三七二十一录了首歌. 这首歌来自Dream Theater 2003年发行的第七张专辑, 也是号称乐队史上最”重”的专辑 — Train of Thought. 但是别以为我在三7之日在家发神经录了一首金属, 我录的这首其实是整张专辑里面唯一一首不金属, 反到很柔的歌 —— Vacant.

会录这首歌纯粹是因为有这首歌的伴奏. 在他们04年日本东京武道馆演唱会DVD的字幕部分, 背景音乐就是这首Vacant的伴奏, 可以说没有比这更原版的了. Vacant我之前好像也录过一次, 但是那次貌似是一遍过的, 之后随便加了点效果就扔那里了. 这次因为有一整个下午的时间, 同时又因为看了DT最新专辑的录制过程 —— Chaos in progress —— 于是决定分段录, 每录一句都先听一下, 觉得不OK马上重新录这句. 看了Chaos in progress的同学应该知道, James就是这样录的(JL: I do not fight for you~~~~~~ MP: Mother f*cker~~~~). 但是录到后面实在没劲了, 时间也不够, 于是就两三句合一起录, 后来仔细听的时候发现好像是没有前面控制的好, 但是整体还是比以前”一遍过”有了很大进步了……

效果方面, 好像是除了加Verb之外, 还用两轨音量很小的轨做了Echo. 但是做出来之后再听的时候发现有的地方Echo显得太重了, 估计是后面调整的时候又把Echo那两轨的音量给加了一点……无论如何, 这个是2007年7月7日的第一版release, 后面如果要再调整效果的话就再说了……

恩, 不多废话了, 下载链接在下面(温馨提示: 请使用耳机收听, 以免收到奇形怪状的水果)

http://dtxway.googlepages.com/VacantbyDreamXWay.mp3