盖尔-沙普利算法_盖尔定律-及其与初创企业的关系
盖尔-沙普利算法
I realized something fascinating the other day: I realized that, as a startup entrepreneur and founder, I’m a builder of systems.
前几天,我意识到了一件令人着迷的事情:我意识到,作为一名初创企业家和创始人,我是系统构建者。
In other words, my entire job as a founder is to build and connect interdependent systems that (hopefully) work exceedingly well together.
换句话说,我作为创始人的整个工作是建立并连接相互依存的系统,这些系统(希望)能够很好地协同工作。
And, if I can construct those systems in a way that’s both simple and approachable enough to be understood and to excite others, then, it’ll be enough to convince independent, creative, and motivated people to join in my efforts to engineer even more systems (and even more relationships between those systems) that will eventually coalesce into the form of a world-class organization.
而且,如果我能够以一种既简单又易于使用的方式构建这些系统,使其易于理解并激发其他人的兴趣,那么就足以说服独立,有创造力和积极性的人们加入我的工作,以进行更多的工程设计系统( 甚至这些系统之间的更多关系 ),最终将合并为世界一流的组织形式。
I mean, what is a business if not a collection of systems, organized in a way to maximize throughput, optimize performance, and produce out-sized results (i.e. profits)?
我的意思是,如果不是系统集合,那么组织的业务是如何以最大化吞吐量,优化性能并产生超额结果(即利润)的方式进行的?
And this is where startups have an unbelievable advantage over older and much larger companies: A startup has the opportunity to decide, for itself, not only what the fundamental and principal systems will be and how they will operate, but also the way in which the organization decides on what new systems to build and how they will integrate and be added to the existing, larger metasystem.
在这里,初创公司比起规模更大的公司具有不可思议的优势:初创公司有机会自己决定基本系统和主要系统的类型以及它们的运作方式,以及决策方式。组织决定要构建什么新 系统 ,以及如何将其集成并添加到现有的大型元系统中。
And the “meta system” is simply the collection of beliefs and the resulting behaviors that are have been generalized and normalized across the entire organism. One might call this organizational culture; hopefully, it’s one built on trust.
而“元系统”只是信念的集合以及由此产生的行为,这些信念已在整个有机体中得到了概括和归一化。 人们可能将这种组织文化称为“组织文化”。 希望这是建立在信任之上的 。
Gall’s Law is especially applicable and important for new companies — they need to take the time the necessary time to intentionally and explicitly think upon the systems that they use so that they will have a fighting chance to construct their world-changing ideas into real services and products that people truly want.
盖尔定律对新公司尤其适用,对新公司也很重要-他们需要花一些时间,有意识地,明确地思考他们使用的系统,以便他们有很大的机会将改变世界的想法构建成真实的服务,人们真正想要的产品。
You see, John Gall’s work has become the rule of thumb for systems design and has been used as a very strong argument for underspecification (which is where all startups begin):
您会看到, 约翰·加尔(John Gall)的工作已成为系统设计的经验法则,并被用作规格不足(这是所有初创公司开始的地方)的非常有力的论据:
A complex system that works is invariably found to have evolved from a simple system that worked. A complex system designed from scratch never works and cannot be patched up to make it work. You have to start over with a simple working system.
总是可以找到一个有效的复杂系统,它是从一个有效的简单系统演变而来的。 从头开始设计的复杂系统永远无法工作,也无法进行修补以使其正常工作。 您必须从一个简单的工作系统开始。
This is where startups have to be hyper-vigilant and emotionally aware and mature enough to know that they can do irreparable and permanent harm to their chances of success if they, either intentionally or accidentally, divorce themselves from the foundational system(s) that made their unique insight actually usable.
在这里,初创公司必须保持高度警惕,并在情绪上足够敏感,并且要足够成熟,才能知道如果他们有意或无意地将自己脱离了成功的基础体系,会对成功机会造成不可挽回的永久损害。他们独特的见解实际上是有用的。
I know because I’ve done this to myself in the past: I’ve built over-complicated and over-engineered systems and introduced them to my teams only to discover that they’ve done much more harm than good!
我知道,因为过去我对自己这样做:我构建了过于复杂和过度工程化的系统,并将其介绍给我的团队,只是发现它们的弊大于利!
In addition, some businesses codify these principle and original systems into mission or vision statements or prop them up as part of their corporate value statements while others will not. Even the act of codifying an understood and used system is an intentional decision by the founding team and leadership!
此外,有些企业将这些原则和原始系统编纂为使命或愿景陈述,或将其作为公司价值陈述的一部分进行支撑,而其他企业则没有。 甚至将已理解和使用过的系统编成代码的行为也是创始团队和领导者的有意决定!
And the temptation to over-engineer something (anything!) is already quite large; add a bit of business momentum, a few new hires, a smidge (or a lot) of venture capital, and a product that seems to be working, and you’ll suddenly wake up one morning and realize that you and your team is completely bloated and overweight with dozens of barely-used SaaS web services and a ton of (made-up) processes that, with an honest look, appear to exist for their own sake.
并且过度设计某些东西(任何东西!)的诱惑已经相当大了。 加上一些业务动力,一些新员工,一小部分(或很多)风险投资以及一种似乎有效的产品,您会在一个早晨突然醒来,意识到您和您的团队已经完全数十种几乎未使用的SaaS Web服务和大量(虚构的)进程processes肿和超重,这些进程看上去很诚实,似乎是为自己而存在的。
Good job startup founder — you just played yourself.
做得好创业的创始人-您只是扮演自己。
And we had such a good thing going! You started simply and things were working just fine and seemingly overnight you’ve backed yourself into a complex web of systems that “cannot be patched up to make it work” — you’re going to have to nuke a few things to get back to the baseline and the foundational “gem” that was working.
而且我们做得很好! 您刚开始时一切都很好,似乎一夜之间,您已经将自己备份到一个复杂的系统网络中,“无法对其进行补丁以使其正常工作” –您将不得不做一些事情以恢复到原来的状态。基线和起作用的基础“宝石”。
This is why most larger companies can’t compete against the much smaller and more agile startups — the cost of reverse engineering or deconstructing and dismantling a dysfunctional, complex system is oftentimes too large and too destructive to be worth the effort!
这就是为什么大多数大型公司无法与规模更小,更敏捷的初创公司竞争的原因–逆向工程或解构和拆除功能失调的复杂系统的成本通常太大,破坏性太大,不值得付出努力!
Consequently, the dysfunctional system is “good enough” for most people and the larger organization and very few folks are motivated to “raise the white flag” and advocate for what is truly required: Starting over with a working, simple system.
因此,功能失调的系统对大多数人和较大的组织来说“足够好”,很少有人愿意“举起白旗”并倡导真正需要的东西:从一个工作,简单的系统开始。
Obviously, startups that have intentionally built a culture of introspection and ruthlessly review their outdated and outmoded systems will fare much, much better than their peers and, of course, their larger enterprise competitors.
显然,有意建立自省文化并无情地审查其过时和过时的系统的初创公司的表现要好得多,远胜于同行,当然也比其较大的企业竞争对手。
Startups begin their lives with simple systems and naturally expand and grow new systems that are generally bolted-on in a fashion that most would consider random and hodge-podge. The collection of simple systems form complex systems and some of these work for a long time while others break down very quickly.
初创公司以简单的系统开始他们的生活,并自然地扩展和发展通常以大多数人认为是随机的和杂乱无章的方式固定的新系统。 简单系统的集合形成了复杂的系统,其中一些工作了很长时间,而另一些则很快崩溃了。
The organization that recognizes the delta of successful and unsuccessful integrations between the new systems and the old are going to succeed (and survive) much longer than those that willfully ignore the dysfunction or naively assume that it’ll all work itself out along the way.
该组织认识到新系统与旧系统之间成功和不成功的整合的增量比那些愿意忽略功能失调或天真的认为它会在整个过程中自行解决的人要成功(并生存)更长。
And the organizations that not only recognize quickly and intentionally work together actively towards fixing the issue but also are willing to, if the situation requires extreme action, dismantle entire systems in order to build new, simpler ones to support the weight of a new and altogether different organization (startups can fundamentally change as often as every 6 months!).
而且,不仅要Swift并有意识地积极合作以解决问题的组织,而且还愿意在情况需要采取极端行动的情况下拆除整个系统,以构建新的,更简单的系统来支撑新系统的重量。不同的组织(从根本上说,初创公司每6个月可以更改一次!)。
Needless to say, it is exceedingly difficult to strategically and tactically keep systems simple while adding to them wisely and intentionally as the organization scales.
不用说,要在战略上和战术上保持系统简单,同时随着组织规模的扩大而明智地和有意地添加它们,是极其困难的。
This isn’t to say that I’m an expert; rather, I’m emotionally aware enough to know (and have empirical evidence) that organizations tend toward chaos and entropy without a steady and consistent review of not just what is being done but how it’s being done.
这并不是说我是专家; 相反,我在情感上足够了解,可以知道(并有经验证据),组织会趋向于混乱和熵,而不是对所做的事情及其进行的方式进行不间断的,一致的审查。
And, if I’m to be even more honest, I know that I tend to introduce entropy to systems if I’m not careful! In fact, I know that even if I try my hardest it’ll be an uphill battle every single step of the way.
而且,如果说实话,我知道如果不注意的话,我倾向于将熵引入系统! 实际上,我知道,即使我尽力而为,每步都将是一场艰苦的战斗。
It is in the team’s best interest to do some, if not all, of the following:
进行某些(如果不是全部)以下活动符合团队的最大利益:
- Schedule in time to review your systems by team and/or organizational department (e.g. ops, engineering, marketing, sales, etc.).及时安排团队和/或组织部门(例如,操作,工程,市场营销,销售等)对系统进行审查。
- Identify, as best as you can, the principle (original) simple system that eventually became a complex one and clarifies clearly the (expected) outputs and the persons that should be involved.尽可能地确定最终成为复杂系统的原理(原始)简单系统,并明确阐明(预期的)输出结果和应涉及的人员。
- Outline and identify the interdependencies of the system that’s being reviewed; that is to say, the other systems that have direct interplay with the one in the review.概述并确定正在审查的系统的相互依赖性; 也就是说,与评论中的系统有直接相互作用的其他系统。
- Ruthlessly judge the system and adjust, prune, or outright destroy it and then build a new, simpler version (or maybe go back to the Genesis version).无情地判断系统,然后调整,修剪或彻底销毁它,然后构建一个新的,更简单的版本(或者回到Genesis版本)。
- Consensus might be required or not, but, regardless of how your team makes decisions, make sure that everyone is on board with the new (and improved!) system and that everyone firmly commits for accountability.可能需要达成共识,但是无论您的团队如何做出决定,都要确保每个人都在使用新的(改进的!)系统,并且每个人都坚定地承担责任。
- Time-box the experiment and set a time for review of the newly-changed system. Calendar in a retrospective.为实验设置时间,并设置一个时间来审查新更改的系统。 回顾中的日历。
- Rinse and repeat.冲洗并重复。
This is a big deal for my company and me, especially since we’re in the middle of growing our team. It’s also relevant because I’ve realized that it’s high time for us to review the systems that we’ve built and, with a fine-tooth comb, take the time required to optimize and (re)build the foundation of our company.
对于我和我的公司来说,这都是一件大事,特别是因为我们正处于不断壮大的团队中 。 这也很重要,因为我已经意识到,现在是我们审查构建的系统的时候了,并且用细齿梳花费时间来优化和(重新)构建公司的基础。
How else will we ever get to the moon? ? ? ?
我们还能怎么登上月球? ? ? ?
John is the software engineer at YEN, a social platform that combines the power of social networks and multiple cryptocurrency exchanges.
John 是YEN的软件工程师, YEN是一个社交平台,结合了社交网络和多种加密货币交易所的功能。
翻译自: https://www.freecodecamp.org/news/galls-law-and-what-it-has-to-do-with-startups-fd85dfbd6703/
盖尔-沙普利算法
相关文章:

使用VS Code开发.Net Core 2.0 MVC Web应用程序教程之三(配置文件读取)
干了一天的活,还有点时间,给兄弟们写点东西吧。 大家有没有发现一个问题?那就是在.Net Core的MVC项目里面,没有.config文件了!!!同志们,没有config文件了啊,这样搞&#…

小程序云开发数据库在网站读取
使用TCB JS SDK Tencent Cloud Base(TCB) JavaScript SDK 介绍 TCB 提供开发应用所需服务和基础设施。TCB JS SDK 让你可以在网页端使用 JavaScript 代码服务访问 TCB 的的服务。你可以使用该 SDK 构建自己的公众号页面或者独立的网站等 Web 服务。 安装 TCB JS SDK 可以…

设计模式学习心得4
1.组合模式 定义一个父类,其中包括所有子类的方法接口,那么对于任何一个子类来说对外界都是封闭的,外界只调用父类的接口,而不知道子类是否有实现。 2.迭代器模式 这个很常见,在C中常常会用在标准模版类中,…

react创建组件_如何使用React创建时间轴组件
react创建组件These days I’ve been working on a new page for my website. I wanted to have a Timeline to showcase some of my professional accomplishments over the years.这些天来,我一直在为网站创建新页面。 我希望有一个时间表来展示我多年来的一些专业…

oracle根据一张表更新另外一张表
知道是两张表进行更新,之前作过mysql的,直接就写了: update a,b set a.code b.code wehre a.id b.id 然后就报错了,上网查了下知道oracle不能这样子写 之后找到如下的办法: UPDATE a set a.code (select b.code from b where…

应用内设置语言不重启方法
1、设置本应用方法网上有很多,大概如下 Resources resources getResources(); Configuration config resources.getConfiguration(); DisplayMetrics dm resources.getDisplayMetrics(); config.locale locale; //目标语言 resources.updateConfiguration(confi…

小程序内容审核违规过滤,在小程序使用security.msgSecCheck
使用微信提供的API security.msgSecCheck 查看文档 1.开通云开发,创建云环境。 2.在云函数的目录中,创建一个云函数(ContentCheck),如果小程序代码没有云函数的目录,可以在 project.config.json 目录中配置…

如何在JavaScript中切片和拼接数组
.slice() and .splice() are similar methods in JavaScript. They look similar, they sound similar, and they do similar things. For those reasons, it’s important to know the differences between them. Also, they’re used very often, so understanding their usa…

jQuery中getJSON跨域原理详解
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcytp28 jQuery中getJSON跨域原理详解 前几天我再开发一个叫 河蟹工具条 的时候,其中有个功能就是获取本页面的短网址。 这个想法是好的,可是在我付诸于行动的时候,发…

样式集(七)仿微信发现页样式
效果图: <!--pages/find/find.wxml--><include src"/components/common/common" /> <view class"item" catchtap"nav1"><image class"icon" mode"widthFix" src"/images/icon_5.png&q…

html向js传递id
html获取id方法: <div id"thediv1" style"display:block" onclick"ceshi(this.id)">技术A组</div> this.id ------>本身id转载于:https://www.cnblogs.com/wanlibingfeng/p/7613575.html

javascript功能_功能性JavaScript简介
javascript功能Hey everybody! I’ve written a book called Discover Functional JavaScript, and it’s now ready in both paperback and Kindle formats.大家好! 我已经写了一本书《 发现功能JavaScript》 ,现在已经可以使用平装本和Kindle格式。 A…

样式集,小程序群聊,聊天室样式,效果图
效果图 注:(码云 group_chat_yun ) 代码: <!-- <view class"top"><image class"page_editright" catchtap"navBack" mode"widthFix" src"/images/editright.png&quo…

GeoQuiz项目的开发与总结2
时间过得很快,第二阶段的学习结束了。 本周的主要工作是完成了Geoquiz项目的剩余部分。 首先是学到了些什么,最主要的是工作的流程,然后是界面的布局,菜单栏的设计到等。当然我觉得我学到的应该是工作制作的思维方式吧。 再来说说…

【12.16】VC++调用Word OLE进行自动化生成报表
! 12-16更新 初始化博客转载于:https://www.cnblogs.com/miki-52/p/5052689.html

python timber_如何使用Timber更有效地记录日志
python timberby Ayusch Jain通过Ayusch Jain 如何使用Timber更有效地记录日志 (How to log more efficiently with Timber) Logging is one of the most used utilities in the Android framework. It is really helpful in debugging your code when debugging by break-poi…

node 实现blog博客
https://cnodejs.org/topic/581b0c4ebb9452c9052e7acb转载于:https://www.cnblogs.com/zhangshuda/p/7640363.html

小程序输入框导致界面上移,在输入的时候固定住页面的解决代码
效果: 代码: <view class"comment" style"bottom:{{bottom}}px"><view class"emoji_block" wx:if{{emoji_block_show}}><view wx:for{{connectemoji}} catchtap"add_biaoqing" id"{{item}}…

react中纯函数_如何在纯React中创建电子邮件芯片
react中纯函数by Andreas Remdt由Andreas Remdt 如何在纯React中创建电子邮件芯片 (How to create email chips in pure React) Imagine that you, the good-looking developer (yes, I’m talking to you!), want to build an invitation form where users can add one or mo…
servlet程序HTTP Status 500 - Error instantiating servlet class 解决
一、项目存放路径问题(最常见) 在安装Tomcat时,运行程序都正常,但却打不开http://localhost:8080/,在Tomcat目录webapps下也找不到自己做的项目,这时因为你做的项目没有部署到webapps目录下,倒霉的时候就会遇到报错HTT…

ASP.NET将原始图片按照指定尺寸等比例缩放显示图片
网站上可能会有很多图片,比如产品图片等,而且他们可能大小不一,宽度和高度也不一定一样,有的很大有的很小。如果放在一张网页上,可能会破坏版面,但是如果强制让他们按照指定的宽度和高度显示,因…

前端开发框架选择
Vue Vant 适用场景:开发移动端 (vue) 上手难度:1 Vant是一款很好用的移动端UI框架,非常轻便,适合小型项目 https://vant-contrib.gitee.io/vant/#/zh-CN/ 微信小程序 适用场景:微信小程序(小程序原生框架…

anki_Anki如何挽救我的工程生涯
ankiby Jeffrey Shek通过Jeffrey Shek Anki如何挽救我的工程生涯 (How Anki saved my Engineering Career) I was burned out and my software career was stalling just three years in. My memory sucked. Was my poor memory from stress, lack of sleep or was it always …

信息安全系统设计基础期末总结
【博客汇总】 一、每周读书笔记链接汇总 •[第二周读书笔记] http://www.cnblogs.com/20135302wei/p/4842480.html •[第三周读书笔记] http://www.cnblogs.com/20135302wei/p/4858760.html •[第四周读书笔记] http://www.cnblogs.com/20135302wei/p/4870113.html •[第五周读…

方法 retrun 异步的值,创建一个变量直接等于一个异步方法返回的值
需求:我想创建一个变量,他的值是一个openid, openid 从 getOpenid (封装的一个异步方法) 里面返回,通常调用 getOpenid ,会返回一个Promise 对象,.then 之后才能得到值,例如: //模拟一个异步方…

ps混合模式glsl代码
https://github.com/jamieowen/glsl-blend 转载于:https://www.cnblogs.com/guochen/p/7645227.html

应用程序启动器 标记为信任_为什么您今天不能信任应用程序-以及如何解决它...
应用程序启动器 标记为信任亲爱的每家高科技公司,请窃取这个想法 (Dear Every Single Tech Company, Please Steal This Idea) When you send a photo to someone, your messaging app actually first sends the photo to an app’s server, which then sends the p…

小程序客服自动回复图片,云开发的实现
小程序先开通云开发,创建一个文件夹,并配置为云函数的目录 小程序客服自动回复图片实现步骤: 1.云函数接收消息推送 第一步:开发者工具云开发控制台中增加配置 打开云开发控制台,到设置 tab 中选择全局设置 - 添加消…

ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务解决
方法1: a、通过oracle 工具 Net Configuration Assistant 重新配置监听,注意如果有双网卡请配置第一块网上IP。如何知道哪一块是一块网卡,可以通过ipconfig命令查看最上面的ip就是一块网卡的 b、通过Net Configuration Assistant 工具配置 “…

r语言 编辑 d3.js_d3.js的语言介绍
r语言 编辑 d3.jsby Matt Oxley由马特奥克斯利(Matt Oxley) d3.js的语言介绍 (A linguistic introduction to d3.js) 如何从一个试探者变成一个自信的用户 (How to go from a tentative to a confident user) d3.js is a fantastic library — but I can honestly tell you th…