#杂
同样是表达“珍惜当下”的意思,我最喜欢的还是阿尔贝·加缪的那句话:
“对未来的真正慷慨,是把一切都献给现在” 。
“Real generosity towards the future lies in giving all to the present.”。
同样是表达“珍惜当下”的意思,我最喜欢的还是阿尔贝·加缪的那句话:
“对未来的真正慷慨,是把一切都献给现在” 。
“Real generosity towards the future lies in giving all to the present.”。
👍2
#技术
最近在看etcd的watcher机制的实现,看着看着,发现etcd还自带了一个叫adt的包,里面手写了一个红黑树的实现:
https://github.com/etcd-io/etcd/tree/main/pkg/adt
最近在看etcd的watcher机制的实现,看着看着,发现etcd还自带了一个叫adt的包,里面手写了一个红黑树的实现:
https://github.com/etcd-io/etcd/tree/main/pkg/adt
GitHub
etcd/pkg/adt at main · etcd-io/etcd
Distributed reliable key-value store for the most critical data of a distributed system - etcd-io/etcd
#杂
只看作者贴出来的界面截图的话,这款qt写的编辑器可以说很像notepad++了,后者还只有win版本,而这个NotepadNext还有Linux版本,而且使用qt的话未来不排除会有Mac版本:
https://github.com/dail8859/NotepadNext
只看作者贴出来的界面截图的话,这款qt写的编辑器可以说很像notepad++了,后者还只有win版本,而这个NotepadNext还有Linux版本,而且使用qt的话未来不排除会有Mac版本:
https://github.com/dail8859/NotepadNext
GitHub
GitHub - dail8859/NotepadNext: A cross-platform, reimplementation of Notepad++
A cross-platform, reimplementation of Notepad++. Contribute to dail8859/NotepadNext development by creating an account on GitHub.
#杂
在微软收购了Github之后,就可以任意开私人仓库了(有钱真好),于是很多我在阅读的项目源码,都会单独开一个项目来保存阅读过程中的代码注释,命名是“项目名称-版本号-codedump”。
目前这类项目里开放出来的是Lua和etcd:
Lua 5.1.4:https://github.com/lichuang/Lua-5.1.4-codedump
etcd 3.1.10:https://github.com/lichuang/etcd-3.1.10-codedump
在微软收购了Github之后,就可以任意开私人仓库了(有钱真好),于是很多我在阅读的项目源码,都会单独开一个项目来保存阅读过程中的代码注释,命名是“项目名称-版本号-codedump”。
目前这类项目里开放出来的是Lua和etcd:
Lua 5.1.4:https://github.com/lichuang/Lua-5.1.4-codedump
etcd 3.1.10:https://github.com/lichuang/etcd-3.1.10-codedump
GitHub
GitHub - lichuang/Lua-5.1.4-codedump: Lua 5.1.4版本代码注释
Lua 5.1.4版本代码注释. Contribute to lichuang/Lua-5.1.4-codedump development by creating an account on GitHub.
#博客
《周刊(第11期):mmap适用于存储引擎吗?》
想写这篇文章,主要源于两篇文章(论文)中的对mmap在存储引擎中使用的两种截然不同的观点讨论:
* 反方(mmap不应该用于存储引擎):Are You Sure You Want to Use MMAP in Your Database Management System? (CIDR 2022)
* 正方(mmap可以用于存储引擎):re: Are You Sure You Want to Use MMAP in Your Database Management System? - Ayende @ Rahien
由于刚好看过这两种方式的btree存储引擎:sqlite的btree实现以及boltdb,所以可以结合我的认知来聊一聊这个问题。
博客:https://www.codedump.info/post/20220327-weekly-11/
公众号:https://mp.weixin.qq.com/s/6DTpOGtCWHx2hGbTxj7pUg
邮件订阅:https://www.getrevue.co/profile/lichuang
《周刊(第11期):mmap适用于存储引擎吗?》
想写这篇文章,主要源于两篇文章(论文)中的对mmap在存储引擎中使用的两种截然不同的观点讨论:
* 反方(mmap不应该用于存储引擎):Are You Sure You Want to Use MMAP in Your Database Management System? (CIDR 2022)
* 正方(mmap可以用于存储引擎):re: Are You Sure You Want to Use MMAP in Your Database Management System? - Ayende @ Rahien
由于刚好看过这两种方式的btree存储引擎:sqlite的btree实现以及boltdb,所以可以结合我的认知来聊一聊这个问题。
博客:https://www.codedump.info/post/20220327-weekly-11/
公众号:https://mp.weixin.qq.com/s/6DTpOGtCWHx2hGbTxj7pUg
邮件订阅:https://www.getrevue.co/profile/lichuang
codedump的网络日志
周刊(第11期):mmap适用于存储引擎吗? - codedump的网络日志
#杂
对比了两位成功的同龄程序员,Markus Persson(Minecraft之父)和David Hansson(Ruby on Rails之父)成功之后的不同感受:
”后来才发现,似乎他最在乎的就是别人怎么看他。可能他会觉得,我如此有钱、如此成功,你们都应该跪舔我、赞美我啊,结果却发现周围的人仍然是不喜欢他的居多,那哪怕是创业成功,也无法让他开心起来。“
“原来真正让我感到满足的,是用Ruby语言写程序、开发Basecamp、写博客文章、拍照片,享受那些学习跟娱乐,那些我本来就负担得起的生活。
“真要说什么收获的话,就是我更加珍惜全心专注时的心流和宁静,那才是我一直以来的真正的幸福源泉。”
https://weibo.com/1787094780/LlJ0pd4lx
对比了两位成功的同龄程序员,Markus Persson(Minecraft之父)和David Hansson(Ruby on Rails之父)成功之后的不同感受:
”后来才发现,似乎他最在乎的就是别人怎么看他。可能他会觉得,我如此有钱、如此成功,你们都应该跪舔我、赞美我啊,结果却发现周围的人仍然是不喜欢他的居多,那哪怕是创业成功,也无法让他开心起来。“
“原来真正让我感到满足的,是用Ruby语言写程序、开发Basecamp、写博客文章、拍照片,享受那些学习跟娱乐,那些我本来就负担得起的生活。
“真要说什么收获的话,就是我更加珍惜全心专注时的心流和宁静,那才是我一直以来的真正的幸福源泉。”
https://weibo.com/1787094780/LlJ0pd4lx
#杂
其它的不说,有人读了你的文字有收获而且有很多的反馈,这个对于文字作者就是很好的正向激励了:
https://twitter.com/Piglei/status/1508966219474702337
其它的不说,有人读了你的文字有收获而且有很多的反馈,这个对于文字作者就是很好的正向激励了:
https://twitter.com/Piglei/status/1508966219474702337
Twitter
piglei
昨天读了 @lichuang 的“技术配图的一些心得”,收获良多。我也从自身经历中,总结了 3 条新手画图时容易忽略的点。 1. 一副图不要有多个“叙事角度”(1/n)
#杂
《教育对人的改变有多大》,作者讲述了自己是怎么帮助弟弟从一个普通学生转变成一个优等生,以及变成优等生之后的弟弟生活发生的变化。
看了之后的感觉:有这样的哥哥真是幸运。
https://xiaohanyu.me/posts/2017-02-13-about-education/
其实已经是快五年前的文章了,突然想起来推荐一下。
《教育对人的改变有多大》,作者讲述了自己是怎么帮助弟弟从一个普通学生转变成一个优等生,以及变成优等生之后的弟弟生活发生的变化。
看了之后的感觉:有这样的哥哥真是幸运。
https://xiaohanyu.me/posts/2017-02-13-about-education/
其实已经是快五年前的文章了,突然想起来推荐一下。
xiaohanyu.me
教育对人的改变有多大?
行者无疆,始于足下——行走,思考,在路上
👍1
#杂
2005年4月6日(也就是2005年的今天),Git发布了第一版。Git无疑是最伟大的开源软件之一,它的出现极大改变了开源软件的协作、开发方式。
根据这里的“史料”( https://www.ithome.com.tw/news/95088 )记载:Linus最初只花了10天就写出了第一版可以跑的Git了。
2005年4月6日(也就是2005年的今天),Git发布了第一版。Git无疑是最伟大的开源软件之一,它的出现极大改变了开源软件的协作、开发方式。
根据这里的“史料”( https://www.ithome.com.tw/news/95088 )记载:Linus最初只花了10天就写出了第一版可以跑的Git了。
Forwarded from Rust 视界
学习 Rust 你需要一个认知框架
如果你学习 Rust 的过程感觉到艰难、痛苦或迷茫,不妨看一下这篇文章。 但如果你学 Rust 感觉很轻松,那这篇文章就对你无用,可以忽略。
微信阅读: https://mp.weixin.qq.com/s/3Y0AhB-BCkLCqk7aE_9cDQ
知乎阅读: https://zhuanlan.zhihu.com/p/494001676
如果你学习 Rust 的过程感觉到艰难、痛苦或迷茫,不妨看一下这篇文章。 但如果你学 Rust 感觉很轻松,那这篇文章就对你无用,可以忽略。
微信阅读: https://mp.weixin.qq.com/s/3Y0AhB-BCkLCqk7aE_9cDQ
知乎阅读: https://zhuanlan.zhihu.com/p/494001676
Weixin Official Accounts Platform
学习 Rust 你需要一个认知框架
前言如果你学习 Rust 的过程感觉到艰难、痛苦或迷茫,不妨看一下这篇文章。 但如果你学 Rust 感觉很轻松,那这篇文章就对你无用,可以选择忽略。
#杂
一位在美国工作的工程师写的国外大公司(文中是亚马逊)晋升的一些槽点,看起来和国内大公司也差不多,看下来还是坚定我的看法:我这样的人,可能并不适合在一个大企业里工作,以后有可能还是继续在一个小型的团队里工作,屁事会少一些。
尤其是这篇文章开头的第一句:“除了很多年前第一份工作非常懵懂地升过两级以外,我从来没有升过职。”,我心想这不就是我本人的写照吗。
https://yorotoo.medium.com/%E5%85%B3%E4%BA%8E%E5%8D%87%E8%81%8C-55dbe62ebaf
(如果上面的链接打开有问题,可以先到作者的medium:https://yorotoo.medium.com ,打开那篇叫《关于升职》的文章。)
另外文中还推荐了一个推特上的吐槽:
https://twitter.com/kantrn/status/1511791378497384454
一位在美国工作的工程师写的国外大公司(文中是亚马逊)晋升的一些槽点,看起来和国内大公司也差不多,看下来还是坚定我的看法:我这样的人,可能并不适合在一个大企业里工作,以后有可能还是继续在一个小型的团队里工作,屁事会少一些。
尤其是这篇文章开头的第一句:“除了很多年前第一份工作非常懵懂地升过两级以外,我从来没有升过职。”,我心想这不就是我本人的写照吗。
https://yorotoo.medium.com/%E5%85%B3%E4%BA%8E%E5%8D%87%E8%81%8C-55dbe62ebaf
(如果上面的链接打开有问题,可以先到作者的medium:https://yorotoo.medium.com ,打开那篇叫《关于升职》的文章。)
另外文中还推荐了一个推特上的吐槽:
https://twitter.com/kantrn/status/1511791378497384454
Medium
关于升职
除了很多年前第一份工作非常懵懂地升过两级以外,我从来没有升过职。我当时也没有做过任何专门的努力,反正就是有一天经理告诉我升了。后来再也没有这种天上掉馅饼的事情发生。
#杂
关于威尔史密斯打人,一位台湾老师的社会课引导思考
“我告訴學生,我今天扮演的角色,就像是政治人物或媒體,我蓄意餵養你片面的、我想要你知道的資訊,而有超過7成的人,在這個過程中,被我操弄了,你因為我每次餵養的資訊不同,而產生立場反覆的狀況!明明政治人物應該考慮的是公益,媒體應該報導的是真相,但我若故意要操弄輿論,我只要給你我要你知道的訊息就好,對我不利的,我一概不提。慢慢的,我就可以透過這種愚弄的手法,讓民眾變成對我死忠而深信不疑的禁臠而不自知,我要你膜拜你就膜拜,我要你打砸殺你就打砸殺,我要你剷除異己你就剷除異己,我要你上刀山下油鍋,你還會爭先恐後想要身先士卒。而這樣的現象,正在世界各地上演”
https://www.facebook.com/hhsleo/posts/5543635368999794
(上面这篇文章,貌似需要FB登录才能看,也可以看看微信公众号的转发:https://mp.weixin.qq.com/s/lGJpnq89gxTPxj_KUA2ZCg )
关于威尔史密斯打人,一位台湾老师的社会课引导思考
“我告訴學生,我今天扮演的角色,就像是政治人物或媒體,我蓄意餵養你片面的、我想要你知道的資訊,而有超過7成的人,在這個過程中,被我操弄了,你因為我每次餵養的資訊不同,而產生立場反覆的狀況!明明政治人物應該考慮的是公益,媒體應該報導的是真相,但我若故意要操弄輿論,我只要給你我要你知道的訊息就好,對我不利的,我一概不提。慢慢的,我就可以透過這種愚弄的手法,讓民眾變成對我死忠而深信不疑的禁臠而不自知,我要你膜拜你就膜拜,我要你打砸殺你就打砸殺,我要你剷除異己你就剷除異己,我要你上刀山下油鍋,你還會爭先恐後想要身先士卒。而這樣的現象,正在世界各地上演”
https://www.facebook.com/hhsleo/posts/5543635368999794
(上面这篇文章,貌似需要FB登录才能看,也可以看看微信公众号的转发:https://mp.weixin.qq.com/s/lGJpnq89gxTPxj_KUA2ZCg )
Facebook
洪黃祥
#奧斯卡掌摑事件洪老頭感想二部曲
威爾史密斯賞巴掌事件餘波盪漾:克里斯洛克脫口秀門票賣翻,黃牛票價炒高8倍;金凱瑞唾棄威爾史密斯的暴力行為,說要是自己被打會求償2億美金;某媒體民調台灣五成三的人支持威爾史密斯打巴掌……。
這兩天我利用3個班的社會課,拿這個事件跟學生們討論。上課步驟及學生表態如下:...
威爾史密斯賞巴掌事件餘波盪漾:克里斯洛克脫口秀門票賣翻,黃牛票價炒高8倍;金凱瑞唾棄威爾史密斯的暴力行為,說要是自己被打會求償2億美金;某媒體民調台灣五成三的人支持威爾史密斯打巴掌……。
這兩天我利用3個班的社會課,拿這個事件跟學生們討論。上課步驟及學生表態如下:...
👍1
#杂
《读「How to Manage a Redis Database」的一点随笔》
https://nova.moe/recap-on-how-to-manage-a-redis-database/
从这篇博客看到了《How to Manage a Redis Database》这份电子文档,可以到:
https://www.digitalocean.com/community/books/how-to-manage-a-redis-database-ebook
找到下载。
《读「How to Manage a Redis Database」的一点随笔》
https://nova.moe/recap-on-how-to-manage-a-redis-database/
从这篇博客看到了《How to Manage a Redis Database》这份电子文档,可以到:
https://www.digitalocean.com/community/books/how-to-manage-a-redis-database-ebook
找到下载。
Nova Kwok's Awesome Blog
读「How to Manage a Redis Database」的一点随笔
前段时间在使用 DO 的时候发现他们把自己的部分文档整理成了一本"书"——「How To Manage a Redis Database eBook | DigitalOcean」,全书不长,将 redis 的一些常规操作和一点点细节分章节展示了一下,花了点时间看了之后还是感觉学到了一些之前没有特别关注的比较有意思的地方,本文便来简要记录一下这些点。
Forwarded from Rust 视界
TO-D 观察|小小的终端何以撬动千万美元资本
微信阅读: https://mp.weixin.qq.com/s/KOVqdCnf73ptg8dmLYf5Aw
知乎阅读: https://zhuanlan.zhihu.com/p/495546753
微信阅读: https://mp.weixin.qq.com/s/KOVqdCnf73ptg8dmLYf5Aw
知乎阅读: https://zhuanlan.zhihu.com/p/495546753
Weixin Official Accounts Platform
TO-D 观察|小小的终端何以撬动千万美元资本
这篇文章不是为了宣传 Warp,而是我本人想探索 Warp 融资 2300 w 美元背后的价值。
#杂
“和很多人追求“稳定” “不变” 和“确定性” 才会有安全感不一样,我的最大不安全感就是来自于过于稳定(过于稳定和不变往往伴随着没有选择)超级稳定态往往是最不稳定态。反脆弱最重要的是有足够的冗余和选择。没有选择是最大的不安全感”
https://weibo.com/2248200494/LnIKGisbo
“和很多人追求“稳定” “不变” 和“确定性” 才会有安全感不一样,我的最大不安全感就是来自于过于稳定(过于稳定和不变往往伴随着没有选择)超级稳定态往往是最不稳定态。反脆弱最重要的是有足够的冗余和选择。没有选择是最大的不安全感”
https://weibo.com/2248200494/LnIKGisbo
Weibo
和很多人追求稳定 不变 和确定性 才... 来自万卉Dovey - 微博
和很多人追求“稳定” “不变” 和“确定性” 才会有安全感不一样,我的最大不安全感就是来自于过于稳定(过于稳定和不变往往伴随着没有选择)超级稳定态往往是最不稳定态。反脆弱最重要的是有足够的冗余和选择。没有选...
#博客
周刊(第12期):Page oriented类存储引擎里可能同时存在多种结构
本期聊一聊Page oriented类存储引擎内的数据结构组织。在满足“向磁盘读写的基本单位是物理页面”这个大前提下,这类存储引擎可能同时存在多种结构。
博客:https://www.codedump.info/post/20220410-weekly-12/
公众号:https://mp.weixin.qq.com/s/xXUDnXgzbnMgqh3e-hofuQ
邮件订阅:https://www.getrevue.co/profile/lichuang
周刊(第12期):Page oriented类存储引擎里可能同时存在多种结构
本期聊一聊Page oriented类存储引擎内的数据结构组织。在满足“向磁盘读写的基本单位是物理页面”这个大前提下,这类存储引擎可能同时存在多种结构。
博客:https://www.codedump.info/post/20220410-weekly-12/
公众号:https://mp.weixin.qq.com/s/xXUDnXgzbnMgqh3e-hofuQ
邮件订阅:https://www.getrevue.co/profile/lichuang
codedump的网络日志
周刊(第12期):Page oriented类存储引擎里可能同时存在多种结构 - codedump的网络日志
#杂
时隔666天,武磊再次在西甲获得进球。
本赛季武磊其实获得的机会着实不多,大部分时间是替补,而是还基本是垃圾时间的替补。职业球员长期没有正式比赛踢,一方面状态没有办法保证,另外还会让自己、队友、教练都质疑自己的能力。
时间倒退回2019年1月份,如果武磊没有选择转会西甲,完全可以继续在中国做联赛一哥,即便到2021年开始限薪,稳稳拿着一年几千万人民币的薪水也是一点问题没有的。选择离开舒适圈,降薪加盟西甲联赛,独自在海外闯荡,尤其是被冷藏在板凳这么久也没有消沉,光这一点就值得让人尊敬。
所谓“光荣与梦想”,对C罗梅西这样程度的球员来说,可能是欧冠、世界杯这样的荣耀。武磊,终其职业生涯,可能顶天了不过就是一个西甲联赛中下游球队的板凳轮换,没有踢过欧冠、世界杯。并不见得所有人的光荣梦想最后都能以摸到奖杯来划上圆满句号,但并不能因此就否认那些在你看不到的地方的人做出来的努力。
时隔666天,武磊再次在西甲获得进球。
本赛季武磊其实获得的机会着实不多,大部分时间是替补,而是还基本是垃圾时间的替补。职业球员长期没有正式比赛踢,一方面状态没有办法保证,另外还会让自己、队友、教练都质疑自己的能力。
时间倒退回2019年1月份,如果武磊没有选择转会西甲,完全可以继续在中国做联赛一哥,即便到2021年开始限薪,稳稳拿着一年几千万人民币的薪水也是一点问题没有的。选择离开舒适圈,降薪加盟西甲联赛,独自在海外闯荡,尤其是被冷藏在板凳这么久也没有消沉,光这一点就值得让人尊敬。
所谓“光荣与梦想”,对C罗梅西这样程度的球员来说,可能是欧冠、世界杯这样的荣耀。武磊,终其职业生涯,可能顶天了不过就是一个西甲联赛中下游球队的板凳轮换,没有踢过欧冠、世界杯。并不见得所有人的光荣梦想最后都能以摸到奖杯来划上圆满句号,但并不能因此就否认那些在你看不到的地方的人做出来的努力。
#杂
知乎这个回答生动地解释了“全序(total order)”和“偏序(partial order)”的区别。
粗浅的理解:九代单传之所以是“全序”,是因为这个集合里任意两个人的辈分都有差异,因为“单传”嘛,不存在有同辈人的情况;而在有堂兄弟姐妹的情况下,同代人的辈分就没有大小之分,这就是“偏序”。
偏序:集合里的所有元素不见得都能对比大小,但只要能对比大小,一定会满足:如果a>=b,那么一定b<=a(反对称性);以及如果a>b,且b>c,那么一定有a>c(传递性)。
全序:在偏序满足反对称性以及传递性的基础上,集合里的所有元素都能对比出大小来(完全性)。
因此,全序本身就包括偏序。
https://www.zhihu.com/question/36758436/answer/1078452247
知乎这个回答生动地解释了“全序(total order)”和“偏序(partial order)”的区别。
粗浅的理解:九代单传之所以是“全序”,是因为这个集合里任意两个人的辈分都有差异,因为“单传”嘛,不存在有同辈人的情况;而在有堂兄弟姐妹的情况下,同代人的辈分就没有大小之分,这就是“偏序”。
偏序:集合里的所有元素不见得都能对比大小,但只要能对比大小,一定会满足:如果a>=b,那么一定b<=a(反对称性);以及如果a>b,且b>c,那么一定有a>c(传递性)。
全序:在偏序满足反对称性以及传递性的基础上,集合里的所有元素都能对比出大小来(完全性)。
因此,全序本身就包括偏序。
https://www.zhihu.com/question/36758436/answer/1078452247
Zhihu
全序关系和偏序关系的区别是什么? - 知乎
我来胡说一下,你的家庭关系,就是一个偏序,如果你可以自己到自己的话:你爷爷生了你爸爸和你叔叔,你爸…
#杂
最近在使用Rust编写gRPC服务,这篇教程讲解了这部分内容,包括一应一答模式、单向stream模式、双向stream模式都有对应的代码例子:
https://dev.to/anshulgoyal15/a-beginners-guide-to-grpc-with-rust-3c7o
最近在使用Rust编写gRPC服务,这篇教程讲解了这部分内容,包括一应一答模式、单向stream模式、双向stream模式都有对应的代码例子:
https://dev.to/anshulgoyal15/a-beginners-guide-to-grpc-with-rust-3c7o
DEV Community
A beginners guide to gRPC with Rust
Table of Contents Introduction Protocol Buffer Rust and gRPC Creating a Server Creating a...