别矜持了混蛋

我发现自己对博客文章质量总是高于实际的期许是我博客难产最重要的原因,既然这个是我私人的地方,那么其实我完全不必要这么有负担。爷的地盘爷做主!

但是这不代表我没意识到这么长一段时间以来文章质量一直都不咋地,恥ずかしい良い~~

今天这篇是因为半夜三更突然想总结一下最近的状态,这种事情在这种时间总是很容易发生的。

这几个月来我想的东西很多,想做的东西很多,但大多数也仅仅停留在想想和看看这一阶段。原因嘛,一个是因为没啥动力和压力,二是因为跟博客难产类似的困境:做为一个轻度完美主义者(请允许我臭屁的这么以为),总是在一开始就把目标定的太大太全,以至于下手之前就因为复杂度而畏缩。

所以,写这篇东西的目的就是为了鼓励自己有想法了就要冲动一点上去做。

恩,总结完了。

No Comments

Clean up your own SHIT!

假如我是老板,上完厕所连自己的屎都不知道冲干净的程序员一定会被我炒鱿鱼!

特么的一个小阀门都用不好的程序员,你能指望他写出什么样的代码?

懒惰,可是七宗罪之一。

No Comments

沙扬娜拉,MMIE

年终总结要拖一下,这差不多是每年的惯例。

去年可能是我这两三年来最不用功的一年,却似乎是我收获最多的一年。为此我很感谢我身边的人,既然我都不怎么用功,那我收获的的肯定都是从慷慨的他们那里得到的。

先看一下去年写的计划(MMIE)好了。

1. 给自己买了5本非技术的书,要认认真真读完。

  • 发现非技术的看起来还是很快的,去年一共看了7本,嫌疑人X的献身,1988,三重门,放学后,民主的细节,侦探伽里略,青春,黑客与画家。技术的看的不多,但还算看的仔细。

2. 计划以后每年去一到两个地方旅游,看时间吧,今年暂定春节去厦门看看。

  • 春天去了次厦门,真是愉快的体验,好习惯,要保持!

3. 既然当了QA了,就要做好。从Perl帝手里接过来的事情一定不能干砸了,好好学学automation test。

  • 今年一年都在做QA automation,做了些不同的尝试,也收获了一些经验。其实这个东西还是蛮有意思的,因为
    1. 东西是做给ITer们用的,做起来比较自由,可以做的有意思。
    2. 光有测试工具还不行,怎么让测试工具配合软件开发的测试流程是个值得一直思考的问题。测试工具既要减轻QA的重复劳动又要能引导测试过程的规范。
    3. 一直要思考计算机程序的本质之一:怎样最大限度的减少人的重复劳动。

4. 用动态编程语言(Perl, Python神马的)写一个有意思的东东。

  • 2010年下半年曾经学了一个星期的python,写了一个小东西,可惜因为项目放弃了使用python从此搁下了。今年算有了点决定权,2011下半年又拿起django框架的教程,花了两个星期写了个网页的骨架,不过因为不会前端难看到不好意思拿出来演示。今年吧,抽点时间美化一下。

5. 找一个C/C++开发的产品,读懂代码。

  • 这个算是失败了,读了一点memcached和innodb的代码,但是没有读完。

6. 要抓机会锻炼*nix environment programming,各读一本OO和设计的书。

  • 没完成吧,今年继续。

7. 不要再装逼,至少要学着由内而外的装。

  • 哈哈,这个就留给朋友们评说吧。

8. 经常让自己看看上面这些都做了没。

  • 从更新blog的速度就可以看出这条失败的可以

================ 我是2011和2012的分割线 =================

去年还有一些其他很值得纪录的事情。

去年,就在我生日前一天,那个MMIE里的可爱姑娘终于答应我问了一年多的请求!虽然我们有90%的日子都是分隔两地,但她带给我的快乐一直充满着我的生活。今年我再许一个愿望, 希望她能早点来杭州(^_^)

下半年美国客户来公司交流时给我颁发了一个刻着Rock Star的iPod touch。接着Boss又推荐我参加公司优秀员工评选,也终于在公司年会上得到了优秀员工奖。这些让我觉得过去一年自己并没有虚度。

另外,去年在豆瓣上一共纪录了124部电影为看过,一部分是以前看过的旧电影,但今年看的电影还是占了所有电影总数的三分之一。豆瓣fm推出以后,一共听了15601首歌,接触的音乐风格比我之前这20多年加起来都多。于是我打算恬不知耻的追认2011为我的文艺年哈哈。

今年的目标还没什么头绪。一是因为最近略忙没什么时间可以好好想想,二是有些事情真的在我能力以外。比如,今年爸妈都很辛苦,一直为家庭操劳,希望今年爸妈不再需要负担这么多事情,奶奶的病情也能够转好。

先写这么多吧。最近状态不是很对,所以才拖了这么久。

, ,

4 Comments

作为一个命令行偏执狂…

好久没有更新博客了,这次更新的原因是上次贴的Perl脚本查Google字典因为Google关闭字典服务的关系已经不能再用了。

前段时间接触了一个新东西叫XPath,名字听起来挺酷的,于是拿来又折腾了一个脚本出来。这次查的是有道辞典,没有Google的好用,但因为Google字典已经不再提供服务,目前能找到的Google字典服务都是通过Unofficial API实现的,也不知道能用多久,就先这么凑合着用吧。

上图
youdao_dict

这次脚本代码还是主要分两部分,一部分是通过LWP::UserAgent抓网页内容,一部分是用HTML::TreeBuilder::XPath分析网页内容提取需要的数据。

  • XPath其实是一门用来在XML文档中查找信息的语言,比较简单的说就是他能用一个路径表达式定位到一个XML文档里面的某个(或某几个)标签。因为XHTML借鉴了XML的结构,所以我们也可以用XPath来定位XHTML网页中的某个特定标签(XPath几乎总是能定位到一个正常网页中的特定标签的)。
  • 在原来使用的网页解析模块HTML::TokenParser中,所有网页标签都按出现顺序排列,并且标签之间都是并列的关系。但是没有一个Browser DEV tool会用这种结构给开发者展示网页源代码,即便我们写代码时也不会这样写。所以这样并列的结构其实对开发者来说是不直观的,也使得编码复杂了很多。
  • 而在XPath的世界里,网页的结构是树型的,每个标签都是这棵树上的结点或叶子,开发者会发现很容易就能找出一个路径通往我们想要的那个标签。不过如果你有Firebug和FireFinder这两个网页开发辅助插件,你会发现用起XPath来更加得心应手。

直接对比下面一个脚本和上一个脚本中网页分析部分的代码,你就能直观的感受到上面提到这两种方法的差别。XPath的详细介绍和语法,请猛击W3school Read the rest of this entry »

, , ,

5 Comments

比赛的意义

今天是2011 World Finals ACM/ICPC的比赛日,晚上10点开始看比赛的直播,看着每个学校的队伍的排名交错的攀升,看到HDU-Knuth的两题AC,两题WA,突然脑海闪回过自己的大二暑假,背上出了点汗,手臂上起了鸡皮疙瘩。

杭电进World Finals已经不是第一次,但是今年退役后看比赛跟去年在役看比赛是两种心情。在役时似乎更多的是不甘心和一些小嫉妒,因为我显然WF无望。之前自然也知道想进World Finals很难很难,但还是难免偶尔会狂妄的暗暗把这当作自己的目标。现在的我,对自己宽容了,内心平静了,但有时候也怀疑自己是不是失去了激情和进取心。

记得以前北大的CICI姐姐写过一篇日志,大致是说她在World Finals看到一个非洲的大学的队伍,只AC两题,却在赛后激动的跟领队拥抱欢呼。虽然她一个人也可以做出两题,但是她却没有那些人的快乐。

想到这里,我释然了,ACM/ICPC竞赛可以给我的,我都已经得到了。

, , ,

1 Comment