软件开发的一些思考与Hint
业务价值与驱动力
- 大局观&格局(森林)// 细节 (树木)
- 代码不是资产/财富,代码是负债。代码实现的那个背后的需求才是资产/财富。
- 代码本身并没有价值,运行、数据沉淀才是价值。
- 结合上面两个,在大多数业务场景里面,想法起点和运营成果才是价值
- 软件行业中,代码目前看起来并不具备护城河能力(开源、复制),数据才是护城河,特别是与社会资源强关联的那些(社交、金融资产、生产活动)
- 要做有门槛的事,建立自己的护城河和影响力
- 制定标准与构建生态(apple,sony)
- 数据驱动,数智赋能,价值在外的思维(业务)
软件工程
- 操作系统是一个程序,这个程序的用户是程序员或者一般人员。那我们做系统(某种意义上程序的集合)需要充分考虑我们的用户,做好对外的提供的api和对象。内部做好实现。
- Unix环境高级编程:从应用系统深入到操作系统;几乎所有的性能优化,都在CA、OS能找到相同的思想理念。
- 编程、计算机是来解决问题,提升效率的。
- 系统功能正确性(输入与输出、内在状态变更)系统内外 VS 函数内外
- Meta method:抽象 分层 组合
系统选型
- 没有银弹,所有系统架构都有优势、劣势。最典型的就是批处理系统与实时流处理系统的优劣势。
- 系统选型时,首先明确(业务、科技)需求优先级,再考虑系统的长期性(考虑未来迁移、运维的成本)。
年度经验
- 2023经验
- 五年工作经历,需要更多的是深度与解决问题的能力(很多问题可能是没碰到过,应该做出正确的方案选择)
- 2022经验
- 重要的是个人能力提升与影响力,金钱是副产物
- 重要的是脚踏实地,能够解决具体的问题,并且保持大方向与积极反馈修正。
其他人的思考引用
南大老师的话
来源:“大学除了专业知识,还应该学些什么?” 南京大学《SICP》课堂李樾老师的絮絮叨叨_哔哩哔哩_bilibili
- 有限时间内快速(搜索)汲取知识并化为己用的能力
- 这种能力需要训练,系统性地向他人介绍一块知识内容(往往自顶向下)
- 通过实践,实现一个具体的系统来综合运用知识(使用概念与抽象)
- 面对压力困难迷茫时,接纳自己,认同自己,积极应对和拿出勇气
- 理解他人、包容他人、博爱他人
- 学会原谅自己,爱自己
- be different,做自己,让自己幸福
最后修改于 2024-06-01