首先的亚当和末后的亚当
You mean the father of economics and capitalism? That’s him. Perhaps you answer the question with “nope, he was an economist”. Or maybe “don’t be silly, he’s been dead for literally hundreds of years”.
您是经济学和资本主义之父吗? 就是他 也许您用“不,他是一位经济学家”来回答这个问题。 或者也许是“别傻,他已经死了几百年了”。
So how much can we really learn from a 300 year old economist? Let’s analyse those answers in more detail.
那么,我们可以真正从300岁的经济学家那里学到多少呢? 让我们更详细地分析这些答案。
“不,他是经济学家” (“Nope he was an economist”)
Strictly speaking he was a moral philosopher. More to the point, this assumes that the knowledge and practice of each and every discipline is mutually exclusive. I beg to differ.
严格来说,他是一个道德哲学家。 更重要的是,这假设每个学科的知识和实践都是互斥的。 我不敢苟同。
Software development owes its existence to knowledge from other disciplines. Many of the founding fathers of computing were mathematicians – Alan Turing and John von Neumann for example. Or Claude Shannon, founder of information theory and the binary digit or bit. Punch cards, the original source code of computer programming came from textile weaving.
软件开发的存在归因于其他学科的知识。 计算的许多创始者都是数学家,例如Alan Turing和John von Neumann。 或信息理论和二进制数字或位的创始人克劳德·香农(Claude Shannon)。 打Kong卡是计算机编程的原始源代码,它来自纺织编织。
We also benefit from a richness of metaphors from other disciplines. Software architecture is a building metaphor. Containers is a shipping metaphor. Technical debt is a financial metaphor. Swarming in Scrum is a natural science metaphor. Crossing disciplinary boundaries is an important source of insight and innovation.
我们还受益于其他学科的丰富隐喻。 软件体系结构是一种建筑隐喻。 容器是运输的隐喻。 技术债务是一种财务隐喻。 Scrum中的群策群力是自然科学的隐喻。 跨学科界限是洞察力和创新的重要来源。
“他已经死了数百年了” (“He’s been dead for literally hundreds of years”)
That presupposes that everything Agile represents started with the Agile Manifesto. It’s important to differentiate between creation and discovery. Newton only discovered gravity, he didn’t create it as it had always been there. In a similar manner, those who drafted the Agile manifesto documented a bunch of helpful things in the context of software development at the start of the 21st century. But is it possible that some of these things had been discovered before in totally different contexts? Surely not as far back as Adam Smith’s time though in the 18th century? Well ask a business strategist who reads Sun Tzu.
前提是敏捷代表的一切都是从敏捷宣言开始的。 区分创建和发现很重要。 牛顿只是发现了重力,他没有像以前那样创造重力。 以类似的方式,那些起草敏捷宣言的人在21世纪初的软件开发中记录了很多有用的东西。 但是是否有可能在完全不同的环境中发现了其中一些东西? 当然可以追溯到18世纪的亚当·史密斯(Adam Smith)时代吗? 问一个读《孙子兵法》的商业策略师。
So why the commonalities? I remember many years ago reading the Mythical Man Month and being struck by how much it resonated despite it describing the ways of software development back in the mid 1960s. Then it struck me why – the tech may have been wildly different but the people were not. They were acting with the same emotions and the same behavioural limitations as we do today.
那么为什么共有呢? 我记得很多年前读过《神话人月》,尽管它描述了1960年代中期的软件开发方式,却被它产生的共鸣所震惊。 这让我感到惊讶,为什么–技术可能大不相同,但人们却没有。 他们的行为和今天一样,具有相同的情感和行为限制。
We are but one of many common denominators that transcend boundaries of discipline and time; and there are many more from the ways of the natural world.
我们只是超越纪律和时间界限的众多共同特征之一。 还有更多来自自然界的方式。
Take one of the common factors between Lean manufacturing and Agile — that of flow. The basic principles of flow apply wherever we have a stock of materials or information that has to pass through a system which applies constraints on the processing/movement of these items. Consequently the tools have diverse origin and wide application.
考虑精益生产和敏捷之间的共同因素之一-流动的因素。 流程的基本原理适用于任何我们必须通过系统的材料或信息库存,该系统对这些项目的处理/移动施加了限制。 因此,这些工具具有不同的起源和广泛的应用。
The toolbox of flow includes queue theory from telecommunication; variation from statistics; kanban and pull from Lean manufacturing (although kanban was in turn inspired by Taiichi Ohno’s observation of supermarkets); and optimal batch size, as popularised by Don Reinertsen, from economics (economic order quantity).
流程工具箱包括电信的排队理论; 统计差异; 看板和精益生产的拉动(尽管看板又受到大野泰一观察超市的启发); 和最佳批次大小(由Don Reinertsen推广)是从经济学(经济订单数量)得出的。
These can be applied and the features of flow such as buffers, queues, lead times, etc can be observed in all sorts of fields from road to data traffic, retail to manufacturing, software or hardware development.
可以应用这些功能,并且可以在从道路到数据流量,零售到制造,软件或硬件开发的各种领域中观察到诸如缓冲区,队列,提前期等流的特征。
So even though Adam Smith would not understand the term Agile, he may understand some of the behaviours Agile is trying to promote. Let’s look and see.
因此,即使亚当·史密斯(Adam Smith)不理解“敏捷”一词,他也可能理解敏捷试图推广的某些行为。 让我们看看。
面对大象 (Addressing the Elephant)
Firstly let’s address the elephant in the room. Was this not the guy who espoused division of labour which fanned the flames of the industrial era and the mechanistic way of thinking? There lies experts, single points of failure, silos, even waterfall. Surely that is not Agile?
首先,让我们谈谈房间里的大象。 难道不是那种拥护分工的家伙,那煽动着工业时代的火焰和机械化的思维方式吗? 这里有专家,单点故障,孤岛,甚至瀑布。 当然那不是敏捷吗?
Well division of labour is still an important part of Agile. You don’t achieve technical excellence with skills such as TDD or SOLID principles without deep expertise and continual practice.
良好的分工仍然是敏捷的重要组成部分。 没有深厚的专业知识和持续的实践,您就无法利用TDD或SOLID原理等技能获得卓越的技术。
The issue is more excessive division of labour and no generalism.
问题是劳动分工过多,没有普遍主义。
How might Adam Smith respond to this criticism? More specifically we might describe to him that in software development excessive division of labour leads to developers behaving like code monkeys who constantly need spoon fed by micro managers and technical debt accrues and no team improvements occur. Well to be fair he did give us this disclaimer about division of labour:
亚当·斯密(Adam Smith)对这种批评有何回应? 更具体地说,我们可能会向他描述,在软件开发中,过度的劳动分工会导致开发人员的行为像代码猴子一样,他们不断需要由微型管理人员提供的汤匙和应计的技术债务,并且团队没有得到改善。 公平地说,他确实给了我们关于分工的免责声明:
“The man whose whole life is spent in performing a few simple operations, of which the effects, too, are perhaps always the same, or very nearly the same, has no occasion to exert his understanding, or to exercise his invention, in finding out expedients for removing difficulties which never occur. He naturally loses, therefore, the habit of such exertion”
“这个毕生致力于完成一些简单操作的人,其效果也许总是相同或几乎相同的,因此他没有机会发挥自己的理解力或进行发明发明,排除从未发生过的困难的权宜之计。 因此,他自然会失去这种锻炼的习惯”
There you have it – a 250 year old warning on the tin that we have largely ignored ever since.
在那里,您会发现–锡罐上已有250年历史的警告,此后我们就一直对此予以忽视。
Okay and what of the lack of resilience it creates? In his defence he did live in a simpler time. Context matters as we know. The example he gave of division of labour in a production process was in a pin factory. This was a fairly simple set of processes and a completely homogeneous output. Where lack of resilience becomes more of an issue is when there is more complexity of operation combined with variety of demand. Variety on a car production line for example where each customer requires different models, extras, colours, finishing, etc. Or even more so with the infinite variety of software development where every feature is novel. He did recognise the need for resilience when discussing a more complex system of his time, that of British colonial trading:
好的,它会导致缺乏弹性吗? 在他的辩护中,他确实生活在更简单的时期。 众所周知,上下文很重要。 他举一个生产过程中的劳动分工的例子是在一个销厂。 这是一组相当简单的过程和完全同质的输出。 缺乏弹性的问题变得更加严重,这是因为操作的复杂性和各种需求的结合。 汽车生产线上的品种繁多,例如每个客户需要不同的型号,配件,颜色,表面处理等。随着软件开发的种类繁多,每个功能都是新颖的,甚至更多。 在讨论他那个时代更复杂的系统(英国殖民贸易体系)时,他确实意识到了弹性的必要性:
“By suiting, besides, to one particular market only, so great a part of the industry and commerce of Great Britain, it has rendered the whole state of that industry and commerce more precarious and less secure, than if their produce had been accommodated to a greater variety of markets.”
“此外,由于只适合一个特定的市场,是英国工商业的重要组成部分,因此,与将其产品容纳到英国的情况相比,这使工商业的整个状况更加不稳定和不安全。市场种类更多。”
亚当·斯密(Adam Smith)饰演敏捷主义者 (Adam Smith as Agilist)
So let’s see what he said that might resonate in the Agile world.
因此,让我们看看他所说的可能会在敏捷世界引起共鸣。
Pull from the customer rather than feature factory:
从客户那里而不是特征工厂那里拉:
“Consumption is the sole end and purpose of all production; and the interest of the producer ought to be attended to, only so far as it may be necessary for promoting that of the consumer. The maxim is so perfectly self-evident, that it would be absurd to attempt to prove it. But in the mercantile system, the interest of the consumer is almost constantly sacrificed to that of the producer; and it seems to consider production, and not consumption, as the ultimate end and object of all industry and commerce.”
“消费是所有生产的唯一目的和目的; 生产者的利益应该得到关注,只有在促进消费者利益时才有必要。 格言是如此不言而喻,以至于试图证明它是荒谬的。 但是在商业体系中,消费者的利益几乎总是被牺牲于生产者的利益。 而且似乎将生产而不是消费视为所有工商业的最终目的。”
Less work in process, smaller batches to increase ROI:
减少工作量,减少批次以提高投资回报率:
“If a poor workman was obliged to purchase a month’s or six months’ provisions at a time, a great part of the stock which he employs as a capital in the instruments of his trade, or in the furniture of his shop, and which yields him a revenue, he would be forced to place in that part of his stock which is reserved for immediate consumption, and which yields him no revenue. Nothing can be more convenient for such a person than to be able to purchase his subsistence from day to day, or even from hour to hour, as he wants it. He is thereby enabled to employ almost his whole stock as a capital. He is thus enabled to furnish work to a greater value”
“如果一个贫穷的工人不得不一次购买一个月或六个月的粮食,那么他将很大一部分库存用作其贸易工具或商店家具中的资本,从而产生收益。如果他获得了收入,则将被迫将其保留的那部分库存用于立即消费,这将使他没有收入。 对于这样的人,没有什么比他想要的每天甚至一天甚至一个小时能购买自己的生活更方便的了。 因此,他得以将几乎全部股份用作资本。 因此,他有能力提供更大的价值”
Complex v mechanistic thinking:
复杂的v机械思维:
(the man of system) seems to imagine that he can arrange the different members of a great society with as much ease as the hand arranges the different pieces upon a chess-board. He does not consider that the pieces upon the chess-board have no other principle of motion besides that which the hand impresses upon them; but that, in the great chess-board of human society, every single piece has a principle of motion of its own, altogether different from that which the legislature might choose to impress upon it.”
(系统的人)似乎想像他可以轻松地安排伟大社会中的不同成员,就像手将不同部分布置在国际象棋棋盘上一样。 他不认为棋盘上的棋子除了手会压在棋子上的原理外,没有其他运动原理。 但是,在人类社会伟大的国际象棋棋盘中,每一个棋子都有其自身的运动原理,与立法机关可能选择施加的运动原理完全不同。”
Local over system optimisation:
本地优化系统:
“To promote the little interest of one little order of men in one country, it hurts the interest of all other orders of men in that country, and of all the men in all other countries.”
“为了促进一个国家的一小部分人的微不足道,这损害了该国所有其他人的阶级以及其他所有国家的人的利益。”
Sustainable pace/Muri
可持续步伐/穆里
“I believe, in every sort of trade, that the man who works so moderately, as to be able to work constantly, not only preserves his health the longest, but, in the course of the year, executes the greatest quantity of work.”
“我相信,在各种行业中,工作适度,能够持续工作的人不仅可以使自己的健康保持最长的时间,而且在这一年中可以完成最多的工作。 ”
Autonomy required for mastery:
掌握所需的自主权:
“all the most important improvements, either in machinery, or in the arrangement and distribution of work, which facilitate and abridge labour have been the discoveries of freemen.”
“在机械或工作的安排和分配方面,所有最重要的改进都是促进和减少劳动,这是自由人的发现。”
Knowledge sharing and open source:
知识共享和开源:
“But nothing seems more likely to establish this equality of force, than that mutual communication of knowledge, and of all sorts of improvements, which an extensive commerce from all countries to all countries naturally, or rather necessarily, carries along with it”
“但是似乎没有什么比建立相互的知识交流和各种改进更能建立这种力量平等的了,这是从各国到各国的广泛贸易自然而然地或必然地伴随着的。”
Cynefin, descent into chaos:
Cynefin,陷入混乱:
“Those mutual restraints have put an end to almost all fair commerce between the two nations; and smugglers are now the principal importers, either of British goods into France, or of French goods into Great Britain.”
“这些相互制约已经终结了两国之间几乎所有的公平贸易; 现在,走私者是主要进口国,无论是从英国进口到法国的商品,还是从法国进口到英国的商品。”
摘要 (Summary)
So when you are considering your next book in the world of software development and Agile, consider casting your net further than the latest tech book on Kubernetes or Kafka, or your favourite framework such as Scrum or Kanban. Maybe try a different field entirely or even delve into the depths of history. Learning is everywhere.
因此,当您考虑在软件开发和敏捷领域中的下一本书时,考虑将您的网络投放到比Kubernetes或Kafka或您喜欢的框架(如Scrum或Kanban)上的最新技术书籍更远的地方。 也许完全尝试其他领域,甚至深入研究历史的深处。 学习无处不在。
翻译自: https://medium.com/swlh/was-adam-smith-an-agilist-3870a5b2fa9f
首先的亚当和末后的亚当