2025,平安顺遂

转眼来到了2024年最后一天 , 刚刚散场回来 , 此刻我有点微醺 , 打开2000年的流行歌单 . 细碎几句 , 想到哪说到哪~

(上图带儿子去桂林)

关于工作(技术)

(以下观点仅限当前,因为审视自己 我到现在依然经常修改自己的认知)

过去的一年里 , 和过去多年一样保持着高频率的commit和多项目的参与度 . 十多年前我就知道我不可能成为某方面拔尖的程序员 , 程序员是一个孤独的职业 . 突破孤独的路径在我看来就是不断的突破自己的广度 (当然突破深度也可以 , 但是在我接触的不同行业不同语言的程序员来说 , 很悲观的现实是能突破深度的仅限于大约1/50的朋友 , 不管是在独扛项目的小作坊还是在大厂)

所以我现在迫使自己进步的方式 , 是不断的参与不同的项目 , 有些虽然仅仅是参与顾问(例如协助设计架构 , 甚至帮助找某个BUG) . 这种高强度的在不同项目中穿梭 , 虽然一定程度上会分散注意力 , 但是遇到问题遇到”坎”的概率是其他人的N倍 , 今天在一个VPN项目中遇到网络穿墙问题 , 明天在一个点对点UDP项目中遇到丢包死机问题 , 后天在云函数项目中碰到不同库兼容问题…这一系列的问题就好像回到了刚刚入行的那个夏天 . 每天都在抓头发中快速的度过. 虽然并不觉得这样做会给技术带来多大成长 , 但这几年我”解决问题”的速度和敏锐度都在提升.

在我看来真正让普通程序员成长的在几个阶段分别是不同的东西:

第一阶段 , 从业前三年(按照现在的快节奏 说两年?) 按照程序的方向 把大部经典计算机书籍扫一遍 . 我今天依然感谢当年看的 Code Complete , c++ Primer

第二阶段 , 尽可能的参与一个用户数达到百万(甚至千万?)级别的项目 , 只有面对足够多的运行设备 , 你写的程序才会暴露出更多的问题 , 而这些问题就是你在当前所掌握的技术里升阶的垫脚石 . 作为一线成员的程序员只有直面一切才能得到最好的磨砺

踏过这两个阶段 ,我相信大家都能在所处的技术领域游刃有余.

第三阶段 , 主动参与到问题当中 . 开头所说的参与不同项目是一种方式 , 但是并不是所有人都有机会做到(毕竟精力有限 , 大部分程序员下班之后电脑都不会打开这个是现实) , 另外的方式可以是各种群里协助不同的朋友解决问题 , 长期关注使用的开源库的issue并尝试协助解决 , 更狠的方式是造轮子 , 我在2015年手码过一份C的protobuf协议 . 这个小经历让我至今都收益 . 我在这个小项目里学会的字节退化 , 这十年里被我用在很多的不同项目中 , 现在大部分组件都被封装得太好用了 . 以至于大家不需要明白原理就能把功能实现 . 这是技术的发展使然 . 越是如此 越需要主动制造问题 . 书上说(或者大牛们的演讲里说)只要看代码 就能掌握某项技术 —- 这个我当年也深信 但是我现在觉得它仅限于少数人 , 例如我就不行 , UE5代码我也看的不少了 但是还是觉得懵懵懂懂.

PS. 字节退化 : 简单的说, 一个4字节的int ,当数值小于一定程度的时候 , 例如1 , 那么可以用2字节来存储

关于生活

今年发生很多的事情 , 上半年父亲身体有碍 . 我因此提出离职 (后面留了下来) , 幸而经过几个月的调养有所好转. 下半年父亲眼疾影响了几个月 , 上周做了手术才恢复一些 .

我父亲是一个典型的农民 , 爷爷生了10个子女 , 父亲是老二 ,我父亲和我最小的叔叔相差20年 . 我小叔叔和小姑姑几乎等于是我父亲养大的 .

只靠耕田并不能养活那么多人 , 一大家子人拖着他不可能和其他人一样出门打工 , 在从我有意识到我大学毕业之前 , 我父亲几乎每天都是在山上度过 . 靠狩猎/挖草药/种植各种菇 等和大山有关的赚钱方式养家 .

我大学的每一分学费 , 都是山上给的

三十多年的几乎每天的爬山 ,大约每天早上7-8点上山 下午3-4点下山 , 我大学暑假之后跟他去过几次 , 不夸张的说每天相当于上下一次华山 , 他坚持了三十年! 年初带他做骨骼检查 发现膝盖早就已经磨损严重了 . 嫩骨粘膜退化消失 , 所以他的余生只能瘸着腿走路了 , 哎

做一个他那种父亲 , 是我未来二十年的目标 , 希望新的一年 父亲能身体健康


最后 , 祝你新年快乐

-EOF-

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注