技术债务

     

更小的代码评审提高效率

52 3K

在软件开发中,代码审查(代码评审)在帮助及早检测应用程序源代码中的问题并促进团队成员之间的协作方面发挥着重要作用。将代码审查分解为更易于管理的部分可以产生巨大的好处。审阅周期越短,就越容易理解。换句话.

两种类型的科技公司

107

本文批评了科技公司的两个极端行为: 第一个只关心可量化的结果,并将技术债务归咎于工程师; 第二种情况是,员工整天花在很少阅读的文档和配置上,而初级工程师则希望使用流行的工具。 虽然两者同样糟糕,但技术.

迁移:唯一可扩展的技术债务解决方案

118 2K

我参与过的最有趣的迁移是 Uber 从 Puppet 管理的服务迁移到完全自助式的供应模式,在这种模式下,公司的任何工程师都可以通过两次点击启动一项新服务。他们不仅可以,而且还做到了,在服务完成时,每.

历史上代价最高的 11 个软件错误

293 6K

软件错误造成的经济损失取决于几个因素。首先,支付开发人员和软件工程师来解决混乱的直接成本。然后就是停机、数据丢失和交易浪费。在此之后,还需要考虑声誉受损。任何遭受灾难性软件错误的组织都将失去客户和更广.

英国伯明翰因甲骨文IT而破产?

575

欧洲最大的地方当局伯明翰市议会宣布陷入财务困境,因为陷入困境的甲骨文项目成本从 2000 万英镑飙升至约 1 亿英镑(1.255 亿美元)。5 月,伯明翰市议会表示,将为其 Oracle ERP 系统.

美国国税局还在使用最古老的企业软件

241

据报道,国际货币基金组织多达 2000 万行的代码是用汇编语言编写的--这是任何现代化的一个主要障碍,因为这种代码是 System/360 结构所特有的,因此除了 IBM 大型机之外无法在其他任何设备.

幽默:企业软件

417
.

吐槽:低质量代码对业务影响最大

446
对 39 个专有生产代码库的定量研究结果:开发人员花费更多的时间来解决低质量源代码中的问题。对于类似复杂性的更改,低质量代码的更改实现时间平均要长2倍以上。代码质量仍然是一个抽象的概念,无法在业务层面.

用Rust很难编写出糟糕的代码

468

"坏代码无处不在。Rust让坏代码变得更难。Tangram Vision正在全心全意地拥抱Rust。嗨,我是布兰登-麦纳尔,Tangram Vision公司的首席执行官和联合创始人,这是一家感知传感器.

什么是认知重构?

4516 1

认知重构、或称重新构思问题(Reframe the Problem):是指从不同的角度来看待当前的情况。重构背后的基本理念是,一个人的观点取决于他所处的框架(背景上下文)。当框架被改变时,意义就会改变.

抽象是昂贵的 - specbranch

951 5K

当你建立一个计算机系统的时候,一些小事情就开始出现了: 也许一个数据库查询对于你正在建立的功能来说是尴尬的, 或者你发现你的服务器在传输数千兆字节的十六进制ASCII数据时陷入困境, 或者你的应用程序.

清晰代码:如何编写易于阅读的代码 - Ryan

1092 1 13K

我们将讨论为什么编写更多可读的代码,而不是简明(短)的代码。之后,以下是关于如何做到这一点的策略: 变量、类和函数的命名 辅助函数 代码注释 枚举/字典/密封类/等等。 包的组织和命名 效率来自于更少.

软件工程一些最佳实践 - simonwillison

1102 4K

许多团队也将考虑“最佳实践”的一些软件工程实践,下面是一些建议:1、文档与代码在同一个 repo 中的内部文件最重要的特点是信任:人们是否相信文件既存在又是最新的?如果他们不相信,他们就不会去读它或为.

为什么我不做 TDD? - Shai

1195 1 2K

编写大量的测试。这怎么可能是坏事呢?但随着时间的推移,我从另一个角度看待它。我认为它是一个非常有限的工具,有非常具体的用例。它不适合我所建立的项目类型,而且经常阻碍它应该促进的流动过程。在TDD其中,.

处理坏代码的 4 种策略

1353 2K

坏代码时有发生——但你不需要成为坏人来打败它。从更轻松的角度来看,糟糕的坏代码还会产生充足的就业机会: 需要许多优秀的开发人员修复错误的代码。 需要一两个高级开发人员审查代码并确保它不会再次变坏。 可.

Rust能让我写出好的代码 - Reddit

1334 1

Java是 "强类型 "的,但来自java这种督促并没有让我的代码结构变得更好。例如,Java能让你使用UnsignedInteger类型,但人们通常不会使用它。相反,建立“类”的感觉是很麻烦的,有很.

软件开发是非常主观的 - vadim

1693 1 2K

你们中的大多数人都熟悉加入一家新公司的感觉,并有那种重写一切的冲动。看到你的新团队成员几年前犯下的亵渎神明的行为,让你的眼睛很痛。当然,你知道的更多,你会在开发该功能时遵循最佳实践。对吗?可能是吧。但.

你不需要微服务? - itnext

2001 1 5K

亮点:微服务并不能确保良好的模块化:如果您使用微服务足够多,您可能会构建或借用一些不错的工具来简化服务之间的通信。但是,如果你不小心,你最终会得到一个紧密耦合的微服务式单体,每个函数都有大量的 HTT.

Go与C#的比较 - Reddit

4435 4 3K

我目前用这两种语言编程,而且我确实喜欢这两种语言--这是我最喜欢的两种编程语言,而且我觉得这两种语言都是我学习过程中的重要入门。C#有很多语法糖,虽然它可以(而且经常被)滥用,但可以减少很多操作的冗长.

Golang不利于重构升级? - fasterthanli

1217 1 2K

本文作者曾经发布《我想离开Golang先生的狂野之旅》,该文反复出现在Reddit、Lobste.rs、HackerNews等地方引起广泛争议,本文是其最新文章,主要指出go虽然很容易上手,但是随着系.

Twitter能公开其算法吗?

806 1
恰逢马斯克收购推特之际,马斯克表示将公开推特的算法,最近推特新增又删除了一个名为“算法”却无代码的GitHub存储库,一些人认为这是在与马斯克开玩笑,更专业的观点如下:一些 Reddit 用户将此视为.

你见过一个有着11,000行的源代码文件吗? - Austin

617 2K

很久以前,在我的第一份软件工作中,我收到了一份关于一个内部产品的错误报告,我甚至不知道这个产品的存在。结果发现这是一个应用程序,基本上提供了公司内任何员工可能需要的所有表格。基本上是一个万能的资源。你.

BBC如何使用团队拓扑构建内部核心平台?

911 3K

在软件工程方面,我们的愿景是让 BBC 以其工程和内容而闻名。为此,我们必须进一步发展 BBC 作为产品和技术公司的理念。我们的资产中有数百个微服务,所以我们有跨学科团队负责每一个。我们尽最大努力在赋.

如何消除组织债务? - Aaron

601

财务和技术债务现在在很大程度上是众所周知的概念,它们在组织中发挥着极其重要的作用。但是存在第三种债务,可能比它的任何一种债务都更有害,任何希望在 21 世纪建立可持续组织的人都需要了解它。去年,创业大.

RefactorFirst:寻找Java代码库中无所不包的大型“上帝”类

1090
这个 Java 代码库工具将帮助您识别应该首先重构的上帝类,也就是意大利面条的“大泥球”类,代码很长都混沌编织在一起的类,这样的上帝类往往是出现Bug最多的地方,也是技术债务中的核心债务,需要重构甚至.