0%

每日一思

2023-09-10: 这味道,停不下来

一锅香气四溢的辣子红油汤上桌,每人一个浅腹平底碗,装满调料。

服务员过来打汤,将一半敞口,一半过滤网的汤匙浸入辣子红油汤锅,旋转勺子底部撇开部分红油,舀起一大勺汤,过滤,倒入调料碗。

夹起一只美蛙,放入调料碗中,来回旋转几次,彻底浸入调料汁。拆下一块肉,送入口中。一辣一麻一香,以肉的位置为中心,瞬间四溢到周围的味蕾。活动牙齿,咀嚼一下,鲜嫩的蛙肉一下子散开。散开的每一小块都味道十足,带着劲道的汤汁无情地席卷整个口腔。

辣,刺激着口腔发痛;麻,让每一个口腔细胞都开始跳舞;香,带着令人幸福爽快的小分子穿越口腔和鼻腔直达脑门。

十足的辣让人想赶紧把食物咽下去,十足的麻和香又让人想把食物一直留在口中。于是,在辣味还未来得及传递到大脑时,赶紧咀嚼几次,得到美味的享受之后,辣味也快速到来,赶紧吞咽下肚。然而,大脑哪里能抵抗这种美味,立即指挥手开始拆下一块肉送入口中。

哪管他会不会长肉!哪管他是不是健康!这味道,停不下来!

2023-09-09: 宗教与诗

在很多西方人看来,每个人都应该信仰一种宗教。但是中国却很特别,一个具有数千年历史的文明古国竟然没有一个广泛信仰的宗教。

中国人如何处世?引导中国人一直向前的可能是诗。从最早的六经,到唐朝的绝句,到宋朝的词,到元朝的曲,再到现代的白话诗。

诗中的故事和情感,感动着一代又一代的人。诗中的哲学和世界观,引导着一代又一代的人。在彷徨时,诗给人以一束穿透迷雾的光;在失意时,诗给人以一种从容向前的动力;在成功时,诗警醒人前路依然不平坦。

宗教,虽然充满理性和逻辑,但总少不了神秘主义色彩。相比起来,诗是作者的想象,是脱离现实而高于现实的,这是读者在读诗之前就知道的。同时,诗中有大量的留白,需要读者去填补和想象;诗中有很多道理,需要读者结合自己的经历去体悟。

这可能就是为什么中国人的哲学既是出世的也是入世的,既追求内圣也追求外王。

2023-09-08: 负能量

小a上项目半天,说,我感觉很懵,别的团队上新人会有技术的业务的各类onboarding,这边都没有。

公司人员缩减,小a说,这两天上班心都悬着,别什么时候被约谈了。

小a遇到了一种新的语法规则,说,这个怎么这么奇怪,完全反人类,我是怎么都理解不了。

小a碰到一个不熟悉的工具,说,这个怎么这么难用,感觉很难理解,看不懂。

2023-09-07: 道德的本源

道德是一个非常抽象的概念。根据当今时代的理解,道德是社会意识形态之一,是人们共同生活及其行为的准则和规范,通过社会的或一定阶级舆论对社会生活起约束作用。(百度百科)

为什么道德是规则和意识形态?要追寻其最初的本义,需要回归老子的道德经。

经上说,“道生一,一生二,二生三,三生万物”。从这里来看,道是万物之源,并且,万物在生成过程之中,也都有“道”在其中。但是初始的“道”不同于万物之“道”,因此,“道可道,非常道”。

什么是德?在万物之中的“道”就是“德”, “德”的含义是“能力”或“品德”,它可以解释为万物本有的品质。“万物莫不尊道而贵德”, “道”是万物的由来,“德”则是万物本性的依据。

当今我们所指的道德更近似道家的“德”,即人的本性,本性具象化就是一些规律,延伸出来就是规则。

2023-09-06: 他乡遇故知

想象一下,你在一个陌生的城市,正在为生计做着事,突然一抬头,发现一个多年未见的朋友,恰好,他也看见你。

“xxx”!“xxx”!你们兴奋而又惊讶地相互叫出名字。

相约去大餐一顿。饭间,以前一起经历的往事,搞笑的尴尬的,变成现在的笑谈…

人类的情感就是这么奇妙,一次偶然的遇见,一段尘封的往事,就足以令人潸然泪下。

2023-09-05: 稳妥的技术路线

今天被一个hive分区问题给坑了。

问题表现非常奇怪,使用create table as select *…创建的表居然与原表数据量不一致!

调查了很久,发现了一些端倪:

  1. 原表为分区表,采用insert overwrite以动态分区的形式创建

  2. 查看底层文件系统发现,原表有一些分区列值为空的分区,以及分区列值为 hive__default 的分区

  3. 直接查询原表按照分区统计数量,不会出现上述不合法的分区

  4. 对新表(未分区表)按照原表的分区字段统计数量,出现了值为空及 hive__default 的数据

通过这些现象,可以了解到,可能由于之前某一次运行etl产生了一些脏数据。由于insert overwrite在动态分区场景下不会覆盖没有出现过数据的分区,所以之前的脏数据也一直被保留了下来。

在技术选择上,我一直推荐采用保守而稳妥的策略。事实上由于软件已经过于复杂了,如果再引入没必要的复杂度,那就很容易导致问题。比如,避免上述问题的一种稳妥的策略是,先truncate或drop table清除所有数据,然后再写入新数据。

一些其他常见的稳妥技术选择包括:

  1. 采用最简单和通用的语法,避免采用过于风格化的编程语言语法(如Scala过于复杂的类型推导)

  2. 采用最成熟的api,比如写在库或工具的上手文档中的那些api

  3. 保持实现的幂等性(类似纯函数),尽量隔离副作用

2023-09-04: 成就自己与成就他人

儒家之仁有两层意义。

  • 一是忠,即:己欲立而立人,己欲达而达人(《论语 雍也》)。

  • 二是恕,即:己所不欲,勿施于人。

第一点的忠,并不是愚忠(别人叫你干什么就干什么)。而是指,自己想要成功,就需要真心实意帮助别人成功。

当今社会很多人为了自己的成功不择手段,损害他人利益,这显然不是一种可持久的方式。对己难以保持平和,对人难以受到信任。

事实恰好在于,如果帮助他人成功了,自己往往也会成功。这就是:成就他人即成就自己。

欢迎关注我的其它发布渠道