BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

你是否也处在这样的反模式中

| 作者 谢丽 关注 10 他的粉丝 发布于 2015年10月21日. 估计阅读时间: 3 分钟 | 如何结合区块链技术,帮助企业降本增效?让我们深度了解几个成功的案例。

Bryanedds自称是一名软件异教徒。近日,他在Medium上历数了现代软件开发中存在的反模式。本文将扼要进行介绍。

  1. 业务思维偏爱短期利益
  2. 在软件开发工作中,考虑越长远,软件就会越健壮,成本就会越低,痛苦就会越少。但由于经济环境驱使,管理者采用了一种短视的思维方式。软件系统的完整性不仅没能成为应该受到尊重的约束,反而被看成了软件开发的障碍。

  3. 不合群就会被钉上十字架
  4. 不管你多么高效,不管你加了多少班,或者与同事合作得多好,只要你的想法与管理层出现了分歧,你就会被钉上十字架。因为你的工作是帮助管理层达成下一季度的预期。你必须修复上一季中本可以避免的缺陷,或者仅仅重构几段不相干的代码实现下一个拙劣的特性。

  5. 软件架构师成为政客
  6. 成为一名软件架构师的资格不是技术,而是具备强迫一线工程师以不可持续的方式实现软件功能的能力,因为这是满足短视的管理层所必须的,而构建精心设计的系统就不再是软件架构师的首要任务了。

  7. 忍受痛苦是你提供的商品
  8. 让你获得软件开发职位的不是你的技术能力,也不是你同其他工程技术人员合作的能力,因为日常工作只需要你很小的一块能力。真正让你获得职位的是你对莫名其妙的Bug和混乱代码的忍受能力。你不是一个问题解决者,而是一名问题忍受者。

  9. 周围的同事不支持变革
  10. 业务和管理人员短视,但与你共事的人比他们更短视。管理人员会考虑下一个报告期,而他们可能只考虑下一个工资期。

  11. 总是有人伺机“削(Undercut)”你
  12. 有人从不抱怨代码,也从不“浪费时间”梳理代码,并且总是最先终止“有害”的讨论。一旦团队的代码库变得混乱,他就会取代现有的软件架构师,成为新的负责人。

  13. 责任心被剥夺
  14. 集体代码所有是了让开发工作不中断,但它允许任何人以任何方式修改任何代码。这会导致“公地悲剧”。而实际上,有时候“阻塞”是必要的,高级工程师可以藉此防止代码库遭受短期思维侵害,确保软件以一种可持续的方式开发。Bryanedds认为,集体代码所有是自JavaScript出现以来最损害代码的事。

  15. 方法论成为管理工具
  16. 方法论无助于创建更好的软件,敏捷就是一个很好的例子。它开始时是一种合理的软件开发方式,但现在却变成了“Psych 101 MBA Bullshit”。

此外,Bryanedds还指出,不要期待新团队/项目中不存在这些反模式,商业软件开发是一种底线竞争,没有人会在乎开发者遭受的痛苦。


感谢郭蕾对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入InfoQ读者交流群InfoQ好读者)。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

深度内容

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT