人件 – 是什么在阻塞智能与智能化进程 (insights.thoughtworks.cn)
《人件》作者汤姆·迪马可、蒂姆·李斯特在他们的书中,曾推崇人本管理思想,指出知识型企业的核心是人,而不是技术。而今天我希望从智能系统设计的角度,讨论一些“人件”相关的设计陷阱。
by @ThoughtWorks 2019-01-02 17:33 分享 查看详情
ArchUnit,架构守护神 (insights.thoughtworks.cn)
如何在Java系统架构下,应用架构适应度函数(Architectural fitness function)来驱动架构演进?如何在Java系统架构下,做系统演进后架构守护,减缓系统再次腐化?
by @ThoughtWorks 2019-01-02 17:32 分享 查看详情
敏捷变革过程中ETC面临的六个陷阱 (insights.thoughtworks.cn)
用敏捷转型过程中的ETC作为引子帮大家鉴别领导班子的风格会严重影响组织转型的进展,希望正在做组织转型的你能够在面对ETC团队的各种问题见招拆招。
by @ThoughtWorks 2019-01-02 17:31 分享 查看详情
白话中台战略2:中台到底长啥样? (insights.thoughtworks.cn)
在上篇《白话中台战略-1开篇:中台是个什么鬼?》中,我试着依据自己的经验和理解,阐述了中台产生的原因以及最终建设目的,可能会过于抽象,大家听得还是云里雾里,本文就试图通过我的收集和思考,带着大家一起来看看中台到底“长啥样”,以期让大家有个直观的印象。
by @ThoughtWorks 2018-12-21 11:06 分享 查看详情
一次Testing in Production方案的探索 (insights.thoughtworks.cn)
环境的特殊性带来了产品的不确定性,我们希望把测试的触角向前延伸,到生产环境去做测试,提前暴露产品的潜在问题,提高用户的满意度。
by @ThoughtWorks 2018-12-19 10:46 分享 查看详情
以用户为中心的软件开发 (insights.thoughtworks.cn)
我们将来交付的软件、交付的服务、我们交付的一个MVP本质上是交付给了用户一组体验。MVP的迭代则应该是更多的体验或某些旧体验的升级(也就是同一个动机,换了一个故事来满足)。
by @ThoughtWorks 2018-12-12 11:42 分享 查看详情
如何增强Linux内核中的访问控制安全 (insights.thoughtworks.cn)
前段时间,我们的项目组在帮客户解决一些操作系统安全领域的问题,涉及到windows,Linux,macOS三大操作系统平台。无论什么操作系统,本质上都是一个软件,任何软件在一开始设计的时候,都不能百分之百的满足人们的需求,所以操作系统也是一样,为了尽可能的满足人们需求,不得不提供一些供人们定制操作系统的机制。当然除了官方提供的一些机制,也有一些黑魔法,这些黑魔法不被推荐使用,但是有时候面对具体的业务场景,可以作为一个参考的思路。
by @ThoughtWorks 2018-12-06 10:30 分享 查看详情
DDD该如何学? (insights.thoughtworks.cn)
这时你才会发现,那些白纸黑字的概念,在读书时似乎搞清楚了,但一使用起来,反而更迷惑了。就像最基本的子域和限界上下文的关系问题,ThoughtWorks的首席咨询师肖然就和Vaughn Vernon的理解就相去甚远。到底该“信谁”?
by @ThoughtWorks 2018-12-03 12:02 分享 查看详情
中台是个什么鬼 | 白话中台战略 (insights.thoughtworks.cn)
中台到底是什么?它对于企业的意义到底是什么?当我们谈中台时我们到底在谈些什么?
by @ThoughtWorks 2018-11-23 10:30 分享 查看详情
Autonomous bubble pattern | 雷达哔哔哔 (insights.thoughtworks.cn)
如何在遗留系统上继续保持构建新功能的能力,不受自身的限制与拖累,可以采用全新的架构甚至工程方法,同时保持相对独立的快速演进?
by @ThoughtWorks 2018-11-22 10:54 分享 查看详情
让你的系统在上线之前就接受炮火的洗礼-影子流量 (insights.thoughtworks.cn)
启用shadow traffic,如果开发团队可以习惯于有shadow traffic的日常,也就具有了应对线上运维问题的能力。
by @ThoughtWorks 2018-11-21 17:23 分享 查看详情
微服务测试的思考与实践 (insights.thoughtworks.cn)
随着软件架构的变化,对应的软件测试策略需要作何调整呢?本文将介绍微服务架构下的测试策略,并结合分享在业务和架构演变过程中,一个历经九年的项目测试策略的演进。
by @ThoughtWorks 2018-11-14 11:17 分享 查看详情
不谈技术细节,自然语言处理能做些什么 (insights.thoughtworks.cn)
但是作为一个非NLP专家, 我们要聊些什么呢?或者说我们应该学些什么呢?本文就从应用角度来总结一下自然语言处理能做哪些事, 以及在我眼中NLP有潜力去做哪些事,帮助大家建立对NLP技术初步的理解。
by @ThoughtWorks 2018-11-07 13:07 分享 查看详情
Architectural fitness function,架构你好我也好 (insights.thoughtworks.cn)
一直以来,我们都未对每一个Blip做进一步的解读,而这次决定尝试一个新的专栏——《雷达哔哔哔》,由作者根据自己实践与理解,对雷达中部分条目作出解析,致力于用一篇篇短小精悍的文字,帮助读者加深对雷达的理解。

今天是《雷达哔哔哔》的第二篇,依然关注架构,Blip是Architectural fitness function。
by @ThoughtWorks 2018-11-01 11:52 分享 查看详情
DDD的终极大招——By Experience (insights.thoughtworks.cn)
不管是在DDD原著,还是后续不少专家的书籍中,都明示或暗示架构设计最后的终极大招还是By Experience ——靠经验吃饭。从战略角度的subdomain(子问题域的划分)到战术建模层面Entity、VO的选择,最终的决策很可能不是完全“理性”,经验这个“感性”的东西发挥着很大的作用。

对于一个顾问和教练来说这是绝望的答案,因为我们每次面对的是希望学习,但没有经验的团队,“靠经验吃饭”等于告诉团队这东西没套路、靠感悟。这就迫使我们转换视角,从教大家DDD方法,转换到帮助大家获取DDD经验。下面就让我们来看看怎么有效解决DDD经验获取这个问题。
by @ThoughtWorks 2018-10-30 10:20 分享 查看详情
讨论微服务之前,你知道微服务的 4 个定义吗? (insights.thoughtworks.cn)
关于“什么是微服务”的问题,其实并没有一个统一的认识。这些年在不同的场合里和不同背景的朋友都在探讨微服务。但聊得越多,越发现大家聊的不是同一回事。和 DevOps 一样,“微服务”也是一个内涵十分广泛的词。本文从“Microservice“这个概念的源头出发,总结了 4 个常用的微服务定义。
by @ThoughtWorks 2018-10-24 11:50 分享 查看详情
Lightweight Architecture Decision Records | 技术雷达 (insights.thoughtworks.cn)
ThoughtWorks每年都会出品两期技术雷达,这是一份关于科技行业的技术趋势报告,在四个象限:技术、平台、工具以及语言和框架对每一个条目(Blip)做采用、试验、评估、暂缓的建议。(参考阅读:解读技术雷达的正确姿势)

一直以来,我们都未对每一个Blip做进一步的解读,而这次决定尝试一个新的专栏——《雷达哔哔哔》,由作者根据自己实践与理解,对雷达中部分条目作出解析,致力于用一篇篇短小精悍的文字,帮助读者加深对雷达的理解。

今天是《雷达哔哔哔》的第一篇,Blip是Lightweight Architecture Decision Records
by @ThoughtWorks 2018-10-18 11:44 分享 查看详情
在 Windows 上可以用 Docker 吗? (insights.thoughtworks.cn)
Docker那么这么好的技术,在 Windows 上能用吗?在各种场合,都有人与我讨论这个的话题。每次听到这样的疑问,我也是很无奈的。毕竟,只要稍微搜索一下,就不难回答:是可以的。不过,深入想一下,人们有这样的疑问也是有道理的:毕竟 Docker 是起源于 Linux 上的技术。
by @ThoughtWorks 2018-10-17 11:40 分享 查看详情
如何快速读Paper (insights.thoughtworks.cn)
自从上次介绍了去哪里找paper之后,大家问我的问题就常常变成了:如何快速阅读一篇paper并准确的提取其中有用的信息。在本文中,我将试图为大家简要解答这个问题,争取告诉大家如何在短时间内通过阅读文献的方式了解一个新的领域。
by @ThoughtWorks 2018-10-12 11:06 分享 查看详情
测试金字塔实战 (insights.thoughtworks.cn)
“测试金字塔”是一个比喻,它告诉我们要把软件测试按照不同粒度来分组。它也告诉我们每个组应该有多少测试。虽然测试金字塔的概念已经存在了一段时间,但一些团队仍然很难正确将它投入实践。本文重新审视“测试金字塔”最初的概念,并展示如何将其付诸实践。本文将告诉你应该在金字塔的不同层次上寻找何种类型的测试,如何实现这些测试。
by @ThoughtWorks 2018-10-10 10:56 分享 查看详情