
世界各地系列!强势回归!
本期节目我们邀请到的是独立开发者图拉鼎,他在杭州也是工作生活多年,创作过 PasteNow, One Switch, 奇点,Manico等多款受欢迎的 App。
图拉鼎也是我们节目邀请到的又一位爆栈工程师,就让我们跟随他的视角,一起看看独立开发者在杭州这座城市的生活吧!
P.S. 本期节目图拉鼎和自力也给我们带来听友抽奖福利哦~
P.P.S. 本期录制时我台又双叒叕事故啦!😂我们的剪辑小哥努力把backup的音频与录音机的优质音频剪到一起,大家收听的时候可能会感觉有部份音质差异,请多多包涵😘
欢迎各位听众朋友们通过以下方式联系我们:
fyfyFM进群推荐使用小宇宙等泛用型播客客户端搜索“枫言枫语”来订阅收听本节目。
荔枝FM,喜马拉雅,蜻蜓FM等平台亦有同步。

《效率脑科学》是今年我读过的第一本想给五星好评的书。原作名为Your Brain at Work: Strategies for Overcoming Distraction, Regaining Focus, and Working Smarter All Day Long。以脑神经科学的方式讲述我们在工作中会遇到的多种困境,并一一提出解决方案。
本书的整体思路跟此前我在枫影夜读系列中介绍过的心理学著作异曲同工,但阐述的角度不同。比如我近期翻译的《凯文·凯利70岁生日写的103条人生忠告》,以 K.K. 自己的人生经验总结为主,能引发思考,但未详谈原因。陈海贤老师写的《了不起的我》会从心理学的角度解释人类行为与选择的理由,但并不怎么涉及生物学基础。丹尼尔·列托(Daniel Nettle)写的《追究幸福》(Happiness)在实践与哲学层面与本书颇有相通之处,但丹尼尔也不怎么解释其生物学基础。
所以《效率脑科学》一书我最喜欢的就是作者提供的脑神经科学解释。作者David Rock来自澳大利亚,现居美国。本书原名为Your Brain At Work,主要讲述的是工作场合下的问题,对我来说也十分实用。我在阅读过程中一直有一个想法:作者肯定不止是个学者吧,他怎么能对工作中遇到的问题了解得这么深入?后来发现David不仅拥有Middlesex University脑神经科学博士学位,并且还创办了NeuroLeadership这家公司,担任公司CEO。这就难怪David对工作中的各种问题了如指掌了。
本书分为五个部分,通过四幕工作场景的演绎,在层层递进中以脑神经科学的角度解释这些案例中不同角色遇到的问题,并提供可行的解决方案。其实我不是很喜欢作者写作这四幕的故事,给我的感觉是作者好像不太擅长写小说一样,哈哈。但我还是读完了,这四幕对应作者想要表达的四个概念,每一幕又分为多个独立的场景,所以其实有好几十个故事在其中。这四幕分别是:
现代人每天的工作和生活往往是在信息爆炸与决策爆炸中度过的。我们在工作中每天都要做的任何非重复性脑力活动,包括计划、组织、优先级排序、创作等,都需要用到大脑中一个微小、脆弱又耗能的区域,即前额皮质。
这就是为什么我们很容易在每天下班后感到精疲力尽的生物学原理。最近比较热门的一部电影《瞬息全宇宙》(Everything Everywhere All at Once)开场时由杨紫琼饰演女主角需要在准备父亲生日、春节派对的同时,煮饭,准备应对下午税务局的查税任务,回答顾客的提问,还要解决自己的女儿带着女朋友回来见自己古板的外公等事件。我们在日常工作中虽然不会这么极端,但是手机上不断弹出的提醒,公司内部通信软件永远消不完的红点,邮箱中各式各样的邮件等等,又何尝不是另一种维度的爆炸呢?
自从有了手机以来,让我们“永远在线”的科技给我们带来的是无时无刻不在“警戒状态”的神经紧绷。这无疑使我们本就弱小的前额皮质不堪重负。
所以要想知道为什么我们在繁重的工作中表现不佳,为什么我们在面对各种问题时容易产生情绪,并在情绪高涨的同时做出糟糕的选择;要想知道怎么让我们变成一个能自如应对各种突发事件,从容自信的人,那么首先要了解我们自己。脆弱的“前额皮质”就是我们需要了解的第一关。
我想这大约是“自我意识”的脑神经科学解释吧。现实中有相当多人,也许在随波逐流中从未思考过自己应该做出怎样的选择和决定。只是因为走入这个车站,刚好遇上这趟列车,于是被挤进车厢,运往下一站而已。我在我的《个人OKR实践系列》对此有过浅层的讨论。读完这本书,我大约知道为什么会这样:因为大脑是节能的,思考这些问题是十分耗能的。
也正因此,大脑更倾向于解决当前印象深刻的问题, 而不是“更重要”的问题。本书中给我最大启发的是这句:
要思考最有用的问题,而不是最有趣的。
意识到大脑的弱小之后,作者把我们的意识以“舞台”作比,前额皮质能容纳的信息就是一个极小的舞台,运行这个舞台需要大量能量。舞台上一次只能容纳少数几个演员,按照作者的说法,我们一次能记住的事物的个数是 4 个,而不是 7 个。(于是最近我把我的个人OKR中的O缩减为 4 个)。这些演员上台之后,一次只能演一幕。一旦我们同时让多个演员上台,同时演绎多幕故事,我们就会陷入混乱。
在陈海贤老师的《了不起的我》中有提到一个东方哲学上的“大象与骑象人”比喻,我想David在本书中给了这个比喻一个科学解释:前额皮质只占大脑总体积的4%。从进化的角度,我们的原始祖先需要保持高度警惕,一有风吹草动就警觉的人更容易活下来。而我们24小时在线的手机成了不断给我们风吹草动的假象。
了解大脑的局限性之后,我们需要有意识地观察到"此时此刻我们已经分心了",我们的注意力没有用在需要解决的问题上。5年前我在这篇文章提到一切都需要训练,当时也提到了70年代不太科学的大脑模型,现在《效率脑科学》给出了更为中肯的解释。而我这几个月也在尝试一项新的训练:冥想。因为众所周知的原因,冥想在简体出版物中会变成“正念”,或像《“活在当下”指南》(Sam Harris - Waking Up)一样被编辑改为别扭的“专念”。
我就是读了Same Harris这本 Waking Up 之后开始做冥想练习的。以我浅薄的训练经验来看,冥想训练给我带来的好处是:我可以在情绪产生的时候,更快地察觉到这一点,并通过呼吸观察法将我的思绪拉回到当下,跳出问题,寻找解决方案。换言之,我可以意识到我正被我的大脑控制,并反过来训练自己控制我的大脑。
冥想训练很大一部分是注意力的训练。方式多种多样,其中呼吸观察是最常见的一种:找一个安全的空间,坐在椅子上,靠着椅背。轻轻闭上眼睛,开始感受肩膀放松,感受背与椅子接触的感觉,感受臀部与椅子接触的感觉。然后有意识地呼吸,把注意力集中到鼻尖,一呼一吸,一呼一吸。
如果你是第一次训练,不到10秒你就会发现注意力根本无法集中在呼吸上,短短10秒钟脑子里就诞生了无数的念头。但是没有关系,每次念头出现的时候,就把它拉回来,或者随它去,告诉自己,我现在只需要关注呼吸就好。
一切皆需练习。
注意力的运用更需要练习。
David Rock的这部作品,从了解大脑局限开始,到如何让这个有明显缺陷的工具,远离威胁,接近奖赏,安抚情绪,专注解决问题。贯穿其中最重要的就是这个小小舞台的导演。我想,Sam Harris的 Waking Up 已经在试图以不带宗教性质的方式解释正念、冥想的重要性,而David Rock的脑神经科学解释无疑是强有力的补充。
这些年我阅读的心理学书籍让我的心智获得不少成长,除了阅读以外,最重要的就是实践训练。读过的书我大都在实践中尝试过,寻找其中适合我的部分,比如读完这本《效率脑科学》,我的个人OKR实践就开始以“The Magic Number Is 4”做修改。
舞台资源很有限,要用来思考最有用的问题,而不是最有趣的问题。
最后借用本书作者的书末祝福结束本文吧:
愿你保持较低的皮质醇水平,较高的多巴胺水平;
愿你的催产素浓厚而丰富,血清素又高又平稳;
愿你在一生中都能观察自己的大脑。
祝你旅途愉快!
Justin Yan
2022年5月24日
于灯下
Planet is a free and open-source software for publishing and following web content, and it does not require a centralized server or service. It uses IPFS to achieve peer-to-peer content distribution. Furthermore, you can link your content to an Ethereum Name (.eth) so that others can follow you via Planet by the .eth name. Since both IPFS and ENS are decentralized, you can build your websites or follow others, all in a decentralized manner.

5月份啦,我们又快又欢乐的科技快乐星球系列更新到了两位数,最近除了刚刚落幕的 Google I/O 大会之外,还有哪些有意思的科技新闻呢?
赶紧跟着我们的节目一起快乐一下吧!
以下为本届 Google I/O 发布的硬件渲染图,对于这些新产品你有什么看法呢?快来留言区告诉我们吧!

P.S. 更正 14:57 一处口误:发布了两个软件更新,不是硬件。
欢迎各位听众朋友们通过以下方式联系我们:
fyfyFM进群推荐使用小宇宙等泛用型播客客户端搜索“枫言枫语”来订阅收听本节目。
荔枝FM,喜马拉雅,蜻蜓FM等平台亦有同步。

用 Golang 肯定见过类似这样的标记:
type Model struct {
ID string `json:"id"`
CustomerMobile string `json:"customerMobile"`
CustomerName string `json:"customerName"`
}
定义一个 struct 后我们可以在每一个字段(field)后面使用 `` 符号作特殊标记。json: 后面表示这个字段映射到 JSON 数据的自定义 Key。下面这段则是使用 GORM 作数据库字段绑定时的模型定义:
type Model struct {
ID uint `gorm:"primaryKey"`
CreatedAt time.Time
UpdatedAt time.Time
DeletedAt gorm.DeletedAt `gorm:"index"`
}
那么这样的字段映射关系到底是如何实现的呢?答案是使用 Golang 的 Reflect(反射)。
官方文档提供了 reflect 包的所有接口说明,我们可以使用这些接口在 run-time 修改实例对象。通常我们会使用这些接口获取当前实例的值、静态类型,或者使用 TypeOf 接口获取的动态类型。跟多数语言的反射功能类似。
一般我们使用 GORM 一定会有打开数据库的地方:
func main() { db, err := gorm.Open(sqlite.Open("test.db"), &gorm.Config{}) if err != nil { panic("failed to connect database") }
// Migrate the schema db.AutoMigrate(&Model{}) //… }
GORM 的 AutoMigrate() 方法最终会在 schema.go 的实现中,通过 func Parse(dest interface{}, cacheStore *sync.Map, namer Namer) (*Schema, error) 函数取得上述 &Model{} 这个实例对象,然后再针对它使用 reflect API 获取相关类型信息。以下是关键代码:
// 这里的 dest 就是 &Model{} 这个对象 value := reflect.ValueOf(dest)// 这里取得 Model 的反射信息 modelType := reflect.Indirect(value).Type()
// 这里通过遍历他的所有 Fields,针对每个 Field 作反射解析 for i := 0; i < modelType.NumField(); i++ { if fieldStruct := modelType.Field(i); ast.IsExported(fieldStruct.Name) { if field := schema.ParseField(fieldStruct); field.EmbeddedSchema != nil { schema.Fields = append(schema.Fields, field.EmbeddedSchema.Fields...) } else { schema.Fields = append(schema.Fields, field) } } }
在 func (schema *Schema) ParseField(fieldStruct reflect.StructField) *Field 函数中,获取上述 gorm:"primaryKey" 之类的额外标签信息:
tagSetting = ParseTagSetting(fieldStruct.Tag.Get("gorm"), ";")
如此一来,我们写 struct 声明的时候也就把相应的 ORM 信息一并写了进去。
我们已经知道 TypeOf() 和 ValueOf() 是 reflect 的基础,如果我们要解析的对象是集合类型(如Array, Map等),可以使用 t.Elem() 遍历,如果是 struct 类型,则可用 t.NumField() 循环遍历 t.Feild()。
package mainimport ( "fmt" "reflect" "strings" )
type TestData struct { ID int
tag1:"Tag1" tag2:"Tag2"Title string }func main() { aSlice := []int{1, 2, 3} aStr := "Hello World!" aStrPtr := &aStr aTestData := TestData{ID: 1, Title: "Test"} aTestDataPtr := &aTestData
aSliceType := reflect.TypeOf(aSlice) aStrType := reflect.TypeOf(aStr) aStrPtrType := reflect.TypeOf(aStrPtr) aTestDataType := reflect.TypeOf(aTestData) aTestDataPtrType := reflect.TypeOf(aTestDataPtr) printReflect(aSliceType, 0) printReflect(aStrType, 0) printReflect(aStrPtrType, 0) printReflect(aTestDataType, 0) printReflect(aTestDataPtrType, 0)}
func printReflect(t reflect.Type, depth int) { fmt.Println(strings.Repeat("\t", depth), "Type: (", t.Name(), ") Kind: (", t.Kind(), ")") switch t.Kind() { case reflect.Struct: for i := 0; i < t.NumField(); i++ { field := t.Field(i) fmt.Println(strings.Repeat("\t", depth+1), "Field: (", field.Name, ") Type: (", field.Type, ") Tag: (", field.Tag, ")") if field.Tag != "" { fmt.Println(strings.Repeat("\t", depth+2), "Tag is", field.Tag) fmt.Println(strings.Repeat("\t", depth+2), "tag1 is", field.Tag.Get("tag1"), " tag2 is", field.Tag.Get("tag2")) } } case reflect.Array, reflect.Slice, reflect.Chan, reflect.Map, reflect.Ptr: fmt.Println(strings.Repeat("\t", depth+1), "Element type: (", t.Elem(), ")") }
}
上述代码的 gist 在这里。打印出来的结果如下:
Type: ( ) Kind: ( slice )
Element type: ( int )
Type: ( string ) Kind: ( string )
Type: ( ) Kind: ( ptr )
Element type: ( string )
Type: ( TestData ) Kind: ( struct )
Field: ( ID ) Type: ( int ) Tag: ( tag1:"Tag1" tag2:"Tag2" )
Tag is tag1:"Tag1" tag2:"Tag2"
tag1 is Tag1 tag2 is Tag2
Field: ( Title ) Type: ( string ) Tag: ( )
Type: ( ) Kind: ( ptr )
Element type: ( main.TestData )
在 run-time 拿到了这些数据之后,我们就可以动态修改他们的值,比如说:
func main() { // 声明一个 string aStr := "Hello World!"// 修改它的指针内容 aStrValue := reflect.ValueOf(&aStr) aStrValue.Elem().SetString("Hello, Goodbye") // 我们也可以修改一个 struct aTestData := TestData{ID: 1, Title: "Test"} aType := reflect.TypeOf(aTestData) // 手动创建一个新对象 aVal := reflect.New(aType) aVal.Elem().Field(0).SetInt(2) aVal.Elem().Field(1).SetString("Test2") aTestData2 := aVal.Elem().Interface().(TestData) fmt.Printf("%+v, %d, %s\n", aTestData2, aTestData2.ID, aTestData2.Title) // 输出如下内容: // {ID:2 Title:Test2}, 2, Test2
}
除了动态创建对象还可以创建函数。
func MakeTimedFunction(f interface{}) interface{} { rf := reflect.TypeOf(f) if rf.Kind() != reflect.Func { panic("expects a function") } vf := reflect.ValueOf(f) wrapperF := reflect.MakeFunc(rf, func(in []reflect.Value) []reflect.Value { start := time.Now() out := vf.Call(in) end := time.Now() fmt.Printf("calling %s took %v\n", runtime.FuncForPC(vf.Pointer()).Name(), end.Sub(start)) return out }) return wrapperF.Interface() }func timeMe() { fmt.Println("starting") time.Sleep(1 * time.Second) fmt.Println("ending") }
func timeMeToo(a int) int { fmt.Println("starting") time.Sleep(time.Duration(a) * time.Second) result := a * 2 fmt.Println("ending") return result }
func main() { timed := MakeTimedFunction(timeMe).(func()) timed() timedToo := MakeTimedFunction(timeMeToo).(func(int) int) fmt.Println(timedToo(2))
// 输出: // starting // ending // calling main.timeMe took 1.001339833s // starting // ending // calling main.timeMeToo took 2.001299666s // 4
}
reflect还有一堆可以 Make 的东西:
func MakeChan(typ Type, buffer int) Value
func MakeFunc(typ Type, fn func(args []Value) (results []Value)) Value
func MakeMap(typ Type) Value
func MakeMapWithSize(typ Type, n int) Value
func MakeSlice(typ Type, len, cap int) Value
理论上以前在 iOS 上通过 Objective-C Runtime 实现的 JSPatch,也可以在 Golang 使用 reflect 来实现,不过完全没有必要。
可以看到使用 reflect 来构建对象不仅代码写得很绕,而且没有编译器静态检查,很容易写出有问题的代码。目前看来用在 GORM, JSON, YAML 之类的声明是很不错的。ORM 实际上是把一种数据结构转换成另一种,所以我们也可以考虑用 reflect 来实现 AToB() 这样的转换器,而无需显式编写胶水代码。

最近刚读完中国作家虹影写的自传体小说《饥饿的女儿》,同期在读的是MIT经济学教授夫妇写的《贫穷的本质》。朋友介绍这部小说给我的时候,令他印象深刻的是其中对于女性欲望的描写。这种直白的文字在1997年应是特别不寻常的。
可能我身处这个时代(2022年),只觉此类表达已司空见惯。所以我对《饥饿的女儿》中关于主角与历史老师发生的爱与性并不特别关注,也未觉“震撼”。我最喜欢的是这部小说关于重庆贫民区在三年饥荒、文革时期的背景下翔实而生动的细节。
开始时我抱着读虚构小说的心态在看(我通常会跳过《序》、《前言》直奔正文),结果读完第一章我就觉得“为什么作者可以把这些贫民生活的细节写得如此深刻?”于是翻阅了作家虹影的资料,确认这就是虹影的自传体小说。
虹影出生于1962年的重庆贫民区,网络上关于她的介绍一般有一句“曾经就读于北京鲁迅文学院、上海复旦大学”。为什么不是“毕业于”?或者获得某某学位?我内心有点打鼓。后来读到这篇文章,大意可以理解为是特殊时代的特殊情况。虹影在《饥饿的女儿》最后一章中对此有所提及:
“1989年2月,我乘火车到了北京,在鲁迅文学院作家班读书。3月份,一些小型或不太小型的聚会已在大学校园里举行,学生们在热情地辩论中国应当成为什么样的国家。4月,北京学生开始走出校门,走上街头。到处是歌声,到处是激情澎湃的人群。”
再后来(1991年),虹影与任教于伦敦大学亚非学院的学者赵毅衡结婚,自此在英国生活。相较她悲惨的童年,浪迹天涯的20岁时代,在英国的日子算是巨大的飞跃了。也正是在这段时期,她开始尝试小说创作。《饥饿的女儿》首次出版于1997年,虹影的三十五岁之作,自此名声大噪。
作者在这部小说里写的是自己的童年,核心人物均为自己的家人。故事围绕主角“六六”(虹影在家中排行第六,是最小的女儿)对自己身世之谜的探索,在丰富的支线展开中,生动地还原了旧时代的贫民窟生活。其中对市井群众之间的生活琐事之着墨,尤其角色刻薄之处,个个栩栩如生,跃然纸上。
1962年六六出生,正是全国性饥荒的最后一年。1966年,文化大革命开始。
“‘文革’开始时,我四岁,‘文革’结束,我十四岁,十年有七年时间本应坐在教室里,大部分时间却在义务劳动:造梯田支援农村,在工厂垃圾堆里扒拾废钢铁,甚至夜里摸进工厂,偷好好的零件去交给收购站,换回一张交了废铁多少斤的证明条子。”
我有点沮丧。因为我在读书的过程中常不自觉想到:"写作这个时代的文字,在今天是会从网络上消失的。"为什么我竟然要有这样的“不自觉”啊?
我想本作的这段描写有异曲同工之妙:
“大人打孩子,天经地义,看热闹的人只看不劝。就跟到江边看淹死的人、山上看无头尸体、路上看突发病昏厥的人一样。人们的眼睛一般都睁着,很少伸出援手,倒不是怕死鬼替身。生生死死疯疯傻傻本是常事,不值得大惊小怪,每人早晚都要遇到。”
是啊,“生生死死疯疯傻傻本是常事,不值得大惊小怪”。
其实除了时代背景下的“天灾人祸”,小说的主线“六六通过各种努力探寻自己的身世之谜”已经有一个不错的悬念,在多次追问大姐的过程中一步步逼近真相,张力十足。所以阅读起来非常流畅。对于没有亲历旧时代的我来说,饥荒年代血淋淋的描写也让这部小说变得更加丰满。
22.04.28/夜

2022年4月28日,凯文·凯利(Kevin Kelly)在他的网站上发布了 70 岁生日的文章:103 Bits of Advice I Wish I Had Known,意为:103条我希望早点知道的人生忠告。他 69 岁,68 岁生日时也写了这样的文章。朋友转发给我之后,我觉得有些内容很有启发,于是在做笔记的时候想:不如直接翻译过来好了。
K.K. 写的这103句忠告既幽默又睿智,但毕竟只是短短一句话,缺乏上下文,也就不够精确。我觉得读者朋友可以不必咬文嚼字,只要这些话能引起思考就已经很不错了。以下是我在阅读过程中觉得有启发的部分,不想看我的思考的小伙伴也可以点这里直接跳转到翻译。
以下是我觉得有启发的几句
大部分 K.K. 写的我都深表赞同,这里只选出部分我认为比较有意思的,没写在这里的不代表我不认同。比如关于密码管理器这点,我认同并且实践多年,自然无需多言。
1.99%的时间里,真正关键的时刻就是此刻。
About 99% of the time, the right time is right now.
我们很常听说“我要等到某某时刻就去做某某事情”,但其实多数时候,the timing is never right。寻找合适时机往往只是我们拖延的借口罢了。
3.不要为你不想成为的人工作。
Dont ever work for someone you dont want to become.
48.你无法让聪明的人只为了钱而特别努力地工作。
You cannot get smart people to work extremely hard just for money.
一般来说,办公室里比你多工作三五年的人就是你未来的样子,你的老板/上级就是你未来会成为的人。一个聪明的人找工作的时候自然希望这份工作能带来正面的作用,不仅因为钱,所以会被领袖吸引进某家公司是很正常的事情。但是这种希望是会变的,当你有一天发现你根本不想成为你的老板那样的人时,就是你该离开的时候了。
4.好好耕耘12个爱你的人的关系,因为这12个人远比1200万人喜欢你重要得多。
Cultivate 12 people who love you, because they are worth more than 12 million people who like you.
我认真使用个人OKR帮助我回顾与计划以来,“人际关系”一直在我其中一个O里,但是目前我做得远不够好,所以看到这句我深有感慨。
7.“但是”之前的话都是废话。
Anything you say before the word “but” does not count.
就是说,我上面关于OKR那句话,在“但是”之前都是废话。
5.不要一直重复犯错;试着去犯新的错。
Dont keep making the same mistakes; try to make new mistakes.
97.重复别人是一个很好的开始。重复你自己则是一个令人失望的终点。
Copying others is a good way to start. Copying yourself is a disappointing way to end.
犯错需要勇气,这大概是为什么大多数人都不会主动去犯新的错误的重要原因。Tim Urban 在 How to Pick a Career (That Actually Fits You) — Wait But Why 这篇文章中对此有不错的分析,推荐阅读。Tim Urban也在文末说到:"My goal for the future isn’t to avoid mistakes, it’s for the mistakes I do make to be my own."
8.当你原谅其他人的时候,他们不一定会知道这件事,但你自己却会被治愈。原谅不是我们给予他人的东西;而是我们给自己的礼物。
When you forgive others, they may not notice, but you will heal. Forgiveness is not something we do for others; it is a gift to ourselves.
原谅他人,其实是在治愈自己。我想起台湾的电视剧《我们与恶的距离》,其中“原谅”在几个关键角色身上都是一道极难跨越的坎。
10.无论什么时候,看到争论基于两个对立面进行时,要找到第三个面。
Whenever there is an argument between two sides, find the third side.
16.如果在一个游戏中,获胜变得过于重要,那么我们可以修改游戏规则以便从中获得更多乐趣。而修改规则本身就可以成为一个新的游戏。
If winning becomes too important in a game, change the rules to make it more fun. Changing rules can become the new game.
88.当你跟别人谈判的时候,不要把目光瞄准蛋糕中最大的一片;要瞄准如何把蛋糕做大。
When negotiating, dont aim for a bigger piece of the pie; aim to create a bigger pie.
这几句都颇有跳出圈子的感觉,当你发现形成非黑即白的局面,深陷其中难以解脱时,试着跳脱出来。
18.生产力反而经常分散我们的注意力。不要试图寻找更快完成任务的方法,而是把精力放在你根本不想停下来的任务上。
Productivity is often a distraction. Don’t aim for better ways to get through your tasks as quickly as possible, rather aim for better tasks that you never want to stop doing.
读到这句我深有同感,以前“枫影夜读”还名为“每周读书”系列的时候,为了“每周”这个看似有用的目标,我不得不放弃一些无法短时间内读完的书,反而损害了我本身“喜欢阅读”这件事的体验。还不如就继续喜欢阅读,然后顺便写点书评来得愉悦与持久。
14.人生的课程将以它们需要的顺序出现在你面前。任何你需要掌握的课程其实都在你身上。当你真正掌握了一节课之后,下一节课就会出现。如果你还活着,这就意味着你还有课程需要学习。
Life lessons will presented to you in the order they are needed. Everything you need to master the lesson is within you. Once you have truly learned a lesson, you will be presented with the next one. If you are alive, that means you still have lessons to learn.
21.你作为一个意识生物的成长,将以你愿意接受的令人不舒服的对话的次数来衡量。
Your growth as a conscious being is measured by the number of uncomfortable conversations you are willing to have.
30.请教一位你崇拜的人: 他们的幸运转折往往来自于跟主要目标无关的弯路。所以拥抱这种弯路。对任何人来说,人生都不是一条直线。
Ask anyone you admire: Their lucky breaks happened on a detour from their main goal. So embrace detours. Life is not a straight line for anyone.
34.不要等着暴风雨自己过去;要在雨中跳舞。
Don’t wait for the storm to pass; dance in the rain.
44.你在低谷时做的事情比在好日子时做的更重要。
What you do on your bad days matters more than what you do on your good days.
85.你跟那些惹怒你的事物一样大。
You are as big as the things that make you angry.
人的一生很奇妙,我们会在感觉很美好的同时经历许多的不愉快。而现代人“成长”的标志之一似乎就是能够适应这种复杂的痛苦。不管是面对复杂的人事也好,超出预期的事件也罢,不管是遇到跌宕起伏的股市也好,碰上别人都是傻逼的事情也罢,试着把这些都当作锻炼自己心智的课程。下一次你碰到一样的情况,如果能至少表面上镇静地应对的话,那就说明你可以学下一课了。
24.你的努力(锻炼、陪伴、工作)的一致性远比数量重要。没有什么可以击败每天坚持做的小事,这比偶然做的事情重要得多。
The consistency of your endeavors (exercise, companionship, work) is more important than the quantity. Nothing beats small things done every day, which is way more important than what you do occassionally.
除了不积跬步无以至千里这样的至理名言以外,我之前写过文章介绍的 Atomic Habits 一书对此有更为细致的分析,推荐阅读。
27.你必须具备的三种能力: 在确认一件事情能运作之前永不言弃的能力,在确认一件事情无法工作下去时放弃他的能力,以及信任能帮助你区分二者的人。
Three things you need: The ability to not give up something till it works, the ability to give up something that does not work, and the trust in other people to help you distinguish between the two.
通常来说,普通人往往在还没成功之前就放弃,却迟迟不愿放弃前景糟糕的事情,哪怕有人这么明确地跟他说了,他也不愿意相信。什么?你问我这个普通人是不是我?还好这里不是TVB😂
38.设定一个野心得荒谬的目标的好处是,上限足够高,这样即使最后失败了,以通常的标准来衡量也可以算某种程度上的成功。
The advantage of a ridiculously ambitious goal is that it sets the bar very high so even in failure it may be a success measured by the ordinary.
此理与 OKR 相同。
39.了解自己的一个好办法是,仔细地分析自己做的会惹怒其他人的每一件事情。
A great way to understand yourself is to seriously reflect on everything you find irritating in others.
以前我从 Steve说播客学到:“最好的观察自己的时候,就是产生情绪的时候”。我记住了这点并由外向内观察了数年,而 K.K. 提到的这点则是从自己往外看时的分析,是个不错的补充。
50.所有东西的90%都是垃圾。如果你觉得自己不喜欢歌剧,浪漫小说,抖音,乡村音乐,素食,NFTs,那你可以试试看自己能否找出不是垃圾的10%。
90%of everything is crap. If you think you don’t like opera, romance novels, TikTok, country music, vegan food, NFTs, keep trying to see if you can find the 10% that is not crap.
今年(2022年)我听了大量我以前根本不会听的音乐,经常在推上以 #今日唱片 分享音乐。我开始发现诸多音乐流派、门类的奇妙之处,甚至开始发布音乐分享 newsletter。有太多的音乐在一开始听的时候都是很难接受不好入耳的,我们需要更多的训练来形成欣赏的能力。而最开始的时候,需要一点原初动力,K.K. 这个 10% 不妨成为引发好奇心的导火索。
51.你如何对待那些对你无能为力的人,将成为评价你的标准。
You will be judged on how well you treat those who can do nothing for you.
54.你无法说服一个人接受一个他自己也无法说服他自己的理念。
You cant reason someone out of a notion that they didn’t reason themselves into.
没有什么必要说服另一个人,毕竟这世界上还是有很多人坚信地球是平的。
55.最好的工作是你需要被拉伸才能合格的工作。其实最好只申请你的能力尚不合格的工作。
Your best job will be one that you were unqualified for because it stretches you. In fact only apply to jobs you are unqualified for.
62.”我现在该做什么?”的唯一有效回答是,先找出“我想成为什么人?”的答案。
The only productive way to answer “what should I do now?” is to first tackle the question of “who should I become?”
好吧,那我想成为什么人呢?
89.如果你重复今天你做的事情365天,那一年后你会成为你想成为的人吗?
If you repeated what you did today 365 more times will you be where you want to be next year?
我刚刚问了这个问题,你立刻就把我否定了啊,OMG🤦♂️
这个问题太直击灵魂了啊!
92.我们的后代将创造令我们惊叹的成就,但其实只要我们的足够的想象力,他们会创造的部分东西,用今天的材料和工具就已经能实现了。所以,要想得更大一点。
Our descendants will achieve thins that will amaze us, yet a portion of what they will create could have been made with today’s materials and tools if we had had the imagination. Think bigger.
93.为了丰厚的回报,请对你完全不感兴趣的事物保持好奇。
For a great payoff be especially curious about the things you are not interested in.
95.所有的突破在一开始都是看起来很可笑和荒谬的。事实上如果它在一开始看起来不够可笑和荒谬的话,它也称不上是一种突破。
Every breakthrough is at first laughable and ridiculous. In fact if it did not start out laughable and ridiculous, it is not a breakthrough.
看到这里,我在思考是不是我应该要试着在我完全不感兴趣的事情里,寻找那 10%?
99.与其让你的人生规避“出人意料”,还不如直接瞄着它们而去。
Rather than steering your life to avoid surprises, aim directly for them.
103.防止变老的最佳实践是保持惊讶。
The chief prevention against getting old is to remain astonished.
保持好奇心是一个创造者应该有的常态,而可笑的 breakthrough,需要一点想象力加持的出人意料,会不会就隐藏在我不感兴趣的 10% 里呢?
感谢 K.K. 在 70 岁生日时的真诚分享,我深受启发。
P.S. 写完才发现原来已经有其他人翻译过了。Anyway,我有我自己的思考就足够了。
以下是全文翻译
今天是我的生日。我今年70岁了。活到现在我也算学到了一点可能可以帮助到其他的人东西。过去几年,我每年都会写一点人生建议之类的东西(当然没人请我写这个)。出乎我意料之外的是,今年好像我想讲的话特别多。所以接下来是我给各位读者的一份小小的礼物:我希望我年轻时就知道的103条人生智慧。

我(Justin)最早知道 @Livid 还是在 2010 年看到他发布的 Rework 的中文版翻译。
没想到一晃十二年过去了,我们邀请到这位“用十年时间做了一个叫 V2EX 的网站”的人,跟我们闲谈 V 站,畅聊去中心化技术。
岁月如梭,十二年后,我们是否还充满着理想主义激情迸发,是否还纵情于技术世界流连忘返?
在跟 @Livid 录节目的时候,常常让我回想起那个天真的年代,也让我感受到在下一个十年,继续热情澎湃地脚踏实地,有何不可?
希望听众朋友们跟随我们的声音,一起笑对人生。
P.S. 本期节目开场3分钟的全损复古音质来自在线软件直录,因为保留了录音事故现场很有趣所以采用,请诸位坐和放宽,安心享用🙇♂️
欢迎各位听众朋友们通过以下方式联系我们:
fyfyFM进群推荐使用小宇宙等泛用型播客客户端搜索“枫言枫语”来订阅收听本节目。
荔枝FM,喜马拉雅,蜻蜓FM等平台亦有同步。

什么样的状况可以称为“贫穷”?联合国千年发展计划有一个“消灭极端贫穷和饥饿”的目标,其中具体提到:1990年至2015年间,将每日收入低于1.25美元的人口比例减半。
所以日收入低于1.25美元(约8.13人民币)的群体就是“穷人”吗?联合国官网(2003年)数据显示:自1990年以来,已有超过十亿人口脱离极端贫困,但仍有八亿人生活在赤贫之中。全球穷人数量惊人。
多数人关于富裕与贫穷的概念可能都不是与生俱来的。我记得小时候过年家族聚餐,大门口会有乞讨的人过来唱歌。长辈会给我们这些小孩子几毛钱,让我们拿去给乞讨者。那可能是我印象中对“贫穷”这个模糊概念最早的视觉化呈现。我记得小时候有些长辈会说:“这些人年纪轻轻,有手有脚不去好好干活,就是因为懒才来要饭的。”
所以穷人是因为懒才穷的吗?所谓“贫穷陷阱”理论在现实生活中存在的吗?
MIT的经济学教授 Abhijit V. Bannerjee 和他同为 MIT 教授的妻子 Esher Duflo 合著的这本书──Poor Economics: A Radical Rethinking of the Way to Fight Global Poverty──试图为现行的经济学理论寻找证据,证明或证伪某些专家对“大问题”的“大思考”。
我阅读的是本作的简体中文版本,由中信出版,景芳翻译。简体中文名为《贫穷的本质》,副标题是:我们为什么摆脱不了贫穷。翻译质量很高,感谢译者。中文书本标题多为编辑所定,不再讨论。
全书分为两个部分,第一部分是生活案例,通过全球多个地区的案例分析,讨论了饥饿、健康、教育、生育等话题;第二部分是慈善机构,从穷人每天都需要面对的风险开始,到小额信贷,到被迫“创业”,到政治政策,讲述穷人面对的各种问题。
我在阅读的过程中总能收获一些反直觉的东西。比如“我们与穷人的差别其实很小,因为我们的认识比我们想象中要少得多…我们真正的优势在于,很多东西是我们在不知不觉中得到的。”比如自来水、电、疫苗等等。
“我们不需要使用自己有限的自控及决断能力,而穷人时时刻刻在运用这种能力。”这点我深以为然。书中提到类似非洲穷人不愿购买消毒蚊帐防止疟疾,亚洲农民不愿购买化肥提高产力等案例,我觉得如果换了我身处其中,估计也差不了多少。
我想到我认识的朋友们,如果自小在条件不差的环境中成长,成年后往往有更多选择,可以把时间、精力放在自己想做的事情上。不管是成为某方面的专家也好,还是不断拓展视野也罢,总之,这样的朋友的人生轨迹充满了更多的可能性,环境、家人对他的限制更小。这让我想起多年前那篇网络热文:《我奋斗了18年才和你坐在一起喝咖啡》。该文作者描写的境遇更极端,但因为这些条件限制带来的不利却是普遍存在的。这世上不乏有内裤开局单挑Boss的高手存在。这个过程极其痛苦,历经无数磨难,可能性并不为零,但十分渺茫。
因为贫困线以下的群体多在发展中国家,所以作者分析的案例集中在非洲、印度、印尼等国。作者Abhijit在印度出生,他关于印度习俗的分析让我觉得地方虽然不同,但管理国家的毕竟都是人类。比如印度不同邦的人对于发烧的看法:马哈拉施特邦的人觉得大米可以帮助患者快速退烧,而孟加拉邦的人认为发烧的时候不可以吃大米。这让我想到小时候老家关于感冒的人能不能洗澡、洗头、这个能吃那个不能吃的各种禁忌,现在看来有些哭笑不得。
这个世界上有各种各样的组织在试图改善穷人的生活,抗击全球贫困。牵涉全球多个不同的国家,不同的制度,不同的风俗,不同的习惯。尽管在抗击贫困这件事情上,有些地区做得比较好,另一些地区比较糟糕,但即使是最糟糕的地区,也有改善的空间。作者把这些可以改善穷人生活的事情总结为五个方面:
1. 穷人通常缺少信息来源,相信那些错误的事情。
这一点不通过科学手段无法获取信息的网民们恐怕深有体会。但除了这种外部的限制以外,本人是否有足够的自我意识,是否有形成正向循环的信息渠道也是非常重要的一环。书中提到至少要让小孩子们学会阅读,这样可以通过阅读学习其他知识。我想到李笑来写过一本书──关于他的争议我们暂且不论──标题为《学习学习再学习》。就是要先学会如何学习,然后再去学习。有点文字游戏是意思,但颇有道理。
经历过高考的读者对此可能有所体会。对于理科考试而言,通过无脑刷题来提升考试分数是一种方法,但是学会从题目中找出设计规律,总结每个科目每种题型的解答方法也许更加高效。也就是学会方法,再做刷题训练。
2. 穷人肩负着生活中的多种责任。你越富有,越容易做“正确”的决定。
诚然,阅读本文的多数人可能不需要每天为喝井水还是喝河水而发愁。我在阅读本书的同时也在阅读中国作家虹影的自传体小说《饥饿的女儿》。虹影出生于1962年的重庆,家境贫寒,在母亲肚子里经历饥荒年代,随后是接踵而来的文化大革命。她童年的经历在很多细节上印证了《贫穷的本质》中提及的穷人案例。
穷与富是相对的。即便在温饱线以上,中产与1%的富人依然有极大差距。这些差距带来的做出“正确”决定的难易程度,也见诸其中。所以阅读本书,了解穷人的困境与改善方法,也是在提升自我的意识。比如给自己买保险,给家人买保险。
这种看似简单的,具有明显好处的,应该趁年轻的时候早点做的事情,我就需要在多年以后,通过学习才逐渐有此意识。亡羊补牢,为时未晚。很多事情不是穷人好吃懒做,不是目光短浅,而可能只是他不知道而已。
北大法学博士,B站有名的Up主罗翔老师说过类似的话:“一个农民去城市乱闯马路,你不能说这位农民蠢,他只是不理解为什么有交通规则。一位知识分子去乡下,分不清稻谷和麦子,他不是蠢,他只是不理解。所以不要带着知识的优越感。”
3. 一些服务于穷人的市场正在消失,或是在这些市场中,穷人处于不利地位。
这一点对大部分不处于贫困线以下的人来说算是比较幸运。因为目前大部分行业服务于人数最多的“普通人”(我也不知道有什么其他更好的词),通常只会给富人开设 VIP 通道,但不会拒绝普通人。
当然存在一些活动是需要一定经济实力才可能参与的。比如 F1 运动就需要小孩子自小参加卡丁车训练和比赛。家长要负担小孩的训练费,出场费,车费,油费,维修费等等。普通家庭出身的孩子即便有天赋也很难支撑他一路晋级直到进入 F1 围场。
4. 贫穷的国家不会因为贫穷或其不堪回首的历史而注定失败。
曾经贫穷的人亦如此。
我的老家属于“沿海城市”,改革开放几十年,我见过太多做生意起起落落的人。小时候没什么感觉,现在想来,各有各的幸运与不幸。回顾过去,我们总能给历史找出一堆原因,看似今天是过去的必然结果,但事实上,从来没有人能够预测未来。
上文提到的女作家虹影,她小时候的教育条件并不算好。但她写的小说文笔极佳,至少《饥饿的女儿》写得很好,我看不出来作者小时候的经历会是如此悲惨。
人生有太多东西无法选择,但始终我们可以选择乐观或悲观。而且别忘了,“无法选择”它也是一种选择。
5. 对于人们能做什么或不能做什么,最终常变为自我实现的预言。
一个人往往会对自己有一个预设。这种预设既来自自己的判断也来自外部的评价。很有趣的是,当你预设自己是一个怎样的人的时候,往往你会不自觉地,下意识地做出能够印证这个预设的行为。最后变成自我实现的预言。
所以当你对自己的某一方面很没有自信的时候,可以试着往“I Can Do It”的方向去想。只要学会了如何学习的方法,加上足够的训练,大部分人都可以胜任大部分工作。又不是去奥运会赛场,只有到这种级别的地方才真的到了拼天赋的时候,我们在学校里,在工作上做的大部分事情,都完全没有“不自信”的必要。
我喜欢《贫穷的本质》里涉及全球多个国家的实验与具体案例分析。作者作为经济学教授,除了分析经济学主流的“大理论”以外,会通过具体的案例与随机对照实验,用证据证明这些“大理论”到底适用还是不适用。这种讲求实证的方式让我非常佩服。
虽然我不是经济学方面的专家,也没有Bill Gates那么大的能量可以帮助全球抗击贫困。但至少通过阅读本书,我可以知道自己还存在哪些问题,可以提升自我。
就像盲区会被我们的大脑忽略一样,现实生活中有太多事情被我们忽略了。抬起头,多看看不一样的角度,不要让自己陷入缺少有效信息的屏障里。
22.04.24/夜

我挺喜欢村上春树的,读过他多部作品,但很少撰文评论。可能是因为我看不懂,不知该评论什么。
你可能会说:“看不懂也能谈得上喜欢吗?”
我不太确定。可能喜欢的感觉和是否“看懂”没有必然联系也未可知。总而言之,村上春树的小说,我“感觉”挺喜欢。
《没有女人的男人们》是村上2014年发行的短篇小说集,共收录了七个故事。大部份于2013年发表在《文艺春秋》之类的刊物。唯最末一篇同名小说《没有女人的男人们》是为本辑而作。这个标题取自海明威的短篇小说集:Men Without Women。

我在看了电影《驾驶我的车》之后买了本书。电影剧本改编自其中几个短篇,影片名则取自第一个短篇《Drive My Car》。影片故事有点杂糅缝合的意思,但氛围表现不错,我很喜欢。红色的萨博小车行驶在濑户内海蜿蜒的公路上,背景音是男主角的话剧台词。推开旧式旅馆的木窗,可以看到波光粼粼的景色。挺舒服。
这七个短篇延续了村上一贯的写作风格,各种必备元素:性、伦理边界、爵士乐或 The Beatles,威士忌,女人,男主角,神秘,见诸各个作品。其中第二第二篇的小说名《Drive My Car》与《Yesterday》均为 The Beatles 的经典曲目。村上春树果然很爱披头四啊。
七个短篇中我最喜欢的还是《木野》。这个小故事算是典型的“村上套路”:妻子出轨,男主角消沉之余寻找开启第二人生。有酒吧,有爵士乐,有猫,有美女,也有神秘力量。这些元素在村上笔下渲染出难以言喻的气氛,有点阴郁有点诡怖,有点怀旧又很有质感。
作为一个“看不懂”村上小说的读者,我大概还是更欣赏这种奇妙的空气吧。这种空气可以在阅读完之后绵延一段时间。像我在读完《恋爱的萨姆沙》这篇之后就做了个体验极为真实的梦,但毕竟那个梦的感受不算很好,所以没给此篇加分。
读完本辑,感觉有点像以前读《刺杀骑士团长》,余韵停留在免色那过于理想的形象,捷豹上山时的引擎声,以及纸片人傲慢的表情。对我来说,这就挺好了。
22.04.11/中午
于自居
P.S. 作为一个南方人,读村上的小说照例要推荐台湾赖明珠翻译的版本。相较之下,大陆林少华译本的用词较容易使我跳出小说氛围,更不用提由于简体出版标准导致的种种细节问题了。

F1 2021 赛季给我们带来十几年未见之精彩。今年(2022)随着 F1 规则大改,车队之间实力洗牌,又将给我们带来怎样的一个新赛季呢?非常值得期待。
本期节目我们邀请到老朋友:老黄(黄不了),跟我们一起畅谈 F1 这项激动人心的极限运动。
P.S. 节目中提到的老黄新挂上去的唱片是 Miles Davis 的名盘 Kind of Blue,本期片尾曲选择的也是 Chet Baker 的现场专辑 Chet Baker in New York 里演奏的,Miles Davis 所写的曲子:Solar
欢迎各位听众朋友们通过以下方式联系我们:
fyfyFM进群推荐使用小宇宙等泛用型播客客户端搜索“枫言枫语”来订阅收听本节目。
荔枝FM,喜马拉雅,蜻蜓FM等平台亦有同步。
有个朋友很是口是心非,他高中时喜欢过一个女生,很是痴情,表白好几次,女生没有直接同意,但也没有狠心拒绝,就这么尴尬的相处着,当时在同个班,抬头低头都能见到。这个朋友也没有明确的态度,依旧会给女生带她爱吃的黄焖鸡米饭,厚着脸皮跟她有一句没一句的聊天。当时我们都觉得这样下去不是个办法,得帮帮他。
有人说追女生就要直接上手,不能拐弯磨脚,他信了。在最后一节晚自习下课后在教学楼下堵她,强行的要她跟他去小树林散步,当时很年少,大家喜欢一起行动,就四五个男生过去追着那女生,是帮兄弟得到爱情。那女生和她闺蜜一起走着,很无助的样子。
他追到了,但只是追到了,女生很不情愿的被他抱了起来,我们在那围观。他把女生报下了楼,女生在反抗,他一直不停的对女生说她是真的喜欢她,终于女生挣脱了,跑回了宿舍。
这样追女生当然是不行的,只会让女生反感,我只觉得按当时那个场景,好像大型犯罪现场。
最终他没有追到哪个女生,他放弃了,他又不甘心。
他开始让我们都删掉那个女生QQ,说这样的女生不好,我没删,我不太了解她,但我觉得他说的有点极端了。以后的很长一段时间里,他还会时不时的谈起她,我真心觉得他还没有放下那个女生,他对谁都说那女生不好,但他自己却会偷偷观察她,看她有没有和其他人谈恋爱。
没多久,那女生和一个低我们一级的男生恋爱了,我朋友看不下去了,他说想把那男生打一顿,我问他你为什么会这样想,他说和他没什么关系了,但他就是看着不爽。
我终于明了,他始终没有放下她,尽管知道这是段不可能有结果的感情,但在他心里也已生长了很久,就算连根拔起,那个位置留下的空洞不会消失。
说他口是心非一点也不假,但这完全没有嘲笑或者看不起他,我是同情他放不下,不想他一直在这痛苦中走不出来。他不让我们加那个女生,但他自己却是加了又删,好几次了。他说他只是想听听她会说些什么,我笑了,我直接一句“你就是想加她”让他没话可说。
我想有些事自己知道就好,毕竟他想干嘛也只有他自己知道,尽管我所看到的就是这样,那也没必要说的清楚。旁观者自清,但不是当居者,又怎能体会那份复杂与苦涩呢?
多一点理解,留一点尊严,才会是最好的结局吧。
有个朋友很是口是心非,他高中时喜欢过一个女生,很是痴情,表白好几次,女生没有直接同意,但也没有狠心拒绝,就这么尴尬的相处着,当时在同个班,抬头低头都能见到。这个朋友也没有明确的态度,依旧会给女生带她爱吃的黄焖鸡米饭,厚着脸皮跟她有一句没一句的聊天。当时我们都觉得这样下去不是个办法,得帮帮他。
有人说追女生就要直接上手,不能拐弯磨脚,他信了。在最后一节晚自习下课后在教学楼下堵她,强行的要她跟他去小树林散步,当时很年少,大家喜欢一起行动,就四五个男生过去追着那女生,是帮兄弟得到爱情。那女生和她闺蜜一起走着,很无助的样子。
他追到了,但只是追到了,女生很不情愿的被他抱了起来,我们在那围观。他把女生报下了楼,女生在反抗,他一直不停的对女生说她是真的喜欢她,终于女生挣脱了,跑回了宿舍。
这样追女生当然是不行的,只会让女生反感,我只觉得按当时那个场景,好像大型犯罪现场。
最终他没有追到哪个女生,他放弃了,他又不甘心。
他开始让我们都删掉那个女生QQ,说这样的女生不好,我没删,我不太了解她,但我觉得他说的有点极端了。以后的很长一段时间里,他还会时不时的谈起她,我真心觉得他还没有放下那个女生,他对谁都说那女生不好,但他自己却会偷偷观察她,看她有没有和其他人谈恋爱。
没多久,那女生和一个低我们一级的男生恋爱了,我朋友看不下去了,他说想把那男生打一顿,我问他你为什么会这样想,他说和他没什么关系了,但他就是看着不爽。
我终于明了,他始终没有放下她,尽管知道这是段不可能有结果的感情,但在他心里也已生长了很久,就算连根拔起,那个位置留下的空洞不会消失。
说他口是心非一点也不假,但这完全没有嘲笑或者看不起他,我是同情他放不下,不想他一直在这痛苦中走不出来。他不让我们加那个女生,但他自己却是加了又删,好几次了。他说他只是想听听她会说些什么,我笑了,我直接一句“你就是想加她”让他没话可说。
我想有些事自己知道就好,毕竟他想干嘛也只有他自己知道,尽管我所看到的就是这样,那也没必要说的清楚。旁观者自清,但不是当居者,又怎能体会那份复杂与苦涩呢?
多一点理解,留一点尊严,才会是最好的结局吧。
文/joomaen
我是基民,一个失败的大学生。再剩下两天我就要经历一个重要的考试,有多重要,大概就是如果挂科了就会留级,这简直不能接受。我狠心复习,但没有学会何谈复习?我悲痛、烦恼、苦闷,一堆负面情绪在我脑子里面起冲突,我还怎能好好学习?
就在昨晚,我做了个梦,也可能不是梦,或许是我的幻想。那是个漫长且复杂的梦,我梦到自己穿越了,在考试的前两天,充满焦虑的我突然带着记忆回到了初中,准确说是初一。因为我初中曾转过三个学校,这是第一个。
我印象中的好友都还在,奥林还是那么喜欢欺负别人,创还是不帅且自恋,若寒依旧帅。我这时候可能还不认识若寒,他和我不是同一个小学毕业,记忆中和他之后成了朋友,这个时间可能还不熟。这一切和我记忆中完全一样,我悄悄掐了自己大腿一下,这是真的(也不知道为什么梦中还会有痛觉)。
我依旧和他们玩耍,但在学习上,我很会。就算有的遗忘也稍微听下思考下就明白。在这个小小的只有两个班的七年级排名第一,家人很高兴。我和朋友们也玩的很正常,我比他们知道的多很多,经常给他们讲些奇奇怪怪知识,人缘相当好。至此还没人发觉我有异常,我也不说出来,他们肯定不会信的。
其实说实话我还有点后悔,虽然一切都可以重来,但我的记忆还在,那些麻烦的痛苦的事情都还得再经历一次,这次我想尽可能避免。
很快,快一年过去了,要到初二了。记忆中我是要离开外婆家,回到妈妈身边,去那个更小的初中读书。可这次不同的是,我成绩很好,妈妈也给了我选择的权力—其实之前也可以选,我喜新厌旧选了转学—在记忆中对比一番,我选择不转学。可只有我知道,这个初中也只能再上一年了。
初二时,开始和记忆中有了区别,这也是我想看到的改变。由于继续再这所学校读书,老师自然是没换。成功让这个班主任教了我两年。而且初二我的一位好朋友也转了回来,他本是我小学同学,初一去了他姑姑在的临县中学,或许是他妈妈觉得私立学校不好,就又给转了回来。我本想劝他不要转,一来麻烦,二来这学校明年就要倒闭。可我没有,我还是只顾自己就好,我怕弄巧成拙,从我穿越回来的时候,一切都不一样了,说不定它还能多挺一年。
再学校里,课间我就和创、若寒他们讲笑,对别人评头论足,这样很有趣,即使我已经有了二十岁的成熟,但还是乐此不疲。放学后我和奥林去山上玩,去挖别人的坟,奥林还吓唬我说,在月圆之夜秦始皇就会复活,让我跪下对着山洞磕头,上一次我唯唯诺诺,跪了,这次没有。哼,吓唬谁呢!
那时的时间过得很慢,我挑重点讲。
初二完了,学校没有像我预期的保留下来,这是政府的命令,我也改变不得。
记忆中初三我去了那个离家远远的私立中学,当时是说好免学费妈妈才让我去的。这次那个地中海的年纪主任依旧找到我家,我的成绩更好了,连住宿费也免了。
去了学校我完全不像当初般紧张内向,全是熟人,我轻车熟路地住进宿舍和他们聊天,就像本来就认识他们一样。
记忆中我是再初三学会了抽烟,导致我在大学三天一包,浪费钱还伤身体。还有我腰椎间盘突出,好像就是在初三体育考试训练时开始的。这些都得注意。我有着记忆,生活的很是轻松。唯一让我犯难的就是那个女生。
在我上一次初三时认识她,我数学学的好,她借我的作业抄,她很外向开朗,那时怪我太内向,不敢打招呼,只能到处打听她的名字,在班群中找到她,和她QQ聊天。当时我只会在QQ聊,聊熟了现实中也不敢打招呼。想到这我就生气,于是在正式开课第一天早读刚下,我就去找她。我喊她的名字,她很惊讶。唉,现在的我,依然不知如何开场。还好她活泼开朗主动,问我的名字,我才反应过来:我认识她她不认识我。聊的多了就不尴尬了,我还讲出许多关于她的事,她很喜欢和我聊天。我们成了好朋友。
到了要中考的时候,我丝毫不慌,还常常给她讲题,我俩都考得很好。
这时候依旧没有偏离剧本,反而更加符合。我俩考的很好,比上一次都好。顺理成章的被县里私立中学给看中,由于这段没有修改什么,都是按照记忆来的。她在我隔壁班,之前还很伤心,现在完全不,有了感情基础就是很开心。她的班主任是那个搔牛的中年男人,我的班主任我还比较喜欢,在他不发飙的时候。
这时候一些重要的人要出场了,那一次认识他们是在高二,他们总嫌我加入组织太晚了。得了,我现在就去,什么,现在还没有组织?那我就是织佬。我去和砍头子、邪神、黑鬼、丹斯这些人玩,这也是必然的,其他人我感觉不配和我做朋友。
高中都喜欢谈恋爱,可过来人的想法让我打消了这个念头,我觉得现在这样朋友之上的状态很不错,只是差个称谓。(这在我大学时被称为“朋上情下”)
现在的我不会顾别人的眼光和议论,我经常在晚自习下去找她,就和YY去找砍头子一样,一起回宿舍、一起逛超市。真希望可以一直这样。
高一时班里有个大好几岁的同学,当时很喜欢他的生活方式,他也很帅,感觉和我们不太一样。现在我懂了,这是不属于这个年纪的成熟。现在的我,也差不多这样,只是身体跟不上思想。我邀请他加入组织,成为另一个织佬。
出过一个意外,有天我和她吵架了,这可是从没有过的,可能是在一起太久了的缘故。她说我像个中年人,她喜欢小正太。我又在记忆中找到了她曾经的那个恋爱对象。思想斗争了好久,加上这么久的相处,我决定告诉她真相。我说我是穿越来的,我说上次我错过你了,我说我真的很喜欢你,我到大二都还没女朋友,我说你曾经谈过两个都分了,我说我就是为了你才来的……
我说了好多,她信了。她相信我是穿越的,也相信我是真的深爱她。
高中生活比初中快很多,转眼高考了。
我又开始担心起来,我不想和她分开,我想到大学让她做我女朋友,一起吃饭、一起上课、一起去学校附近的大酒店学习。
我一收懒散,开始学习,对我来说算是复习,这比高中补考都简单。我俩好好学习,我告诉她,曾经没在一个大学,这次一定要一样。成绩出来,我比她高3分,比我自己之前高十几分。可能我的上限就在这了。我让她报什么学校告诉我,我填一样的。甚至我还告诉砍头子也跟我一样,他曾说过。但我怕这三份之差会使我们不同,还好上天眷顾,我俩还在一起。
突然间,我感到一阵困意,是那种刚睡醒的不想睁眼的感觉。我以为是我的使命完成了,可以好好享受人生,从新来过。我的眼神渐渐模糊,耳边传来一个外地中年男人的口音:空调出什么问题了?我睁开眼,原来是昨天找的修空调师傅来了。过了几秒,我才意识到不对劲,他妈的刚才那是场梦,我做梦太过投入,连早八课都没去。操!!

John Doerr 2017年出版的这本 Measure What Matters 早有耳闻,简体由中信出版,书名为《这就是OKR》(简体出版社编辑的起名倾向总是令人惋惜)。英文版读下来十分流畅,生僻词不多,推荐阅读英文版。亚马逊中国有售,配合 Kindle Wordwise 阅读会更轻松一些。
John Doerr 1974年加入 Intel,当时 Intel 正在研发奠定后来 x86 架构地位的 8086 处理器。当时 Intel 与 Motorola 的竞争达到白热化阶段,Intel 面临生死存亡的危急关头。时任 Intel CEO 的 Andrew Grove 凭借优秀的管理方法成功将全公司上下统一,全员朝研发出超越时代的 CPU 发力,给 John Doerr 留下深刻印象。John 后来也成功在 Intel 成为最优秀销售。离职 Intel 后把 Andrew Grove 的方法总结为 OKR,作为 VC 带给当时还十分年轻的 Google。后来的故事大家都知道了,OKR 成为 Google 的管理基础,直至今日仍在发光发热。
理论上 OKR 不仅适用于大公司、大组织,它也适用于个人。我从去年(2021年)开始尝试把 OKR 用于我的人生目标,所以对 John 的“正统 OKR”实践很感兴趣。这本书也给我带来了不少启发。所以对 OKR 有兴趣的读者不妨也找来看看。
全书主要分为三个部分:
第一部分从作者把 OKR 带到 Google 写起。讲故事的部分居多,也算有趣,不过有时候我觉得还是比较啰嗦。最重要的是第一部分,作者引出 OKR 的四个 Superpower:
OKR 对大组织来说最重要的作用莫过于上下统一,全员聚焦于最重要的事情。同时也提供给公司老板一种更加合理的衡量方法:关注产出(Output)而不是动作(Activity)。比如一般认为只看工作时长是“管理懒政”,因为加班多并不代表产出多。
OKR 提供了另一种合理的视角:看组织成员对于组织方向的目标(Objective)有多大贡献,而不是看他加了多少班。
对我的个人 OKR 实践来说,这点尤为重要。在我的个人 OKR 中,健康目标非常难以衡量。过去我直接让这个 Objective 和我的 Habit Tracker 挂钩,比如这个月我一共去了 N 次健身房,做了 N 次不少于 5 分钟的 Meditation 等等。这些事实上都是对“行为”的衡量。作为习惯追踪(Habit Tracker)非常有用,因为习惯养成最重要的是频率(参阅 Atomic Habits 一书)。但我是否健康,是否自信,是否每天都很有精神其实无法被这些 KRs 衡量。
OKR 有个非常重要的点,就是 Objective 可以被 KRs 衡量,当 KRs 都完成的时候,Objective 就达成了。但是我完成了本月的健身房训练次数之后,Objective 达成了吗?不见得。所以更合理的 KRs 应该是我的体重、体脂率、睡眠质量(App 打分)等能被量化的数字的提升或维持。
除非我的 Objective 是“在这个月里,养成xx习惯”。
另外是优先级(Priorities),不管是大组织也好,个人也罢。资源总是有限,像大家耳熟能详的 Time, People, Money 三者不可兼得之说。这就是优先级存在的意义。我们一段时间内只能解决一个问题,不要试图解决所有问题。
"Real artists ship."
没有产出,一家公司就会倒闭;没有产出,一个团队再有创意也只是空谈。前段时间看了 Netflix 纪录片《通用魔术》(英文名 General Magic,推荐友台主播 @JJYing 翻译的字幕),虽然这家创业公司每个成员都很厉害,大家野心也很大,受到资本界的追捧,可以说要啥有啥。但是最终他们无法在合适的时间交付一款足够好用的产品,所以结局是个悲剧。虽然历史无法重来,但是如果当时他们有一位类似 Andrew Grove 这样的管理者,可能智能手机的历史会被改写也不一定。
对我个人的 OKR 实践来说。人生需要关注的方方面面实在太多。2022 年 2 月,我试着在我的 OKR 里加入更多目标(Goals),结果导致我大部分目标都无法达成。3 月份,我从我的目标中只挑选出最重要的三个。每个都从我的大 Objective 派生出来,以 KRs 为衡量目标,完成 KRs 即达成本月目标,最终结果只有达成✅与未达成❌两种,没有中间状态。
这一项是 OKR 对大组织最有效的地方。书中举了多个例子,也邀请了多位硅谷大公司的高管来讲述他们的故事。在一个大公司工作,因为体量的关系,很多人会感觉自己就是一个流水线上拧“螺丝钉”的人。互联网有个笑话,“面试造核弹,工作拧螺钉”说的便是此理。
OKR 理论上可以解决其中一部分问题。这部分书里举了 MyFitnessPal 这个例子。公司的目标是: Help more people around the world.
KRs 设定为新用户增长和总用户数。一线员工做用户增长时可以明白自己可以帮助到更多的人。
这也是我说为什么可以解决“一部分问题”。要想让一线员工觉得自己的工作的有意义,首先这家公司的产品或服务得令人觉得有意义。毕竟这世界上还存在许多除了赚钱以外没什么正面价值的产品和服务。
对于个人 OKR 来说,这点也至关重要。我希望在每个计划与回顾周期暂停脚步,看看我过去做的事情对我的人生都产生了哪些影响。我想要的目标是靠近了还疏远了。
有时候目标制定好了,大脑就体会到“我做完了”的感觉。“set them and forget them”十分常见。
所以一个能够被执行的计划一定是经常“追踪”(Track)的。前面讲到一个 KR 在周期结束时只会有“完成与否”的二元回答,但是在周期结束前呢?Google 的做法是采用 0-1.0 之间的数字做追踪记录。
而因为下面要提到的“大目标”(Stretch,Think Big)特性,通常一个 OKR 的目标都不容易 100% 被实现,所以 Google 认为进度 0.7-1.0 即可算作目标完成,他们称为“绿色”(Green),0.4-0.6 是“黄色”, 0.0-0.3 是红色。因为“通常无法100%完成的特性”,Google 还额外加入了“打分”(Score)机制。
假设我的销售任务是谈成 10 个交易额 100 万的订单,有两种做法。一种是我一直拖延到截止日期前一个礼拜才开始积极打电话销售,熬了好几个通宵想方法做渠道投放,最终谈了 170 个客户完成了 3 个订单。另一种是我合理分配到周期内的各个时间段,经常想办法拓展渠道,虽然只谈了 100 个客户,也不需要熬夜通宵,但是谈成 7 个订单。两者应该鼓励哪种一目了然。
周期内追踪时也会对每个 KR 做标记,红色进度的 KR 需要考虑是负责人本身的问题,还是目标设定的问题,情况严重的可以考虑放弃该 KR。黄色进度的可能需要盯紧项目环节,看是否需要调配资源等支持。绿色进度的表示状态良好,继续保持。
对我的个人 OKR 来说,中期回顾有助于我发现 KR 设定的不合理之处,也让我知道当前周期内我的个人目标被实现了多少。看到一些目标有进度是个好信号,看到一些目标毫无进展则给我警告:是不是我的目标设定太多了?是不是这个目标对我来说其实并没有那么重要?
对于组织 OKR 来说,“正统”的做法是不与绩效考核(Performance Review)挂钩,避免大家为了保险起见选择一定能完成的目标。对于个人 OKR 来说,对自己保持“绝对诚实”至关重要。因为自己是自己唯一的裁判,如果为了 OKR 结果好看,我完全可以在中期随意修改 KR,变更目标,多一些 Greens, 少一些 Reds。但这样做真的有用么?
跟组织 OKR 要保持公开、透明、负责一样,个人 OKR 也要对自己诚实、负责。
前面也提到 OKR 一个特点是需要 Think Big,目标制定需要有野心,令人感觉不舒服,不太可能 100% 达成的。
书中提了 Google Chrome 的例子。当一个目标足够大的时候,即使只完成了 70%,也已经是个非常了不起的成就。OKR 的百分比进度与打分机制给予这种富有野心的目标一种合理的衡量方法。
这也是我在本书中学到的一点,除了“把目标都变成绿色”,还可以“引入打分机制”。
不过我也想到一个问题:如果大家都知道 70% 即完成,那么我制定目标的时候就可以定一个 70% 可以被完成的目标,然后上报一个 100% 的数字。所以这些规则漏洞还是必须有“不与利益挂钩”加持才有可能规避啊。
传统的任务派发式工作方法让一线员工感觉像个“拧螺丝”的流水线工人,OKR 可以解决一部分上下统一的问题。OKR 应用到个人也可以让自己更清楚自己在朝什么方向前进。
如我在《个人 OKR 实践》系列中想表达的,OKR 也只是一种工具,跟 GTD 一样,需要自己去实践,去尝试,然后发现适合自己的部分,不适合自己的部分。找到有用的东西为我所用,对于不合适的部分抛弃就好了。
读这本书对我产生最大的启发是"As Measured by…"。所有的 Objectives 都应该问这个问题,它如何才能被衡量呢?如果这个 Objective 无法被衡量,那么是否设置的时候就已经有问题了呢?
回顾我的个人 OKR,可以改进的部分还有很多,挺好的。
22.03.21/中午

今天在中文世界我们处理文本文件一般都采用UTF-8编码,但这是1993年Unicode标准出来以后,才随着互联网兴起而流行起来。所以我们在处理一些“老旧”系统的时候难免还是会遇到不同编码的文本文件,比如从某银行下载的账单就经常以意想不到的编码方式出现。
这时候直接对裸数据进行读取会失败,为了让整个流程更自动化一些,我们需要针对这些文件进行转码处理。
除了Unicode以外,世界上还存在非常多种不同的编码,仅汉字就有BIG5, GB,GBK,GB 2312等等。Google提供的ICU(International Components for Unicode)项目可以很好地帮我们找出当前文本最可能的编码格式。ICU项目应用广泛,Apache也用了,不过这个库比较大,Google还有一个简化版的库: compact_enc_det 也做了类似的事情。
输入文本bytes,库内部会循环多次进行匹配,匹配出来分数高的就是最可能的文本编码。为了优化效率,compact_enc_det 会先扫描前 16KB 的bytes,然后针对接下来最多 256KB 的bytes,之检测高于 0x80 的编码,以提高检测效率。这个库一共能检测出75种不同的文本编码。
另外针对我们最常用的UTF-8编码,还需要对文件头进行BOM处理。
BOM是Byte order mark的缩写,在Unicode标准出来以前,大家会在一个文本文件的开头写入16位的数据,用来表示当前文本的编码和大小端。

比如上图就是UTF-8文件头的BOM。在Web浏览器中,HTML的BOM一般是必须的,但是更好的做法是我们在HTML的Meta标签中写明当前文件的Encoding。
所以遇到此类带BOM的文件,我们在解码的时候需要先去掉BOM,再编码时还要记得写回BOM。
NodeJS这个库bnoordhuis/node-iconv采用C语言实现了一个iconv方法。
index.js部分只是接口封装,核心逻辑在 binding.c 里面。
//JS入口
const conv = bindings.make(fixEncoding(fromEncoding),
fixEncoding(toEncoding));
//对应C的make()函数
conv = iconv_open(to, from);
这里具体实现引入了 iconv_open1.h 和 iconv_open2.h,应该是使用了libconv里的代码,我们主要关注unicode的loope convert方法:
static size_t unicode_loop_convert (iconv_t icd,
const char* * inbuf, size_t *inbytesleft,
char* * outbuf, size_t *outbytesleft)
其中最关键的是 incount = cd->ifuncs.xxx_mbtowc(cd,&wc,inptr,inleft);,因为UTF-8是一种可变宽度的编码,所以一次循环要读入多个bytes才能决定是否合成一个完整的Unicdoe字符。
作者把不同编码的转换函数都统一到mbtowc(),我们可以从 encodings.def 里找到 UTF-8 的对应函数:
DEFENCODING(( "UTF-8", /* IANA, RFC 2279 */
/*"UTF8", JDK 1.1 */
/*"CP65001", Windows */
),
utf8,
{ utf8_mbtowc, NULL }, { utf8_wctomb, NULL })
其实现根据 RFC 3629 规范来:
static int
utf8_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, size_t n)
里面就有一大堆的if-else实现了该规范。我们查表可知,UTF-8主要分为四个区域:
Char. number range | UTF-8 octet sequence
(hexadecimal) | (binary)
--------------------+---------------------------------------------
0000 0000-0000 007F | 0xxxxxxx
0000 0080-0000 07FF | 110xxxxx 10xxxxxx
0000 0800-0000 FFFF | 1110xxxx 10xxxxxx 10xxxxxx
0001 0000-0010 FFFF | 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx
0x0000-0x007F: ASCII字符0x0080-0x07FF: 带符号的拉丁文、希腊文等字符0x0800-0xFFFF: 大部份常用字,比如汉字。这也是为什么有些当前文本是否中文的正则判断会直接判断这个区间。utf8_mbtowc()会根据该规范读入相应长度的字节,返回给上层解出来的字节长度。上述四个区间,每个区间只有一种编码方式,如第一个区间,0x0000-0x007F 以下就是 1 个 byte,对应ASCII。
如果落入第二区间0x0080-0x07FF,就要看高位的bit,110开头的就填入110xxxxx,10开头的就填入10xxxxxx。每一个子区间都是固定的。
本文以UTF-8编码为例,简述了如何检测纯文本的编码以及如何做编码转换。可以看到UTF-8还是相对简单的编码规范,已经具备一定工作量。如果要自己写一个iconv的话,支持75种以上的编码,工作量可想而知。

苹果的春季发布会如期而至,虽然没有 M2 芯片,但苹果带来了全新的 M1 Ultra,一个顶俩 M1 Max?
不知道各位听众朋友,有没有期待的产品没在发布会上看到的呢?
又或者你会买船新的 Mac Studio 吗?
欢迎在留言区跟我们交流哦
P.S. 感谢听友 @MatthewMa 指正,我们节目中关于Studio Display价格的部分说错了,显示器是11499元,纳米玻璃13499元,支架附赠,升级款支架多加3000元。
欢迎各位听众朋友们通过以下方式联系我们:
fyfyFM进群推荐使用小宇宙等泛用型播客客户端搜索“枫言枫语”来订阅收听本节目。
荔枝FM,喜马拉雅,蜻蜓FM等平台亦有同步。

万众期待之下,宫崎英高的新作 Elden Ring (《艾尔登法环》,俗称老头环)终于在2月25日正式发售啦!
我(Justin)也第一时间开始了受虐之旅。节目录制时我还在被小兵狂虐,现在已经开始反杀宁姆格福区的Boss啦。
魂系列一直是硬核游戏玩家心中的神作,本作因为各种原因出圈,吸引了大批新玩家入坑。不知道听众朋友们开始玩环了吗?
来留言区跟我们讲讲你的受虐史吧🤓
“褪色者,出发吧!”
P.S. 不要忘了订阅我们“两周一会”的音乐分享newsletter哦👉🏻 https://replay.cafe
P.P.S. 感谢听友 @周叶舟 指正,黑魂2不是宫崎英高制作的,这一代也被玩家戏称为黑魂外传。
欢迎各位听众朋友们通过以下方式联系我们:
fyfyFM进群推荐使用小宇宙等泛用型播客客户端搜索“枫言枫语”来订阅收听本节目。
荔枝FM,喜马拉雅,蜻蜓FM等平台亦有同步。

没想到我们黑胶俱乐部居然有第二期啦!而且由我们三个不专业音乐爱好者 @Justin, @Oscar 和 @Clu 发起的 Newsletter - Re:Play 也正式发布了!
欢迎大家到 RePlay.cafe 订阅我们的 Newsletter 哦!
以后每期 Newsletter 也可以在这里阅读: Re:Play Newsletter | Revue
One more thing…
好朋友 @61 的新 App 谜底黑胶 也上线了,配合 iPad 超大 Widget 使用风味绝佳,欢迎大家下载哦。

@61 也给我们带来 10 个会员福利,请大家踊跃在小宇宙评论区留言参与抽奖😘
节目中分享的音乐以及提到但未播出的音乐,我们也整理了 Playlists,欢迎大家收听,记得点赞哦👍🏻。
欢迎各位听众朋友们通过以下方式联系我们:
fyfyFM进群推荐使用小宇宙等泛用型播客客户端搜索“枫言枫语”来订阅收听本节目。
荔枝FM,喜马拉雅,蜻蜓FM等平台亦有同步。

世!界!各!地!
大连篇!
本期节目我们邀请到在大连工作的伊洪和Kenshin来跟我们唠嗑。
Kenshin 还给我们送出 10 个简悦终生 VIP 会员大礼包哦!
欢迎大家在评论区留言抽奖~
欢迎各位听众朋友们通过以下方式联系我们:
fyfyFM进群推荐使用小宇宙等泛用型播客客户端搜索“枫言枫语”来订阅收听本节目。

哈喽大家好!
这里是《枫言枫语》播客。就快过年啦!我(Justin)和自力在这里先祝大家新年快乐,虎年大吉!
本期节目非常特别,我们本来录了一个多小时的声音,但是最后我从录音机把文件导出的时候发现它居然只有几百 KB!当时已是凌晨两点多,这下打击实在有点沉重,让我完全失去睡意。
本来我们计划要做一期春节前的节目,跟大家分享我们去年看过的有意思的文化作品,希望可以给春节期间无法回家的小伙伴们带来一点陪伴。但是因为这次录音事故导致节目无法播出。
之前我的录音机已经出现过几次故障,第一次出现是在《Vol. 55 在成都工作和生活是什么体验》这一期,我为此独自重录了我的部分。第二次出现的节目还没播出,但是那次我完美抢救回来了,所以给了我一种蜜汁自信,录音前甚至连backup plan都没有准备,最终促成了这次节目的损失。
即便如此,我们也不希望这期节目完全地消失,所以想要以一种特别的方式给到大家。我们把节目中提及的作品全部收集起来,放在Show Notes里面,希望诸位听众朋友在假期有空的时候,可以从中获得欢乐,获得勇气,在新的一年可以充满热情地追求与探索自己的人生。
顺颂
时祺
科幻/言情
近期大热的腾讯视频独播剧,主演赵今麦曾出演过《巴拉巴拉小魔仙》,在本剧造型清甜可人,网络可见“金麦郎”之梗(金麦郎成最大赢家?)。
剧情设定的想法很好,时间循环概念,年轻演员的演技稍显青涩但胜在节奏不错,悬念十足,是一部可以一看的国产悬疑电视剧。
时间循环概念的影视作品:《明日边缘》、《源代码》、《意外空间》、《寒蝉鸣泣之时》
悬疑/犯罪
这是一部悬疑电视剧,第一集以鸟瞰的形式带观众粗略走过了整个故事将会发生的时空,并在结尾引发一个巨大的悬念。
接下来的剧集围绕初始悬念展开,几乎每个人物都可以自成一个分支,是一部非常不错的悬疑电视剧。
科幻/悬疑
以科幻为背景的悬疑电视剧,一共三季,第三季在 2020 年播出。制作精良,设计巧妙。故事的重点在与空间不大,人物不算太多的情况下如何设计出错综复杂的人物关系和道德抉择,每一集带来的反转令人咋舌。
因为有科幻元素的加持,人物关系比《无罪之最》更复杂,剧情也更烧脑。
剧情/稍微有点悬疑
四个心怀音乐梦想的“Loser”聚在一起组成一个四重奏,在梦想与现实之间反复拉扯。编剧坂元裕二也写过 1991 年经典日剧《东京爱情故事》的剧本,帮初出茅庐的铃木保奈美塑造了一个国民级别的莉香角色。《东爱》这部电视剧 Justin 非常喜欢,在博客也写过介绍。
在《四重奏》中,坂元裕二继续发挥他撕碎美好的“痛人”手法,四个小人物的故事在哭笑之间一一展开。女一号松隆子演技出色,女二号满岛光造型甜美,两位男性角色也是演技到位,细节之间见出日本文化中对极致的追求和令人脑洞大开的讨论。
P.S. 这部电视剧的 ED 非常用心,第一次看甚至分不清是剧情还是 ED。是少见的可以不跳 ED 的电视剧。
剧情/悬疑
石原里美出演的经典日剧。“UDI”是负责解剖非正常原因死亡的遗体,协助找出真实死因的民间组织。石原里美饰演解剖医师。这部电视剧的精彩之处在于每一集一个独立故事,表面看一个人可能是因为显而易见的原因死去的,比如溺水。但是尸检结果却往往道出一个惊天大秘密。
动画番剧/剧情
英雄王子成长复仇之路的类型动画番剧,2021 年不知道为什么火出圈的大热 IP。小王子波吉与 Loser 卡克的身形在作品中被塑造得极其弱小,相较之下,普通人的体型几乎是他们的五、六倍。
可能是因为波吉的弱小、善良、先天缺陷和可爱的造型,再加上他的英雄成长之路,给很多人以共鸣和勇气,所以这部番剧才会火起来吧。
动画番剧/热血
鬼灭 2019 年一经播出就是大热番,2021 年出了新的续集《游郭篇》。这部番剧的主题框架跟热血番类似,也是身负巨大潜能的少年英雄,被迫踏上成长之路。
几位主要角色个性鲜明,各有惹人喜爱的特点。动画经费很足,战斗场面十分炫酷,可以一追。
奇幻/冒险
非常奇特的异世界设定,每个人会有一句话描述的技能,之后全屏高智商的发挥,确实做到了见面就开打的热血,这部爽剧一度还因为尺度原因被禁播停播了,这就更引起人的好奇了。
悬疑/惊悚
去年现象级的出圈的韩剧,大逃杀题材,差点年会的 Cosplay 就要选剧里的服装了,还好某宝不让卖。据说今年会拍第二部,也很值得期待。
科幻/游戏/爆米花电影
制作精良的商业娱乐大片,节奏紧凑,结构清晰。娱乐大片该有的搞笑、对立、爱情、反转和特效大场面都齐备了。Justin写过一篇影评: 漫无目的 06 - 我看电影《失控玩家》
科幻
年度大戏,五星好评,无需多言。我们这期节目有详细讨论,传送门: Vol. 50 沙丘 2021
科幻/苹果
2021 年苹果制作了不少优秀的电影,这一部设定在末日废土背景,孤独的主角与基于 AI 的初生机器人共同逃难的遭遇。讨论的话题不新,还机器人于人性之类。背景设定有点像 Will Smith 2007 年出演的优秀电影《我是传奇》(I Am Legend)。
科幻/剧情
主演马赫沙拉·阿里曾出演过《绿皮书》里的黑人钢琴家唐雪莉,演技优秀。这部电影讨论的是死亡与亲情的话题,整体节奏比较缓慢,主角面临万难抉择时代入感很强。
剧情/传记
讲述了一位天才盲人钢琴家对抗不公命运的传奇故事。被命运几经捉弄,几乎毫无还手之力的弱者,唯一能够用来反抗的,便是他的音乐,音乐是他重新认识、沟通世界并且对抗不公命运的唯一途径……
科幻/悬疑/苹果
这里是后期的Justin: 纠正一下,其实这是一部电视剧,不是电影,当时讲错了,但是为了跟语音保持一致所以还是放在这里。
苹果 Apple TV 上映的一部形式上非常有创意的电影,全程没有出现一个真人画面。电影情节主体由声音对话构成,画面则采用多元的视觉化元素,有音频波形,有文本消息等等。根据情节的发展和节奏不同,视觉元素也会产生相应的诸多变化。
情节设定虽然算不上出彩,但也还蛮有趣,创意无敌,值得一看。
悬疑/犯罪
翻拍自印度电影《误杀瞒天记》,因为众所周知的原因,故事背景设定在泰国而非国内。剧情本身设计得比较优秀,悬念十足,整体节奏也把握得很好。再加上导演本身在剧中夹带私货,提及和致敬了前辈的优秀作品,算是一部值得一看的国产悬疑片。
剧情
安东尼·霍普金斯 (Anthony Hopkins)演技超神之作,看得人真的揪心。利用普通的拍摄手法代入阿兹海默症患者的视角的时空,感染力十足。
剧情/喜剧
改编自贾玲在《欢乐喜剧人》里的同名小品《你好,李焕英》,笑点密集,感情充沛,是贾玲先给母亲的礼物,也是非常适合全家观看的温情电影。
剧情
改编自村上春树短篇小说集《没有女人的男人们》的其中一篇。演员的演技,拍摄的画面,整体的氛围营造都非常精彩。当然主旨表达也跟村上一贯的小说一样:让人看得一头雾水。
看到主角推开日式传统旅馆的木窗,濑户内海映入眼帘那一幕,看到主角驾驶红色的萨博小车,在蜿蜒的岸边一面驾驶一面念话剧台词的那一幕,沉浸其中,听着话剧台词与故事发展娓娓,一时不知是话剧的情节还是电影的情节。
动画/音乐
2020 年 Pixar 制作,迪士尼发行的这部动画片在国内首映是 12 月 25 日,很多人应该都是 2021 年 1 月去看的。主角是一名中学音乐教师,乔伊·高纳,一直心怀爵士乐梦想而不得。一天突遭意外身亡,却心有不甘,千方百计要回到人世。
又是一部现实与梦想拉扯的作品,跟《四重奏》相比,这部电影的整体基调要柔和一些,也是一部非常动人的作品。配乐也是本作的一大特色。
剧情/犯罪
这是一部有点门槛的作品,时长接近 4 个小时。故事背景是国民党刚到台湾的时候。改编自当时的真实事件,导演以写实的手法,还原了那个年代的诸多细节。
剧情虽然有些看不懂,但是整体的写实风格非常有意思,男主角是年轻时的小男孩张震,他也在 2021 年的电影《沙丘》中出演岳医生一角。
剧情
一部拍摄手法颇具特色的作品。故事发生在一座虚构的 20 世纪法国城市,拍摄时很多场景是室内布景,打光,构图极具艺术性。故事情节多有诙谐和讽刺之感。蕾雅·赛杜 (Léa Seydoux)出演其中一个故事,美女非常好看。
战争/动作
T34是苏联于二战前研发的中型坦克,电影的背景是在二战时期苏联与德国对战的前线。主要还是一部热血爽片,看作为坦克长的主角如何带领几个人组成的坦克小团队,用一台 T34 冲出重围。
用坦克打架的场景是本作的一绝,现场张力非常强,主角和死对头之间的战术较量看得人血脉贲张,是一部非常不错的动作爽片,只不过不是用拳脚,而是用炮弹。
节目中提到基努里维斯的枪斗术电影:疾速追杀 John Wick
动作/犯罪
2021 年看的第一部爽片,适合喜欢汽车和爆米花爽片的朋友,看豪车,无脑爽就完了,结尾真的大为震撼,就不剧透了。
书的部分比较闷,我们就不说太多了,有兴趣的小伙伴可以看 Justin 写的 《枫影夜读 #24 - 2021 我的读书》
大家可以去听本台 2021 年第一期节目: Vol. 32 未来简史,当旧神遇上新科技
既然自力提到《上瘾》,那我(Justin)也提一下《上瘾五百年》。
《上瘾》这本书原名 * Hooked: How to Build Habit-Forming Products,是讲产品设计的。《上瘾五百年》原名是 * Forces of Habit: Drugs and the Making of the Modern World,讲的是烟、酒、咖啡之类的精神药物的历史。
既然自力分享《博弈论》,那我(Justin)就提一部跟他所提倡的观点完全相反的作品,塔勒布的《黑天鹅》。
换一个角度看世界。
另外丹尼尔·卡尼曼的《思考,快与慢》也是非常不错的作品。
我们播客也有微信红包封面啦!欢迎大家使用微信扫码领取哦

欢迎各位听众朋友们通过以下方式联系我们:
fyfyFM进群推荐使用小宇宙等泛用型播客客户端搜索“枫言枫语”来订阅收听本节目。
荔枝FM,喜马拉雅,蜻蜓FM等平台亦有同步。
