• 作为技术专家,我们花了很多时间学习最新的技术、开发实践和工具。这些对我们所做的工作非常重要,因此我们理所当然地给予它们大量的关注。有很多资源可以用来学习这些信息,无论是博客文章、会议、认证、视频等等。不过,了解技术只是战斗的一半。软件的建立是有原因的,是为了解决现实世界中的问题,为了做到这一
  • ChatGPT改变了游戏规则,而且,更广泛地说,这种语言模型可能是我们这一代最重要的开发工具。(承认这一点需要一些谦虚,因为我们正在为数据科学家开发一个开发工具。) 但是,无论是ChatGPT还是一些更大的后代模型,都不可能编写出我们的软件中最困难
  • 上下文映射,最早是由Eric Evans在领域驱动设计中描述的,是一种轻量级的方法,用来描述系统和系统的一部分之间的关系。 它本身不是技术性的。它暴露了组织的政治和构建系统的团队。当你开始绘制时,连接两个系统的每条边都定义了一个上游和一个下 icon
  • 无所不在的语言UL超越了形式语义和任何现有的协约,因为它能够创造一个新的现实,这个现实有时会与一个不存在的词或概念联系在一起,由每个人在同一种语境上下文BC中分享和达成共识,这是ChatGPT无法处理的先验问题。 < icon
  • 领域驱动设计(DDD)是一种软件开发方法,强调理解问题领域、业务需求和用户的重要性。DDD不是一种具体的技术或工艺,而是一套原则和最佳实践,通过使代码与业务需求相一致,帮助开发人员构建更好的软件。 DDD的主要原则之一是 "泛在语言 icon
  • 如果您的组织活跃于多个业务渠道或业务线,则映射有界/限界上下文可能会稍微复杂一些。 在为 Avanscoperta 编写软件时,我们经常将不同的事物归类为限界上下文,例如“培训”、“咨询”、“计划”与“财务”。过了一段时间,整个事情开始变得 icon
  • VISA、万事达卡和美国运通卡充当清算和结算资金的卡网络。收单银行和发卡银行可以——而且通常——不同。 如果银行要在没有中介的情况下逐一结算交易,则每家银行都必须与所有其他银行结算交易。这是相当低效的。 icon
  • 软件的核心是处理和解决可用的业务上下文和问题。今天的企业业务领域通常是庞大而复杂的,并且正在增长/变化——以及接受这种增强的软件。领域驱动设计 (DDD) 是一种软件开发方法,其中软件工件与核心业务概念和目标完全一致。领域驱动设计由 icon
  • 过程思维的10条戒律(由ChatGPT生成):一.你应该认识到一切都是一个过程,没有任何事物,只有过程。 二.你应该承认一切都是相互联系和相互依存的。 三.你应该认识到,一切都在不断改变和适应。< icon
  • 微服务的旅程集中在将单体应用分解为可组合的、领域驱动的服务。创建较小的可组合服务有许多有价值的方面。较小的服务更容易部署和扩展。使用较小的可组合服务的整体系统弹性更强,因为故障可以被隔离。它还支持整个企业更多的灵活性和可重用性。 然而,微服务架构也 icon
  • 低语境(Low-context)文化是明确和直接的信息,人们相互告知真实的情况。因此,只需要少量的语境上下文就能理解低语境的交流,因为你需要知道的大多数东西都被清楚地表达出来了。 人类学家 Edward T. Hall在他 1976 年出版 icon
  • DRY是我遇到的第一个编程原则,可能也是我在成为开发者的第一年中唯一意识到的原则。它也可能是最简单的理解原则之一。如果你在你的代码中看到两件相同的东西,也许它们就应该是一件东西。这一点很难说得通。但是,我认为DRY就像其他的原则一样--它有它的位置,但最好是适度的。而我认为,由于它的普遍性和 icon
  • 在事件驱动架构的世界中,我们处理发送许多事件。然而,正如我们所知,尽管名称相同,但一件事并不总是等于另一件事。因此,为了区分这些事件,引入了两种名义类型的划分:领域事件和集成事件。 什么是领域事件?按照其他 icon
  • 微服务架构是开发具有竞争力的软件平台的基准,基于松散耦合的服务,易于更改、部署、横向扩展,同时也将更改和部署的风险降至最低。与 REST 同步调用相比,事件驱动是服务内通信,应该避免服务之间的耦合。但是,如果我们在设计上不小心,我们仍然可以通过使用事件来开发高度耦合的微服务。这将导致 icon
  • 自从 Hadoop 和 MapReduce 诞生以来,数据工程社区一直非常关注数据转换的商品化。所有 Hadoop 抽象,如 Hive、Pig、Crunch 等。在 Hadoop 之上构建以进一步简化数据转换。通过简化数据转换,Apache Spark 对 dbt 数据工程社区取得了重大飞跃 icon
  • CI/CD部署管道可以帮助开发软件和组织架构来促进快速流动,从而提高业务敏捷性。 任何软件交付工作的核心都应该是部署管道,Je icon
  • 聚合数据能简化它,但让我们失去了信号和我们需要理解我们所看到的内容的上下文。 聚合是分析时间序列数据的标准最佳实践,但它会通过剥离关键上下文而产生问题,以至于您甚至不知道自己失去了多少潜在洞察力。在这篇文章中,我将首先讨论聚合如何成为问题,然后通过 icon
  • 典型的创造力和发明的故事集中在寻找解决问题的新方法上: 詹姆斯-戴森找到了一种方法来调整工业旋风,以消除吸尘器中的袋子。 巴勃罗-毕加索和乔治-布拉克发展了立体主义,作为一种在同一幅画中包括几个场景的技术。 施乐PARC开发的桌面操作系统用一个空间用户界面取代 icon