Shared posts

03 Sep 04:17

JavaScript与有限状态机

by 阮一峰

有限状态机(Finite-state machine)是一个非常有用的模型,可以模拟世界上大部分事物。

简单说,它有三个特征:

  * 状态总数(state)是有限的。
  * 任一时刻,只处在一种状态之中。
  * 某种条件下,会从一种状态转变(transition)到另一种状态。

它对JavaScript的意义在于,很多对象可以写成有限状态机。

举例来说,网页上有一个菜单元素。鼠标悬停的时候,菜单显示;鼠标移开的时候,菜单隐藏。如果使用有限状态机描述,就是这个菜单只有两种状态(显示和隐藏),鼠标会引发状态转变。

代码可以写成下面这样:


  var menu = {
      
    // 当前状态
    currentState: 'hide',
  
    // 绑定事件
    initialize: function() {
      var self = this;
      self.on("hover", self.transition);
    },
  
    // 状态转换
    transition: function(event){
      switch(this.currentState) {
        case "hide":
          this.currentState = 'show';
          doSomething();
          break;
        case "show":
          this.currentState = 'hide';
          doSomething();
          break;
        default:
          console.log('Invalid State!');
          break;
      }
    }
  
  };
  

可以看到,有限状态机的写法,逻辑清晰,表达力强,有利于封装事件。一个对象的状态越多、发生的事件越多,就越适合采用有限状态机的写法。

另外,JavaScript语言是一种异步操作特别多的语言,常用的解决方法是指定回调函数,但这样会造成代码结构混乱、难以测试和除错等问题。有限状态机提供了更好的办法:把异步操作与对象的状态改变挂钩,当异步操作结束的时候,发生相应的状态改变,由此再触发其他操作。这要比回调函数、事件监听、发布/订阅等解决方案,在逻辑上更合理,更易于降低代码的复杂度。

下面介绍一个有限状态机的函数库Javascript Finite State Machine。这个库非常好懂,可以帮助我们加深理解,而且功能一点都不弱。

该库提供一个全局对象StateMachine,使用该对象的create方法,可以生成有限状态机的实例。


  var fsm = StateMachine.create();
  

生成的时候,需要提供一个参数对象,用来描述实例的性质。比如,交通信号灯(红绿灯)可以这样描述:


  var fsm = StateMachine.create({
  
    initial: 'green',
  
    events: [
      { name: 'warn',  from: 'green',  to: 'yellow' },
      { name: 'stop', from: 'yellow', to: 'red' },
      { name: 'ready',  from: 'red',    to: 'yellow' },
      { name: 'go', from: 'yellow', to: 'green' }
    ]
  
  });
  

交通信号灯的初始状态(initial)为green,events属性是触发状态改变的各种事件,比如warn事件使得green状态变成yellow状态,stop事件使得yellow状态变成red状态等等。

生成实例以后,就可以随时查询当前状态。

* fsm.current :返回当前状态。
* fsm.is(s) :返回一个布尔值,表示状态s是否为当前状态。
* fsm.can(e) :返回一个布尔值,表示事件e是否能在当前状态触发。
* fsm.cannot(e) :返回一个布尔值,表示事件e是否不能在当前状态触发。

Javascript Finite State Machine允许为每个事件指定两个回调函数,以warn事件为例:

* onbeforewarn:在warn事件发生之前触发。
* onafterwarn(可简写成onwarn) :在warn事件发生之后触发。

同时,它也允许为每个状态指定两个回调函数,以green状态为例:

* onleavegreen :在离开green状态时触发。
* onentergreen(可简写成ongreen) :在进入green状态时触发。

假定warn事件使得状态从green变为yellow,上面四类回调函数的发生顺序如下:onbeforewarn → onleavegreen → onenteryellow → onafterwarn

除了为每个事件和状态单独指定回调函数,还可以为所有的事件和状态指定通用的回调函数。

* onbeforeevent :任一事件发生之前触发。
* onleavestate :离开任一状态时触发。
* onenterstate :进入任一状态时触发。
* onafterevent :任一事件结束后触发。

如果事件的回调函数里面有异步操作(比如与服务器进行Ajax通信),这时我们可能希望等到异步操作结束,再发生状态改变。这就要用到transition方法。


  fsm.onleavegreen = function(){
    light.fadeOut('slow', function() {
      fsm.transition();
    });
    return StateMachine.ASYNC;
  };
  

上面代码的回调函数里面,有一个异步操作(light.fadeOut)。如果不希望状态立即改变,就要让回调函数返回StateMachine.ASYNC,表示状态暂时不改变;等到异步操作结束,再调用transition方法,使得状态发生改变。

Javascript Finite State Machine还允许指定错误处理函数,当发生了当前状态不可能发生的事件时自动触发。


  var fsm = StateMachine.create({
    // ...
    error: function(eventName, from, to, args, errorCode, errorMessage) {
      return 'event ' + eventName + ': ' + errorMessage;
    },
    // ... 
  });
  

比如,当前状态是green,理论上这时只可能发生warn事件。要是这时发生了stop事件,就会触发上面的错误处理函数。

Javascript Finite State Machine的基本用法就是上面这些,更详细的介绍可以参见它的主页

(完)

文档信息

26 Aug 10:35

信息爆炸时代,我们该怎么找回灵感?

by 刘学文
one

write drunk,edit sober

8072408810_28c2d1845c_o

杜甫曾称赞李白说“李白斗酒诗百篇”,海明威也曾经写过“write drunk,edit sober”。

那些能够笔惊鬼神的文豪尚且需要借酒来激发灵感,更不用说现在淹没在信息爆炸时代普通人们,君不见挑灯夜战的文案编辑辛苦数晚最后憋出来的只有几行字,还有广告人用重重的黑眼圈换来的创意。

的确,这年头,不喝酒吸毒不造谣不耸人听闻不掉节操想要激发灵感,吸引注意是件非常困难的事情。那么我们在这样的一个时代,该怎么找回灵感呢?

Spinnakr 的市场营销经理 Rishon Roberts 分享了她找寻灵感的一些方法,或许会有一些参考意义。

勤翻书

Rishon Roberts 说亚马逊简直就是个毒品贩子,当她读完一本书之后就还想读第二本第三本,但是这种事情却是好的,因为单单是读了几个章节,特别是在没有灵感的时候,书中的金句或许就能帮助她找到一点儿思想的火花。

尤其是在用电脑办公的时代,他还是坚持每个周末都阅读书籍,有时候这种感觉就像旧友重逢或者看青梅煮酒般,三两小时足矣,但仍让人心满意足。有时候,别人写作的东西恰是我们灵感的源泉。

Rishon Roberts 最喜欢的一本书是《Steal Like An Artist》,这部意识流般的作品更像是创造、分享和连接的生活循环的指南,而不是像书名说的那样,只是简单的吸取他人东西化为己用。

不跟随

无论别人写些什么说些什么,我们都要想一想,我们可不可以不这样?当然,从众心理对于热点话题的追随是完全可以理解的。但是,作为一个内容输出者,如果不能对于热点话题提供不落窠臼的看法,那么,还是远离话题比较好。不然的话,于己而言,把自己的声音淹没在众多噪音之中;于众而言,噪音则又多了一个分贝。

作为一个内容输出者而言,写东西不是因为需要写东西,而是因为对于是事件而言,输出者能有不一样的东西。前提是,如果不想泯然众人。

Andrew Chen 写过“你需要用专业知识和洞察力来把自己区分开来,而不是跟随者热点话题喋喋不休说着人云亦云的话。”

给自己提出这样的要求后,站在新的角度,或许会有不同于常人的灵感。

讲故事

有些读者可能会记得郝扬在夜深人静的时候写下的心灵鸡汤似的科技美文,虽不长,但足够暖心。留意一下会发现,把科技新闻融入到故事之中,可读性会变得很强,冰冷的金属也有了温情的一面。

每个人都有自己的专业所长,也有自己的独特的生活。Rishon Roberts 认为,技术宅、创业者以及营销人员能够分享自己职业生活中的观点经验最能让他有所共鸣。与用一堆专业术语严肃地写一篇社论一样的文章相比,运用个人实际生活中的经历和案例来显示自己的观点效果要更好。也就是说,专业术语知识很可能雷同,但每个人的故事如有雷同,真是纯属巧合了。

勤倾听

前面说到要勤读书,但是 Rishon Roberts 也说到了,生活节奏越来越快,读书时间受到了压缩。

这里她说了一个比较另类的方法,边做边听。利大于弊地,很庆幸我们处在一个数字时代,我们获取资讯的方式更多了。每当 Rishon Roberts 专注于某项比较专业的领域时,她都会打开YouTube 上的 TED 大会播放列表,寻找相关演讲,然后带上耳机作为背景声,当然,前提是这个不让背景声影响工作。

事实上,除了 TED,还有很多类似的大学公开课可选。播客 podcast 也是很好的选择。

声音相比于文字而言,节奏更快,是日常交流的主要途径。为了跟得上稍纵即逝的语音信息,人们不得不强迫自己思考。

对于 Rishon Roberts 的观点,我深表认同。我们在感叹信息爆炸灵感匮乏的时候,其实是我们没有吸收到有用的信息,自己也没有输出有价值的信息。不管对于任何一个行业而言,我们能输出的东西反映了我们吸收到的东西。

但 Rishon Roberts 给出的四个方式的参考意义在于,我们该以吸收怎样的信息,并以何种方式输出信息。读书和倾听意味着,对于信息的甄别和利用方式比吸收更重要,而讲故事和不跟随则说明,内容的角度和包装在内容质量的比重越来越大。

其实,所谓灵感不足,主要的原因是脑袋空空,或者脑袋都是水,更可怕的是脑袋全是倒不出来的胶水,最后一种人很好辨别,就是转发并相信秦火火、民间小偏方之类微博的人。

 

题图来自:flickr

在命运的塑料大棚里,每棵被喷了过多农药的白菜心中,都曾经有一个成为无公害有机蔬菜的梦想。

#欢迎关注爱范儿认证微信公众号:AppSolution(微信号:appsolution),发现新酷精华应用。



爱范儿 · Beats of Bits | 原文链接 · 查看评论 · 新浪微博 · 微信订阅 · 加入爱范社区!


10 Aug 03:06

致准妈妈:你吃什么,你的宝宝就爱吃什么

by PanSci
one

坐月子的习惯很难改变的。

我们总喜欢劝怀孕的准妈妈多吃点,说是“一人吃两人补”;不过,近年来的研究结果发现,不只是一人吃两人补,如果准妈妈吃了垃圾食品(高热量、高脂肪的食物),除了对自己不好,对宝宝也有不良影响,可能是“一人吃错,两人苦”。

最近澳洲阿得雷得大学的研究团队,在饮食行为年会(Annual Meeting of the Society for the Study of Ingestive Behavior (SSIB))上发表了他们的研究成果[1]

他们发现,妈妈在怀孕时如果常常吃垃圾食品,生下来的小宝宝会分泌较多的脑内啡(enkephalin)。由于脑内啡会跟我们的吗啡受体(opioid receptor)结合,使我们产生愉悦的感觉;而他们先前的研究结果发现,常吃垃圾食品的准妈妈生下的小宝宝,对于吗啡受体阻断剂的敏感度下降[2]

因此,研究人员认为,准妈妈常吃垃圾食品,会使得生下来的小宝宝更爱吃垃圾食品。

而奥瑞冈大学的研究团队,以灵长类为研究对象发现[3],当准妈妈食用高脂肪的食物时,生下来的小宝宝,不仅体重较食用正常饮食的准妈妈生下来的小宝宝要重,这些小宝宝们还对于高脂肪的食物有偏爱。他们的胃口比同年龄的孩子要大,遇到高脂肪的食物时,会失控地大吃大喝。

根据这些资料以及研究团队的推测可以得出:准妈妈常吃垃圾食品,会使小宝宝分泌较多的脑内啡;而这使得他们的吗啡受体习惯于较高剂量的脑内啡刺激,造成他们在饮食行为上的改变:会需要比别人吃更多的高热量、高脂肪食物,来引发愉悦的感觉。因此,他们在平时就会比别人吃更多,造成他们的体重比别人重;而遇到高热量、高脂肪的食物时,他们比起其他人更会失控地大吃大喝。

也就是说,怀孕时的饮食,会影响到孩子的一生;但是,只有怀孕的时候吗?

不完全是这样。另一篇发表在2010年的研究显示,喂母乳的妈妈,如果在泌乳时食用高脂肪的食物,会造成小宝宝体重较高[4]

当然,有的人可能会说胖一点有什么不好?但是这篇2010年的研究发现,这些小宝宝不只是体重较高,同时对于葡萄糖耐受性试验(Glucose tolerance test)的反应不佳,显示了将来有可能会产生糖尿病。

中国人有坐月子的习俗,许多女性常在生完孩子后,因为坐月子造成好身材就此一去不复返;老人家总是觉得生孩子伤身体,所以要好好补一补。

但是,从这篇研究会发现,进补可能不只是影响身材。如果产妇是喂母乳的妈妈,还会让孩子未来有糖尿病的风险。

其实现在的人,平常吃得都够了;生产以后坐月子,多休息别吃生冷冰也就好了,实在不需要来个“一天一只鸡”或是天天大鱼大肉的来补身体。自己胖了也会提高自己三高的风险,对小孩也不好,这个产后大进补的概念,实在是应该调整。

原文发表于PanSci,作者叶绿舒。转载时文字部分有修改。

参考文献:

[1] Science Daily. July 30, 2013.  A maternal junk food diet alters development of opioid pathway in the offspring

[2] Sciency Daily. Feb 28, 2013.  Eating junk food while pregnant may make your child a junk food addict

[3] Science Daily. June 17, 2013.  High-fat diet during pregnancy contributes to offspring's increased weight

[4] Science Daily. July 19, 2010.  Greater obesity in offspring of nursing mothers consuming a high-fat diet

01 Aug 10:34

走近量子纠缠(2)——男孩物理学

by 张 天蓉
one

迈克尔逊-莫雷实验效验了光速不变啊.原来这么早的问题.

本文作者:张 天蓉

2. ‘男孩物理学’

要正确地理解量子力学,追溯其发展历史是非常必要的。量子力学不同于相对论和牛顿力学,它更少有被罩上个别伟人的光环。它可说成是有史以来最出色和最富激情的一代物理学家集体努力的成果。综观量子力学发展史,真可谓是群星璀璨、光彩纷呈。因此,让我们先回头看看历史。

说到当时的‘那一代’物理学家,最令人瞩目的是他们的年龄。在这点上,量子论的发展可与近年来互联网公司的发展相提并论:都是一伙年轻人的天下!看看当年那一批争奇斗艳,光彩夺目的科学明星吧,当他们对量子力学作出重要贡献时,大多数是20-30岁的年龄。这也就是为什么在当时,量子力学被人们称为“男孩物理学”的原因。

Solvay_conference_1927

 【这张著名的合影,摄于1927年第五次索尔维会议,点击可放大。 图片出处:维基百科。关于索尔维会议和照片中的人物,还请维基百科为您讲述,请点击“索尔维会议”】

让我们细数‘男孩’们对量子力学的贡献:

爱因斯坦1905年提出光量子假说,26岁。

玻尔1913年提出原子结构理论,28岁。

德布罗意1923年提出德布罗意波,31岁。

海森堡1925年创立矩阵力学,1927年提出测不准原理,24-26岁。

还有更多的年轻人:泡利25岁,狄拉克23岁,乌仑贝克25岁,古德施密特23岁,约尔当23岁……

和他们比起来,36岁的薛定谔,43岁的波恩,42岁的普朗克,该算是老叔叔老爷爷了。

物理学家们将量子力学的诞生之日,定为1900年12月14日,普朗克在柏林宣读了他关于黑体辐射的论文的那一天。在此之前,牛顿力学加上麦克斯韦方程建造的宏伟物理大厦虽然还巍然挺立,但天空已经阴云密布,一片‘山雨欲来风满楼’的气氛弥漫其间。42岁的‘老爷爷’普朗克战战兢兢地伸出脑袋看看天,身边是潘多拉的盒子,这妖精该不该放出来呢?也许它能驱除乌云,恢复蓝天,也许它将如同石头缝里蹦出的孙猴子,挥动金箍棒,将世界擾得地覆天翻?普朗克的直觉告诉他,结论会是后者。但是,妖精总是要出来的,天意不可违啊。于是,盒子被打开,量子力学这个怪物就此诞生了。

之后的100多年,尽管量子物理学一个里程碑又一个里程碑,成果斐然,但由于它惊世骇俗、不同凡响的本质,孙悟空难跳出如来佛的掌心,量子论每前进一步似乎都举步维艰。

其实,整个物理学在争论些什么呢?说穿了也很简单。那是最古老也最困惑人的问题:“光,到底是什么?物质,又是什么?”

用现代的语言,说得再具体一些:“光和物质,到底是粒子还是波?”这个粒子说波动说纠缠不清的问题,穿越时空几百年,引发了各种学说理论,伴随着越来越精确的实验验证,也招来了一场又一场连绵不断的口水战。

在量子力学诞生之前,对此问题的争论有过一段时期的平静。那就是上文所说的‘牛顿力学加上麦克斯韦方程建造的宏伟物理大厦’辉煌鼎盛之时。当时的物理学界以为一切完满天下太平,古老的问题已经不是问题,答案犹如铁板钉钉:“光是一种电磁波,符合美妙无比的麦克斯韦方程,其余的物质粒子,则符合放之四海而皆准的牛顿力学。”。

连躲在天国中的拉普拉斯妖也俯首下望,而且沾沾自喜地向世界宣称他的决定论:“一切都在控制之中。给我宇宙现在的状态,我将可以告诉你宇宙的过去和未来!”。

然而,科学家们对世界的探索永远不会停止,探索的结果使晴朗的天空飘起了两片不起眼的小乌云:那是迈克尔逊-莫雷实验和有关黑体辐射的研究。两片小乌云使物理学界陷入困境。一切想驱散乌云的努力都适得其反。乌云日积月累,越来越大,以至于发展到了压顶之势。

再后来,第一片乌云动摇了牛顿力学,引发了爱因斯坦的相对论革命,从第二片乌云中,则诞生了本文所讨论的量子理论。

黑体辐射问题到底给经典物理造成了些什么麻烦呢?物理学是以实验为基础的,当理论解释不了实验结果的时候,麻烦就来了。所谓黑体,是指对光不反射、只吸收,但却能辐射的物体。经典理论认为光是一种电磁波,然而,由经典物理、麦克斯韦方程推导而出的‘维恩公式’和‘瑞利-金斯公式’,却与黑体辐射的实验结果不相符合,甚至导致‘当辐射的频率趋于无穷大时,辐射能量发散’的所谓‘紫外灾难’这种荒谬结论。

当年的普朗克使用了一个巧妙而新颖的思想方法:假设黑体辐射时,能量不是连续的,而是一份一份地发射出来的话,就可以导出一个新的公式,这个公式在频率较小时自动回到瑞利-金斯公式,在频率大时又自动回到维恩公式。因此,新公式在所有的频率范围,都与实验符合得很好!这就是普朗克1900年论文的主要内容。

普朗克毕竟是一个传统而保守的德国物理学家,他只是按照科学方法办事,并未奢望要掀起一场革命,连自己都不知道自己已经把‘量子’这个妖精引进了物理学,这个妖精的标签是一个著名的普适常数h,被称为普朗克常数。当他用战粟发抖的手,打开了潘多拉盒子之后,蹦出来的妖精第一棒就将他自己打晕了。因为在经典物理里,能量应该是连续的,而普朗克的新理论却假设能量只能是一份一份地被发射出来,这看上去不是不可思议吗?普朗克认为自己制造的这个‘量子妖精’破坏了物理学的完美,因此,他极力企图把它给收回到潘多拉盒子中去。普朗克曾经花费了15年的时光,试图找到一种经典物理方法,来导出同样的公式,以解决黑体辐射问题。但是这个试探却没有成功,‘量子妖精’放出来之后,便一发不可收拾,后来更是四方挥舞金箍棒,大闹天宫。

普朗克不喜欢这个妖精,也没有提出光量子的思想,直到1905年,26岁的爱因斯坦对光电效应的贡献才真正使人们看到了量子概念所闪现的光芒。

爱因斯坦比普朗克更进了一步,认为不仅仅场的能量是一份一份辐射出来的,而且光本身就是由不连续的光量子组成,每一个光量子的能量E = h?,它只与光的频率?有关,而与强度无关。这儿的h便是普朗克常数,那个被普朗克释放到世上来的小妖精!

啊,光不就是一种电磁波吗?它能精确地被麦克斯韦方程所描述,如今怎么又变成一个一个的光量子了呢?这不就像是已经被打倒在地的阶级敌人-牛顿时代光的微粒说,又反攻倒算打回来了么?其实,岂止反攻倒算,而是已经鸟枪换大炮,装备精锐,完全改头换面而来!还好,早在爱因斯坦出生的那一年,爱因斯坦还是个7、8个月大的婴儿时,麦克斯韦就48岁英年早逝了,没有听到这个令他伤心的消息。麦克斯韦一生反对进化论,想必也接受不了‘量子论’这种古怪的妖精。不过,他对基督的虔诚胜于科学,临终时念念不忘的,不是他的电磁理论,而是他的老婆。他的临终遗言是:“我的天父,求你看顾我的妻子!”

光量子的概念好像也不符合我们的日常生活经验。‘波光粼粼’,多么富有诗意,谁能看出光是一粒一粒的呢!不过,这点倒不难理解,因为一个光量子的能量实在是太小了,比如,蓝光频率v=6.2796912* 10^{14}(Hz),普朗克常数h=6.6* 10^{-34}。因此,一个蓝光子的能量E=hv=4*10^{-19}焦耳。这个数值很小,使我们感觉不到一份一份光量子的存在。

1913年,28岁的波尔提出了他的量子化的原子结构理论。当时,卢瑟福将原子类比于太阳系的‘行星模型’,碰到了根本性的困难:在经典力学的框架下,这种结构将是不稳定的。为此,波尔在卢瑟福模型中引进了普朗克常数h,又是这个小妖精,又是使用这个公式E=hv。波尔认为,和行星围绕太阳旋转有所不同,原子中的电子轨道,不是连续而任意变化的,而是只能处于一个一个分立的能级中。也就是说,电子轨道是量子化的。

这个量子化的波尔原子理论,在当时取得了极大成功,成功地解释了原子稳定性,原子光谱谱线等问题,使人们再一次体会到这个量子妖精,蹦跳在微观物理世界中时产生的巨大力量。这时的量子力学,终于算是长成了一个调皮顽劣的大男孩,正在努力操练绝世武功,企图伺机大展身手咧。

但是,波尔的原子理论的基础仍然是建立在经典物理的大地上,不是彻底革命的量子理论。因此,在它诞生的那一刻,就种下了‘短命’的祸根,只迎来了10年左右的辉煌。

接着便到了1923年,31岁的德布罗意提出德布罗意波。1925年,24岁的海森堡创立矩阵力学,以及1926年,37岁的薛定谔建立薛定谔方程。

在这接踵而至的一大批‘男孩’们的努力下,‘男孩物理学’-- 量子力学,进入了它的成熟期。

参考资料

有关“男孩物理学”的说法来自于下列博文:

http://blog.sina.com.cn/s/blog_4bf87f3f0100md50.html

关于本文

本文授权转载于张天荣老师的个人博客,欲再转载者请联系原作者

31 Jul 12:24

DropboxPortableAHK:Dropbox 免安裝版,支援多重帳號登入

by Pseric
one

此类便携版本适合放入u盘

DropboxPortableAHK:Dropbox 免安裝版,支援多重帳號登入

Dropbox 之所以深受許多人的喜愛,有很大的原因在於它本身的桌面端同步工具很方便,只要將檔案拖曳到 Dropbox 資料夾裡,就能夠自動上傳到雲端硬碟,也可以即時更新其他已連結裝置上的檔案,保持每個裝置都能存取到最新的版本。

不過 Dropbox 官方所提供的同步工具一次只能設定連結一個帳戶,也是確保使用者需要更大容量時,能付費升級會員,若你希望可以同時存取、同步不同的 Dropbox 帳戶,那麼可以試試看使用 DropboxPortableAHK,也就是 Dropbox 免安裝版

這是一款由德國網友 Nick 說開發的非官方工具,透過它可以製作可攜式版本的 Dropbox ,若你想要把 Dropbox 放在隨身碟裡面帶著走,或是在一台電腦上開啟、同步多個不同的 Dropbox 帳戶,可以下載這款小工具來使用。

DropboxPortableAHK 是以 AutoHotKey 所製作(縮寫為 AHK),主要特色包括:

  • 綠色免安裝,設定後執行即可使用,也能把同步資料夾帶著走。
  • 可以將 Dropbox 放入 USB 隨身碟,隨時使用而無須安裝。
  • 你可以選擇要同步的資料夾。
  • 你可以在一台電腦或使用者帳戶上使用多個 Dropbox 帳戶。
  • 你可以隨時隨地使用 Dropbox,而無須管理員權限。

軟體資訊

軟體名稱:DropboxPortableAHK
軟體語系:英文
作業系統:Windows
官方網站:http://nionsoftware.com/dbpahk/
下載鏈結:官方網站下載 (下載頁面

使用教學

1. 進入 DropboxPortableAHK 網站後,從上方選擇 Download 可以下載最新版本,或者點擊首頁的 Download Now 按鈕也可以。

DropboxPortableAHK:Dropbox 免安裝版,支援多重帳號登入

2. 下載後解壓縮,取得 DropboxPortableAHK ,將它複製到你要使用的裝置裡(例如 USB 隨身碟),然後執行進行設定。

DropboxPortableAHK:Dropbox 免安裝版,支援多重帳號登入

3. 接著要先進行一些基本設定,設定畫面有簡体中文說明,大致上不會太難懂,只要照著步驟做即可。

DropboxPortableAHK:Dropbox 免安裝版,支援多重帳號登入

4. 在開始設定前,必須要先測試網路是否能夠連線,點擊「測試連接」後若可正常連結,即可點擊下一步。

DropboxPortableAHK:Dropbox 免安裝版,支援多重帳號登入

5. 設定 DropboxPortableAHK 要使用的 Dropbox 資料夾,上面有一些範例說明,你可以照著它的提示來設定,完成後預覽看看最終生成路徑是否正確,沒問題的話就到下一步。

DropboxPortableAHK:Dropbox 免安裝版,支援多重帳號登入

6. 如果需要,你可以使用現有的 Dropbox 資料夾,若勾選這選項,那就不需重新下載資料夾裡的檔案,只要重新索引,可以大大縮短同步時間。

DropboxPortableAHK:Dropbox 免安裝版,支援多重帳號登入

7. 建議把接收 DropboxPortableAHK 的更新提示開啟。

DropboxPortableAHK:Dropbox 免安裝版,支援多重帳號登入

8. 有一些插件方面的相關設定選項,如果有需要請自行選擇,若沒特殊需求的話以預設選項安裝。

DropboxPortableAHK:Dropbox 免安裝版,支援多重帳號登入

9. 然後點擊「下載 Dropbox 文件」,新下載的 Dropbox 會透過 DropboxPortableAHK 來載入使用,跟原有的 Dropbox 不會有衝突,然後在底下選擇一個自訂的 Dropbox 圖示,建議可以選擇藍色以外的圖示,就不會與原有的 Dropbox 圖示混淆。

DropboxPortableAHK:Dropbox 免安裝版,支援多重帳號登入

10. 最後等待 Dropbox 安裝過程結束,這當中需要進行 Dropbox 的設定,不過不會與你現有的 Dropbox 發生衝突,即使電腦已有安裝 Dropbox 也沒關係,設定後點擊「結束」完成設定。

DropboxPortableAHK:Dropbox 免安裝版,支援多重帳號登入

11. 在 DropboxPortableAHK 開啟後,就會在 Windows 系統列裡看到兩個 Dropbox 圖示,而你新設定的帳戶,也會依照你所指定的路徑開始同步資料。

當然,速度上是和 Dropbox 官方版本一樣,當你將任何檔案拖曳到你所設定的同步資料夾時,也會立即同步並更新到雲端硬碟。

DropboxPortableAHK:Dropbox 免安裝版,支援多重帳號登入

從 Windows 右下角的工具列,就能看到兩個同時並存的 Dropbox 了,不過透過 DropboxPortableAHK 所載入的 Dropbox 是舊版的,但除了沒有中文介面以外,其實不影響使用。

DropboxPortableAHK:Dropbox 免安裝版,支援多重帳號登入

喜歡免費資源網路社群的文章嗎?歡迎加入 FacebookTwitterGoogle+,以獲取最即時的更新動態。若有任何建議或想法,可以隨時與我聯絡

31 Jul 10:35

数字世界浪花拍打现实世界,海岸线缓慢改变着

by 陈一斌
one

喜欢毕加索那幅画。

design

Macintosh 发布的时候,掌声、尖叫和口哨持续不断。它是一部美妙的机器,不光因为苹果米色,干净利落的外表,而是对于要进行大量文书处理工作的白领来说,他们终于第一次拥有“所见即所得”(WYSIWYG)的文书处理软件,很快引起了别人的模仿。

为何“所见即所得”很重要?因为时至今天,纸在人们日常工作、交流中占据着统治性的地位——而“所见即所得”能够让人在打印之前,一览文档的格式以及排版是否有错误。所以,这反映了一个事实,从 80 年代以来,我们的文书处理软件的设计目的是为了模拟纸张,模拟原本排版的过程。

然而,数字世界与实体世界有着不同的逻辑,以及不同的审美取向。或者说,从 1984 年到 2013 年,这 30 年间数字世界已经开始越来越深刻地影响我们的审美,以及工具的选择。传真机逐步被电子邮件取代,电子邮件又开始被 Dropbox、Evernote、Box.net 等协作服务所取代。比尔·盖茨当年所希冀的“无纸化办公”设想,越来越现实——毕竟现在刷信用卡后,现在都可以避免签字。

常年活在数字世界里的人,比方说程序员,对“所见即所得”抱怨甚深。他们认为这种方式无法批量处理排版的问题,而且也难以做到统一排版,反而是留下了各种各样的问题。不满是进步之源。

历史上最年轻图灵奖的获得者、现代计算机科学鼻祖的高德纳(Donald Ervin Knuth),在出版《计算机程序设计艺术》第二卷的的时候发现排版质量仍然很差。于是他暂停了这本书的第二卷的出版,而是决定从 1976 年开始,他拿出十年时间发明了数字出版引擎 TeX,以及相关字体设计系统 Metafont。——从这时候开始,另外一种文本处理方式开始在程序员的世界里流行起来“所想即所得”(WYTIWYG)。

和 Word、Pages 等传统的文书处理软件不一样,TeX 将内容处理和排版处理两个部分分离了开来。我们首先要做的,是用不同的代码标记出文本里需要加粗、倾斜、加下划线、标注等部分,等整份文档写完之后,再通过 TeX 出版引擎转换,成为格式漂亮的文档。

QQ20130731-11

以上是 TeX 后来流行最广泛的变体 LaTeX,在写作过程中的源代码

latexexample2

以上是将代码转换为正式文档时的模样

如果现实中的出版有多复杂,那么 LaTeX 本身索要解决的问题就越多,而且设计上也变得复杂。尽管如此,不论是程序员还是科学家,都喜欢用 LaTeX 来出版自己的论文或其它。原因无他,LaTeX 让人能够“一次处理”就能搞定出版问题,让人将完全将心思投入到写作当中,而不是马上考虑排版问题——这种专注对于科学家、程序员等急需大段时间进行思考的人来说,十分重要。

LaTeX 的出现启发了旁人,“原来数字世界里的出版与写作,可以这样子实现。”于是,后来出现了一种被称之为“轻量级标记语法”的东西,它们其实都是 LaTeX 的简化版本,比如说最近逐渐变得流行的 MarkDown 语法,就以它的简洁与优雅,逐步成为新的网络写作风俗。更别提我现在有多么讨厌别人用 Word 写完文档,然后直接贴在 WordPress 后台了。

前 Facebook CTO Bret Taylor 今天在公布他与团队一起开发的新服务 Quip 时,对纽约时报说,“人们所使用的东西发生了基础性的变化。”他所开发的服务,包括了协作、文书处理等方面,但排版方面,仅仅给出了有限的字体选项和 Checkbox 样式。这反而可能更符合当下人们的胃口,在经历多年模拟现实的“拟物化设计”后,重新对数字世界原本逻辑进行思考的“扁平化设计”也逐渐兴盛。iOS 7 是苹果对自己的颠覆,也是对这一现象的有力支持。

这让我想起了画家毕加索的画牛的过程——

tumblr_mof95zJ9z81qbf78mo1_500

组织过软件汉化,写过时间管理文章,研究过个人知识管理。关注科技的发展,创投资讯、移动互联网。

#欢迎关注爱范儿认证微信公众号:AppSolution(微信号:appsolution),发现新酷精华应用。



爱范儿 · Beats of Bits | 原文链接 · 查看评论 · 新浪微博 · 微信订阅 · 加入爱范社区!


31 Jul 10:16

走近量子纠缠(1)薛定谔的猫

by 张 天蓉
one

量子力学的结论却早已在诸多方面被实验证实,被学术界接受,在各行各业还得到各种应用,量子物理学对我们现代日常生活的影响无比巨大。以其为基础而产生的电子学革命及光学革命将我们带入了如今的计算机信息时代。可以说,没有量子力学,就不会有今天所谓的‘高科技’产业。
还是不明白量子力学和it行业的联系.

本文作者:张 天蓉

本科普系列是想尽量使用通俗的语言,向公众介绍神秘奇妙的‘量子纠缠’。

要认识神秘的量子纠缠,首先要认识神秘的量子现象。

不管是学哪个行业的,大概都听说过奇妙的量子现象。诸如测不准原理啦,薛定谔的猫之类的,在日常生活中看起来匪夷所思的现象,却是千真万确存在于微观的量子世界中。

许多人将听起来有些诡异的量子理论视为天书,从而敬而远之。有人感叹说:“量子力学,太不可思议了,不懂啊,晕!”

不懂量子力学,听了就晕,那是非常正常的反应。听听诺贝尔物理学奖得主,大物理学家费曼的名言吧。费曼说:“我想我可以有把握地讲,沒有人懂量子力学!” 量子论的另一创始人玻尔(Niels Bohr)也说过:“如果谁不为量子论而感到困惑,那他就是没有理解量子论。”既然连费曼和玻尔都这样说,我等就更不敢吹牛了。

因此,我们暂时不要奢望‘懂得’量子力学。此一系列文章的目的是让我们能够多‘了解’、多认识一些量子力学。因为量子力学虽然神秘,却是科学史上最为精确地被实验检验了的理论,量子力学经历了100多年的艰难历史,发展至今,可说是到达了人类智力征程上的最高成就。身为现代人,如果不曾‘了解’一点点量子力学,就如同没有上过因特网,没有写过email一样,可算是人生的一大遗憾啊。

刚才提及量子现象时,说到了‘薛定谔的猫’,我们的讨论可由此开始。

1. 薛定谔、女朋友、猫

薛定谔(E.Schr dinger ,1887—1961)是奥地利著名物理学家、量子力学的创始人之一,曾获1933年诺贝尔物理学奖,量子力学中描述原子、电子等微观粒子运动的薛定谔方程,就是以他而命名的。

‘薛定谔的猫’也称‘薛定谔佯谬’,是指薛定谔为说明量子力学中的‘叠加态’设计的一个思想实验而导致的佯谬。

那么,首先我们需要了解,什么是‘叠加态’?

根据我们的日常经验,一个物体某一时刻,总会处于某个固定的状态。比如我说:女儿现在‘在’客厅里,或是说:女儿现在‘不在’客厅里。要么在,要么不在,两种状态,必居其一。然而,在微观的量子世界中,情况却有所不同。微观粒子可以处于一种所谓‘叠加态’的状态中,这种状态是不确定的。例如,电子可以同时位于两个不同的地点:A和B,也就是说,电子既在A,又不在A。电子的状态是‘在’和‘不在’,两种状态按一定几率的叠加。电子的这种混合状态,叫做‘叠加态’。

聪明的读者会说:“女儿此刻‘在’或‘不在’客厅,看一眼就清楚了。电子在A,或是不在A,测量一下不就知道了吗?”说得没错,当我们对电子的状态进行‘测量’时,电子的‘叠加态’不复存在,而是‘坍缩’到‘在A’,或是‘不在A’,两个状态的其中之一。但是,微观与宏观之不同,是在于观测之前。女儿在不在客厅,观测之前已成事实,并不以‘看’或‘不看’而转移。而微观电子坍缩前的状态,并无定论,直到测量它,才因坍缩而确定。这是微观世界中量子叠加态的奇妙特点。

尽管量子现象显得如此神秘。然而,量子力学的结论却早已在诸多方面被实验证实,被学术界接受,在各行各业还得到各种应用,量子物理学对我们现代日常生活的影响无比巨大。以其为基础而产生的电子学革命及光学革命将我们带入了如今的计算机信息时代。可以说,没有量子力学,就不会有今天所谓的‘高科技’产业。

如何解释量子力学的基本理论,仍然是见仁见智,莫衷一是。这点也曾经深深地困扰着它的创立者们,包括伟大的爱因斯坦。微观叠加态的特点与宏观规律如此不同,物理学家如薛定谔也想不通。于是,薛定谔在1935年发表了一篇论文,题为《量子力学的现状》,在论文的第5节,薛定谔编出了一个‘薛定谔猫’的理想实验,试图将微观不确定性变为宏观不确定性,微观的迷惑变为宏观的佯谬,以引起大家的注意。果不其然!物理学家们对此佯谬一直众说纷纭、争论至今。

以下是‘薛定谔猫’的实验描述。

把一只猫放进一个封闭的盒子里,然后把这个盒子连接到一个装置,其中包含一个原子核和毒气设施。设想这个原子核有50%的可能性发生衰变。衰变时发射出一个粒子,这个粒子将会触发毒气设施,从而杀死这只猫。根据量子力学的原理,未进行观察时,这个原子核处于已衰变和未衰变的叠加态,因此,那只可怜的猫就应该相应地处于‘死’和‘活’ 的叠加态。非死非活,又死又活,状态不确定,直到有人打开盒子观测它。

实验中的猫,可类比于微观世界的电子(或原子)。在量子理论中,电子可以不处于一个固定的状态(0或1),而是同时处于两种状态的叠加(0和1)。如果把叠加态的概念用于猫的话,那就是说,处于叠加态的猫是半死不活、又死又活的。

量子理论认为:如果没有揭开盖子,进行观察,薛定谔的猫的状态是‘死’与‘活’的叠加。此猫将永远处于同时是死又是活的叠加态。这与我们的日常经验严重相违。一只猫,要么死,要么活,怎么可能不死不活,半死半活呢?别小看这一个听起来似乎荒谬的物理理想实验。它不仅在物理学方面极具意义,在哲学方面也引申了很多的思考。

谈到哲学,聪明的读者又要笑了,因为在古代哲学思想中,不凡这种似是而非、模棱两可的说法。这不就是辩证法的思想吗?你中有我,我中有你,一就是二,二就是一,合二而一,天人合一,等等等等,如此而已。

此话不假,因此才有人如此来比喻‘薛定谔的猫’:男女在开始恋爱前,不知道结果是好或者不好,这时,可以将恋爱结果看成好与不好的混合叠加状态。如果你想知道结果,唯一的方法是去试试看,但是,只要你试过,你就已经改变了原来的结果了!

无论从人文科学的角度,如何来诠释和理解‘薛定谔的猫’,人们仍然觉得量子理论听起来有些诡异。有读者可能会说:“你拉扯了半天,我仍然不懂量子力学啊!”

还好,刚才我们已经给读者打了预防针,不是吗?没有人懂量子力学,包括薛定谔自己在内!薛定谔的本意是要用‘薛定谔猫’这个实验的荒谬结果,来嘲笑哥本哈根学派对量子力学,对薛定谔方程引进的‘波函数’概念的几率解释,但实际上,这个假想实验使薛定谔自己,站到了自己奠基的理论的对立面上,难怪有物理学家调侃地说到薛定谔:“薛定谔不懂薛定谔方程!”

到此为止,我们解释了半天‘薛定谔猫’实验的来龙去脉,却只字未提薛定谔的女朋友之事。再此赶快补上这段八卦,以免使读者大失所望。

薛定谔应该具有超凡的个人魅力,风流倜傥,女友无数。要不然怎么会触动舞台剧编导、纽约剧作家马修韦尔斯的灵感,写出了一部‘薛定谔的女朋友’的舞台剧呢?

以下是这个舞台剧2001-2003年在旧金山和纽约演出时的剧照和海报。

094605m93mfd423fot44of《薛定谔的女朋友》是关于爱,性,和量子物理学的一部另类浪漫喜剧。剧作家马修韦尔斯本人,并没有受过超出高中课程的科学教育,但却痴迷于物理学的神秘。他说:”我永远无法进入数学,但我发现它背后的概念,视觉和类比,是如此地引人入胜!”

舞台剧中有这么一段饶有趣味的话:“到底是波动-粒子的二象性难一点呢,还是老婆-情人的二象性更难?”据说薛定谔有很多情妇,也有不少私生子,身边不乏红颜知己。薛定谔的女友和薛定谔的猫一样不确定,薛定谔的婚姻爱情观和他的物理理论一样,不同凡响。据说,薛定谔是个‘多情种子’类的人物,他的情妇虽然多,但他每爱一个女人时,都是真心实意地。也许我们可以用量子力学的语言来作个比喻:薛定谔的感情和性生活,总是处于一个包括很多本征态的复杂叠加态中。一定时期,叠加态‘坍缩’到某个本征态,薛定谔便投入一个女友的怀抱。

但是,在薛定谔众多女友中,有一位很不一般的神秘女人,正是她,成为了这部舞台剧的女主人公。

在1925年圣诞节前,薛定谔像往年一样,来到美丽的、白雪皑皑的阿尔卑斯山上度假,但这次陪伴他的不是太太安妮,而是一位来自维也纳的神秘女友。薛定谔的这位女友神秘莫测,直到八十多年后的今天,也无人考证出她的身份来历。她不是考证者已知的薛定谔情妇中的任何一位。无论如何,在这对情侣共度佳期的时期内,这位神秘女郎极大地激发了薛定谔的灵感,使得他令人惊异地始终维持着一种极富创造力和洞察力的状态。因此,物理学家们说,薛定谔的伟大工作是在他生命中一段情欲极其旺盛的时期内作出的。薛定谔自己也不否认这点,他认为,通过观看这个引人注目的女人,他找到了困惑科学界波/粒二象性看似矛盾的关键。果然,之后的一年内,薛定谔接连不断地发表了六篇关于量子力学的主要论文,提出了著名的薛定谔方程。因此,在享受量子力学带给我们辉煌灿烂的科技成果的今天,我们也应该感谢这位神秘女郎的贡献。

综上所述,是‘薛定谔的神秘女友’,激发了薛定谔天才的想象力和灵感,使其建立了微观世界中粒子的波函数所遵循的薛定谔方程。然后,薛定谔不同意哥本哈根派对波函数的解释,设计了‘薛定谔的猫’的思想实验。用薛定谔自己的话来说,他要用这个“恶魔般的装置”,让人们闻之色变。薛定谔说:看吧,如果你们将波函数解释成粒子的几率波的话,就会导致一个既死又活的猫的荒谬结论。因此,几率波的说法是站不住脚的!

这只猫的确令人毛骨悚然,相关的争论一直持续到今天。连当今伟大的物理学家霍金也曾经愤愤地说:“当我听说薛定谔的猫的时候,我就跑去拿枪,想一枪把猫打死!”

在宏观世界中,既死又活的猫不可能存在,但许多许多实验都已经证实了微观世界中叠加态的存在。总之,通过薛定谔的猫,我们认识了叠加态,以及被测量时叠加态的坍缩。

叠加态的存在,是量子力学最大的奥秘,是量子现象给人以神秘感的根源,是我们了解量子力学的关键。

关于本文

本文授权转载于张天荣老师的个人博客,欲再转载者请联系原作者

27 Jul 16:11

IDC 全球 Q2 智能手机和移动电话调查报告

by 爱范儿·观察
one

联想和中兴的出货量增长令人惊讶,当然这是低端机的功劳,而LG也是这个原因么?要等他们的财报营收了。

Cell-phones

苹果三星的 Q2 财报发布后不久,IDC 公布了全球 Q2 智能手机和移动电话调查报告——来得正是时候。

厂商们在第二季度纷纷调高设备出货量,整体数量的增加使得所有厂商的市场份额被稀释不少。占据传统强势地位的三星和苹果表现得更明显。

  • 三星 Q2 智能手机出货量为 7240 万台,比去年同期增加 2210 万台,但份额从去年的 32.2% 跌到 30.4%
  • 苹果 Q2 出货量为 3120 万台,比去年同期增加 1460 万台,但份额从去年的 16.6% 跌至 13.1%

进入前五的 LG、联想和中兴都出现不同程度的上涨——

  • LG 智能手机出货量由去年 Q2 的 580 万台上升至 1210 万,增幅为 108.6%,市场份额从 3.7% 升至 5.1%
  • 联想智能手机出货量由去年 Q2 的 490 万台上升至 1130 万,增幅为 130.6%,市场份额从 3.1% 升至 4.7%
  • 中兴智能手机的市场份额变化不大,但出货量由 640 万台上升至 1010 万,增幅为 57.8%

Smartphone

移动手机出货量和市场占有率考虑了非智能机,诺基亚凭借 Asha 功能机占据第二位。三星依旧领跑。
mobilephone

#欢迎关注爱范儿认证微信公众号:AppSolution(微信号:appsolution),发现新酷精华应用。



爱范儿 · Beats of Bits | 原文链接 · 查看评论 · 新浪微博 · 微信订阅 · 加入爱范社区!


16 Jul 14:43

复仇者

by 土摩托
one

“想象力和知识谁更重要?”这或许是一部分理科生的通病?当然,土摩托能准确表达自己,已经非常好了。

利用这次出差新加坡的机会在飞机上看完了《复仇者》,强力推荐!
51QNHYP33WL._SL500_

这部惊险小说的主要情节可以用一句话概括:一个越战老兵被一名加拿大富商雇佣,去南美洲抓捉拿杀害富商孙子的塞尔维亚歹徒。不过这部小说的真实容量十分巨大,从越战到波黑战争,从美国黑帮到基地组织,从CIA到私家侦探……每一章都是一个惊险故事,为最后的高潮做了很好的铺垫。不过这样写法的缺点就是铺垫有些长,需要慢慢看才能进入到小说的情景中去,而现在的读者普遍缺乏耐心。

这是弗·福赛斯2003年写的一本小说,那时候还没有微博呢!福赛斯是我最喜欢的小说家之一,他的《豺狼的日子》是惊险(或者间谍)小说的经典作品,至今无人超越。读完这本书,我有两个小感想:

第一,对于小说而言,想象力和知识谁更重要?这本书想象力当然很棒,但最吸引我的其实是里面关于国际间谍组织等各种秘密机构的细节描述,这些都是平时看报纸得不到的信息。福赛斯是这方面的高手,他对世界事务的丰富知识无人能及,我越来越觉得这才是他之所以有今天这个成就的关键所在。

中文小说我看的不多,金庸到底好在哪里?我仔细想来,其实是好在他丰富的历史知识上,这也是他和其他武侠小说家的根本区别。与此类似的还有那个《鬼吹灯》系列,我看了第一本觉得还不错,第二本就看不下去了,因为第一本给我普及了盗墓知识,但第二本里没有新的知识点,纯属天马行空的想象,就没意思了。

联想到最近几天CCTV5频道的两个节目,其一是“天下足球”栏目做的弗格森纪念特辑,那叫一个煽情!还有一个新出的“搞笑体育”栏目,东北味儿的解说词那叫一个可乐!可是呢,画面都是人家的,这才是根本。中国人特别擅长敲边鼓,说不好听了其实就是插科打诨而已,一遇到需要动真格的就不行了,核心竞争力都掌握在人家手里。

与此类似的还有CCTV9的那个纪录片《京剧》,我看了第一集,一身中国毛病。

第二,这本小说的一个核心思想是“行大善而容小恶”。福赛斯指责克林顿政府宣扬的“政治正确”理念损害了CIA的行动能力,最终伤害了美国的国家安全。这本小说结束在2011年9月10日,貌似是正义获得了胜利,但谁都知道第二天发生了什么。

联想到最近美国国家安全局雇员Edward Snowden泄露美国政府监听公民电话事件,你认为他做得对吗?事实上,据《今日美国报》报道,美国人对于他这种行为其实是很矛盾的,超过一半的美国人并不觉得政府有错,因为反恐是要付出代价的,在美国这样一个民主国家,其代价就是公民的隐私权。

16 Jul 05:22

亚里士多德为何不数数妻子有几颗牙

by 同人于野
one

其实亚里士多德数过的,因为每人长智齿的颗数不定。

(《东方早报·上海书评》,2013年2月3日)

大多数人学习科学是为了通过某个考试乃至于最终找个什么好工作。有的人学科学是因为科学很有用。还有为数很少的一帮人,他们学科学纯粹是出于好奇。他们惊异于这个表面看来复杂多变的世界背后很可能是由一系列简单而神秘的规则所支配运行的。他们未必想要利用这些规则干什么了不起的大事,但他们很想知道这些规则是什么,并以此来看懂世界。就好像一群面对一台构思精巧的服务器的黑客一样,科学是对这帮人的一个挑衅。他们想要破解这个世界。而破解世界有两个办法:一个办法是看书,一个办法是直接上手干。

看书学科学并不容易。很可能每个学物理的大学生,乃至任何一个想增长点智识的人,都看过《别闹了,费曼先生》这本书。如果你看这本书的时候还没学物理,你可能会因为看了这本书而想去学点物理。如果你看这本书的时候已经学了几年物理,你可能会因为看了这本书而反思自己学过的全部物理。你不是反思自己学的那些“物理”对不对,而是反思自己是不是真学会了。根据书中费曼在巴西的经验,很多物理专业的高分学生其实没学会物理。

原来巴西的物理教育,是一种八股文式的应试教育。他们把物理学变成一条条可以死记硬背的标准化知识点,学生们用完全被动的办法把这些知识点输入大脑以便考试的时候可以随时检索出来,其实并不知道它们的真正意思。费曼惊讶地发现巴西学生在能够精确背诵“偏振光”知识条目中“布儒斯特角”的定义和性质,甚至知道这个角度的计算公式的情况下,居然不知道海水表面反射出来的光就是偏振光。显然课本上没写这条 — 课本上写的是“一种具备某个折射率的介质”,而学生想不到海水其实就是这么一种介质。更令费曼匪夷所思的是,物理学首先是一门实验科学,而巴西的物理教科书里居然连一个真正意义上的实验都没有,全是知识点。结果费曼指着鼻子告诉巴西的物理教授和政府官员们:你们巴西根本没有在教科学!

也许中国的科学教育比当初巴西好一点,但考虑到中国师生同样热衷于考试,也许好不了多少。关键在于,科学既不是课本上那一条条知识点,也不是学科竞赛中那一道道难题,而是可以随时取用于生活的实在经验。真正懂科学的人不但得对所学知识倒背如流,还得能举一反三,乃至于用这些知识解释身边的现象。能求解老师们构造的各种抽象难题,再厉害也不过是纸上谈兵而已;而能把知识活学活用,才是真本事。

把杯子里的水倒掉,再怎么倒也会最后留下一些水珠,这是什么道理?秋天的落叶,为什么会打卷?桌子上有一摊水,为什么用干抹布去擦,其吸水效果反而不如用湿抹布?解释这些现象并不需要用到什么高深的学问 — 真列出来的话,其背后的“知识点”可能甚至不会超过中学范围。然而绝大多数人可能不但不会解释,甚至连想都不会想到这些问题。他们可以一边复习表面张力的知识点一边喝水,而完全不在意杯子上覆着的小水珠。

但是有人很在意。“科学松鼠会和它的朋友们”写的这本《再冷门的问题也有最热闹的答案》,就专门研究这类问题。此书既不谈宇宙加速膨胀这种未解之谜,也不谈全球变暖这种宏大主题,只谈我们身边随处可见,却又往往视而不见的科学现象。此书的缘起,是《新发现》杂志和松鼠会搞了一个“Dr. You”栏目,由读者提出各种“不按常理出牌的疑难问题”,松鼠会的一干松鼠再进行解答。松鼠们都是研究生或者青年科学工作者,他们分布在世界各地通过网络互相联系。他们运用各自的专业知识提供答案,这些答案相当科学 — 实际上,如果一个松鼠给的答案有问题,马上就会有另一个松鼠把它指出来,争论是常有的事。不过此书的有意思之处还不仅在于这些答案是正确的,而在于这些答案是“热闹的”,写得相当轻松活泼。

科学知识是一种高度结构化的知识,其有一个很酷的性质:只要学会了一般原理,就能解决无穷多表面看来千奇百怪的问题。掌握科学知识的人可以一听你的问题,不必亲临现场,完全凭借逻辑推理就能告诉你答案。有时候他们推理出来的答案可能出乎意料甚至违反常识,然而你却不得不服其完全正确。

比如我们考虑这个问题:如果要用一根绳子紧贴地面绕地球一周,可以想象这是必然一根很长的绳子。现在如果我们想把绳子抬高到距离地面一米,请问绳子要加长多少?不会算的人可能会被地球这种大尺度给蒙住,而会算的人会立即指出绳子只需要加长6.28米就够了。再比如说防洪的时候想要用铁板把河岸临时增高一米,请问这个铁板需要多大的抗水压能力?不懂的人可能会设想一个非常厚的铁板,而只要你知道水压只跟深度有关,你就会明白铁板其实用不着比水桶厚多少。

哪怕这个问题是全新的,在大多数情况下我们也能用旧的知识解决它。所以掌握科学知识的人有凭借理论推导就能破解世界的力量。所谓运筹帷幄之中,决胜千里之外,这就是知识的力量。这样说来任何一个问题背后的知识都能把人分为两类:学过的和没学过的。在大多数情况下,你要是没学过,就只能服学过的。然而“学过”,也仅仅是懂科学知识而已,还算不上科学家。

科学家的工作不是使用科学知识,而是使用科学方法。《再冷门的问题也有最热闹的答案》这本书的最可贵之处,在于其中有几个问题是不能用任何课本上的知识回答的。松鼠们除了算理论之外还要亲手做实验,甚至还要查学术论文,甚至最新的学术论文里也没有令人信服的答案。

比如煮熟的鸡蛋,为什么有的很容易剥壳,而有的却不好剥,总有蛋白粘在蛋壳上?这个问题看似简单,其答案却绝不是任何一个人拿现有理论就能推算出来的。事实上,据松鼠“游识猷”介绍,第一篇关于剥蛋壳的论文出现在1959年,有人实验发现只有蛋清的pH值高于8.7,这个鸡蛋才好剥。1960年代又有至少三篇论文研究为什么pH值会影响鸡蛋的“可剥性”,而直到1990年,还有人搞研究证明白色壳和褐色壳的鸡蛋“在可剥性上没有显著的统计学差异”。而所有这些研究都是基于实验和观测的。

费曼也会喜欢这种实验精神。但此书的实验精神还不仅限于报道,而是直接动手。在回答完“为什么杯子里的水总也倒不干净”之后,“擦擦嘴”受到这个问题的启发,发明了一个“伟大的滴水衣服加速干燥法”。他的办法是把一些三角形的纸片倒立贴在衣服上,以此促进衣服里的水向下流动,结果能让衣服“干的快多了”。他甚至还对比实验了使用脱脂棉放水,结论是不如纸片。在研究“挤出来的沐浴露为何会打圈圈”这个问题的时候,各地松鼠纷纷付诸实践。据说正在南半球某图书馆学习的“Robot”因为在卫生间实验洗手液的旋转堆积是否有方向性,还受到了保安的责难。

松鼠们并非总能给出最终答案。有人提问说为什么泡好的茶叶有时候会浮在水面上,而咬一口再吐回去就沉底了?到底是什么原理决定茶叶的沉浮呢?结果几位松鼠,“hbchendl”,“八爪鱼”,“Lewind”和“云无心”展开了争论。有人认为是水进入茶叶细胞改变整体密度导致浮沉;有人则认为是茶叶表面的纤毛间气泡的作用,并贴出茶叶的电镜图像;有人更认为杯子的温度分布也有影响。讨论并未达成共识。茶叶的浮沉,竟是一个尚无定论的科学问题。

对热爱科学的人来说,这难道不是一个非常值得庆幸的局势么?原来连我们身边的一些常见现象,都是现代科学还没有给出确定答案的。一个类似的问题是为什么像小鸡,小鸭和鸽子这样的鸟类在地面走路的时候会一边走一边点头。也许提问的人没有意识到,这其实是一个研究了七十多年而至今仍在争论的问题。据“Fujia”+“八爪鱼”+“Seren”的文章,各国科学家为此提出了多个假说,做了多个实验,考察了300多种鸟类,而共识不可得。

这个世界比绝大多数人想象的要复杂得多,我们对它所知甚少。我们不但不知道宇宙为什么加速膨胀,甚至不知道小鸟为什么一边走路一边点头。与宇宙问题不同的是小鸟的问题就算将来得到确定的答案,这个答案恐怕也不会向我们揭示有关世界的什么重大秘密。但是“尚无答案”这个情状本身,已经足够让人感到安慰了。试想要是不管谁提个什么问题,你都明确知道尽管你不能解答,维基百科上却总有现成的答案,这样没有悬念的世界岂不是毫无乐趣可言。我们仍然幸运地生活在剥个鸡蛋都能写篇论文的时代。这个世界仍然在等着被破解。

破解世界大概有两个办法。一个办法是从已知推未知,只要掌握基本原理,似乎在理论上你就应该能推导出所有现象,只动脑而不动手。但《再冷门的问题也有最热闹的答案》这本书中的几个例子恰恰告诉我们这几乎是不可能的。现有的科学原理远未完备只是一个原因,更重要的原因是复杂现象涉及的数学计算和各种相关因素多到根本不可能用理论推导的程度。在这种情况下“动手”才是更直接了当的办法。当动脑的人高高在上俯视众生的时候,动手的人很可能正蹲在地上满头大汗地摆弄。而且他们完全不怕把手弄脏。

人类自古以来敬重动脑的人,用动手的方法理解世界则是近代科学兴起才有的习惯。古代中外各路哲人全都热爱说理胜过热爱事实。他们或者引用神话典故,或者引用先贤明言,而完全不屑于对照一下实验结果。据说亚里士多德也不知道出于什么理论计算,认为女人的牙齿比男人少。他结过两次婚为什么就不数数自己妻子的牙齿呢?

16 Jul 05:21

别想说服我!

by 同人于野
one

那我如果继续这样订阅blog,岂不是更陷入小圈子了?

(《东方早报·上海书评》,2013年6月2日)

霍金写《时间简史》和《大设计》二书,都有一个被所有人忽视了的第二作者,列纳德·蒙洛迪诺。这两本书能够畅销,我怀疑霍金本人的贡献也许仅仅是他的名气,因为公众其实并不真喜欢科学知识 – 哪怕是霍金的知识。而霍金也深知”每一个数学公式都能让这本书的销量减少一半”。如果真有读者能在这两本”霍金的书”中获得阅读上的乐趣,很可能要在相当的程度上归功于蒙洛迪诺。从他独立完成的Subliminal(《潜意识:控制你行为的秘密》)这本书来看,蒙洛迪诺真的是个非常会写书的人。他完全了解读者想看什么。

看完《潜意识》,我也知道读者想看什么了。在书中蒙洛迪诺讲了个很有意思的笑话。说有一个白人天主教徒来到天堂门口想要进去,他跟守门人列举了自己的种种善行,但守门人说:”可以,不过你还必须能够正确拼写一个单词才能进。””哪个单词?””上帝。””GOD.””你进去吧。”

一个犹太人来到天堂门口,他同样被要求正确拼写一个单词才能进。守门人考他的单词仍然是”上帝”。这个单词非常简单,所以他同样拼写正确,于是也进去了。

故事最后一个黑人来到天堂门口,他面临同样的规则。但是守门人让他拼写的单词是,”捷克斯洛伐克”。

这个笑话的寓意是像我们这样受过高等教育的人接收信息都有一个门槛,低于这个门槛的我们根本不看。我的门槛就相当高,谁想向我说明一个什么科学事实,我一般都要求他出具学术论文。比如作为一个爱国者,我对中医的存废和转基因的好坏这两个问题非常感兴趣,特别关注相关的论文。然而就算是论文也有好有坏,要知道有的论文根本不严谨。所以一篇论文质量好坏,我也有自己的判断标准,达到我的标准才算得上是严谨的好论文:

如果这篇论文是说中医有效的,我就要求它拼写”上帝”。如果这篇论文是说转基因无害的,我就要求它拼写”捷克斯洛伐克”。

你不用笑我,你也有同样的毛病。蒙洛迪诺说,人做判断的时候有两种机制:一种是”科学家机制”,先有证据再下结论;一种是”律师机制”,先有了结论再去找证据。世界上科学家很少,你猜绝大多数人使用什么机制思考?每个人都爱看能印证自己已有观念的东西。我们不但不爱看,而且还会直接忽略,那些不符合我们已有观念的证据。

有人拿芝加哥大学的研究生做了个实验。研究者根据某个容易引起对立观点的议题,比如是否应该禁枪,伪造了两篇学术报告,受试者随机地只能看到其中一篇。这两篇报告的研究方法乃至写法都完全一样,只有数据对调,这样其结果分别对一种观点有利。受试者们被要求评价其所看到的这篇报告是否在科学上足够严谨。结果,如果受试者看到的报告符合他原本就支持的观点,那么他就会对这个报告的研究方法评价很高;如果是他反对的观点,那么他就会给这个报告挑毛病。

去年方舟子大战韩寒,双方阵营都使用各种技术手段寻找证据,写了各种”论文”,来证明韩寒的确有代笔或者的确没有代笔。有谁记得看到过有人说本阵营的论文不够严谨的么?都认为对方的论文才是胡扯。这远远不是最可怕的。如果我反对一个结论而你支持,那么当我看一篇支持这个结论的论文就会不自觉地用更高的标准去看,就会认为这个论文不行;而你,因为支持这个观点,则会认为这个论文很好 — 如此一来我不就认为你是弱智了么?于是两个对立阵营都会认为对方是弱智。一切都可以在潜意识发生。

认为别人弱智和被别人认为是弱智,其实也没那么可怕。真正可怕的是媒体也参与到观念的战争之中。

如果人已经被各种观念分成了阵营,那么媒体就不应该追求什么”客观中立”,因为没人爱看客观中立的东西!媒体应该怎么做呢?技术活动家Clay Johnson 在 The Information Diet (《信息食谱》)这本书里,给我们介绍了美国收视率最高的新闻台 Fox News (福克斯新闻)的成功秘密。尼克松时期,媒体人Roger Ailes有感于当时媒体只知道报道政府的负面消息,认为必须建立一个”拥护政府的新闻系统”。然而事实证明Fox News 的成功并不在于其拥护政府 —  它只拥护共和党政府 —  而在于Ailes有最先进的新闻理念:

第一,有线频道这么多,你不可能,也没必要取悦所有观众。你只要迎合一个特定观众群体就可以了。第二,要提供有强烈主观观点的新闻。

给观众想要的东西,比给观众事实更能赚钱。观众想要什么呢?娱乐和确认。观众需要你的新闻能用娱乐的方式确认他们已有的观念。福克斯新闻台选择的观众群体,是美国的保守派。每当美国发生枪击事件,不管有多少媒体呼吁禁枪,福克斯新闻一定强调拥枪权 – 他们会找一个有枪的采访对象,说如果我拿着枪在现场就可以制止惨案的发生。美国对外军事行动,福克斯新闻一定持强硬的支持态度,如果有谁敢提出质疑,他就会被说成不爱国。哪怕在其网站上转发一篇美联社消息,福克斯新闻都要做一番字词上的修改来取悦保守派,比如《选民对经济的担心给奥巴马带来新麻烦》这个标题被改成了《奥巴马跟白人妇女有大问题》。

我们可以想象知识分子一定不喜欢福克斯新闻。的确没有哪个大学教授宣称自己爱看这个台。就连我当初物理系毕业典礼,系里请来的演讲嘉宾都说物理学有什么用呢?至少能让你学会判断福克斯新闻说的都是什么玩应儿。可是如果你认为福克斯新闻这么做是为了宣传某种意识形态,你就错了。他们唯一的目的是赚钱。

比如修改新闻标题这件事,其实从技术角度说并不是网站编辑的选择,而是读者自己的选择。很多新闻网站,比如赫芬顿邮报(The Huffington Post),使用一个叫做 multivariate testing(也叫A/B testing)的技术:在一篇文章刚贴出来的时候,读者打开网站首页看到的是随机显示的这篇文章的两个不同标题之一,网站会在五分钟内判断哪个标题获得的点击率更高,然后就统一使用这个标题。事实证明在读者的选择下最后胜出的标题都是耸人听闻型的。

福克斯新闻的收视率在美国遥遥领先于其他新闻台。因为CNN在北京奥运传递火炬期间对中国的歪曲报道,很多人认为CNN是个有政治色彩的媒体,其实CNN得算是相当中立的 — 这也是为什么它的收视率现在节节败退。据2012年《经济学人》的报道,倾向自由派的MSNBC现在收视排名第二,CNN只得第三,而这两个台的收视率加起来也比不上福克斯。乔布斯1996年接受《连线》采访,对这个现象有一个非常好的评价:

当你年轻的时候,你看着电视就会想,这里面一定有阴谋。电视台想把我们变傻。可是等你长大一点,你发现不是这么回事儿。电视台的业务就是人们想要什么它们就给什么。这个想法更令人沮丧。阴谋论还算乐观的!至少你还有个坏人可以打,我们还可以革命!而现实是电视台只不过给我们想要的东西。

美国人玩的这一套,中国也有人早就玩明白了。今天我们的媒体和网络上有各种观点鲜明的文章和报道,它们或者骂得特别犀利,或者捧得特别动人,观众看得畅快淋漓,十分过瘾。但是这些文章提出什么切实可行的解决方案没有?说过什么能够修正我们现有思想的新信息没有?它们只是在迎合和肯定人们已有的观念而已。因为它们的生产者知道他们不需要取悦所有人。他们只要能让自己的粉丝基本盘高兴就已经足够获利的了。他们是”肯定贩卖者”。政治辩论?其实是一种娱乐。

王小波写过一篇《花刺子模信使问题》,感慨中国人(主要是领导们)听不得坏消息,一旦学者敢提供坏消息就恨不得把他们像花刺子模的信使一样杀掉。我想引用乔布斯的话:王小波说的太乐观了。真正令人沮丧的现实是所有国家的所有人都有花刺子模君王的毛病,而且他们的做法不是杀掉坏消息,而是只听”好”消息 — 那些能印证我们观念的消息。

这个毛病叫做”确认偏误”(confirmation bias)。如果你已经开始相信一个什么东西了,那么你就会主动寻找能够增强这种相信的信息,乃至不顾事实。这样一旦我们有了某种偏见,我们就无法改变主意了。《信息食谱》说,Emory 大学教授 Drew Westen 实验发现,对于那些已经支持强烈共和党或民主党的学生来说,如果你给他们关于其支持的党的负面新闻,功能性磁共振成像(fMRI)会显示这些人大脑中负责逻辑推理的区域关闭了,而负责感情的区域却激活了!换句话说他会变得不讲理只讲情。因为他们感到受到了威胁。这个受威胁的感情会让你把相反的事实用来加强自己的错误信念。社会学家Brendan Nyhan甚至发现了一个”逆火效应”:你给一个保守派人士看关于布什的减税政策并没有带来经济增长的文章之后,他居然反而更相信减税可以带来经济增长。

在确认偏误的作用下,任何新证据都有可能被忽略,甚至被对立的双方都用来加强自己的观念。这就是为什么每一次枪击事件之后禁枪派和拥枪派都变得更加强硬。另一本书,Future Babble(《未来乱语》)讲了个更有意思的实验。实验者给每个受试学生发一套性格测试题让他们做,然后说根据每个人的答案给其各自分析出来了一份”性格概况”,让学生评价这个概况描写的准不准。结果学生们纷纷表示这个说的就是自己。而事实是所有人拿到的”性格概况”都是完全一样的!人自动就愿意看到说的跟自己一样的地方,并忽略不一样的地方。

可能有人以为只有文化程度比较低的人才会陷入确认偏误,文化程度越高就越能客观判断。事实并非如此。在某些问题上,甚至是文化程度越高的人群,思想越容易两极分化。

一个有意思的议题是全球变暖。过去十几年来媒体充斥着各种关于全球变暖的科学报道和专家评论,这些报道可以大致分成两派:一派认为人类活动产生的二氧化碳是全球变暖的罪魁祸首,如果不采取激烈手段限制生产,未来气候就会不堪设想;一派则认为气候变化是个复杂问题,现有的模型并不可靠,二氧化碳没那么可怕。如果你对这个问题不感兴趣,你根本就不会被这些争论所影响。而《信息食谱》告诉我们,对全球变暖的观点分歧最大的人群,恰恰是那些对这方面有很多了解的人。调查显示越是文化程度高的共和党人,越不相信全球变暖是人为原因造成的;越是文化程度高的民主党人,则越相信这一点。

如果谁想看看这个争论严重到什么程度,可以去看《经济学人》最近一篇报道(2013年3月30日)的读者评论。这篇文章说尽管过去几年人类排放的二氧化碳不顾气候学家警告而继续增加,可是地球平均温度却并没有升高,远低于科学模型的预测。文章下面的评论水平跟新浪网足球新闻的评论不可同日而语,敢在这说话的可能没有高中生。评论者们摆事实讲道理,列举各种论文链接和数据,然而其观点仍然鲜明地分成了两派。就连这篇文章本身写得够不够合理,都有巨大的争议。

观念的两极分化并不仅限于政治,人们可以因为很多事情进入不同阵营,而且一旦选了边就会为自己阵营而战。你的手机是苹果的还是安卓的?这两个阵营的人不但互相鄙视,而且有时候能上升到认为对方是邪恶势力的程度。人们对品牌的忠诚似乎跟政治意识形态没什么区别。我们看苹果新产品发布会,再看看美国大选前两党的集会,会发现二者极为相似,全都伴随着狂热的粉丝关注和激动的专家评论。

也许因为手机已经买了或者政治态度已经表过了,人们为了付出的沉没成本而不得不死命拥护自己的派别,也许是为了表明自己的身份,也许是为了寻找一种归属感。但不管是什么,这种阵营划分肯定不是各人科学推理的结果。根据诺贝尔奖得主 Robert Aumann 1976年的论文 “Agreeing to Disagree“,说如果是两个理性而真诚的真理追求者争论问题,争论的结果必然是二人达成一致。那么现实生活中有多少真理追求者呢?认知科学家 Hugo Mercier 和 Dan Sperber 2011年的一篇论文,”Why do humans reason?“,甚至认为人的逻辑推理能力本来就不是用来追求真理的,而是用来说服别人的。也就是说我们天生就都是律师思维,我们的大脑本来就是个争论设备。这也许是因为进化总是奖励那些能说服别人的人,而不是那些能发现真理的人吧。

互联网很可能加剧了人们观念阵营的划分。在网上你连换台都不用,推荐引擎自动根据你的喜好提供信息。我相信气候学家对全球变暖的预测大大言过其实,我认为决不可以废除死刑,我使用苹果手机,我还要求豆浆必须是甜的豆腐脑必须是咸的 — 在这些原则问题上我从来不跟人开玩笑。如果微博上有人发出违背我理念的言论我怎么办?我果断取消对他的关注。我们完全有权这么做,难道有人上微博是为了找气生么?可是如果人人都只接收符合自己观点的信息,甚至只跟与自己志同道合的人交流,那么就会形成一个”回音室效应”(echo chamber effect)。人们的观念将会变得越来越极端。

有鉴于此,Johnson 号召我们改变对信息的消费方式。他提出的核心建议是”Consume deliberately. Take in information over affirmation.”— 要主动刻意地消费,吸收有可能修正我们观念的新信息,而不是吸收对我们现有观念的肯定。这其实是非常高的要求。要做到这些,我们必须避免那些预设立场的说服式文章,尽可能地接触第一手资料,为此甚至要有直接阅读数据的能力。可是有多少人能亲自研读各项经济指标再判断房价是否过高呢?对大多数人来说现在房价是高是低只与一个因素有关:他是不是已经买了房。

我建议把上面那两句英文刻 iPad 上。不过我发现最新的一系列针对社交网络的研究显示,也许回音室效应并不存在。有人对Facebook的朋友关系研究发现人们并没有只跟与自己政见相同的人交朋友。我们在网上辩得不可开交,生活中仍然可以跟对方辩友”隔着一张桌子吃饭”。哪怕在网上,统计表明人们的关注集群也不是按照政治立场划分,而更多的是按照视野大小划分的。更进一步,我们也许过高估计了对方阵营的极端程度。有人通过调查统计美国两党的支持者,发现如果一个人对某个政治方向有强烈的偏好,那么他对对方阵营的政治偏好,往往会有更高的估计。可能绝大多数人根本没那么极端,可能互联网本身就是个极端的人抒发极端思想的地方。对Twitter的一个研究表明其上的言论跟传统的民意测验相比,在很多问题(尽管不是所有问题)上更加偏向自由派。一般人并没有像Twitter上的这帮人那样拥护奥巴马,或者支持同性恋婚姻合法化。互联网不是一个调查民意的好地方。

但不论如何,确认偏误是个普遍存在的人类特性,而且有人正在利用这个特性牟利。错误观点一旦占了大多数,正确的做法就可能不会被执行。既然改变那些已有成见的人的观念如此困难,也许双方阵营真正值得做的只有争取中间派。今年的 Nature Climate Change 上发表的一篇论文说,虽然不可能改变那些已经对全球变暖学说有强烈看法的人的观点,但是可以用亲身经历来影响那些对气候变化并没有什么成见的人,而这些人占美国成年人口的75%。一个策略是可以告诉一个中间派,你爱去凿冰捕鱼的那个地方,现在每年的冰冻期比十九世纪少了好几个星期,来吸引其注意力。

这个真不错。当然在我这个坚定的全球变暖学说质疑派看来,那些看见自己家门口的池塘不结冰了就认为全球变暖的人纯属弱智。

 

13 Jul 05:27

GPG入门教程

by 阮一峰
one

研究质数几千年,这是和普通人接触最深的质数应用。很可惜这文章这么深入浅出还是没看懂。

前两篇文章,我介绍了RSA算法

今天,就接着来看,现实中怎么使用这个算法,对信息加密和解密。这要用到GnuPG软件(简称GPG),它是目前最流行、最好用的加密工具之一。

一、什么是GPG


要了解什么是GPG,就要先了解PGP

1991年,程序员Phil Zimmermann为了避开政府监视,开发了加密软件PGP。这个软件非常好用,迅速流传开来,成了许多程序员的必备工具。但是,它是商业软件,不能自由使用。所以,自由软件基金会决定,开发一个PGP的替代品,取名为GnuPG。这就是GPG的由来。

GPG有许多用途,本文主要介绍文件加密。至于邮件的加密,不同的邮件客户端有不同的设置,请参考Ubuntu网站的介绍

本文的使用环境为Linux命令行。如果掌握了命令行,WindowsMac OS 客户端,就非常容易掌握。GPG并不难学,学会了它,从此就能轻松传递加密信息。建议读者一步步跟着教程做,对每条命令都自行测试。

二、安装

GPG有两种安装方式。可以下载源码,自己编译安装。

  ./configure
  make
  make install

也可以安装编译好的二进制包。

  # Debian / Ubuntu 环境
  sudo apt-get install gnupg

  # Fedora 环境
  yum install gnupg

安装完成后,键入下面的命令:

  gpg --help

如果屏幕显示GPG的帮助,就表示安装成功。

三、生成密钥

安装成功后,使用gen-ken参数生成自己的密钥。

  gpg --gen-key

回车以后,会跳出一大段文字:

  gpg (GnuPG) 1.4.12; Copyright (C) 2012 Free Software Foundation, Inc.
  This is free software: you are free to change and redistribute it.
  There is NO WARRANTY, to the extent permitted by law.

  请选择您要使用的密钥种类:
   (1) RSA and RSA (default)
   (2) DSA and Elgamal
   (3) DSA (仅用于签名) 
   (4) RSA (仅用于签名)
  您的选择?

第一段是版权声明,然后让用户自己选择加密算法。默认选择第一个选项,表示加密和签名都使用RSA算法。

然后,系统就会问你密钥的长度。

  RSA 密钥长度应在 1024 位与 4096 位之间。
  您想要用多大的密钥尺寸?(2048)

密钥越长越安全,默认是2048位。

接着,设定密钥的有效期。

  请设定这把密钥的有效期限。
   0 = 密钥永不过期
    = 密钥在 n 天后过期
   w = 密钥在 n 周后过期
   m = 密钥在 n 月后过期
   y = 密钥在 n 年后过期
  密钥的有效期限是?(0)

如果密钥只是个人使用,并且你很确定可以有效保管私钥,建议选择第一个选项,即永不过期。回答完上面三个问题以后,系统让你确认。

  以上正确吗?(y/n)

输入y,系统就要求你提供个人信息。

  您需要一个用户标识来辨识您的密钥;本软件会用真实姓名、注释和电子邮件地址组合成用户标识,如下所示:
  "Heinrich Heine (Der Dichter) "

  真实姓名:
  电子邮件地址:
  注释:

"真实姓名"填入你姓名的英文写法,"电子邮件地址"填入你的邮件地址,"注释"这一栏可以空着。

然后,你的"用户ID"生成了。

  您选定了这个用户标识:
   "Ruan YiFeng "

我的"真实姓名"是Ruan YiFeng,"电子邮件地址"是yifeng.ruan@gmail.com,所以我的"用户ID"就是"Ruan YiFeng "。系统会让你最后确认一次。

  更改姓名(N)、注释(C)、电子邮件地址(E)或确定(O)/退出(Q)?

输入O表示"确定"。

接着,系统会让你设定一个私钥的密码。这是为了防止误操作,或者系统被侵入时有人擅自动用私钥。

  您需要一个密码来保护您的私钥:

然后,系统就开始生成密钥了,这时会要求你做一些随机的举动,以生成一个随机数。

  我们需要生成大量的随机字节。这个时候您可以多做些琐事(像是敲打键盘、移动鼠标、读写硬盘之类的),这会让随机数字发生器有更好的机会获得足够的熵数。

几分钟以后,系统提示密钥已经生成了。

  gpg: 密钥 EDDD6D76 被标记为绝对信任
  公钥和私钥已经生成并经签名。

请注意上面的字符串"EDDD6D76",这是"用户ID"的Hash字符串,可以用来替代"用户ID"。

这时,最好再生成一张"撤销证书",以备以后密钥作废时,可以请求外部的公钥服务器撤销你的公钥。

  gpg --gen-revoke [用户ID]

上面的"用户ID"部分,可以填入你的邮件地址或者Hash字符串(以下同)。

四、密钥管理

4.1 列出密钥

list-keys参数列出系统中已有的密钥.

  gpg --list-keys

显示结果如下:

  /home/ruanyf/.gnupg/pubring.gpg
  -------------------------------
  pub 4096R/EDDD6D76 2013-07-11
  uid Ruan YiFeng
  sub 4096R/3FA69BE4 2013-07-11

第一行显示公钥文件名(pubring.gpg),第二行显示公钥特征(4096位,Hash字符串和生成时间),第三行显示"用户ID",第四行显示私钥特征。

如果你要从密钥列表中删除某个密钥,可以使用delete-key参数。

  gpg --delete-key [用户ID]

4.2 输出密钥

公钥文件(.gnupg/pubring.gpg)以二进制形式储存,armor参数可以将其转换为ASCII码显示。

  gpg --armor --output public-key.txt --export [用户ID]

"用户ID"指定哪个用户的公钥,output参数指定输出文件名(public-key.txt)。

类似地,export-secret-keys参数可以转换私钥。

  gpg --armor --output private-key.txt --export-secret-keys

4.3 上传公钥

公钥服务器是网络上专门储存用户公钥的服务器。send-keys参数可以将公钥上传到服务器。

  gpg --send-keys [用户ID] --keyserver hkp://subkeys.pgp.net

使用上面的命令,你的公钥就被传到了服务器subkeys.pgp.net,然后通过交换机制,所有的公钥服务器最终都会包含你的公钥。

由于公钥服务器没有检查机制,任何人都可以用你的名义上传公钥,所以没有办法保证服务器上的公钥的可靠性。通常,你可以在网站上公布一个公钥指纹,让其他人核对下载到的公钥是否为真。fingerprint参数生成公钥指纹。

  gpg --fingerprint [用户ID]

4.4 输入密钥

除了生成自己的密钥,还需要将他人的公钥或者你的其他密钥输入系统。这时可以使用import参数。

  gpg --import [密钥文件]

为了获得他人的公钥,可以让对方直接发给你,或者到公钥服务器上寻找。

  gpg --keyserver hkp://subkeys.pgp.net --search-keys [用户ID]

正如前面提到的,我们无法保证服务器上的公钥是否可靠,下载后还需要用其他机制验证.

五、加密和解密

5.1 加密

假定有一个文本文件demo.txt,怎样对它加密呢?

encrypt参数用于加密。

  gpg --recipient [用户ID] --output demo.en.txt --encrypt demo.txt

recipient参数指定接收者的公钥,output参数指定加密后的文件名,encrypt参数指定源文件。运行上面的命令后,demo.en.txt就是已加密的文件,可以把它发给对方。

5.2 解密

对方收到加密文件以后,就用自己的私钥解密。

  gpg --decrypt demo.en.txt --output demo.de.txt

decrypt参数指定需要解密的文件,output参数指定解密后生成的文件。运行上面的命令,demo.de.txt就是解密后的文件。

GPG允许省略decrypt参数。

  gpg demo.en.txt

运行上面的命令以后,解密后的文件内容直接显示在标准输出。

六、签名

6.1 对文件签名

有时,我们不需要加密文件,只需要对文件签名,表示这个文件确实是我本人发出的。sign参数用来签名。

  gpg --sign demo.txt

运行上面的命令后,当前目录下生成demo.txt.gpg文件,这就是签名后的文件。这个文件默认采用二进制储存,如果想生成ASCII码的签名文件,可以使用clearsign参数。

  gpg --clearsign demo.txt

运行上面的命令后 ,当前目录下生成demo.txt.asc文件,后缀名asc表示该文件是ASCII码形式的。

如果想生成单独的签名文件,与文件内容分开存放,可以使用detach-sign参数。

  gpg --detach-sign demo.txt

运行上面的命令后,当前目录下生成一个单独的签名文件demo.txt.sig。该文件是二进制形式的,如果想采用ASCII码形式,要加上armor参数。

  gpg --armor --detach-sign demo.txt

6.2 签名+加密

上一节的参数,都是只签名不加密。如果想同时签名和加密,可以使用下面的命令。

  gpg --local-user [发信者ID] --recipient [接收者ID] --armor --sign --encrypt demo.txt

local-user参数指定用发信者的私钥签名,recipient参数指定用接收者的公钥加密,armor参数表示采用ASCII码形式显示,sign参数表示需要签名,encrypt参数表示指定源文件。

6.3 验证签名

我们收到别人签名后的文件,需要用对方的公钥验证签名是否为真。verify参数用来验证。

  gpg --verify demo.txt.asc demo.txt

举例来说,openvpn网站就提供每一个下载包的gpg签名文件。你可以根据它的说明,验证这些下载包是否为真。

七、参考文档

1. Paul Heinlein, GPG Quick Start

2. Ubuntu help,GnuPrivacyGuardHowto

3. KNL, GnuPG Tutorial

4. Alan Eliasen. GPG Tutorial

5. GnuPG 袖珍 HOWTO (中文版)

6. The GNU Privacy Handbook

(完)

文档信息

13 Jul 05:20

疏还是堵?玩个游戏怎么就这么难

by 刘学文
one

将"在命运的塑料大棚里,每棵被喷了过多农药的白菜心中,都曾经有一个成为无公害有机蔬菜的梦想。"改为"命运的塑料大棚下,每棵被喷洒过多农药的白菜心中,都曾经有一个称为无公害有机蔬菜的梦想" 也读着不舒服,还是要改改。
“在命运的塑料大棚下,每棵白菜都被喷洒了过多农药,其实它们都曾有过成为无公害有机蔬菜的梦想”。

20070704155424493

去年 WCG 魔兽争霸项目结束时,我在微博上写下了下面一段话:

“2012 WCG 世界总决赛 war3 项目结束了,十年魔兽终于在 WCG 写下终章,TED 用我最喜欢的种族亡灵战胜了我最喜欢的选手 FLY100%,SKY 和 MOON 多年对手终成基友~~高中时候一众X丝在网吧靠着 war3 度过了无数的周末,曾经住一间房的某死宅创下了连续玩 23 小时的记录,现在想起,不胜唏嘘~”

当然,我爸妈不用微博。他们若是知道我当年上学的时候有时会去网吧打游戏,一定会责怪我几句,即使我不像一些新闻报道里的“网瘾少年”那样沉迷。在大多数成年人眼中,网吧和游戏厅是蛇龙混杂乌烟瘴气的地方,现在想想,事实上还真是如此。

在当时繁重的高中课业负担下,体育课踢一场球和周末打几局魔兽争霸就成了不多的放松。

就在昨天,就传出中国大陆政府很可能会在新的上海自由贸易区框架下放开游戏机产品的进口与销售的消息。也就是说,只要索尼、微软、任天堂这样的游戏机制造商在上海自贸区落户并生产游戏机产品,就有可能被允许在内地开放宣传和销售。

近年来,其实国内对游戏相关产品并没有采取禁止的策略,相反,对国产游戏的研发所持态度还是鼓励的。平板电脑,智能手机上的游戏产品也没有相关政策来约束。13 年前的禁止是因为担心游戏这类文化产品会对青年人造成不良影响,但现在这样的说法其实已经站不住脚。或许,13 年来的僵局等待的就是这样一个契机?

直到现在,在成绩说明一切的中国教育里,游戏始终是“歪门邪道”的东西。去网吧打游戏在老师眼里基本就和“坏学生”划等号了。而在很多家长眼里,孩子喜欢玩游戏就是有病,得治!于是陶宏开教授红了,网瘾治疗中心电击疗法火了。在充满商机的中国社会里,游戏的产业链得到了进一步扩展。

玩大概是每个人的天性,但一旦和游戏扯上关系,很多人就觉得不正常了。因而在畸形的观念里,游戏的欲望变得欲盖弥彰,隐秘而赤裸。

好在渐渐地,人们对游戏的观念慢慢改变了。事情的转折应该是 2003 年国家体育总局宣布电子竞技成为国家第 99 个体育项目,2005 年,Sky 李晓峰成为 WCG 魔兽争霸项目世界冠军,并在 2006 年蝉联冠军。这让越来越多的人意识到“打游戏”原来也是体育项目,游戏玩家原来也可以为国争光。

2009011813022820

事实上,在电子竞技项目上,中国选手在世界赛场上的表现一直很好,从早先的魔兽和 CS 项目,到现在的星际 2,LOL ,DOTA 等项目中国选手的水平都在世界前列。相比于中国足球篮球,中国电竞选手们争气太多了。

而体育总局也在今年宣布组建国家队征战世界赛场,这也标志着曾经是散兵游勇的电竞选手们有了正式的名分去代表国家参赛了。虽然在国家层面上得到承认,但大众的眼光依旧有些异样。也会有些体育界人士觉得有的人辛辛苦苦训练才拿到世界冠军,而这些人靠玩玩游戏就可以了,实在不公平。

118_162141_ee960_lit

靠一些电竞人的努力还是尚不能完全改变人们根深蒂固的想法。而且电竞选手的训练量相比于其他运动项目丝毫不少。

诸如 LOL,DOTA 更多的是靠普通玩家支撑起来的,在这其中有一位既普通又特殊的玩家。

QQ截图20130712224548

这位状元或许证明了游戏和学习的冲突时可以避免的。而我文章开头中提到的曾经连续玩 23 个小时魔兽的同学现在已经不再沉迷,开始好好工作,只是偶尔二次元一下。

与游戏类似的还有 Cosplay,这些和传统爱好迥异且新锐的文化目前也在被质疑着。事实上,像电子竞技和 Cosplay 这些不被主流所接受的圈子并无什么不妥,但只要爆出一点负面新闻,则会被放大多倍,然后就代表了整个圈子。游戏玩家这个群体实在是太大了,难免会有负面新闻出现,只要绝大部分玩家是正常的,那么就不该把责任推卸到游戏身上去。

日光之下,并无新事。这些寻常人的爱好跟中年妇女们的搓麻将一样无害,即使是打麻将也有人因为和牌而激动得中风呢。只是像陶宏开这样掌握了话语权的人(故意)曲解了他们不熟悉的东西。与这些人认为的游戏让人失去人性不同,很多游戏甚至是有正能量的。而我曾经那些最沉迷游戏的同学也是性格最和善的。

虽然进程很慢,但游戏已经慢慢不再像当初那么洪水猛兽了,越来越多的人也认识到相比于一味打压,正确地疏导健康游戏的方式是更合理的做法。

可是,即使上文我为游戏洗白这么多,我还是不推荐花费过多的时间在游戏上。相比于宅着玩游戏,我更推荐把时间花在阅读,运动或者勾搭妹子上。

在命运的塑料大棚里,每棵被喷了过多农药的白菜心中,都曾经有一个成为无公害有机蔬菜的梦想。

#欢迎关注爱范儿认证微信公众号:AppSolution(微信号:appsolution),发现新酷精华应用。



爱范儿 · Beats of Bits | 原文链接 · 查看评论 · 新浪微博 · 微信订阅 · 加入爱范社区!


06 Jul 09:01

写对比写漂亮更重要

by Yurii
one

1 "句意流畅"说进了我的心坎,因为我就写不流畅,经常苦恼于如何转化主语、切换场景.
2 电影里的镜头如何自然切换是不是同样的学问?常说某人这段描写很有画面感,由此及彼,如同一个深邃的长镜头.
3 海明威强调简练

谈到写作,大家都公认“文笔”很重要。写出好文章,离不开好的文笔。大家也认为,文笔是种天赋。如果自觉没有这种天赋,也就和写作没什么机缘了。

在过去很长的时间里,我也是这么认为的。上学时每次老师夸奖“文笔好”的同学,我都很羡慕,也惋惜自己沾不上写作的边。然而这些年来根据自己写作、学习的经验和思考,我逐渐发现,文笔对写作确实很重要,但好文章要求的“文笔”,却不等于天赋的“文笔”。

按照传统的理解,“文笔”侧重于对文字、语词自身的优美的感知和运用能力。从小到大我们受到的语文教育中,“好的文笔”大概就是气势的排比、形象的比喻、优美的搭配……,总而言之,就是能让文章“漂亮”起来的手段。所以很多老师会鼓励学生用一个小本子记录“好词好句”,写作文的时候才有资料可用,才能体现好的“文笔”。好的段落之所以被挑出来,也是让大家学习这种“文笔”。目前许多中文写手所擅长的,也正是这个方面,甚至可以说“语感超强”,阅读他们的作品,常常可以被层出不穷的好词好句弄到眼花缭乱。这样漂亮的“文笔”可以通过积累背诵得到,但非原创的“文笔”常常不够新鲜、生动,好的“文笔”多是灵光闪现、语感爆发的结果。大家认为文笔离不开天赋,或许就是这个道理。

但是我们仔细思考就会发现,写作是将作者所想的内容表达出来的过程,所以“文笔”就是将这些内容具象为文字的本事,其实并不稀奇。传统上说的天赋的“文笔”(词句优美),其实不等于文笔的全部——好词好句或许能解决“漂亮”的方面,但表达不是只有“美”的部分,还包括“对”的部分,即规范性的成分。

写作的历史悠久,经过历代作者的贡献和积累,已经形成了相当多的规范性知识。如词语是否准确,句意是否流畅,段落衔接是否自然等等。它们好像刚性的骨架,深埋在文字里,虽然没有“天赋文笔”的美丽光环,却深深影响着作者意思的传达和读者的阅读情绪,保证整篇文字不会误入歧途,不会成为畸形。如果忽略了对这些规范性知识的学习和训练,写作时很难单纯依靠优美的文字“一俊遮百丑”。道理很简单——词句再优美,缺乏了“对”的基础,都不算“好”的写作。

不幸的是,我们总是强调文笔中的天赋部分,太看重“优美”,而忽略了“对”的部分。基础语文教育中很少认真讲到准确用词、严格造句、段落衔接方面的内容,更不要说专门的训练了。在成人写作的世界里,又缺乏足够有分量的批评,即便有 这种文笔方面的建议或讨论,也会被视为“吹毛求疵”、“不上正板”,显得“不入流”。所以即便已经成名的写手,也不愿意时间来锻炼和改善,因为这“不是问题”。结果,天赋的“文笔”再好,华美的盖头之下,总是可见糟糕的质料、粗糙的针线。不少所谓“文笔不错”的文章,读过之后只能留下几缕空洞的感觉,完全经不起推敲。

在词语的准确方面,不少知名写手也常犯错误,用“甚嚣尘上”描述好消息的传播,用“狼奔豕突”形容车流的繁华(用成语没错,但要用对,即便作者不理解原成语的意思,基本的“语感”也应该足够判断出“嚣”、“狼”、“突”不是褒义);在句意流畅方面,我随手摘录一段:“老白带着我在山林里行走,天色阴暗,草木茂盛,几下就晕头转向了,简直跟不上他的步伐”,因为主语错位,读者要想想才能明白,“晕头转向”的不是“老白”而是“我”,所以应该改为“我跟着老白在山林里行走……”。段落衔接的问题也相当常见,许多作品里都可以读到“石头里蹦出来”的生硬段落,或者毫无征兆的转折表述。限于篇幅,我在这里无法摘录,但我相信仔细阅读的人对这种现象不会陌生。

作为反面的例子,不妨看看美国文学的情况。20世纪30年代以来,美国文学在世界上的影响力迅速增加。其中一个重要的原因,就是美国普遍开展了创意写作的课程,让更多普通人学会了写作,提高了大众的写作水平。翻阅美国创意写作的教材就会发现,它们强调的是“写作是一种工作而不是天赋”,要想写好,应当如此这般遵照规范进行,甚至详细到哪个场合用多少什么性质的词语才合适,都有讲解。写出《浪潮之颠》的吴军先生,也要特别感谢美国的导师对他写作的专门训练——如果“文笔”仅仅与天赋有关,那么遇到有文笔天赋的理科教授几乎是不可能的事情,遇见这样的教授就开了文笔“天眼”的更加不可能。但大家都认为《浪潮之颠》的文笔不错,可见依照规范训练的重要性。有意思的是,中文写作里常见的用词错误、句意混淆之类问题,同等水平的英文作品里确实较少出现,这或许可以从另一个侧面印证写作规范和训练的重要性。

在我看来,对写作水平不满意,而强调“文笔优美”,实在是缘木求鱼。对当前的广大作者来说,写对比写好更重要。如果大部分文章都能遵循写作的规范,都能够写“对”,哪怕词句不那么漂亮,也已经是广大读者的福音了。