WWDC 2015 804 Introducing the new system fonts 笔记

每天健身回来以后总有一点清醒的时间,看一集任何东西似乎都时间太短,发现最合适的是看看 WWDC,顺便留下来作为笔记。

BTW,所谓人们越来越熬夜,窃以为只是因为大家白日里的工作越来越忙,似乎工作日里唯一属于自己的自由时间是睡前的一点点坚持,虽然势必影响了第二天的清醒,能正确衡量自己清醒程度对自己第二天智力体力影响的人毕竟是少数,我似乎并不属于其中。


首先介绍一些字体的术语

  • Baseline
  • x-Height
  • Cap-Height
  • Descender
  • Ascender
  • Proportion

这些特点的关键:

  • Compatible overall vertical metrics
  • Cap-Height lower than ascenders
  • Large x-height
  • Number aligned with Uppercases

一些字体设计的原则

  • Visual perception is largely about illusion
    • 例如为了让同样直径的方与圆看起来一样,必须略微放大圆,称之为 Overshoot
  • To make two shapes look similar, they often have to be made dissimilar
  • Visual perception is largely about illusion

Same Font, Different Sizes

  • Negative Space
    • s a e 在小字里就比较容易混淆,因为都有上下圆弧,都有中间分割线,都有中间空隙,人眼的主要区分是开口的不一样。
  • SF 包含 Latin/Polish/Icelandic/Hungarian/Vietnamese/Cyrillic/Russian/Greek
  • Display vs Text
  • Two optical, size-specific families—Text and Display
    • San Francisco 分为 SF SF Pro,一个是用于系统,一个是用于手表;区别见图片
    • 两者又分为 Display Text,前者用于标题类,后者用于 body 类,以 20 pt 为分界线,以上用 Display,以下用 text
  • 不光间距会变,开口和字内开口也会变
  • The system automatically switches at 20pt
    • No adoption necessary
    • App designers need to be aware of the difference
  • Tracking  vs Kerning
    • Tracking 是字间距离
    • Kerning LT 之类的凑齐
    • 不同的字号有不同的 tracking size,系统字体自带 tracking
  • 利用字重来强调
    • 当大字与小字一起排列的时候,大字可能偏向更细,小字偏向更粗
      • Larger size = Lighter weight
      • Smaller size = Heavier weight

一些字重的功能:

  • 分数,自动把分数变为上下的模式。
  • 上标与下标
  • Uppercase Forms ,大写字母与加号结合时候的加号的居中
  • 时间表示的时候,冒号的居中
  • 九与六在不同场景下的互换
  • 固定字长的数字与比例字长的数字,默认是比例字长,固定字长的需要手动制定

 

The Meaning of Life — Part 1 生命的意义

The Meaning of Life 放到中文语境下其实有歧义,生命的意义还是人生的意义是两个问题。至于还有存在的意义之类,暂且不表,我们不妨先讨论前置的——”生命的意义

由于我们的很多逻辑受限于语言与思维习惯,首先应该要被厘清的是,某件事的意义是什么这个问题本身是否真的有意义?例如,有的老一辈会说,我们这一代生而来的意义就是为了你们这一代这样的逻辑是合理的么?事实上,很多这种说法,只是为事后的结果强加意图,显得似乎更加崇高,而一开始的行动并没有那么大的目的性,更多只是生存的本能;即使你很早就为自己预设了为中华之崛起而读书,那也是某个人为自己对意义的预设,并不是广义上众生的意义。

其实你一旦追问某一事物的意义,就已经陷入了决定论的思维陷阱里。在决定论的逻辑下,一切都是有预设的,预设的存在是为了追求目的。例如,我们为什么要长眼睛是为了看见东西这种逻辑就是典型决定论的循环论证,而达尔文的进化论告诉我们:由于某些生物碰巧能视觉地感知环境,他们就在万年的进化史里存活下来了,所以存活至今的生物有能感知光线的眼睛,且能在进化史里增大存活概率的特征有很多种,比如蝙蝠的声纳、鱼的腮、鸟的翅膀等等等。

生命可能是一场放养后的自由实验,但生命的存在并没有意义,因为生命的特质就是在时间的长河中繁殖下一代,而万般机缘之下进化出的人类竟然会思考,所以才问出了生命的意义这个问题;而假设在某种极端巧合的环境之下,一块泥巴也能自我复制了,经过几万年的优胜劣汰,泥巴也可能会思考我怎么我这么土之类的问题;当然,没有思考的能力也可能如细菌病毒一样用别的方式繁衍万年。

你可以通过宇宙的尺度以及碳基生命产生的条件来估算,生命产生的概率有多少。甚至,通过化学的氨基酸生命实验与计算机模拟的康威生命游戏,你都能发现,只要给予足够长的时间,与地球生命类似的最初形态并没有那么难形成。如果要牵强附会地换一种说法的话,生命的本质(意义?)就是繁衍下去,因为不繁衍就就不存在穿越万年的,直到有人给生命下了定义。

有很多人在生了孩子以后体会到了生命的意义[1],这是很符合生命的特征的。但根据我自己对生命有限的观察,我家猫 WM 在生了孩子 Penny 以后,WM 和未体验过性生活的另一只干妈都体现出了巨大的母性,可 Penny 一旦成年,亲妈就把它当成了环境中的竞争者,尽管 Penny 一直还对它母亲的任何行为亦步亦趋,但还是被母亲的爪子各种伺候。All about hormones, dude!

回答这个问题是其次,更值得被探讨的是回答这个问题时决定论与机械论逻辑转换的心态,即我们应该从更宽大的维度去论证问题的合理性,你可以解释为很多问题的解决其实是问题的消解,但是问题的消解实际需要巨大的知识做后盾;在知识不足的时候,我们就是在局部里试图求全局解,最后只能把很多答案归之于神祇。

例如,人类为何会有男女两性这个问题,其实和为什么草原上狼为什么没有把羊吃光,为什么联邦党会进化出共和党和民主党的道理一样:不带价值判断,这就是两方为了自己生存,长时间博弈以后的最优解——在广袤的进化过程中,优秀的细胞首先发现了减数分裂能够带来极多的生存能力的可能性,而后有的细胞发现生产大量的性细胞能提高中靶概率(雄性),有的细胞发现增加性细胞营养减少性细胞数量能提高孩子的存活概率(雌性),这都增加了后代存活的稳定性,所以他们两种策略的就一拍即合地让后代把这两种形状遗传了下来,从此便有了两性,继而延续到哺乳动物、到人类[2]。而当我们对进化论一无所知的时候,就会想当然地催生出女娲造人、亚当夏娃的故事,很难想象女人是由亚当的一根肋骨被创造的故事竟然在两千年里被当作真理。所以当我们讨论当代社会男女不平等的时候,首先应该讨论的男女生理上的差异,但这些差异应该都只是两性在进化中的各自选择而已,从生殖的角度看,男女其实都受了益。

所以虽然老祖宗的太极阴阳☯️看似非常博弈,但终究只是一个优雅的抽象,并不能告诉你为什么是抽象,而现代博弈论能让你用数学工具证明并模拟出以上的讨论确实就是最优解!

所以当你遇到乍听有理的要不是我们小偷,你们警察不也就失业了的流氓逻辑的时候,你就知道怎么攻破它了。

你甚至也可以解答纠结人类几千年的人之初,性本善还是性本恶的伦理问题了[3]


[1] 在这里探讨的生命的意义并非人生的意义,其实长久以来我们都把这两者搞混了,父母对孩子的催婚催生就是一个典型的认知谬误。
[2] 为了表述方便,采用了生物进化时主观的表述方法,其实是随机策略后的结果。
[3] 在博弈论的囚徒困境中,两方最初都会选择背叛,导致整体收益最小;但是如果重复无数次实验,双方都知道背叛的结果很惨以后,在某一方不断改变策略的试探下,另一方也会逐渐明白,互相不背叛才是收益最大的出路。生物的进化就是一种接近无限重复的博弈,虽然在短时间内从恶是生存的捷径,但是长期来看,从善如流的道德伦理才能双方利益最大化。所谓“人之初,性本善”在博弈论创始人纳什看来其实是经历很多善恶以后的儒家弟子对后代要从善的教诲,因为如此才能在更广的范围内世代受益。

点击进入一个简单的康威生命游戏

大雕必胜客(Big Dick Energy)的自信从何而来?

如果你时常看美国版的周六夜现场,你应该能记得一集被已婚妇女勾引却只顾着清理泳池的傻高中生 Pete Davidson,他在去年五月份和美少女歌手 Ariana Grande 闪电订婚,要知道 Ariana Grande 可是美国的欧阳娜娜,怎么能就和美国小沈阳好上了?就在广大群众既震惊又好奇的时候,Ariana Grande 一不小心暴露了 Pete Davidson 的尺寸:大概 10 英寸(25.4cm),继而引出了一种解释:Big Dick Energy

读到这里,那些拥有 BDE 的人是一眼便知自己是有的,而那些不确定自己有的,那一般是没有的。谁主沉浮的毛先祖是有的,不要在意聪明人的自尊 Jobs 是有的,会议上爱爆粗口 Gates 是有的,说我的烦恼就是太红了时候的王菲是有的,甚至随手抛弃老公的张雨绮也是有的。

依我看,Big Dick Egergy 可以描述为某人在自己因某些方面的坚不可摧而移情到为人处事等各方面都必胜的自信。自认容貌娇好、A big enough dick 或者自认聪明到一定程度,都会辐射出一种自信到骄傲的气质,令人讨厌的同时也令人欣赏,而当这些气质帮助他/她搞定了事情的时候,令人讨厌也会烟消云散到只剩钦佩,这时候他/她的 BDE 又会螺旋式暴增。

字面意义上的 BDE 的似乎都只能是天生的,但无论是男性的生理特征还是女性的容貌,都只是人类在千万年繁衍进化过程中带来的求偶的评价标准。然而,我们先把不同年龄的女性有不一样的美的政治正确放到一边,如果仅仅以求偶的吸引力这一方面来看,女性天生的 BDE 是会随着美人迟暮与生育能力的减弱而逐渐减弱的,男性的性能力也类似,美容院与新到货伟哥的药店是永远的生意(不过可气的是男性的尺寸不随着时间减少,所谓 Man’s Ego)。这也是我为什么非常反对整容,或者反对不能永远持久的整容(与时间对抗会越来越难)的原因,因为根据之前定义的描述:越自认为自己的特质坚不可摧,BDE 越强大,可一旦这一特质被外界或自己完全否定,这带来的打击也就越毁灭性,正如一场被被抛弃的婚姻。

所以真正值得推崇的是,那些不随着时间而减少甚至会随着时间越来越强大的 BDE,显然我们对我如何获得一生的自信”没有一个标准答案,但是,经受海量的知识洗礼,并客观地意识到整个世界的运行方式是绝对的基础,再在此基础上找到自己领域的出色的方式,是每个人都可以习得的。

以上的胡乱的讨论可以让我们又回到婚恋关系,外貌的迷人可以是一种BDE,但是这种 BDE 不可持续;但我们常说的在工作中心无旁骛的认真的迷人也是一种 BDE,但是这却是一种可持续的 BDE,正如舞台上的 Freddie Mercury Lady Gaga,他们在年少时候因容貌带来的羞涩与之后在舞台上的爆发力完全判若两人,我想这大概也是 Queen 给了 Lady Gaga 那么多力量的一个原因:Lady Gaga 的名字来源即是 Queen 的 《Radio Ga Ga》。

相亲的婚恋形式里的双方都是没有人格的,但凡有 BDE 的人,是不会进入上海人民公园的相亲市场里的。在那个市场里,即使你得到了门当户对,也得不到你想要的欣赏与崇拜,即使得到了,也不是稳态的。在这个双边关系里,唯一的双赢是建造属于自己可持续的 BDE:对对方有多少欣赏与期待,就需要培育自己有多少的被他人的欣赏与期待

简而言之,早年间那些或盲目或自知的自信弥足珍贵,但那些更持久的内源性自信,是真正穿越时间的迷人之所在。

从他者观自己总是一个有穷的思路,但是在初期总是从他者才观到自己的吧。
有意思的是,凭我有限的记忆,似乎中文世界里很少时不时出现一些有意思的总结新事物的新词,流行的网络热词对押韵的追求总是超过了它对本质趣味性的热爱。

即使我们谄媚青年与膜拜青春

前两天在路上听了前两周的 Blow You Mind,简里里是这么描述 WeWork 的:“WeWork 拥有十分舒适的公共空间、免费的冰水、啤酒与咖啡,有一种特别鼓励年轻人去社交的状态,似乎每天来上班就是来玩的且可以遇到很多很有趣能带来无数幻想的人,它在设计上更加时尚,但是很多屋子又并没有窗户。不得不承认这种状态却是不鼓励员工长大的,它把年轻人装进了好看却没那么有质量的泡泡,在这个泡泡里让员工不会觉得工作是吃苦的东西

这引到了一种这种不鼓励年轻人长大,不告诉他们生活与工作真相的一种永恒少年文化。

无独有偶,这一期 BYM 发布以后的两天之后,大内密谈也发布了一期vol.640 从谄媚青年到膜拜青春,说的是《我们为何膜拜青春》这一本书,它给出了简里里提出的现象的一种原因:是人类分工的越来越明确给我们带来了更长的幼年/青春期。

一只小鹿生下来几个小时就能奔跑,而人类生下来却需要数年的精心照顾才能学会行走与语言。继而再过去十几年基础教育大脑才能真正成熟,而其实这么浪费生命正是人类比动物更聪明的关键所在:你需要你的大脑成长越多,就越需要花费更长时间与接受更完备的照顾,所以人类在成年之前只需要考虑心智的成长而不需要着急去觅食与繁衍,或按照进化论式的说法,那些碰巧更花时间长出智慧的人类祖先在生存竞争中存活了下来,并且越活越好,所以他们习惯于安排母亲(父亲去打猎)花更多专职的时间来照顾孩子。而 WeWork 这种专职办公场所的更加细分,自然带来了更多的永恒少年BYM 里说的为什么Google 的办公室要弄成幼儿园似的样子可能也是为了更多让员工把心思放在头脑与心智上。

以上的观察与解释给我带来震惊的是,心智成长与生存繁衍似乎是一组永恒的对立:处于象牙塔即意味着心智成长,走出象牙塔即意味着为生存努力。这给我带来的是对许多人的更加理解:我以前时常厌恶他们在离开学校以后世俗地失去了成长的能力,重复着自己的日子三十年直到大厦崩塌,即使有了更多的外在经历,却并没有更多内在心智的成长。在理解了以上这对矛盾以后,会意识到更多不是主观的不去,而是客观的不能,特别是对于我们的老一辈。

以上并不是一个新鲜的理论,它可能以各种形式存在了我们的观念里,可是更加科学的认识与更深刻的理解能带来更坚定的行动:我们如何采取行动去应对这个现状?

我的答案是,拥抱它们。我们可以更加充分利用现有分工更加细化的外在条件。外卖的归于外卖,健身房的归于健身房,更加效率的生产资料为的是能在自己的领域里更加精进;或者说,利用现在无比细致的分工,主动营造自己的象牙塔,让自己能在这个象牙塔里达到更加完善的心智成长,而不是像父辈那样,过早地被放弃机会。这种分工明确也为女性带来了更多宽慰,社会的更加分工可以让女性在婚姻、怀孕与育儿上有更多个体的自由,让她能专心在自己的领域里埋头精进。

即使未来发展的结果是整个池塘里会有更多永远成不了青蛙的蝌蚪,那这个池塘的溺爱必然也同时给了所有蝌蚪更多成长心智的时间与机会,最终让那些想成为什么的成为他们想成为的。


日常归谬

GRE 的 argument 写作里有一种典型的逻辑谬误范例:错把时间的先后顺序当成了因果关系。判断这个谬误的说着容易,但放入日常的实例里也常常不被发现。

周日在重庆看“百年回眸”重庆开埠历史回顾文献展,其中有一段写道:“海关建立,口岸开放,一方面使地处中国腹地的重庆被迫卷入资本主义世界市场,沦为列强的原料产地与商品市场,使小农经济和家庭手工业受到了极大的冲击;另一方面也促进了重庆城乡商品经济的发展”。这段话虽然有各种条约通商开埠的带来的好与坏,实则侧重在市场经济给重庆带来的活力,了解过市场经济的基础即知道商业文明能给经济带来裨益有多大,这些裨益都是曾经教科书里所说的“丧权辱国”的条约带来的,所以,心中的结论变成:以前学到的教科书只是为了维护当朝的正当而贬低前任的全部,其实开埠通商全是利好,小农经济不破不立。

也确实,不平等条约里也经常会有“允许外国人入内地游历传教”等条款,而其实当时中国的很多世界级大学,例如燕京大学、辅仁大学、金陵大学、震旦大学,都是教会大学,它们的名字虽然随着五十年代的院系调整消失,但它们教育出来的子弟依然是二十世纪中国的中流砥柱,原有的资源与传统亦构成了不少当代中国的顶尖大学;而现在中国最著名的几家医院,包括协和医院、华西医院、同济医院、湘雅医院、华西医院,也都是传教士建立的医院。可见不平等条约带来的正面影响,仍然惠泽当代。

今天在罗森便利店突然发现,便利店里卖的牙膏,全是日本进口的狮王牙膏,避孕套也只有冈本,这不由得让人想到在19世纪末的开埠初期,在外国人把持中国海关之时,恐怕人民的各种生活所需以至于中国的市场经济都正被外国资本所掌握,随之相应的政治话语权必全然失去,从这一点来说,“丧权辱国”所言非虚。资本的贪婪在彼时可原始得多,并没有现在这样完善的企业责任,也没有稳妥的社会保障,更没有健全的金融体系与金融制度。所以,在世界历史不胜枚举的教训面前,任何国家的贸易保护主义就很常态了。在日本车已经把底特律搞垮了的时候,中国汽车自主品牌利用合资公司的技术优势却已然崛起。特朗普说得好:毕竟,谁会责怪一个占别国便宜而为本国国民谋取福祉的国家呢?(After all, who can blame a country for being able to take advantage of another country for the benefit of its citizens?)

这是我思维里,逻辑的第二次反转。

但凡当朝人学到的前朝历史都是施了粉黛的,以至于我们脑中还有很多由于表述暧昧而不求甚解的例子,例如为何辛亥革命结束以后孙中山的大总统只是临时的?八路军原来竟然是国民革命第八路军?蒋的党国原来在战前战后竟然都没有实际统一过中国?意识形态是否对经济发展的有决定影响?(这一点改革开放已经做了很好的正面例子,而许多欧洲、非洲国家也做了许多很好的反面例子)

说服自己把曾经的观点推翻是一件很幸福的事情,而以上的事情一言以蔽之,即是以怀疑的眼光看结论,不振臂支持不盲目反对,有利有弊的复杂事物,更需要科学的方法来论证。“科学发展观”的结论很基础,也容易被遗忘。


观点似乎依旧薄弱,但还是有价值

近期的有启发

你如何过一天就是你如何过一生。

People think focus means saying yes to the thing you’ve got to focus on. But that’s not what it means at all. It means saying no to the hundred other good ideas that there are. You have to pick carefully. I’m actually as proud of the things we haven’t done as the things I have done. Innovation is saying no to 1,000 things.

Do more, be more.

Go create.

比特币白皮书读后

今天,我们不讨论任何技术实现细节,我们只讨论一手材料。

通过比特币白皮书我们可以知道,比特币希望实现以下设计目标:

  1. 不依赖任何第三方机构,采用去中心化架构;

  2. 利用加密技术与哈希链条结构,让每个人拥有全量的账本,并防止多次支付欺诈;同时可在碰撞出一个节点的时候挖掘出一个比特币(由于没有第三方机构发行);

  3. 节点之间有极低的通信成本与极高的健壮性;

这些规则造就了一个十分有意思的特性:“如果黑客拥有足够的破解比特币的计算能力,那他更倾向于去通过计算而获得比特币,而不是利用计算去盗取比特币”。比特币的这些特性,让它既保证了获取成本,又让它利用人的贪婪,把自己像病毒一样传染了出去(广为人知的 GPL 开源协议也是类似,这是软件工程师的惯用伎俩——你使用我开源的代码,你必须帮我宣传我的代码)。

从白皮书也可以看到,中本聪一开始并没有太多经济学上的考量,他没有说比特币类似黄金一样稀有,也不说它是全世界所有政府倒闭可能性的对冲,他创造比特币的目标很唯一,就是去中心化,不依赖任何一个组织或国家的“铸币厂”。

他的设计方法也很简单,全都是利用了现成的成熟技术,这也是为什么很多密码学专家对比特币嗤之以鼻,觉得它并没有太多创造;但是他的构建规则十分简单,掐头去尾总共九小节,但却意想不到地完备并有生命力。

这有些类似美国建立联邦初期时的制宪会议,所有先贤的想法十分简单:为了协调各州事务,需要一个强有力的总统,但是总统的权力又必须受到国会两院制衡;为了保证每个大小州的利益,又须要确定州的自由度,用以制衡联邦。思想极为朴素,却造就了人类有史以来最大的繁荣。

在坚信者与投机者的推波助澜之下,比特币单价曾冲破两万美金,继而产生了一个十分有趣的现象——作为创始人,中本聪拥有大约一百万个比特币,占比特币总量的5%,按照现有的市值总共大约110亿美金,他的身家净值已经跻身于全球最富有的一百人。可是他却丝毫没有碰过这足以让他人生颠覆的一百万个比特币,安全与匿名是原因之一,另一个重大的原因是,持有这么大量比特币的创始人即使售出他很小一部分的比特币,也有可能导致整个市场失去信心,瞬间崩盘。

所以,当前比特币的风险变成了:比特币先前的大量持有者对去中心化货币的理想与市值百亿美金之间的博弈。理性的经济学家会赌他们经不起百亿美金的诱惑,告诫民众,比特币的风险取决于几个人心里的天使与魔鬼,人性并不可信,谨慎投资比特币。

可中本聪与他的同伴们留在互联网上的种种证据告诉我们,他们似乎全是充满理想主义的技术宅,在比特币还什么都不是的时候,他们只想通过一己之力用技术创造对抗世界所有国家“铸币厂”的去中心化货币,在他们的眼中,利用技术推动人类金融变革的个人英雄主义,远比成为世界首富来得更有满足感,所以他选择一直持有。

这其实也可以从比特币的规则反证,如果他在创建比特币规则的时候就充满私欲,那比特币的规则也无法如此简单,也不能如此广泛传播;正如华盛顿在美国制宪会议之前就可以预测到,他是第一任美国总统的众望所归,可他制定任何一条制度时,心里想着的是对子孙后代的责任,而不是盘算自己总统以后的一己私利。可见理想越伟大,金钱越不足道,而放在中本聪面前的,也是改变人类历史的机会。

《黑镜》里老是描述着科技会放大人性的贪婪与丑恶,各种代币旁氏骗局般的圈钱也确实在证实着这些贪婪与丑恶,可其实每个新技术的出现,都会带来技术的恶意滥用,可是把历史拉长来看,新技术诞生大多带着对真理的单纯追求,它的滥用从来没有停止它使整个人类进步。

有意思的是,生活在美国时区的中本聪,早就聪明地意识到了以上所有,所以他一开始就选择了匿名,并在之后选择永远消失。


Think twice. Always.

如何阅读《如何阅读一本书》

这本书躺在我的书架上大概有4年,偶然在成都太古里的方所看到他们把不同版本的《如何阅读一本书》放在了门口的一列,出差之前就突发奇想拿出来放在了包里,读完相见恨晚。

这是一本关于阅读的书,豆瓣与其他推荐告诉我们这也是一本经典的书。在读它之前我们即可以反思,阅读难道也有深度的方法?我之前是如何阅读的?我的阅读足够高效么?阅读的效率如何测量?为什么我读一本公认的(任何种类)好书的时候会昏昏欲睡?为什么总是读了又忘记?如何认定我真的读懂了一本书?

如果有以上疑问,并且在阅读过程中一直伴随着这些疑问,我们就做到了这本书最大的一个要求:带着问题来阅读;每一本书都有一些基本的问题,不同领域又会有不同的相关问题,你一定要带着这些疑问去阅读,才会不至于昏昏欲睡,你才有动力去运用正确的方法高效率地去阅读一本书。

例如,最基本的一个问题,阅读某本书的意义何在?这应是我们在阅读某本书要萦绕在脑海里的第一个问题。

具体地问——阅读《如何阅读一本书》的意义何在?如作者所说,这是一本关于方法的实用书,而阅读的方法这个问题,是我们阅读了多年所忽视的一个问题,原因在于我们未曾把阅读这件事放到一个科学的框架里去看,古人说的“读书百遍其义自见”是不适用于当代的,古人读书读目标是“被”成为士大夫,甚至不是成为孔圣人,且古人在士大夫路上,只有四书五经;今人阅读的目标是在某一特定的领域成为佼佼者,而今人的书却浩瀚如海。阅读的门槛可以极低也可以极高,但我们从未想过读不通的书会有同样的阅读方法,而通用的方法,就是现代科学追求的精神。而实际上,这些方法或多或少在基础的语文教育里就一直在教授、练习与考试,只是基础教育里的老师从未给我们系统性地介绍这些方法,我们为什么要用这些方法,即扩大的问题,阅读的意义何在?

很多人可能跟我一样,在想读的书单里可能有几百本书,但是细数去年度过的书,满打满算不超过20本,这20本里面可能还有不少小说/画册之类的轻松读物,而这20本里却并不包含一些专业的、需要练习的读物,简单的除法告诉我,假使我想读的书的数目不再增长,那我读完我想读的400本书,也还需要20年。

对比过来看有意思的是,我想看的电影与看过的电影比例倒是比较一致,都超过了500部,如果书影音是并列的话,为何我看电影比看书要多那么多?答案是,书影音并不是并列的,电影与在创作之初就是为了娱乐,即为了取悦。不论商业片,即使是有所表达的艺术片,也是通过带入你而后取悦你而才达到的,而这种“学习到”可能很快随着情节的遗忘感动的消失而遗忘,很少很少有非电影工作者能说,我看了几部或者几十部奥斯卡获奖电影改变了我的行事方式,从而有所进步。究其原因,还是因为电影相较于阅读,并不是一个须要主动努力的方向。

所以作者很早就指明,阅读可以分为为娱乐的阅读、为获得资讯的阅读和为了追求理解力的阅读;结论是,我们要选择为获得理解力而阅读,用这样的方式花费时间才能高效、才有精进,否则我们只是以为我们有了很多”消遣“与”资讯“,而实际能力还在山谷中徘徊,这是我们“文艺青年“最大的通病。有了以上前提,我们才会在混沌的选择中努力区分想读的书种类,我们会避开取悦我们的书,才会迎难而上去阅读超出我们能力范围的书,其实大学教育里的所有书,都是此类书,不过大学教育里的,都是方法与科学的书,很少包含诸如方法论之类再往上一层级的书(教育家可能把这部分内容寄希望于基础教育或大学里的导师)。

这本书算是一本方法的书,也算是一本方法论的书,书里说的既基础,基础到基础教育都忽略;又高阶,高阶到做学术研究的必读。读这本书昏昏欲睡,除了没有思考好自己阅读的目标与意义,可能还有一个客观原因:书的写作对象是美国已经九年级毕业的学生,所以书中就有很多西方经典中的例子,这些经典例子反而是中文基础教育里我们完全不曾了解的,就像西方的基础教育不曾介绍论语与鲁迅。

这本书是想教人如何阅读,但作者留了一点私货,想教大家如何成为一个智者。在这里,阅读的方法其实与人生的方法有太多一致,这也是为什么所有的博士都是哲学博士的原因。

多朴素的方法论啊:做事需要方法,做事的方法需要意义指导;人生需要规划,人生的规划需要意义来指导。


最快获得自己人生的意义方法是什么?去读哲学。如何阅读哲学?你猜。

许知远眼中的李安

隔了九个月以后,又去芳草地看了场《敦刻尔克》,都在东大桥,让我误以为又是看比利林恩时的电影院,散场才想起来是悠唐。
现在回想起来,自从看了4K/120帧以后,去电影院看电影都因为对画面声效bar的提高变得索然无味。今天的《敦刻尔克》是用胶片拍的,可放映的时候是在一个小的数字影厅,坐在第二排看贾秀琰翻译的中文字幕的像素粒粒在目,回想比利林恩在超级碗背后的点阵屏幕,原来是李安对陈旧电影画质的讽刺。比利林恩脸上的痣、不对称的眉毛、啦啦队员白皙的却有瑕疵的胸部、一颗颗分明出壳的子弹都令人及其印象深刻。而其实第一次把我带进3D电影的也是李安,看了两次《少年派》,第一次是在万柳华联一个昏暗的小厅,戴上眼镜以后的荧幕亮度骤然下降,再加上座位不是黄金位置,叹完剧情以后只觉得白瞎了一份好食材,突然看到IMAX版本不日就下线,赶紧买了华星UME的最后一场IMAX 3D,到了以后发现周二的电影院竟然也人满为患,然而似乎那次以后,华星的IMAX放映机灯泡的亮度就江河日下,等到今年看加勒比海盗的时候,黑暗的海景已经惨不忍睹了。就李安最近的这两部作品来说,与其说他是在想尝试技术上更多的可能,不如说其实是在提高观众感官的阈值,以后作品里即使遇不到极好的故事,在感官的技术上也可以做一些保底,他的策略其实很商业很好莱坞很鸡贼。

每每李安接受采访,特别是中文采访,他体现出来的总是中正平和,不管是表达方式还是内容,总是极力地克制与含蓄;而其实他的作品里全是他戒备森严的大脑的绽放,特别是在男女情欲方面。文艺青年的闷骚总藏不住,大师级的闷骚在相处的时候完全严丝合缝,而全然爆发地反映在了作品里。《色·戒》自然不说,从来没有中国人敢用那么直接的镜头表现性在故事里的作用,而看《比利林恩》在比利与啦啦队员的互相打情骂俏时候的镜头语言,你绝对想不到这会是一个长在温良恭俭让环境的华裔中年大叔拍出来的画面,反而你会觉得这是一个荷尔蒙爆发的宅男意淫画面的高清具体化。

写这篇看到许知远对李安的采访才有感而发,许知远的有趣在于,他的偏执让他喜欢形而上学地究根结底,所以他的采访方式总会让人能看到被采访者不被人了解的一面或者聊起不常讨论的问题,有时候这些问题其实很核心;如果说鲁豫的采访都只是就坡下驴地让被采访人说出自己可以提高收视率的故事,而许知远则还想着带着知识分子的执拗去展开上帝视角,而这个时候这种采访就变成了一场你来我往的战斗,特别是当许知远觉得与这个对手还有的一战的时候。与马东、罗振宇、冯小刚、蔡澜和白先勇的谈话就是类似,这些人在平时露出的或是厚道的圆滑,或是长者般的慈眉善目,而当许知远针锋相对的时候,他们就露出了原本的硬壳,或像冯小刚蔡澜一样逃避,或像马东一样反击;这些访问的人里,最大的例外是俞飞鸿与李安,他对这两人无疑充满着爱慕与敬仰,之于李安,可能他主观收敛也有,客观不敌也有,他在李安面前,全无硝烟,不战而退。可能就像他说的,李安已经差不多是一个完人了。

Xcode 9下的iOS持续集成的步骤和坑

尽管有Travis等很多现成的CI平台了,但是可能由于大家自己很多custom的需要,可能还是得自建CI品台。

xcodebuild 其实已经让 iOS 的 CI 流程简化了很多,两年前第一次搭 iOS CI 的时候更加麻烦;不过每更新一次 Xcode,各种新的问题又浮现出来,特别是用户打交道少的命令行工具。一开始我尝试用纯命令行直接用Jenkins配置,到和xcproject打交道的时候发现还是不得不用显示器接上mac mini。

1、下载Jenkins,用官方的pkg装都比较傻瓜,可以直接下载安装,开机启动什么的都会帮你配置好。

2、在工程里把 Automatically manager signing 关掉,会出现两个 Signing 的配置,Debug的不用管,Release可以设置为常用的adhoc provision,team选择相应的team,证书会自动帮你选择的,这一点最新版的 Xcode 总算人性了一些。Anyway, 这些配置不选也可以,回头我们会在脚本里再指定,只要把自动关掉即可,不关掉会提示冲突。

3、Jenkins配置,我们先只把自动编译的工作做完,其他配置慢慢摸索。自动编译的流程就很简单:

1)pull repo,如果编译机器访问外网的速度不是很快,或者项目很大,在日常构建里可以不需要每次都清理workspace,在App Store的那个Job里建议每次都清理 workspace;如果你要编译的不是master分支,pull下来以后记得checkout。

2)pod install,可以自己把常用的第三方pod fork到本地代码库,时间会短一些,那又是另篇文章该说的事情了。

3)unlock keychain,这是个坑,当你在自己的命令行里直接执行xcodebuild的时候,就像没我们第一次使用xcode签名一样,会迸出keychain的提示,问你是否允许xcode使用keychain里的证书来签名,点了一次始终允许以后下次便不会再提示,直接在命令行使用xcodebuild也一样,但是放在编译脚本不管你点没点过“始终允许”都会报“unknown error -1=ffffffffffffffff Command /usr/bin/codesign failed with exit code 1” 的奇怪错误,解决方法是:

security set-key-partition-list -S apple-tool:,apple:,codesign: -s -k “YOUR_PASSWORD“ /Users/Shared/Jenkins/Library/Keychains/login.keychain-db 

你可能需要自己修改证书所在的keychain名字。

不由得吐槽苹果的方法论,明明是命令行的东西,为什么还会触发UI的控件。

4)编译,如果你在之前在工程里配置了证书与provision,你可以直接执行:

xcodebuild archive -workspace WORKSPACE_NAME.xcworkspace -scheme SCHEME_NAME -configuration Release -archivePath $JENKINS_HOME/ARCHIVE_NAME

如果你要自定义证书与provision,执行:

xcodebuild archive -workspace WORKSPACE_NAME.xcworkspace -scheme SCHEME_NAME -configuration Release -archivePath $JENKINS_HOME/ARCHIVE_NAME CODE_SIGN_IDENTITY="iPhone Distribution: XXXX CO.,LTD. (XXXXXXXXXX)" PROVISIONING_PROFILE=“11111111-1111-1111-1111-111111111111”

Sign identity 能在keychain里找到,profile的ID可以在通过security命令dump出来,不过也可以直接在~/Library/MobileDevice/Provisioning\ Profiles/ 里找到已经命名好的,你可以大概从文件大小或者MD5比出来是哪个。

坑,如果你像我一样是编译的workspace,记得要在scheme管理里把你想要的scheme共享给workspace,不然xcodebuild会找不到这个scheme,有意思的是,让你一打开这个工程,xcodebuild又能找到你没有共享的,我在这也坑了一会。

5)打包,

xcodebuild -exportArchive -archivePath $JENKINS_HOME/ARCHIVE_NAME.xcarchive -exportPath $JENKINS_HOME/ -exportOptionsPlist /path/to/your/plist/adhoc.plist

配置里面的内容应该比较熟悉了,格式如下,内容按需填写即可:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
        <key>teamID</key>
        <string>MYTEAMID123</string>
        <key>method</key>
        <string>app-store</string>
        <key>uploadSymbols</key>
        <true/>
</dict>
</plist>

6)发布,至此你的ARCHIVE_NAME.ipa就已经打包出来了,ad-hoc或者enterprise的可以直接发布到 fir.im 或者pgy上,之前用过一个pgy的Python上传脚本,最近看 fir.im 已经有了自己的上传 cli,直接用 fir cli 的上传即可;App Store 的下下来自己慢慢传咯。

TODO:

  • 从commits history取出记录作为简单的release note;
  • 收集单元测试结果,并生成报表;
  • 把所有可能会更改的配置项变成可设置的环境变量。