alc-beijing / alc-site

The web site of the ALC Beijing (Apache Local Community Beijing)
https://alc-beijing.github.io/alc-site/
Apache License 2.0
81 stars 35 forks source link

[Podcast] 使用开源的技术债 #180

Closed WillemJiang closed 1 year ago

WillemJiang commented 1 year ago

在 Ibrahim博士的技术债与开源开发报告中列举了目前企业使用第三方开源项目常见的技术债问题。

技术债务,在软件开发中的定义有点类似于现实世界的 经济债务,指的是维护源代码的成本,这些成本主要是由偏离了联合(joint )开发的主分支引起的。

欠下技术债务会带来的一系列的问题

欠下技术债务,或者说累积技术债务,对于公司会产生很多的负面影响,例如:

  • 代码维护的高昂代价
  • 创新的匮乏与拖沓的开发周期
  • 需不断交付的债务利息
  • 主分支中可能缺少新功能,或者必须将所有新开发内容向后移植到内部分支中。
  • 内部版本和上游版本差异太大,因此需要投入额外的精力去做和上游一样重复的工作。 最糟糕的后果是对代码库的长期可维护性的影响,组织经常会发现只有自己在维护了一个 fork 版。

最后给出通过开源解决技术债务的路径。

与上游保持一致的开发可以保证您没有或几乎没有技术债务。但是,这需要加入且积极参与上游开源项目。您不能强制上游一直朝着有利于您的方向发展。尽管如此,您仍然可以通过为它做贡献,将您的目标/意愿分享给上游并影响其他贡献者了解您的需求,进而影响上游社区。.

在建盛写的在为什么基于成功的开源项目的商业产品会失败? 通过自己的亲身经历解释了这种技术债的可怕。

姜宁在自己的博客上游优先地开发 中也袒露了上游开发者的心声。

期望通过这次播客大家可以了解使用开源项目可能产生的技术债务问题, 并且通过积极拥抱开源社区,参与上游项目的开发,降低技术债所带来的风险。

lijiangsheng1 commented 1 year ago

建议:可以谈一谈,为什么很难在实际工作中感到债务压力?或者说如何让开发者在意起来~

serenallttyy commented 1 year ago

1、技术债是什么? 2、技术债表现出来的症状是什么样子的?外在表现? 3、技术债会造成什么后果?危害性 4、技术债产生的原因? 5、如何“还债”?技术债 偿还指南?可以不还吗?(直接摆烂哈哈🤣)可以分期还吗?有利息吗?不同的债务是否要用不同的方法解决?(如何对症下药) 6、如何避免欠债?哈哈👀与其后面费劲填坑,我们不如从一开始就避免欠债。 如果把代码编写的更加简洁,可以避免产生技术债吗? 7、开源对技术债的作用?

WillemJiang commented 1 year ago

2023年5月10 日 下午已经录制了一期节目。

WillemJiang commented 1 year ago

节目已经发布 https://www.ximalaya.com/sound/636402294