blog mail me! feed

Archive for December, 2008

好吧, 这么说吧.

好吧, 这么说吧, 我的这一年:
和3位大户一起购入了一台二手的1U服务器, 然后很白痴的对着文档乱七八糟的配置了服务器;

终止了一个因为缺乏文档而不了了之的奖学金评估系统, 虽然这个系统让我学会了php;

想基于.net CF 2.0完成一个手机上的数独游戏, 在完成了数独的生成, 光标的移动后, 就不了了之了(后面这样的句式会重复无数次-_-!);

完成了一个混乱不堪的flatGrid;

完成了一个半成品就因为种种原因停止更新的Stage2, 虽然这个系统是我第一次用Python写一个实际的项目(FTP爬虫), 也是我第一次用Xapian实现一个较为完整的全文搜索引擎, 也是我第一次尝试用MVC结构用PHP来搭建前台;

完成了一个一堆bug而且不怎么好用的DormID系统;

把51ditu(灵图)的API去掉了调用的限制, 在本地实现了地图系统(包括需要的图片文件), 修改了灵图导航和公交API的调用, 使得用户在Intranet里也可以通过服务器做Proxy获得数据. 做这些是想做一个由用户产生内容并分享城市生活的地图标记系统, 然后这个项目由于种种原因又半路荒废了;

一段时间对P2P似乎很有兴趣, 于是用C#写了一个P2P传文件的软件的雏形, 大部分的时间浪费在了如何用C#操作非托管内存的处理上, 以及字节对齐的一堆问题. 继而系统重装, 这堆效率极低实际没啥功能的代码也就消失了-_-!;

改了一点NUT的代码, 试图加上一些东西和自己的一个iq扩展, 结果不了了之, 虽然基本已经完成了大半;

用了一个通宵给WPMU加上了文章推荐功能, 然后几乎被人民群众所忽略;

给自己的域名搞了一个乱七八糟的首页;

花了两三个通宵去搞五月天成都演唱会的抢票活动的网站, 然后被告知五月天来不了了;

找了一堆协同过滤的垃圾论文, 基于MovieLens的数据库和MATLAB玩了下数据挖掘和协同过滤的小实验, 然后就不知道忙什么去了, 之所以使用MATLAB是因为那段时间的数学实验上得很high;

基于Python和自己的一些测试数据再次做了一些协同过滤的实验, 发现稀疏集下的结果很诡异, 后来.. 又不知道忙什么去了;

用Python和xmpppy写了一个基于XMPP的机器人, 以辅助flatGrid中类似Twitter服务的多元化, 为xmpppy频繁掉线和Python的一些编码问题头痛了N小时, 继而解决了这些该死的bug;

在纠结于内存越界和浮点数的一些小处理疏忽而导致诡异bug数小时后, 完成了第一个基于论文的细菌蛋白质编码基因识别程序, 同时接受了我C++很烂的事实;

试图用libfetion和C++完成一个飞信的机器人, 然后进度被打断;

学习了一点shell脚本和awk的使用, 后来切到Windows开始写基因识别的程序, Linux就快被我忘光了;

正在写一个基于Apache POI的把PPT转为在线可分享的Flash的课件平台;

—————————
看了又放弃追了: Cane, Chuck, The L Word, Dirty Sexy Money
继续追了: CSI:NY, House M.D.
开始追了: Fringe
倒回去追了: Skins, The Big Bang Theory
听了不少Folk, Indie, Jazz, 除了技术类书籍什么像样的书都没看-__-!

————————-
这一年,
我21岁, 恋爱第四年.
溜达去了三亚,  泸沽湖, 丽江和青海.

我觉得很多事情都很好, 因为它们发生了,
有些事情不好, 因为我继续迷茫着未来,
而且这种状态会一直延续到2009年.

鬼知道它什么时候结束, 然而终究是新的一年了,
Happy new year!

吃到了传说中的第一张罚单…

成南高速出口, 限速60,
开了80, 于是被闪了. 

然后警察叔叔就把罚单寄来了…

更诡异的是, 我老爸开回程的时候, 又忘了,
继续开了80被闪 -_-!

年关了, 我居然这么配合的给警察叔叔创收,
不应该啊, 不应该啊…

*UPDATE*
结果是在专用车道行驶吃的罚单, 而且不是俺-_-!

悲剧啊!

第一个细菌基因预测程序写完了, 倒是有个巨大的bug,
内存回收那里总是会出错, 而且必然出错在第431个ORF序列, 为什么我就没有对这个数字敏感呢?
这个数字正好是霍乱弧菌小染色体上明确编码蛋白质的基因数…

为了支持多染色体文件的输入, 我改使用了顺序容器托管了染色体序列,
只有一个变量,  用于存储种子ORF数目的, 忘了使它自增, 于是就引起了后来的一系列内存操作越界,
以至于让我花了几个小时几乎崩溃去找到使得内存回收出错的地方…

seedOrfNumber = PickSeedOrfs(pttFile.c_str(), listSeedOrfs, listPutativeOrfs, instances);
改成
 seedOrfNumber += PickSeedOrfs(pttFile.c_str(), listSeedOrfs, listPutativeOrfs, instances);
后, 世界都清净了…

叫你丫的不注意… 悲剧啊! 教训啊! 惨痛的刻骨铭心的教训啊!!

2008这一年.

我想之所以一年被以这样的方式所纪念,
是因为无论从历法上, 还是从习惯上, 还是从轮回感上, 都让人得到充实和饱满.

这一年的大半时间里, 我20岁,
此时, 我是21岁.
我想社会的进步会把人推向一种迟延成熟的状态,
一层层的缓冲壁垒像一年一年的年轮画成的界限, 把你和社会, 真实的社会隔绝开来.

我很乐于听到说, 大学是社会的微缩的景观,
事实是无论在清寒的清水河, 还是在逐渐萧条的沙河, 我都只看到许许多多强加粉饰的遮掩,
正是因为这, 我说大学全然不是社会.

有点意思, 辅导员们同是一张张未曾涉世的稚嫩的脸,
却仍然可以履行着baby-sit的职责把大学生宝贝们好好的圈养起来,
天条纪律一条条的紧箍着本应该充满了自由与思想的一群人.
所以这游戏就变得如同一帮哥哥姐姐带着弟弟妹妹在诺大的校园里扮着过家家般的幼稚.

这一年的风暴席卷着整个校园,
所有的辅导员和书记都更加坚定了口风, 把潮水般涌来的大学生源继续推向下一个闸,
只因为就业形式的恶化, 瞬间好像寻找几年规避风险的缓冲就成了最为明智的选择,
短视.
抛开这个世界是否二元不谈, 抛开就业背后的种种风险不谈, 就谈考研,
面对着新一轮潮水般涌来的研究生, 电子科大的导师队伍有明显壮大吗? 未闻.
面对着新一轮潮水般涌来的研究生, 电子科大的科研条件有明显提升吗? 未闻.
面对着新一轮潮水般涌来的研究生, 未来3年后的出路有良好预期吗? 谁也不知道.
那么这和当年的大学扩招有他妈的什么区别? 管它呢, 反正是进来了, 4年又3年.

尽管所有人都会成为自己历史的见证者和经历者, 然而其中的心酸还是只有自己体味.
我不说考研是evil, 然而只是盲从随着大流考研, 为了所谓3年缓冲去逃避最真实的社会的做法才是evil,
所以台下的看着台上的, 听着那些澎湃的鼓舞, 动员和号召, 总觉得似乎我们在误解着什么.
倘若是为了深造的, 不妨只静心于抛开喧闹和嘈杂的环境里深造,
倘若是为了规避的, 还不如直面事实和社会, 毕竟几年后的社会, 同样是惨淡的社会.
这般的摇旗呐喊, 锣鼓喧天是为了哪般?

——————————-

2008于我, 充满了变化和新意,
纵然我回望这逝去的一年, 似乎我更多的只是安于自己最容易伸手便能企及的事,
然而我还是心怀着感激去看待着短暂的一个时间里程碑上所能写下的一切.

我不想去记下它于我都发生了什么,
因为那些零碎的发生都出现在过堆成的文字里,
或许有些隐藏得深的, 印记在心里某个脆弱的角落,
然而我终究是记下了, 倘若忘却的, 只怕是不愿记住的.
我想, 每当人回望的时候, 总是可以吞吞吐吐的感叹许多,
感叹总是稍纵即逝, 因为即使教训惨痛, 过去的过往始终肤浅.

所以我站在年关上,
短暂的思考,
然后把它们全都记录下来.
无论它们幼稚, 短视, 矛盾与否,
都是这一刻最真实的写照.

2009于我, 是这大学4年里最关键的一年,
充满了转机与未知,
只盼的明年的这一刻, 少几分遗憾, 多几分从容和欣慰,
或许未来的路, 就已经弯弯曲曲的铺好在了脚下.

我从不介意前路是否坎坷,
只要能走, 都是自己的路.

梁某人.

大学同学有个非常喜欢梁某人, 等等, 我们统一口径, 这里指的是梁静茹.
我难以想象这样一个大胖子小眼睛把梁某人的海报挂在床头, 因为我一贯以为女星的海报挂在床头多多少少有那么点性幻想的作用.

以前我不待见梁某人, 无非觉得这样的女人, 一例的矫情,
我害怕她做作的娇柔直接把我扭曲的拧起来, 于是我发布一些很古怪邪恶的评论诸如, 梁某人侧脸还能看, 正脸就比例失衡.
(所以我相信这是为啥梁某人的专辑封面总是一张涂抹上了一堆粉末的侧脸).

人们很喜欢评论一个女子, 尤其是一个外表柔弱的弱女子, 说, 呀, 这么小小的身体竟然能爆发出这样的力量.
我无从得知这里的”力量”到底指那种打动所有人的来自内心的共鸣还是来自声带的共鸣,
不过梁某人从来不给我所谓的”力量”感, 她只是在角落黏黏的唱着歌. 
以某种我坚信的”娇柔做作”的姿态和声线, 传播着某种温暖.

其实我也可以说曹方同学是这样的, 许哲佩同学也是这样的, 陈绮贞同学更是这样的,
不过这些独立音乐人被挂上了”小资”, “独立”的tag后, 和主流音乐似乎划开了那么一条鸿沟,
唯一不变的, 是女人常有的矫情.

我终于明白为什么Awaw同学总是深恶痛绝的表达他对于女歌手的不屑了,
当然女歌手里不乏那样即使是声音也充满着力量的歌手,
不过这不是我们的话题.

我其实只想说,
反正腻洼洼的听着所谓矫情的调子,
也不妨碍我做事的.

有关细菌基因预测程序流程的思考.

我发现清晰的整理好思路再开始写程序很重要.

程序可以分为以下三个部分:

  1. 种子ORF的挑选, 正负样本的生成.
  2. 对于正负样本的特征参数选择和提取, 取决于我们选择的参数.
  3. 待测ORF的挑选, 并通过某种合适的判别方法, 进行判别.

如果理想的把三个步骤按照三个独立的程序实现, 无疑产生大量的正负样本并且输出到中间文件的做法是不明智的, 因此将1, 2步骤分割开来会产生大量的因为原始数据输入输出而带来的低效率.

我们考虑到步骤1中, 各种菌种含有染色体的不同, 因此在处理多个序列文件时需要一个顺序容器来存储序列文件.
如果考虑到步骤1和步骤3 训练/预测的细菌不同, 参数处理这里可能需要更多的工作?

焦虑.

我明白这个世界上所谓的”若有所思”的意境,
但万万不想让这些该死的思绪跑到脑子里最深的沟壑里, 直到漆黑的夜袭来,
才最终把这些不安的想象都释放出来.

这些重复交错的在清醒和梦境中念叨闪回的场景,
只会让抱着的被子都变得轻飘飘的厚重,
压得人醒来后全身的疲惫和酸痛. 

我当然也知道人必然是有这样那样的隐忧的,
否则也全然不会,
在这样一个快节奏的时代,
时时把”焦虑”放在嘴边了.

有限状态的有序世界.

我时常觉得<数字逻辑>这门课最大的收获不是那些该死的门, 以及一堆74XX,
而是以一种状态和时序的眼光去分解事件, 乃至世界[狭义的]的有限状态和演进关系. 

今天看到篇文章, 用正则表达式判断一个二进制数是否能被3整除, 很有启发.
当然可以把这样一个有限状态机, 看做一种时序的逻辑(事实上本来也是一种时序逻辑),
状态随着输入演进, 并且仅由状态决定输出[Moore机].

为了实现逻辑上的并发, 事实上许多电路的实现都是”暴力”的,
唯有在有限状态下的所有可能均进行了逻辑上的连接处理, 才能实现不考虑因为多级电路产生时延情况下, “瞬时的并行处理”.
这篇文章里的通过有限状态机实现的正则表达式也是如此,
毕竟正则表达式不包含一个可以分支选择的结构, back reference也只是一个简单的前向匹配而已.
因此我们通过状态机的有限状态转换图, 列出了可能的所有会最终到达状态0, 并且输出1的匹配序列.
(当然这里的”所有”, 是指可以通过wildcard和repetation完成简化描述的序列)
最后用正则表达式完成匹配.(当然这里说到的序列枚举的”暴力”操作, 已经和组合逻辑的单纯”暴力组合”有了实质性区别了)

二进制序列模型保证了要成为一个符合条件的有效数字(0自然不考虑了),
第一位必然是1, (否则就必然是0了).
也就是状态机的初始状态非随机, 使得我们在构造最后序列的时候有了很多约束条件可用. 

所以, 在这个一定生产环境下, 约束必然有界的有限状态世界中,
还可以有哪些更有趣的实例呢?

伪科学青年.

我自以为热爱数学, 结果连曲面积分都快忘光如何计算了,
当然我一贯深恶痛绝的痛恨物理, 我觉得这大概是因为我怎么也学不好的缘故,
…—>没学好—>抵触—>厌恶—>恐惧—>学不好—>…
所以也赖不得别人.

当然人的兴趣必然是有限的, 很多时候我以为我对算法很有兴趣,
但是很快我就清醒过来我无非是个连图论都还从来没认真看过的P孩儿.
继而就联想到过去种种如何栽在数学的大坑里的往事了.
我一直为了避免深刻的自责, 将我数学差的缘由统统推到我那高中不开窍的数学老师身上,
比如她如何将100以内的数字加法算错, 如何在黑板面前苦笑发呆, 如何告诫我们超越例题的题都是无用的…

曾经的很多时候我也自以为很喜欢化学, 
当然化学青年需要有诺贝尔般的实践探究精神,
于是我就捧着一个灌满了醋和NaHCO3的瓶子, 看着它被CO2撑得鼓鼓囊囊,
最后在俺手上炸了, 挨了数针才把那炸裂的牙龈补上.

再回忆起高中生物老师说, 一同学在大学里培养肿瘤细胞时不慎自己感染挂掉的故事,
让我深切的明白,
即使这个世界不缺乏拥有科学头脑的人才, 也绝不会落到我的头上.

继续埋头苦看课本, 没事偷瞄几本数学,
算是对伪科学青年来说, 最脚踏实地的慰藉啊!