“这个房间里有多少人参与过在项目过程中需求发生重大变化的软件项目?”
我演讲的视频
你在这个网站上找到的大部分内容都是写作,但我知道很多人喜欢视频体验。我还没有接触过视频制作,这是一项艰难的工作,我觉得不值得做。但我确实会做演讲,而且这些演讲通常会被录像记录下来。所以我整理了这个页面,把我参与的所有演讲和其他视频材料都放在一起。
我确实会重复演讲,所以一些演讲有多个视频版本可供选择。我还在这个页面上放了一些有用的链接,可以帮助你在演讲之外进一步探索。
敏捷软件的艺术
敏捷本质与流畅性
敏捷软件开发的基本要素以及如何在学习过程中获得流畅性华体会登录网址
xConf - 2014
英国曼彻斯特
Goto - 2013
阿姆斯特丹
XConf - 2019
曼谷
为什么敏捷软件有效
为什么敏捷方法如此有效?
尼尔·福特
细节
Neal Ford和我在巴黎USI做了一个关于为什么敏捷有效(而不是如何有效)的演讲。本文探讨了使敏捷有效的一些核心力量,而不是关注技术。我们特别关注了沟通和反馈的作用,以及它们在敏捷环境中的相互作用。
遗憾的是,视频似乎在谈话中间被截断了。我还不知道怎么把完整的视频发布出来。
Usi - 2010
巴黎
敏捷宣言:10年后
敏捷连接- 2011
拉斯维加斯
重新审视敏捷宣言
我们应该扼杀敏捷软件开发吗?华体会登录网址
Dave Thomas, Jez Humble, Katherine Kirk和Tatiana Badiceanu
Goto - 2014
奥尔胡斯
《末日的裂缝》
软件开发中最重要的因素是用户和开发人员之间的沟通华体会登录网址
丹尼尔·特霍斯特·诺斯
细节
这是我和同事一起为QCon 2007做的主题演讲丹尼尔Terhorst-North.我们都认为开发人员和他们的客户/用户之间的差距是软件开发中最大的问题。华体会登录网址(我们称之为鸿沟,但这个词已经被过度使用了。)在这里,我们谈谈这个差距,为什么它很重要,以及我们需要做什么来跨越它。特别地,我们认为中介业务分析师的传统角色就像一个渡口,而我们真正需要的是一个桥梁,使开发人员和他们的客户之间能够直接联系(并且分析人员可以构建和维护这个桥梁)。这是我最喜欢的联合主题演讲之一,因为我认为这个话题非常重要,也因为丹是如此令人振奋的共同演讲者。
QCon - 2007
伦敦
丹尼尔·特霍斯特·诺斯帮我解释了为什么桥比摆渡人好
软件架构华体会体育网页版入口
与Birgitta Böckeler在工艺会议上发表
华体会体育网页版入口架构是很重要的东西,不管它是什么。
自从敏捷方法开始以来,关于软件架构在敏捷项目中应该扮演什么角色(如果有的话)一直存在着深刻的争论。华体会体育网页版入口这在很大程度上取决于您认为体系结构应该是什么。华体会体育网页版入口
让建筑变得重要华体会体育网页版入口
什么是架构华体会体育网页版入口,为什么它很重要
细节
我被邀请在OSCON做一个14分钟的主题演讲,解释为什么架构很重要。华体会体育网页版入口我认为最好的办法是从探索这个尴尬术语的含义开始,以我最喜欢的拉尔夫·约翰逊(Ralph Johnson)的邮件列表帖子为指导。一旦我做到了这一点,我便开始专注于“设计耐力假说”的经济论点,从而解释它的重要性。
进一步的阅读
- 我之前翻遍了拉尔夫的邮件,关于建筑在我的华体会体育网页版入口2003年IEEE软件专栏.
- 设计耐力假说
- 要探索一点“如何”,请看这段稍长的对话敏捷与架构华体会体育网页版入口莫莉·迪什曼和我。
- 稍微深入一点的讨论软件设计经济学
- architect华体会体育网页版入口ure这个词来自于construction,但它是一个不恰当的比喻.
Oscon - 2015
波特兰或
培养体系结构华体会体育网页版入口
架构在自治团队的世界中扮演什么华体会体育网页版入口角色,我们如何使它发生?
与Birgitta Böckeler
工艺展- 2019
布达佩斯
软件设计经济学
在设计上花费精力的目的是提高生产力——快速交付功能
细节
通常,人们通过指出需要更高的工艺和质量来证明软件设计的努力。我的观点是,这种道德化的论点是错误的,相反,我们应该关注经济。随着时间的推移,大多数软件工作都变慢了,因为糟糕的设计决策拖累了我们的团队。对设计的关注可以减少甚至扭转这种情况。
我发现技术债务的比喻是思考糟糕设计后果的好方法——我们是支付利息还是还清本金。有些人认为技术债务不是草率设计的结果,但我指出技术债务来自各种原因,即使是最好的团队也会产生一些。
进一步的阅读
敏捷连接- 2011
拉斯维加斯
Thoughtworks活动- 2013
旧金山
敏捷者和架构者:盟友而不是对手
架构师应该在敏捷项目中扮演重要的角色。
丽贝卡·帕森斯
细节
在2008年旧金山QCon上,丽贝卡·帕森斯(Rebecca Parsons)和我做了一个关于敏捷方法如何与企业架构组一起工作的演讲。华体会体育网页版入口目前,敏捷项目团队和架构团队之间存在着许多不信任和冲突。华体会体育网页版入口我们将深入研究这一现象的原因,并探索这些团队合作的方式。
QCon - 2008
旧金山
丽贝卡是Thoughtworks的首席技术官。我们合作过几次演讲,各种作品,还有Thoughtworks雷达,以及我公司的技术指导。
关于六边形轨道的对话
六边形体系结构,选择华体会体育网页版入口如何与数据库交互,以及如何使用Ruby on Rails等框架进行设计
和巴德里·贾纳基拉曼
Hangout - 2014
灵活的架构华体会体育网页版入口
什么是体系结构,华体会体育网页版入口为什么它很重要,我们如何确保它发生?
Molly Dishman报道
细节
软件架构是一个定义华体会体育网页版入口不清的概念,它从建筑行业借用了不恰当的术语。我们认为体系结构是对系统华体会体育网页版入口最重要属性的选择,重点是那些很难改变的东西。华体会体育网页版入口体系结构是可以随着系统的发展而发展的东西,但只有通过投入精力和注意力来确保体系结构得到照顾。我们可以通过结合最初的愿景和持续的努力来做到这一点。
(达拉斯的视频包括问答,总共65分钟。)
O'Reilly软件架构会议- 20华体会体育网页版入口15
波士顿
Thoughtworks反思——2014
达拉斯
持续交付
构建软件,以便始终部署当前代码,降低风险并获得更快的反馈
xConf - 2014
英国曼彻斯特
华体会体育网页版入口没有架构师的架构
华体会体育网页版入口体系结构既重要,又不需要传统的软件架构师
与埃里克Dörnenburg
细节
软件架构师这个头衔有很多含义,通常这些含义都不好。开发人员会想到那些住在象牙塔里、忘记了如何写代码的人。项目经理认为技术人员在为模糊的技术目的服务的计划中追求完美。然而,对于任何软件项目的成功来说,体系结构都是至关重要的,特别是当前对微服务体系结构的兴趣华体会体育网页版入口。
我们认为,我们可以在没有传统架构角色的情况下支持好的架构,引入技术来华体会体育网页版入口获得好的设计和可持续的应用。
手工艺会议- 2016
布达佩斯
微服务和体系结构华体会体育网页版入口
Microservices
微服务被证明是2014年最热门的软件架构华体会体育网页版入口
细节
20分钟关于微服务的介绍。我将介绍微服务的定义,将其与更统一的方法进行比较,并概述在部署微服务应用程序之前必须做好的重要工作。
进一步的阅读
- 指南关于微服务的更多文章、书籍和视频的概述和链接
- 微服务的定义
- Microservice权衡
- Microservice先决条件
2014年去柏林
柏林
哎唷!夜晚——2016
悉尼
xConf - 2014
英国曼彻斯特
我的巴士穿这个看起来大吗?
我们以一种不带任何敬意的批判性眼光看待SOA主流,并建议采用另一种方法
吉姆·韦伯
细节
我的同事Jim Webber因为采用轻量级和面向业务的方法在企业中进行集成而获得了相当的声誉。他也是一个非常活跃和有趣的演讲者。所以我既紧张又兴奋,因为我和他在QCon 2008上同台演讲。他做了一个非常有趣的演讲,其中穿插了一些严肃的荤段子。然后我们就一头扎进去做了——可能是在讲话前喝了一品脱酒。我们讨论了企业集成的历史,自认为强大但实际上臃肿的系统的发展,敏捷思维的作用,web的影响(包括Jim关于它为什么被发明的独特理论),以及这如何导致游击式SOA。
QCon - 2008
伦敦
作为代码的基础设施
用可执行代码定义基础结构配置
哎唷!夜晚——2016
悉尼
事件驱动体系结构的许多含义华体会体育网页版入口
在我的职业生涯中,我遇到过被描述为“事件驱动”的架构。华体会体育网页版入口但我发现这个短语有很多不同的含义,我将其归结为四种模式的某种组合。
细节
2016年底,我参加了Thoughtworks高级开发人华体会体育网页版入口员的架构峰会,探讨了我们在“事件驱动”的标题下所做的各种工作。我们确认,这个短语导致了完全不同的东西,它们经常被混淆在一起。相反,我们发现专注于四种模式很有帮助,我们可以更精确地定义它们:
- 事件通知:组件通过事件进行通信
- 基于事件的状态传输:允许组件在不调用源的情况下访问数据。
- 事件的采购:使用事件日志作为系统的主要记录
- CQRS:有一个单独的组件,用于从存储的任何读取器更新存储
进一步的阅读
- 我写了关于这次峰会的一些注意事项对这些问题的回应让我准备了一场演讲。
- 我的草稿事件的采购从2005年开始
- 我的bliki入口内存映像方法避免单独的持久性,和LMAX架华体会体育网页版入口构把它用于高性能交易系统。
- CQRS
- 我一直在敦促Greg Young写一本关于构建事件源系统的书。虽然他还没出那本书,但已经写了一本简短的书专注于版本控制这样的系统。
Goto - 2017
芝加哥
TDD死了吗?
TDD死了吗?
2014年,David Heinemeier Hansson在RailsConf上发表了一篇极具争议性的演讲,他、Kent Beck和我讨论了TDD在软件开发中的作用,这引发了一系列的讨论。华体会登录网址
Hangout - 2014
数据的变化
不断发展的数据全景
丽贝卡·帕森斯
QCon - 2012
伦敦
事件的采购
用版本控制的方式处理所有数据
哎唷!夜晚——2016
悉尼
无模式
通常,当人们说一个数据结构是无模式的,他们是错的。有一个模式,只是一个隐式模式。
Goto - 2013
阿姆斯特丹
Thoughtworks活动- 2013
旧金山
NoSQL简介
NoSQL数据库的介绍,涵盖了数据库的类型、一致性问题以及它们在数据存储中所扮演的角色。
细节
“NoSQL”一词的起源是一个推特聚会的话题标签,但它变成了对关系数据库20年霸主地位的最严重的挑战。由于它们名字的偶然性质,它们涵盖的范围很广,但没有太多的定义,但将它们中的许多归类在的名称下是有用的Aggregate-Oriented数据库.
NoSQL数据库带来了关于一致性的问题,但值得记住的是,即使使用ACID事务,我们仍然经常需要管理应用程序中的并发更新。许多NoSQL数据库支持分布式数据的能力进一步复杂化了一致性,导致了CAP定理在一致性和可用性(和响应时间)之间的权衡。这种取舍从根本上来说是一个业务决策,而不是技术决策。
NoSQL数据库是现代数据需求的一个严肃的选择,但不是唯一的选择。我们现在处于一个通晓多种语言的持久性我们必须根据特定的数据访问需求来选择数据存储技术。
这是我最受欢迎的演讲(最初的goto Aarhus视频有超过75万的观看量)。
进一步的阅读
Goto - 2012
奥尔胡斯
NoSQL问题- 2013
科隆
NoSQL是什么?它是数据库的未来吗?
NoSQL与一致性
NoSQL数据库如何改变我们对数据库一致性的看法?
Thoughtworks活动- 2013
旧金山
软件开发应该对世界产生什么影响?华体会登录网址
不仅仅是代码猴子
我在敏捷软件开发中遇到的最大问题,以及由此产生的问题。华体会登录网址
细节
这是一个很难描述的话题。通常我喜欢用一个标题和摘要来描述演讲的内容,但这次演讲是一次旅行,我不想告诉你们我要去哪里,而是和我一起探索地面。我想说的是,它始于我在大多数采用敏捷软件开发时遇到的最大问题——用户、分析人员和程序员之间交互的本质。华体会登录网址它继续探索这些角色,提出了关于程序员与用户关系的问题,我们对他们的责任,最后是我认为程序员需要面对的两大挑战。
Oop - 2014
慕尼黑
敏捷澳大利亚- 2014
墨尔本
2014年去柏林
柏林
我们战胜大规模监视的责任
软件开发人员有责任保护互联网上的隐私
与埃里克Dörnenburg
细节
软件专业人士不能仅仅认为自己是听从资助者要求的人,我们要对我们的软件如何影响用户和更广泛的社会负责。即使我们认为自己没什么好隐瞒的,我们的隐私对于保护那些防止腐败、让社会进步的讨厌的人也是必要的。电子邮件向在线服务的转移导致了令人担忧的电子邮件供应的集中,这使得对我们的一种重要通信形式进行大规模监控变得更容易。即使看似无害的拦截也会导致严重的问题,因为这些关于我们的信息对公司来说是有价值的,即使对政府来说是无害的。
我们需要努力扩大电子邮件加密的使用范围,以减少这些问题,这样大规模监控的成本就会变得令人望而却步。这方面的挑战主要是用户体验和软件打包方面的挑战,而不是需要对密码学有深刻理解的东西。
(这个演讲的前12分钟是我的Not Just Code Monkeys演讲的压缩版。)
进一步的阅读
Goto - 2014
奥尔胡斯
多年来,我与Erik Dörnenburg就软件架构、TDD以及现在我们开发人员在维护互联网隐私方面必须扮演的重要角色进行了讨论。华体会体育网页版入口
访谈:互联网隐私
与Erik Dörnenburg、Ola Bini和Tim Bray合作
Goto - 2014
奥尔胡斯
21世纪的软件设计
我的大多数演讲都是会议主题演讲,在过去的一二十年里,我一直以主题演讲为标题华体会登录网址21世纪的软件开发.标题故意模糊,让我可以相当自由地谈论我当天喜欢的任何事情。近年来,我组织了这些主题演讲会谈内容在主题演讲时段做两到三场20分钟的演讲。由于这些演讲得到了视频的处理,我鼓励会议将视频分开,将个别演讲分开发布,而不是将它们捆绑在一起。在这一页,我分别描述了这些简短的谈话。并不是所有的视频都将这些对话片段分开,所以对于那些将它们结合在一起的视频,我将链接到视频的中间,以使视频尽可能接近真正的对话片段的开始(这些都标有“姆斯特”)。
作为代码的基础设施
用可执行代码定义基础结构配置
哎唷!夜晚——2016
悉尼
事件的采购
用版本控制的方式处理所有数据
哎唷!夜晚——2016
悉尼
非决定论与检验
非确定性测试是一种疾病,它可以摧毁测试中的所有价值。
敏捷连接- 2011
拉斯维加斯
软件设计经济学
在设计上花费精力的目的是提高生产力——快速交付功能
细节
通常,人们通过指出需要更高的工艺和质量来证明软件设计的努力。我的观点是,这种道德化的论点是错误的,相反,我们应该关注经济。随着时间的推移,大多数软件工作都变慢了,因为糟糕的设计决策拖累了我们的团队。对设计的关注可以减少甚至扭转这种情况。
我发现技术债务的比喻是思考糟糕设计后果的好方法——我们是支付利息还是还清本金。有些人认为技术债务不是草率设计的结果,但我指出技术债务来自各种原因,即使是最好的团队也会产生一些。
进一步的阅读
敏捷连接- 2011
拉斯维加斯
Thoughtworks活动- 2013
旧金山
无模式
通常,当人们说一个数据结构是无模式的,他们是错的。有一个模式,只是一个隐式模式。
Goto - 2013
阿姆斯特丹
Thoughtworks活动- 2013
旧金山
重构的工作流华体会app下载二维码
Oop - 2014
慕尼黑
敏捷澳大利亚- 2014
墨尔本
NoSQL与一致性
NoSQL数据库如何改变我们对数据库一致性的看法?
Thoughtworks活动- 2013
旧金山
Microservices
微服务被证明是2014年最热门的软件架构华体会体育网页版入口
细节
20分钟关于微服务的介绍。我将介绍微服务的定义,将其与更统一的方法进行比较,并概述在部署微服务应用程序之前必须做好的重要工作。
进一步的阅读
- 指南关于微服务的更多文章、书籍和视频的概述和链接
- 微服务的定义
- Microservice权衡
- Microservice先决条件
2014年去柏林
柏林
哎唷!夜晚——2016
悉尼
xConf - 2014
英国曼彻斯特
敏捷本质与流畅性
敏捷软件开发的基本要素以及如何在学习过程中获得流畅性华体会登录网址
xConf - 2014
英国曼彻斯特
Goto - 2013
阿姆斯特丹
XConf - 2019
曼谷
持续交付
构建软件,以便始终部署当前代码,降低风险并获得更快的反馈
xConf - 2014
英国曼彻斯特
不仅仅是代码猴子
我在敏捷软件开发中遇到的最大问题,以及由此产生的问题。华体会登录网址
细节
这是一个很难描述的话题。通常我喜欢用一个标题和摘要来描述演讲的内容,但这次演讲是一次旅行,我不想告诉你们我要去哪里,而是和我一起探索地面。我想说的是,它始于我在大多数采用敏捷软件开发时遇到的最大问题——用户、分析人员和程序员之间交互的本质。华体会登录网址它继续探索这些角色,提出了关于程序员与用户关系的问题,我们对他们的责任,最后是我认为程序员需要面对的两大挑战。
Oop - 2014
慕尼黑
敏捷澳大利亚- 2014
墨尔本
2014年去柏林
柏林
敏捷代码库的实践
构建支持敏捷项目的代码库的关键实践。
细节
当人们谈论敏捷方法时,他们通常关注产品和项目管理方面的事情。发布小版本,从每个版本中学习,允许团队快速改变方向,因为我们知道用户需要什么。这允许构建在不确定的环境中快速提供价值的软件。
这种工作方式有很多价值,但要使其工作,我们需要一个支持快速更改的代码库,不仅是对其细节的更改,而且是对其整体架构的更改。华体会体育网页版入口要构建这样一个代码库,我们需要一些技术实践,这些实践支撑着敏捷流畅性模型的交付区域。
- 自测试代码允许在我们进行更改时自信地检测错误
- 华体会app下载二维码重构允许我们在不引入bug的情况下快速更改代码
- 持续集成允许团队的所有成员在不相互干扰的情况下进行更改
- YAGNI尽量保持软件的简单性,使其更容易扩展
XConf - 2019
曼谷
剩下的……
jao - 2005
奥尔胡斯
打造新联盟
与斯科特·肖
细节
Thoughtworks经常组织“季度技术简报会”——在我们有办公室的城市为社区举行公开会谈。在多伦多的这次QTB中,Scott Shaw和我讨论了如何在IT和业务之间建立新的关系。这解释了为什么我们认为It部门应该被解散。
Thoughtworks - 2008
多伦多
3. years.of (ruby):
QCon - 2009
伦敦
科技在奥巴马竞选中的作用
和扎克·埃克斯利
QCon - 2009
伦敦
演进移动实现策略
与贾尔斯·亚历山大
细节
手机在流量中所占的比例仍小于传统网页,但其份额正在增长,因此我们需要考虑开发有效的手机应用程序的策略。我们讨论了对产品愿景的思考,将用户参与的风格分为“前倾”、“后倾”和“向下看”风格;把它们整合成一个跨媒体应用.我们讨论了为什么关注价值比关注流量、激光和覆盖你的基础的平台策略更重要,并认为Android、iOS和Web是三个可行的平台选择。贾尔斯以我们与一家大型航空公司合作的案例研究作为结束语。
进一步的阅读
Thoughtworks Live - 2013
伦敦
连续交付(YOW 2011)
和Jez Humble
Yow - 2011
墨尔本
科技卓越是什么样的?
要在现代数字企业中取得成功,你需要一个熟练的技术组织。文化、人才和技术是如何结合在一起创造这一切的?
细节
人们谈论将企业转变为数字组织的说法都很好,但除非你有一个能够很好地完成其工作的技术组织,否则这是不可能发生的。
Nicole Forsgren做了一项将IT性能与组织性能相关联的研究,以及她对Devops的研究如何确定IT性能的三个重要指标:部署频率、部署前置时间和平均恢复时间。一个简单的彩票例子说明了快速循环时间的货币价值。
我们观察到的高绩效技术团队的特征包括:使用持续交付,以业务为导向的方式组织,技术领先,并在信任的气氛中运行。要走得远,你需要走在正确的方向上,但也要照顾好你的车辆。
TW直播- 2016
墨尔本