寂静山林

思绪飘来飘去,偶尔在这里停留

老婆是在中兴认识的,进中兴时,已经在社会上摸爬滚打了7,8年了。上一家小公司还跟老板闹翻了,派出所调解过,劳动仲裁调解过,差点闹上法庭,真是四处碰得头破血流,心灰意冷,以为这辈子也就这样沉沦下去了。

命运是个很神奇的东西,当时中兴面试完后,招聘处说已经在走流程了,结果等了很久,都没有消息。当时对啥都无所谓了,连打个电话确认下的心思都没有。差点去了一家开发地铁通信设备的公司。快一个月的时候,招聘处的小姑娘打电话给我,很奇怪的问,你怎么还没有到部门报道,我一脸黑线。但是感谢这个电话,如果没有这通电话,也许我的人生就走上了另一条完全不同的道路了。

后来才知道,流程在审批过程中,卡在了一个地方,那人以为我毕业的学校是个学院,不在中兴招聘名单里。在小姑娘的交涉下,就这样参加那一期中兴的新员工培训。培训是在总部大楼里举办的,那时的中兴已经没有以前辉煌了,据老婆说她们当年都是到大梅沙中兴基地举办培训的。

工作分配在西丽的中兴产业园,当时那旮旯除了几所学校和产业园,一片荒芜,中兴公寓也才刚刚开建,现在一片繁华的创智云城,万科云城等还是一片荒草地。感慨这世界发展的快速。望着周围一幢幢高楼大厦拔地而起,常常会想,深圳的繁华好像都是别人的事,跟自己没有太大关系。

办公室的桌子,是常见的那种弯形的办公桌,四张桌子可以围城一个小空间,老婆就坐在我的旁边,但当时他们老员工大部分时间都在实验室或者机房上班,平时很少看到,中午休息的时候会回到工位睡觉。

什么时候跟老婆对上眼的,已经没有印象了,只记得一次去实验室找师傅(中兴新员工入职都会有个老员工带一段时间)解决个编译问题,走到连廊的时候,碰到了老婆从对面走过来,问去实验室干什么,当时居然有种心跳加快的感觉,说去找师傅解决个编译问题,老婆说,编译问题可以自己解决的。说的我都有点惭愧。语无伦次,我,我搞不定啊。那时是真搞不定,第一次接触到几百万行代码级别的系统,无从入手。

老婆比我早4,5年进的公司,她可比我聪明多了,她是保送电子科技大学本硕连读通信专业的,我这个野生三流的本科自动化专业,在她面前自惭形秽,这可能也是婚后一些矛盾冲突的起点,男人的那点自尊嘛。总想显示的比别人聪明一点。

然后就一起相约去漓江玩。在漓江的漂流小船上,那天天空是阴沉的,飘着细细的雨丝。我俩都穿着黄色的雨衣,蹲在船头玩水。我在心理捣鼓了很久,鼓起勇气说:“丫头,做我女朋友吧“。她把头扭向一边,没有说话,我继续说:“好不好吗,嗯?好不好”?老婆害羞点了点头。轻轻 “嗯” 了一声。好嘛,老子得手了,心中狂喜。

那一年的元旦,跑三亚去玩了一圈。犹记得深夜坐在等候轮渡的汽车上瑟瑟发抖,是真抖,冷的抖,出发前想着海南嘛,热带地区,不用带厚的衣服了,然后只穿了一件薄外套,没想到琼州海峡的夜那么的冷,找司机只要来一床很小的被子,给老婆盖了。然后在不停的寒颤中期待黎明快点到来。

三亚的海滩还是很漂亮的,沙子很细很软,海浪轻轻拍着,沿着海岸线可以走很远很远。天涯海角只是一块石头,有点辜负这么浪漫的名字。

回程的前一天,在三亚海鲜市场吃了一顿丰盛的海鲜大餐,结果不知道是海鲜过敏还是去的那一晚被冻着的原因。发烧了一晚上,第二天在老婆搀扶下到楼下药店买了一盒泰诺。然后在回程的车上睡了一天一夜。回到深圳时,终于缓过劲来了。

(未完待续,最近估计是闲的,老想写点东西,就当作练手吧)

端午叠着六一,带果儿几个姐妹去海边住了一个晚上,还是上次去的东山港,这次因为小桃子被姨妈带回家了,少了妹妹就少了很多乐趣,连海螺也懒得捡了。当然小朋友们还是玩的很开心。有点想念小桃桃了,人都这样,在身边时,老还嫌着她烦,离开就想个不停。

桃子以后应该是外向型性格的,陪着她能跟你叨一天,出去玩也能大方跟别人打招呼。这点不像姐姐,姐姐不知道遗传了谁,出去买个包子都不敢开口,但在家里却对我们吼来吼去。现在更是有时跟她说话一点回应都没有,青春期的孩子真难搞。想着小时候,我也没有这么不懂事呀。

有点欣慰的是,她喜欢数学,这大概是遗传的。理想是想当个宇航员,这倒挺适合她的性格,但如果不努力的话,这个越来越胖的身材估计是最大的阻碍。在我的影响下,也喜欢上了历史,一套明朝那些事儿,都快翻烂了。前段时间给她充值了一个音频版的,现在一回家就抱着pad听。挺好,读史使人明智。父母最大的作用,也许就是潜移默化中,能将一些好的人生观,价值观传给她们。至于她们的路还得她们自己去走出来,基于人性,有些坑即使你说了也没用,非得她们自己踩过了才能成长。

由于姐姐小时候各种鸡娃,各种培训班,现在看来其实没啥效果,所以小桃子估计处于放养状态了,只要她开心就行。这大概是一个娃与多个娃的区别吧。

  1. 初识rust

大概在17~18年的时候,当时主要在做充电桩,经过几轮的迭代后,对软件模块化,分层设计有了一些心得。最开始使用的是c++和qt来开发的,可能是代码组织的不太好,总有些偶尔莫名其妙死机的问题。每次出现都得花一两周时间排查,折腾几次后,反思可能自己的水平驾驭不了C++,后面花了半年重构了程序,全部采用c语言,即使使用了简单的C了,偶尔还是会出现死机问题。但毕竟比c++好解决一些了。然后花大部分的时间去研究怎么用C写出安全代码。但c实在太古老了,不仅编程效率低,而且一些原生的缺陷根本不是靠一些技巧能够解决的。

这时偶然在网上看到说有一种编程语言rust,静态编译语言,运行效率跟c一样高,关键没有内存问题。于是就找了一些资料看了下,发现是一门很新的语言,15年才发布了1.0版本。对没有内存问题这个特性很好奇,到底怎么做到的,于是买了一本书,好像是《深入浅出rust》,里面比较系统介绍了rust语言特性,但当时只对原理感兴趣,重点看了所有权,生命周期那些篇章,有点豁然开朗的感觉。了解知识,有个说法叫第一性原理,rust正是从第一性原理出发,通过所有权,生命周期,彻底解决静态编译型语言中的内存问题。并由此引申出来的无畏并发特性。使语言天然从最核心支持并发编程。

  1. 使用rust

又过了几年,因工作的原因,期间并没有深入了解或者使用rust。但一直有关注语言的发展动态。大概21年的时候,陈天有开了一门rust的付费课程,不贵,几十块钱,第一时间就报名了,想着有机会是不是可以学一学。就当作兴趣或者拓宽知识面了。但是这个课程也就跟完了基础篇,后面又放下了。无论学啥,一定要用起来,不然很难坚持下来。

到了23年的时候,工作上有个新项目成立,是个ems网关,需要支持modbus,dlt645等协议,需要通过mqtt协议与后台连接,需要本地网页进行参数设置。说起来也不难,但性能要求比较高,单台需要支持1万个数据采集点同时采集。这时上个项目刚完成,是个智能仓库网关,因为全部采用c,导致开发周期都有点延后了。这时对c都有点抵触了,就想着何不试一试rust呢。

通过前期调研,rust中有现成的modbus协议库tokio-modbus,支持并发和同步,有现成的redis接口库,有现成的mqtt接口库,有这些基础库就已经省了很多时间了,虽然c中也有这些成熟的库,但c的移植可不像rust一样,拿过来就能用的。这些只是项目要用到的库,更不要说语言支持的anyhow,thiserror,log,还有极为方便的serde,所以就决定下来使用rust开发了。

于是花了大概20天时间,期间刚好有个十一假期,把陈天的课程全部看了一遍,把rust语言圣经(Rust Course))全部看了一遍。就算入门了,这里要说下,rust语言圣经比较适合初入门的人看,以比较简洁活泼的语言由简入深的讲解比较基础的知识点。陈天的课程放在初入门后在看比较好,讲的比较深入,涉及到的点也比较多。当然rust语言是一门还在发展中的语言,这么多年前的教程,有些知识点可能也过时了。rust的入门可能跟其他语言有点不一样,像c,c++可能只要先学了20%的知识点,就可以上手,以后边做边完善剩下的80%,rust不一样,你必须先学会80%的知识点,才能上手。边做边熟悉和巩固原来的知识点。

后来就这样磕磕碰碰的上路了,刚开始确实有点难受的,跟编译器反复斗争了一段时间后,慢慢的就感觉越用越上手了,当然当年刚兴起的大语言模型功不可没。甚至为了利用大语言模型的能力,还充值了微软github copilot,这大大缩短了新手期的时间和难度,以前如果说学习rust曲线很陡峭,很难,我基本同意,但如果结合大语言模型的话,我觉的入门或者开发并没有想象中的难。

项目开发中,为了赶进度,直接在tokio-mobus工程上添加了rtu-over-tcp客户端的支持,甚至也添加了对dlt645电表协议的支持。当时对语言了解不深,所谓的添加支持,只是将源码逐层拷贝一遍,改改文件名,添加一些不同的解析封装而已,里面有很多份一模一样的代码。后续有时间和机会的话,好好整理一下,甚至可以将dlt645协议的部分独立一个crates出来。

自从使用rust开发这个ems网关项目后,一发不可收拾,后续只要有新的项目,都选择使用rust来做了。甚至还花了几个月的时间,将原先c开发的智能仓库网关重新用rust开发了一遍。一些单片机的蓝牙项目也使用rust的embassy框架来实现。一些产品测试工具也使用egui或者axum来实现。rust能实现的地方,就懒得在切换到其他语言去折腾了。

  1. 心得体会

这几年使用下来,rust给人的感觉就是快速,可靠,舒坦,写完的代码,只要编译通过了,就可以放心运行起来。如果有问题,也是逻辑上的问题。只要程序中不用unsafe,不用panic基本上不会出现逻辑之外的异常。

因为编译器的强大和类型系统的完整性,修改代码心智负担很小,只要把编译错误都解决了,修改的代码就不会出现意外的问题。当然有些编译器没法检查的地方,还得小心处理,比如对字符串的处理,像match分支用字符串时,就需要小心字符串别写错了。

库管理很便捷,在cargo.toml中包含库版本就能直接使用了,这跟c/c++的繁琐简直不是一个维度的东西。升级库也很方便,但升级需要小心一些兼容性问题。

单元测试很方便,特别在ai的支持下,很多时候,都是写完代码了,直接让ai生成单元测试。

生命周期的概念要清楚,但实际中很少用到,一般应用还没有到要使用引用来提高性能瓶颈的程度。

当然也有一些不尽如人意的地方,比如如果写并发代码,在代码最里层用到了异步,那么整个调用链都得用异步,逐层添加async/await, 这感觉就很繁琐。

用std库写的代码跟不用std库写的代码没法通用,这样就造成,单片机嵌入式的代码和有操作系统的代码没法互相移植。它们基本上是两套不一样的东西。

对于c/c++系的开发者来说,只要接触了rust,就不会回头了,这就像开过了电动车就不会还想开油车一样。这也是rust的生态位。随着rust的发展,rust生态的完善,会有越来越多的底层或者高性能应用迁移到rust。

技术是迭代式进步的,也许十年二十年又会有其他新的语言兴起,取代了rust。但至少目前来看,rust代表着静态编译型语言的未来。

不知到从什么时候开始,喜欢上写诗词。可能喜欢古典文化的人,都会喜欢上诗的吧,就像喜欢古典文化的人,也会喜欢上书法一样。

将情感思绪浓缩在短短几句诗词中,感觉很有成就感。大概是看了红楼梦(癸酉本吴氏石头记)后,才喜欢上诗词的吧,红楼梦真是集大成者,里面有些诗词写的太好了,特别是前80回中经过作者润色后的那些章节。看了真是让人爱不释手。

里面有太多优美的句子,印象最深的是一个对联:

芙蓉影破归兰浆,菱藕香深写竹桥。

短短两句,就将一幅湖水,荷花,竹桥,行舟的立体动态水墨画情景呈现在眼前了。

还记得另外一句:

嫩寒锁梦因春冷,芳气笼人是酒香

真是字字不说情,却句句都是情。这大概就是诗词的魅力吧。

忽然记起,真正对诗词有兴趣,应该是08年受到了缠中说禅的影响,还记得他写了一篇文章教人怎么写诗,还拿了一首他写的诗来当范例,至今还记得这首诗:

虎丘

虎丘山下吴王墓
古木苍然噪夏蜩
碧草长阶云寂寞
灰墙倾塔气森萧
三千宝剑埋荒土
半百雄心化怒潮
溅血未干鱼腹刃
浣纱溪上越歌撩

还记得他说这首诗虽然一般,当已经体现了写诗的一般手法,比如首句平平开场,比如第二节描写一个人到新的地方后的第一感受,视觉和听觉是优先的,然后眼光跟随阶梯逐步由近到远,由下到上。还有前半首写景实写,是为了引出后半首写史虚写等等。这些都对我有很大的影响。突然有点想念缠师了,虽然学了缠论并没有让我在股市中赚多少钱,但他的思想,对论语的解释,对禅的看法,都对我产生深远的影响。希望缠师在那边没有病痛,没有烦恼。

虽然很早就对诗词有兴趣了,但一直没有真正试着去写一写,可能一是因为生活比较忙碌(借口),二是因为文学的积累没有到一定程度吧。近年来,看了一些书,特别是资治通鉴,虽然几年了只翻了一半,但已经足以将古文的那种叙事深深印在脑子里了。现在看些古文都喜欢找繁体版本看,感觉看起来更舒服。然后还有一些七七八八的书,比如西游记,比如石头记等等,正是这些书的潜移默化起了作用吧。当思绪起来时,总想着能不能用一首诗词来表达一下。

当然现在还菜的很。最近又下载了古文观止,唐诗宋词的书,希望能看进去一些,这个爱好就跟毛笔字一样,纯属个人兴趣,没有实际的意义。但人生总得有点依托吧。还是希望能坚持下去。

  1. 标题使用 #

    # 一级标题 
    ## 二级标题
    ### 三级标题
  2. 段落使用空行

  3. 换行尾部使用2个空格

  4. 强调语法,使用** **或者__ __

    强调**这个要黑体**, 或者 __这个要黑体__
  5. 引用使用 >,嵌套引用块 >>

  6. 有序列表前面使用数字加个因为点号,要创建无序列表,请在每个列表项前面添加破折号 (-)、星号 (*) 或加号 (+) 。缩进一个或多个列表项可创建嵌套列表。

  7. 要将单词或短语表示为代码,请将其包裹在反引号 (`) 中,要创建代码块,请将代码块的每一行缩进至少四个空格或一个制表符

  8. 创建分隔线,请在单独一行上使用三个或多个星号 (***)、破折号 (---) 或下划线 (___) ,并且不能包含其他内容。为了兼容性,请在分隔线的前后均添加空白行。

  9. 链接文本放在中括号内,链接地址放在后面的括号中,链接title可选。

    超链接Markdown语法代码:[超链接显示名](超链接地址 "超链接title")

  10. 要添加图像,请使用感叹号 (!), 然后在方括号增加替代文本,图片链接放在圆括号里,括号里的链接后可以增加一个可选的图片标题文本。

    插入图片Markdown语法代码:![图片alt](图片链接 "图片title")

  11. 要显示原本用于格式化 Markdown 文档的字符,请在字符前面添加反斜杠字符 \ 。

  12. 内嵌HTML标签,直接添加即可,但要注意不是每种解析工具都支持内嵌HTML标签。

2025-04-08 12:02

这个月,将所有资金都投入了泸州老窖,平均成本在130左右,本来还想留20%应付极端情况,想想还是算了,直接全仓躺平了。

昨天全球市场狂跌,老窖最低到120了,也没钱补仓,象征性的买了一手。以后只能靠分红和工资来加仓了。这种低买高卖的操作不是我能搞的,每次操作都要伤筋动骨。还是躺平适合我。

买入泸州老窖,是受到散户乙的影响。并不是自己分析所得。

07年就入市了,经历了几轮牛熊,幸运的是刚开始的钱不多,最多也就几万元在里面沉沉浮浮,经历了什么都不懂的追涨杀跌,到知道看看公司基本面,看看行业方向的所谓的趋势投资,现在终于要进入第三阶段了。

芒格有句话说得对:”不要跟40岁以下的人谈价值投资”。年轻时到处都要用钱,投资本金本来就小,怎么可能愿意拿着一只票等分红,等着10年20年后有钱呢。

21年后才陆续将钱转入账户,在市场混了这么些年,主要还是长线波段为主,但也没赚什么钱,最大的一笔是半仓中芯国际翻了一倍,这还是死拿了三年,运气好的结果。

中芯国际这种股票,100多倍的市盈率,还敢拿三年,现在想想,没亏真是运气好,赌对了国运。下次可能就没有这个好运气了。

所以也是被迫进入了所谓的价值投资,既然中芯国际都能拿三年,那么像泸州老窖这种:

1,它的资产不是随着时间折旧,而是随着时间增值,越久越值钱。

2,它的产品无论朝代如何更替还是社会发展到什么程度,都是被需要的。

3,他可以依靠内生性增长,不需要再投入就可以实现长期稳定发展。

4,他的分红率要高。

这样的股票,有啥理由不能拿10年呢。目前的市盈率12倍,pb是4倍,不能说很低,但再低估计也买不到,就相当于多等几年才能享受企业的高成长。也算做个实验,看看10年后是个什么样的结果呢。

在网上打印了老窖这些年的年报,认真看看,争取看懂一家公司。

像散户乙说的:“到了我这个年纪,生活要悠闲,状态要笃定,表情要轻松,举止要从容”。

远离市场,享受生活吧,只要走在正确的路上,结果都不会太差的。

再别鹏城

朝辞南山云霞暖
夜宿横琴梅雨寒
沧海茫茫一线牵
伶仃洋上独徘徊
塘朗山

野径林幽处
长阶树影驳
蝉声催夏至
携手攀登时
北京,北京

风鸣孤枝叶卷尘
雨溅枯苔日斜影
耳畔犹闻噪夏蜩
回首南国又一春
归途

远山如黛孤星悬,一夜红龙舞。
归心似箭,千里来把故地寻。
晨曦破晓穿碧树,袅袅炊烟直。
行行止止,醇茶难消睡意浓。
雾雨

雾锁青冥雨霏霏
空谷幽鸣催客归
小径依稀人迹远
唯有香椿带露垂
玉门关

残垣旷野伫
风蚀烈日灼
汉武西凝眸
子文思归东
莫高窟

千佛万洞层层开
五尺密室万经藏
山河战栗沙掩尽
雄风再起始逢春

搭这个blog,是为了平时记点事情,以前用得很长时间的追梦人日记网,近来常常打不开。恐怕后续更不稳定了,毕竟是个二十多年的私人站点。所以还是搭个独立的空间会好一些。以后会在这边记录一些心情,一些投资心得,如果有兴趣,也会记录一些编程技术,不在意会不会有人看见,只当是自己的一个私人空间吧。网络这么大,没有人在乎啦。

仙岭峰上笑颜驻
荒山孤火,犹记银坑冷
流水声声声喧嚣
冷夜寒风不觉晓
遥寄相思传鸿雁
天涯相隔,从此是路人
夜深幽梦偶忆起
空余柴门犬吠声

这部分网上的资料很多了,这次选用的也是hexo,中间有写曲折,记录一下

1 使用npm 下载安装hexo一直不成功,后来使用npm先安装cnpm,在用cnpm安装hexo才成功
2 ssh证书好像过期了,重新生成后才可以

eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_rsa

3 如果需要域名访问的话,需要添加CNAME文件,放在public文件夹中

0%