倡导者、教育家和作者的立场
2022年7月19日
如果你看看这个网站上最近的文章,你可能会注意到我最近写得不多。相反,我的大部分精力都在帮助其他人在这里或其他地方发表文章。我对这种状态很满意,我已经越来越远离软件开发的日常工作,所以我的首要任务是帮助那些更接近工作的人分享他们的想法。华体会登录网址
这些想法通常以描述一种新技术或工具的形式出现,也许在一般意义上并不新鲜,但至少对作者或他们合作过的团队来说是新的。作者想要写这个技术的原因是因为他们发现它工作得非常好,并且相信他们的读者可以通过使用它来改善他们的软件开发体验。华体会登录网址
这自然导致许多作者采用提倡的立场.他们会强调他们从使用这种技巧中获得的所有积极的东西。此外,他们还会花时间详细说明备选方案的问题,强调为什么他们的首选方案更好。
我对这种立场持谨慎态度。我是那种每当有人主张用简单的方法解决复杂问题时就会产生怀疑的人。在这种情况下,讨论替代技术的稻草人版本太容易了。
这让我有了一个不同的立场作为一个作者,我称之为权衡的立场.在这方面,我认为这种有前途的技术与替代方案相比有优点,但也有一些缺点。作为一名作者,我的目标是确保读者在决定自己是否要使用这种技术时考虑到所有这些因素。我们写的任何东西都有很多读者(我们希望),每个人都有自己的特定背景。由他们来评估对我们有效的技术是否能有效地移植到他们的环境中。通过向他们灌输我们所知道的所有因素,我们增加了他们做出明智决定的机会。
我认为这是倡议者和教育者之间区别的一部分。提倡者希望读者同意他们的观点,当读者使用被提倡者的技巧时,他们就成功了。我更喜欢教育者的角色,如果读者做出了明智的决定,我就成功了,即使读者选择的道路与我在他们的情况下会选择的道路不同。(这也意味着,如果读者做了我也会做的事情,但只是因为“马丁这么说”而这么做,没有正确理解取舍——那么我就失败了。)
作者们经常善意地把备选方案做成稻草人,因为他们遇到过做得不好或在错误的背景下.由于没有充分考虑到替代技术的优点,这种主张往往会破坏自己的立场。如果读者发现了这一点,那么他们就会开始根据反对替代方案的论点的弱点来判断文章,而不是关注新技术的真正功能。
当我以权衡的立场写作时,我喜欢先假设人们使用糟糕的技术是出于合理的原因,而作为一名作家,我的工作就是理解和解释这些原因。即使在大多数情况下,替代方案真的很糟糕,但了解是什么导致人们采用它是有价值的。同理心是正确沟通取舍的重要基础,可以引导读者获得更好的技巧。
不当使用一种技术的一个常见原因是,它曾经工作得很好,但在用户完全理解变化之前,上下文发生了变化。最近的文章系列按比例增长的瓶颈是探索这一现象的一个例子。许多人使用的技术在产品的早期阶段很有效,但随着规模的扩大,这些技术就会失效。在这样的背景下驾驭变化是很棘手的,特别是如果你以前没有经历过它。
权衡立场并不是扮演教育者角色的唯一方式。另一种姿势,我称之为价值立场,就是解释新技术的优点而不将其与其他技术进行比较。优点在于,它避免了作者(和读者)花费时间和精力在文章内部进行详细的权衡。相反,作者专注于新技术的特点,让读者根据他们对替代方案的了解来进行比较。
关于优点立场的一个很好的例子是肯特·贝克的原著极限编程.他并没有花很多篇幅来阐述瀑布式流程的缺点,相反,他以一种让读者能够看到极限编程是如何应对团队开发问题的风格来展示它的。这使得这本书非常简短和集中,这也是它如此有影响力的一个主要原因。
优点的立场远不如权衡的立场全面,但这不应该阻止作者采取这种立场。一个很好地展示优点的立场可以在引发进一步的讨论中发挥重要作用,这可以探索更多的权衡和背景。如果最初的展示是对新技术的清晰阐述,那么这种进一步的讨论更有可能产生成效。对替代方案的批评,即使做得很好,通常也会把水搅浑。
优点的立场通常是在一个非常适合新技术的环境中提出的。作者应该清楚地解释上下文,这样读者就能根据读者的情况判断上下文的差异。虽然这篇文章很自然地聚焦于该技术的优点,但它也应该描述任何缺点,以及作者对使用该技术的禁忌的洞察。
优点的立场对作者的要求较低,他只需要新技术方面的专业知识,而不是备选方案。虽然我们总是希望我们的作者具有更多的专业知识,但我宁愿向那些对问题的某些方面有很好的理解的人学习,而不是等待一个通晓所有方面的戈多。[1]
每当我和某个人一起工作时,如果他花了很多时间解释一种既定方法的问题,我就会试着把他推到权衡取舍或优点的立场上来。往哪个方向走取决于作者想要创作什么,以及他们的目标是什么——但无论是哪一种,都是从倡导者的立场上迈出的一步。
确认
Rebecca Parsons和Sumeet Moghe对我的草稿给出了一些有用的反馈
脚注
1:对于那些不熟悉这出戏-戈多从没来过。
重大修改
2022年7月19日:发表
2022年6月16日:送去内部审核
09年2022年6月:开始起草