Lost In Space



仓央嘉措

Sunday, September 20, 2009
仓央嘉措,原名洛桑仁钦仓央嘉措,原籍西藏南部门隅地区。父名扎西丹增,出身于宁玛派咒师世家。仓央嘉措生于清康熙二十二年(1683)。
仓央嘉措,六世达赖喇嘛。生于康熙二十二年,十四岁时剃度入布达拉宫为黄教领袖,十年后为西藏政教斗争殃及,被清廷废黜,解送北上,道经青海今纳木措湖时中夜循去,不知所终。
仓央嘉措是藏族最著名的诗人之一。他所写的诗歌驰名中外,不但在藏族文学史上有重要地位,在藏族人民中产生了广泛深远的影响,而且在世界诗坛上也是引人注目的一朵奇花异葩,引起了不少学者的研究兴趣。藏文原著有的以手抄本问世,有的以木刻版印出,有的以口头形式流传。足见藏族人民喜爱之深;汉文译本公开发表和出版者至少有十种,或用整齐的五言或七言,或用生动活泼的自由诗,受到国内各族人民的欢迎;英文译本于1980年出版,于道泉教授于藏文原诗下注以汉意,又译为汉文和英文。汉译文字斟句酌、精心推敲,忠实准确并保持原诗风姿,再加上赵元任博士的国际音标注音,树立了科学地记录整理和翻译藏族文学作品的典范。仓央嘉措在藏族诗歌上的贡献是巨大的,开创了新的诗风,永远值得纪念和尊敬。


“自惭多情污梵行,入山又恐误倾城。世间哪得双全法,不负如来不负卿?”

三百多年前,这位年轻多情的六世达赖喇嘛仓央嘉措,从心底,轻轻吟出了这充满矛盾的诗句。他的欢乐与痛苦,无不与他的取舍紧紧相连。但无论偏向哪边,他的生命都注定无法完满。即使是贵为西藏地区神王的达赖喇嘛,仓央嘉措仍要为他的矛盾与取舍付出代价。正如一位网友在帖子里所感叹:如此高贵的地位,却换不来简单的爱情。

于是这样的情诗,如何不感天动地:

“那一刻我升起风马,不为乞福,只为守候你的到来;

那一天,闭目在经殿香雾中,蓦然听见,你颂经中的真言;

那一月我摇动所有的经筒,不为超度,只为触摸你的指尖;

那一年磕长头在山路,不为觐见,只为贴着你的温暖;

那一世转山,不为修来世,只为途中与你相见。”
——仓央嘉措

那一年,我磕长头拥抱尘埃, 不为朝佛,只为贴着了你的温暖 那一世,我翻遍十万大山, 不为修来世,只为途中能与你相遇

仓央嘉措

那一天,
我闭目在经殿的香雾中,
蓦然听见你颂经中的真言;

那一月,
我摇动所有的经筒,
不为超度,
只为触摸你的指尖;

那一年,
磕长头匍匐在山路,
不为觐见,
只为贴着你的温暖;

那一世,
转山转水转佛塔,
不为修来世,
只为途中与你相见。

那一月,
我轻转过所有经筒,
不为超度,只为触摸你的指纹;

那一年,我磕长头拥抱尘埃,
不为朝佛,只为贴着你的温暖;

那一世,我细翻遍十万大山,
不为修来世,只为路中能与你相遇;

只是,就在那一夜,我忘却了所有,
抛却了信仰,舍弃了轮回,
只为,那曾在佛前哭泣的玫瑰,
早已失去旧日的光泽

程序员的八大核心能力

Friday, March 13, 2009
Summary from here:
在 The Pragmatic Programmer 的第三章, 作者总结了程序员的八大核心能力, 各位看看你们同意么, 还要补充什么?

1. 使用纯文本的能力

不要动不动就 word, rtf, 学会使用纯文本. 用纯文本有很多好处, 比如可移植性, 可读性, 易操作性等等. 

顺便广告几个简单实用性的,

wiki,用的比较广泛,但文本状态下,可读性不太理想.
Asciidoc,非常优秀 (http://www.methods.co.nz/asciidoc/)

a9text,(在下自己玩的,js写的 http://a9text.sourceforge.net/)

2. Shell

所谓一行 shell 胜过千行C代码, 用 Shell 可以快速的完成一些临时的需要很快完成的任务, 提升生产率

3. 编辑器使用

最好有一个包打天下的, 能够完成编码 调试 编译等一起的编辑器, 使得能够专注于这个编辑器, 不会在程序里面来回切.

4. 源代码版本控制系统的使用

这个大家都知道是什么

5. Debug

学会使用 gdb 等, 会debug的基本技能 

"在我的老文程序员的成长从开窍开始系列
一、如何摆脱低级错误的困扰<http://www.tinydust.net/prog/diary/2007/12/blog-post.html>
 http://www.tinydust.net/prog/diary/2007/12/blog-post.html中,我其实就是试图,把调试解决Bug的能力,以及写出清晰代码的能力,作为一个程序员从初学者到真正的程序员这一开窍过程中的第一步。自动测试,我认为可以算作

是一个真正程序员到一个好的程序员之间的一个必经的步骤。当然按照这个标准,我还不算一个好的程序员。"

"在写代码的过程中,应该为以后调试--不仅为了方便自己调试,同时也可以方便别的开发人员快速debug到需要的信息。
应该考虑好之后调试的事情。比如,添加一些输出有用信息的的函数,在调试的时候可以通过
set debug_*()来进行调用,对代码的可维护性和可读性都有很好的提高。当然,你知道,对于
一般大型程序的阅读很少直接去读代码的,大多都是先break到感兴趣的部分,再***的。"

6. 文本处理

基本的查找替换, 正则表达式, 简单的 sed awk 等等

7. 代码生成

不要每行代码都自己写, 用工具生成代码. 等等.

8. 自动测试框架

大家都知道这个是什么.

more:
9. 写简洁准确的注释和文档

10. performance profiler

11. 程序文档的编写能力"*

用原作者的话说,就是
1) Treat English as Just Another Programming Language
2) Build Documentation In, Don't Bolt It On
具体一些的话,就是The Element of Style和Doxygen之类的东西

12. 关注细节

1、关心你的技艺
Care About Your Craft
除非你在乎能否漂亮地开发出软件,否则其它事情都是没有意义的。

2、思考!你的工作
Think!About Your Work
在你做某件事情的时候思考你在做什么。不间断地思考,实时地批判你的工作。这将占据你的一些宝贵时间,酬劳则是更为活跃地参与你喜爱的工作、感觉到自己在掌握范围日增的各种主题以及因感受到持续的进步而欢愉。从长远来说,你在时间上的投入将会随着你和你的团队变得更为高效、编写出更易于维护的代码以及开会时间的减少而得到回报。

3、提供各种选择,不要找蹩脚的借口
Provide Options,Don't Make Lame Excuses
不要说事情做不到;要说明能够做什么来挽回局面。不要害怕提出要求,也不要害怕承认你需要帮助。

4、不要容忍破窗户
Don't Live With Broken Windows
不要留着“破窗户”(低劣的设计、错误的决策、或者糟糕的代码)不修。发现一个就修一个。如果没有足够的时间进行适当的修理,采取某种行动防止进一步的破坏,并说明情势处在你的控制之下。

如果你发现你所在团队和项目的代码十分漂亮——编写整洁、设计良好,并且很优雅,你不会想成为第一个弄脏东西的人。

5、做变化的催化剂
Be a Catalyst for Change
你不能强迫人们改变。相反,要向他们展示未来可能会怎样,并帮助他们参与对未来的创造。
设计出你可以合理要求的东西,好好开发它。一旦完成,就拿给大家看,让他们大吃一惊。然后说:“要是我们增加...可能就会更好。”假装那并不重要。坐回椅子上,等着他们开始要你增加你本来就想要的功能。人们发现,参与正在发生的成功要更容易。让他们瞥见未来,你就能让他们聚集在你周围。

6、记住大图景
Remember the Big Picture
如果你抓一只青蛙放进沸水里,它会一下子跳出来。但是,如果你把青蛙放进冷水里,然后慢慢加热,青蛙不会注意到温度的缓慢变化,会呆在锅里,直到被煮熟。
不要像青蛙一样。留心大图景。要持续不断地观察周围发生的事情,而不只是你自己在做的事情。

7、使质量成为需求问题
Make Quality a Requirements Issue
你所制作的系统的范围和质量应该作为系统需求的一部分规定下来。让你的用户参与权衡,知道何时止步,提供足够好的软件。

8、定期为你的知识资产投资
Invest Regularly in Your Knowledge Portfolio

让学习成为习惯。
持续投入十分重要。一旦你熟悉了某种新语言或新技术,继续前进,学习另一种。
是否在某个项目中使用这些技术,或者是否把它们放入你的简历,这并不重要。学习的过程将扩展你的思维,使你向着新的可能性和新的做事方式拓展。思维的“异花授粉”十分重要;设法把你学到的东西应用到你当前的项目中。即使你的项目没有使用该技术,你或许也能借鉴一些想法。例如,熟悉了面向对象,你就会用不同的方式编写纯C程序。

如果你自己找不到答案,就去找出能找到答案的人。不要把问题搁在那里。

9、批判地分析你读到的和听到的
Critically Analyze What You Read and Hear
不要被供应商、媒体炒作、或教条左右。要依照你自己的看法和你的项目的情况去对信息进行分析。

10、你说什么和你怎么说同样重要
It's Both What You Say and the Way You Say It

作为开发者,我们必须在许多层面上进行交流。我们的时间有很大部分都花在交流上,所以我们需要把它做好。
如果你不能有效地向他人传达你的了不起的想法,这些想法就毫无用处。
知道你想要说什么;了解你的听众;选择时机;选择风格;让文档美观;让听众参与;做倾听者;回复他人。
交流越有效,你就越有影响力。

11、DRY原则——不要重复你自己
DRY - Don't Repeat Yourself
系统中的每一项知识都必须具有单一、无歧义、权威的表示。与此不同的做法是在两个或更多地方表达同一事物。如果你改变其中一处,你必须记得改变其它各处。这不是你能否记住的问题,而是你何时忘记的问题。

12、让复用变得容易
Make it Easy to Reuse
你要做的是营造一种环境,在其中要找到并复用已有的东西,比自己编写更容易。如果复用很容易,人们就会去复用。而如果不复用,你们就会有重复知识的风险。

13、消除无关事物之间的影响
Eliminate Effects Between Unrelated Things
我们想要设计自足(self-contained)的组件:独立,具有单一、良好定义的目的。如果组件是相互隔离的,你就知道你能够改变其中一个,而不用担心其余组件。只要你不改变组件的外部接口,你就可以放心:你不会造成波及整个系统的问题。

你得到两个主要好处:提高生产率与降低风险。

14、不存在最终决策
There Are No Final Decisions
没有什么永远不变——而如果你严重依赖某一事实,你几乎可以确定它将会变化。与我们开发软件的速度相比,需求、用以及硬件变得更快。通过DRY原则、解耦以及元数据的使用,我们不必做出许多关键的、不可逆转的决策。有许多人会设法保持代码的灵活性,而你还需要考虑维持架、部署及供应商集成等领域的灵活性。

15、用曳光弹找到目标
Use Tracer Bullets to Find the Target
曳光弹能通过试验各种事物并检查它们离目标有多远来让你追踪目标。
曳光弹代码含有任何一段产品代码都拥有的完整的错误检查、结构、文档、以及自查。它只不过功能不全而已。但是,一旦你在系统的各组件之间实现了端到端(end-to-end)的连接,你就可以检查你离目标还有多远,并在必要的情况下进行调整。一旦你完全瞄准,增加功能将是一件容易的事情。

16、为了学习而制作原型
Prototype to Learn
任何带有风险的事物。以前没有试过的事物,或是对于最终系统极其关键的事物。任何未被证明的、试验性的、或有疑问的事物。任何让你觉得不舒服的东西。都可以通过制作原型来研究。比如:架构;已有系统中的新功能;外部数据的结构或内容;第三方工具或组件;性能问题;用户界面设计等等。

原型制作是一种学习经验,其价值并不在于所产生的代码,而在于所学到的经验教训。

17、靠近问题领域编程
Program Close to The Problem domain
计算机语言会影响你思考问题的方式,以及你看待交流的方式。用你的用户的语言进行设计和编码。

18、估算,以避免发生意外
Estimate to Avoid Surprises
在着手之前先进行估算。你将提前发现潜在的问题。
1)要选择能反映你想要传达的精确度的单位;
2)基本的估算诀窍:去问已经做过这件事情的人;
3)理解提问内容;
4)根据对问题的理解,建立粗略、就绪的思维模型骨架;
5)把模型分解为组件,找出描述这些组件怎样交互的数学规则,确定每个组件的参数;
6)给每个参数指定值,找出哪些参数对结果的影响最大,并致力于让它们大致正确;
7)进行多次计算,改变关键参数的值,然后根据那些参数表达你的答案;
8)在被要求进行估算时说的话:“我等会回答你”。

19、通过代码对进度表进行迭代
Iterate the Schedule with the Code
实行增量开发。追踪你的估算能力,提炼对迭代次数、以及在每次迭代中可以包含的内容的猜想。提炼会变得一次比一次好,对进度表的信心也将随之增长。你将给予管理部门你所能给予的最精确的进度估算。

20、用纯文本保存知识
Keep Knowledge in Plain Text

保证不过时;
杠杆作用:每一样工具,都能够在纯文本上进行操作;
更易于测试;
你需要确保所有各方能够使用公共标准进行通信。纯文本就是那个标准。

21、利用命令shell的力量
Use the Power of Command Shells
GUI环境通常受限于它们的设计者想要提供的能力。当你想要快速地组合一些命令,以完成一次查询或某种其他的任务时,命令行要更为适宜。多使用你的命令shell,你会惊讶它能使你的生产率得到怎样的提高。

22、用好一种编辑器
Use a Single Editor Well
选一种编辑器,彻底了解它,并将其用于所有的编辑任务。如果你用一种编辑器进行所有的文本编辑活动,你就不必停下来思考怎样完成文本操纵:必需的键击将成为本能反应。编辑器将成为你双手的延伸;键会在滑过文本和思想时歌唱起来。这就是我们的目标。

23、总是使用源码控制
Always Use Source Code Control

总是。即使你的团队只有你一个人,你的项目只有一周时间;确保每样东西都处在源码控制之下。
源码控制是你的工作的时间机器——你能够回到过去。
把整个项目置于源码控制系统的保护之下具有一项很大的、隐蔽的好处:你可以进行自动的和可重复的产品构建。

24、要修正问题,而不是发出指责
Fix the Problem,Not the Blame ...



男女都该看看

Friday, March 06, 2009
是不是女孩从13岁起,每个月多花几个卫生巾钱(当然得是生理上正常的女性朋友
们)觉得自己特冤,所以都憋着让男朋友(老公)给自己花钱啊?其实男人的钱也不是
大风刮来的……

  我在想,为什么女性朋友比男性朋友的平均寿命长,除了女性大多不常抽烟饮酒以
外,还有一个主要原因,即男人要负担的社会责任更重,男人要承受的生活压力要比女
人多得多。

  你是女孩,你可以想起一出是一出地瞎闹,烦了就哭美了就乐,你撒娇你任性,你
翻着跟头抒发自己的感情,什么时候折腾舒服了什么时候算。没人说你什么……女孩嘛
,感性一些,大家都能原谅你的情绪化。你可以不计后果不失时机地犯犯间歇性神经病
,然后美其名曰:我们每个月都有那么几天……我不是故意的啦……

  你想想,是不是每次你撒着娇对他说这话的时候,他都会潇洒地揽你入怀说,你发
脾气也很可爱!这老招屡试不爽,即使你犯病的时候一脚踢死他们家养了十年的猫。人
家谁愿意和你置气啊?
你就没想过你凭什么啊!谁都不缺奶奶!

  他现在爱你,你骑他头上撒尿都行。你别太过,把男人逼急了,你丫爱谁谁!你以
为你真是还珠格格呢!你们家祖坟上长那根蒿子了么?

  女人要怀有一颗珍惜之心,珍惜那个依着你由着你性子的人。你要记得,若不是他
爱你,你什么都不是!说得阴暗一点,女人要学会居安思危,给自己留条后路。

  是,他现在拿你当老佛爷贡着,等你习惯了,以为这就是属于你的生活了,他一下
变了心,你可哭都找不着坟头儿。平时收敛一点,也是对自己的一种保护。咱那点"刁
蛮"劲,老使就不管用了,还是留到关键时刻好,你说呢?

  女人似乎总喜欢问一些诸如你真的喜欢我么、我和你妈掉河里你先救谁、我和她谁
漂亮……要是你不重要的话,人家每天强忍着回答同一个问题10遍之多是为了什么?要
是你不重要,你都咒人家妈了人家还强颜欢笑哄着你是为了什么?

  如果你嫌你的男人没本事,就趁早找一个有本事的去,免得以后结了婚有了孩子,
再后悔就晚了,别给自己找活罪受。你男人没本事赖谁啊?当初是谁该好好上学不好好
上学,为了你翘课来着?当初是谁该好好上班不好好上班,为了你旷工来着?你到底是
让她陪着你,还是让他专注事业?你以为你男人是耶和华啊?你干脆多找几个,有给你
挣钱的,有给你争脸的,有点灯说话的,有吹灯拔蜡的得了!你知道么,男人最讨厌你
满脸旧社会地往床上一歪,就开始没完没了数落他这也不行那也不行,有行的,你配么
?咱得知道自己值多少钱一两!别一边要爱情要浪漫要人家逢年过节送你玫瑰,一边又
要现实要生活要人家攒钱给你买房买车。你以为男人都和盖茨有一腿啊!

  男人在外面讨生活是很不容易的,有的时候,他们的感情也很脆弱,可是他们还要
保持理智保持冷静保持坚强!你不会明白,那有多难!扪心自问,女人在这个社会上如
果实在混不下去了,还有最后一条路,找个人嫁了,做职业家庭主妇。别人说不出你什
么来。而你男人,他混得下去也得混,混不下去还得拼了老命地混;更何况还拖着一个
姑奶奶混;更何况往后还得拖着一个甚至更多的小少爷小姑奶奶(你们的结晶)混啊?
你想过么……

  如果说你不知道怎样省钱,不如自己也想办法赚点钱,而不是一味抱怨自己嫁错了
郎。你的东西,至少应该有一半是自己买的,那样即使他负了你,你可以给自己一个机
会,把他买给你的东西撕烂了拽丫脸上解解气!而不至于把人家买的东西都毁掉之后,
自己光着屁股回家。

  即使你们已经决定结婚,也多给你男人一些空间吧。他会明白而且感激你的,相信
我。再爱你他也是个男人,你可以不去理解他为什么看起球赛来就忘记你的存在、你可
以不理解他为什么每周都要和哥们出去喝几次小酒、你可以不理解他为什么能随口就有
瞎话等着你,你只要接受就可以了;因为那些事是不需要你去理解的。就像他不会理解
,你的衣柜里有你一天一件换到80岁都不重样的衣服一样,虽然他不理解,但依然愿意
为你相中的一条裙子,去吃半个月的素。

  我想说,男人不在我们身边的时候,除了去胡搞乱搞还有挥霍他的钱以外,我们还
有很多事情可以做。比如,回家看看你的父母,吃他们给你做的饭,听听他们忆苦思甜
;比如,去他家帮他父母打扫一下卫生,活动活动筋骨;比如,约个姐们找地方锻炼锻
炼身体,将好身材保持到底;比如,找几本经典,给自己充充电,提高一下素养,别觉
得一天到晚傻呵呵的当个胸大无脑丢了好找的蠢货,是件特露脸的事;书实在看不下去
,看盘也成,又臭又长的韩剧就别看了,看完了更默叽,看看有点技术含量的,女人必
须还是得以内养外的;要是有点追求,业余时间我劝你练练字,挥毫泼墨就免了,只要
赶明儿给你儿子签字的时候,别让老师冤枉是你们家孩子自己签的,罚小丫挺门口站着
去就行了。

  男人回家了,你能笑着就别丧这个脸了,干嘛啊,苦大仇深的?你男人是杀你爸爸
那仇人么?你跟了他不会是想演绎一出女版的伤城吧?这个时候,把你平时苦练的厨艺
展示展示,饭桌上把你偷学的"学问"拿出来吓唬吓唬他,跟他聊聊姚明易建联,侃侃
世乒欧锦,说说基金走势祖国政策……比一来就家长里短强多了。

  有这么一个出得厅堂入得厨房的好媳妇,你想让他有外遇都难!男人是很怕麻烦的
,只要家里的还好使,他绝不浪费时间精力金钱再重新建立一段感情,除非他还很幼稚
。要是他厌烦了你,你就先从自己身上找原因吧! 曾经我一知己说过这样一句话:我
爱你,我可以给你当牛做马,但你别真把我当牛马使唤!这话让我感触颇深……姑娘们
啊,在你心里,他就真的是牛马么?你知道,你的一生中,遇到一个甘心为你做牛马的
人,是多大的造化么?为年幼无知的娇纵默哀……

  如果男人真的不要你了,那就是肯定不要你了。我的意思是说,你最好别纠缠了。
他不和你好了,不用歇斯底里地探寻因由了,我告诉你吧,真相只有一个,你不足够好
。我也困惑过很久,女人的愚蠢,究竟源溪何处?至今,最能让我信服的答案,是依赖
。女人总是把原本不属于自己的东西死死地认定为是自己的,然后患得患失;更好玩的
是,明明是自己不懂珍惜刁蛮成性而导致失去的东西,她们非要说成是别人的背叛,这
点让男人挺没辙的。老说女人是弱势群体,这矫情劲上来,不一定谁弱呢。你的痛苦,
是你老觉得自己是受害者,那你不自找的么?我不得不给你这样的忠告:认真游戏,但
牢记只是游戏。

  你得面对,最能考验你们感情的,其实是一件很恶俗的东西——钱。我之所以不反
对早恋,是因为,也许只有在学生时代的恋爱,才是最牛X的,牛X得那么纯净。那时候
,是男人最不得志的时候,他没房没车没钱,就算他整天想着和你上床,也是因为他风
华正茂生理上的确有这个迫切需要。而那时候,是女人最得意的时候,她年轻天真纯洁
,没有逼着男人给她买SK2、LV……一个前途未知的穷小子领着一个缺心少肺的傻姑娘
,一路傻了吧唧地走着。你们一路走来,走过每天放学要经过的小吃店、走过顶风冒雪
也想多腻味一会的车站、走过情人节他只送了你一支玫瑰的天桥、走过逃了不计其数次
课的教室后门……一直走到今天,面对声色犬马的物质诱惑,你犹疑过么……
 
  其实,归根结底,我想告诉我的男人,我爱你,我也离不开你,我也想24小时和你
腻在一起;但还是因为我爱你,我强迫自己独立。

  我想告诉我的男人,我希望你有钱,因为我骨子里有所有女人有的贪婪和虚荣;你
可以不养着我,但你要有养我的能力。

  我想告诉我的男人,如果你有一块钱,那我要你花五毛钱给我买一串我爱吃的麻辣
烫;如果你有一千元,我们必须得去吃一次我想吃的三千里,不然,你凭什么说你是爱
我的?

  如果,所有感情的问题,都可以用钱来解释和解决,那该有多好……但你要知道,
只要能用钱解决的事,就都不叫事!我还是想把我的爱情,放在比金钱更神圣一步的位
置上。

  要是我的男人真的就没那本事,我就忍了,弄不好他有了本事,我就没了他呢。他
没逼我长成曼玉嘉欣,我没理由逼他盖过李嘉诚。

  闲来无事,谨以此文献给包括我在内的让人欢喜让人忧的女孩子们;顺便祝包括我
在内的大家,每天都由内而外散发着让人难以抗拒的魅力——性的魅力和人的魅力。
<本文发表于: 相约加拿大:枫下论坛 www.rolia.net/forum >


Do you love love story

Saturday, October 11, 2008

Fork of the Credit

Saturday, October 04, 2008

Google Site

Tuesday, September 02, 2008

Mono Cliff

Thursday, July 31, 2008