常见架构推导法
架构演进之路,路漫漫其修远兮架构关乎不变的顶层设计抽象。架构关乎组件(元素)、交互(连接器)、功能(function or feature)、约束(constraint 面向当前、未来-下一场景、下一个规模、下一个地域或国家) 洋葱架构的另一种解读系统是洋葱,看似有边界,但是每次改动总是端到端,过程让⼈人泪流满⾯面。 系统的本质功能与质量量的结合体:功能是核心价值 + 质量实现增值或保值。 系统的复杂性过程与过程数据过程与过程数据.drawio 易变性系统复杂度.drawio 系统复杂度 = 功能的数量 * 功能的过程《人月神话》:本质复杂度(Essential Complexity)和偶然复杂度(Accident...
Gergely Orosz 文章翻译-成为一个更好的技术写作者
原文链接:《Becoming a Better Writer in Tech》
演进式架构
如果读一本书,没有附带正确的复盘(提出反馈并总结反馈),则浪费了这次读书的完整机会。 复盘需要经过痛苦的思索,把一些之前自己没有办法充分接受的观点,充分接受。 本书是一本讲战略的书。 这本书告诉我们很多概念,一旦加上“架构”前缀,突然就有了特殊的含义:架构特征(architectural feature)、架构量子(architectural quantum)、架构维度(architectural dimension)、架构模式(architectural...
Gergely Orosz 文章翻译-软件架构被高估,简明设计被低估
原文链接:《Software Architecture is Overrated, Clear and Simple Design is Underrated》
面向职场编程
学习的衰减和回归 读了 100 分的书籍。 只能学会 80 分的知识。 做出 60 分的软件。 参加多人协同的项目,最后只能拿到 40 分的产出。 去参加晋升评审的时候,因为讲得不够好,只能得到 20 分的输出效果 提升自己的职场收获的法门有:在 1 上加大努力,让 5 也跟随 1 增长;练习 soft skill,让 4 和 5 的衰减变少。 不闻不若闻之,闻之不若见之,见之不若知之,知之不若行之。没有输入,谈不上学习;没有复制,谈不上学习;没有创造与运用,谈不上学习。学习就好像爬喜马拉雅山,你从北坡上山,要从南坡下山,你体会的山才完整,没有体会过知识的接受者视角和使用者视角的经历的是不完整的。 上士闻道,勤而行之;中士闻道,若存若亡;下士闻道,大笑之。 不笑不足以为道。 故建言有之:明道若昧;进道若退;夷道若颣;上德若谷,大白若辱,广德若不足,建德若偷,质真若渝;大方无隅;大器晚成;大音希声;大象无形。 道隐无名。 夫唯道,善始且善成。 从信仰者成为践行者。 职位的 max 和 min不要让评委进入 min...
贝索斯在普林斯顿大学毕业典礼上的演讲-We are What We Choose
原文链接:《2010 Baccalaureate...
如何成为一名优秀的架构师
成为一个架构师:为了这一刻,你准备了多久? 架构师的关注点:顶层设计、长期视角。 寿命:数据 > 代码(特指业务逻辑)> 技术(特指业务逻辑的载体) 不是传道受业,而是观点分享。 架构师的几种 profile:有架构能力、以架构为生也是一种架构师。 长期战略:对于任何一家公司,架构设计一定是必要的,而且需要自行解决。架构师的职责是保证组织拥有正确的设计,控制复杂度。 架构师的关键特质: 目标正确:限制条件和目标价值产生理解偏差。是架构师最常见的问题。 能力满足:为组织带来更好的外部适应性。 持续减熵:好架构等于发现、规划和演化。 思考深度和实战经验最重要:这是任何的书本都不能带给我们的。包容、求真、良知、勇气。 有没有德?考虑组织长期利益(基于良知做判断)。有没有勇气?承担责任,决定命运。有没有眼光?是否擅于思考? 独立、理性、有深度的思考。长期感召力,来自于良知、成功、经验和勇气。 从复盘中学习。 郭东白.pdf
项目管理
比起重要紧急排序法,MoSCow优先级排序法更适用FORM:https://www.jianshu.com/p/f165dff094bb Must have:必须有。如果不包含,则产品不可行。Must Have的功能,通常就是最小可行产品(MVP)的功能。比如微信的聊天信息、通讯录、朋友圈。 Should have: 应该有。这些功能很重要,但不是必需的。虽然’应该有’的要求与’必须有’一样重要,但它们通常可以用另一种方式来代替,去满足客户要求。 Could have: 可以有。 这些要求是客户期望的,但不是必需的。可以提高用户体验,或提高客户满意度。如果时间充足,资源允许,通常会包括这些功能。但如果交货时间紧张,通常现阶段不会做,会挪到下一阶段做。 Won’t have(nice to have): 这次不会有。 最不重要,最低回报项目,或在当下是不适合的要求。不会被计划到当前交货计划中。...
职场求生攻略
职场求生攻略.xmind
Redis 笔记之:内存调优
Redis 的 memory infoRedis 的内存使用状况可以使用info memory来获取。 需要重点关注的值是 used_memory_rss(用于存储消耗的物理内存),used_memory(用于存储消耗的内存= 物理内存 + 硬盘),以及他们的比值mem_fragmentation_ratio(used_memory_rss/used_memory)。 used_memory_rss或者used_memory很高时,意味着当前的 Redis 实例正在蚕食系统中的内存/硬盘资源。 当这个mem_fragmentation_ratio大于 1 的时候,意味着用于存储消耗的物理内存超过了 Redis 自己掌控的内存值,也就意味着当前有些未能回收的内存泄漏或者碎片。 当这个mem_fragmentation_ratio小于 1 的时候,这意味着有一部分用于存储的内存,实际上是在使用虚拟内存中的 swap 空间,此时 Redis 的性能会非常差。 Redis 的内存轮廓memory_used = 进程自身消耗的内存 + 存储对象的内存(大头) + buffer...