[注意:此处为长版本。]
我将谈论我在当前公司内部传播教学文化方面所做的各种实验。 在继续进行之前,我想概述一下尝试解决此问题的框架:“ 如果教学只是数据传输该怎么办?”
您有一个想法X,该想法X存在于人员A的脑袋中,需要转移到人员B。这种保存方式应尽可能多。
现在,如果我们考虑将教学视为数据传输,则必须考虑两种数据传输方式: 同步和异步 。 由于存在各种定义,因此我将使用最适合当前议程的定义(ha!)-同步操作会阻塞两个进程,直到操作完成为止,异步操作则不会。 用人的话来说,两者之间的区别是等待(WAIT) -封锁教师,直到被教者理解了教材为止。
” “你懂吗? 如果没有,我们将再次进行。 ”


在公司生命周期的某个时刻,他们将开始将教学视为工作系统的重要组成部分。 使开发人员能够更快地做出更便宜的错误,所有这些都是爵士乐。 当公司考虑如何教其他工程师时,他们会经常倾向于人们最熟悉的模型:广播。
考虑一个发布-订阅模型,或者也许是Amazon SNS-您有一条标准化的消息,被散发到多个订阅者和终端节点。 当您将消息发布到主题时,订阅者将以特定于协议的方式接收消息-HTTP端点被发送到POST-ED,电子邮件地址通过SMTP接收到。
一家公司将以几乎相同的方式创建一个内容提纲,该内容提纲易于复制和复制,然后分批广播。 在我目前的公司中,这是通过内部AWS培训计划完成的-我们每个季度聘用25至30名开发人员,然后与他们坐三天,讨论各种AWS产品。 有时,我们需要提升内容,但这是一个相对便宜的过程,可以快速部署和扩展。


到目前为止听起来不错? 好吧,我们有两个问题。
SPOF。 最容易发现的事实是,如果我被公交车撞到,程序就会受到影响。 从(很棒的,更好的)其他人那里继承了该程序后,我个人花了很长时间才掌握了工作节奏。 再加上一个事实,那就是教学需要我必须提供的材料的广泛知识,这意味着我必须拥有三天价值的教材的全面词汇知识。
不一致。 假设我们在程序结束时进行了一个假设测验,以测试知识的保留。 而且因为我们都是很棒,聪明的人,所以每个人都能获得90%的整体( 很棒 !)。 我的主要兴趣是未保留的10%,特别是每个人的情况都会有所不同 。 现在,这就是SNS的类似之处:SNS根据每个单独的接收者协议量身定制消息传递,而每个讲师都无法做到。
反同步性。 就地授课通常被称为同步培训-但对于这种特定情况,我想提出一个对立面:不愿成为拖累课堂的人会带来巨大的社会压力。 同步进程将阻塞,直到操作完成。 一位考虑到以下事实的受训者:A.)培训计划有时间限制,而B.)其他与会人员可能想获取下一组材料不会举手说:“ 嘿,我不知道。还没有得到这个 。”
等待呼叫不会发出。 全班继续。
让我们集中讨论第一个问题,因为后两个是广播格式所特有的。 至少我可以解决这个问题。
第一个问题是通过向对此主题特别感兴趣的人们开放发言。 科技怪人通常对非常具体的事情充满热情,并且我非常喜欢让人们从事他们关心的事情。 这意味着安全极客可以举手谈论VPC和KMS,而自动化的书呆子可以教授Cloudformation。
现在,这种方法非常有效,因为热情地关心事物的人是A.)拥有它的可能性更大,B。)更有可能改善他们的空间质量,以及C.)更有可能努力使他人理解为什么他们关心特定主题。
最后一部分特别重要,因为它具有概括训练模块的美丽副作用。 人们通常比对特定产品更热衷于知识领域和实践。 而且,如果您想让某人了解您的热情,可以通过解释您为什么在更大的背景下关心这个话题来做到。
实际上,这意味着VPC模块变成了更广泛的联网产品。 我们没有谈论KMS,而是谈论了非对称/对称密码学。 我们没有谈论Cloudformation,而是开始谈论自动化的原理以及为什么将基础架构作为代码很重要。
照顾别人,然后赋予他们权力。
现代技术组织通常具有不规则的形状。 变化发生得很快,变化通常分布不均。 如何跨奇怪的拓扑传输数据?
输入八卦协议:想到此的最简单方法是想到一群人分享八卦。 您向A人发送消息( “电梯中的凯西放屁!”) ,然后将消息传播给他们认识的人(“ 您知道凯西的屁在电梯中吗?”) ,然后他会将其传播给同伴。


考虑一下要发布到节点A的搜索查询。节点A将具有其邻居节点列表,然后它将向其转发搜索查询。 其他节点将拥有自己的,转发给它们的对等方列表,以此类推。 在对数时间,每个节点都会有查询。
(而且每个人都会知道,事实上,凯西在电梯里放屁。这是否是事实还不确定。)
以几乎相同的方式,一些公司通过行会传播知识-各个部落和组织中的一群人,他们关心一个特定的主题,每个月见面两次以交换知识。 这些知识然后被转移到参与者的部落。
实际上,这看起来像是我为当前公司运营的DevOps协会-内部聚会的人数从50-100人徘徊。 我们每个月要花两个小时一个小时,而且会说话。 这真好。 我们有多个发件人,一个平台的专业领域专家,并且在整个公司范围内都有不错的报道。


但是有两个问题:
对等方差。 参加公会会议的人对主题的理解程度不同。 这使我们处于一个必须不断地在以下两者之间进行权衡的位置:A。提供可帮助每个人理解相同主题的内容,B。)提供对熟悉太空的人有吸引力的内容。 您想包容所有人,又不想让学科专家感到厌烦。
仍然是广播。 公会会议的形式是某人就他们关心的事情发表演讲。 这仍然遭受与广播培训同样缺乏WAIT的痛苦-尽管程度较轻,因为公会的参加者往往彼此更加熟悉,并且更容易提出问题。
此时,鞋子开始掉落,嘿,我们需要更多的同步性。
因此,我们将行会分为几个工作组-本质上讲,是关心特定主题领域的较小人群。 不管他们是否是专家,都没有关系; 甚至欢迎对主题学习感兴趣的人。
这些组采用以下几个域的形式:监视,VPC,搜索等。 从学习的角度来看,这是有好处的,因为当您的团队较小时,更容易同步。 工作组可以停下来等所有人都处于相同的基准之上。


这也使人们可以在问题空间上进行协作。 关于如何交流问题和利益的渠道已经达成共识,这意味着某人孤立地实施解决方案的可能性较小; 拥有将时间花在解决共同问题上的许可证,意味着解决方案不在周末或带外进行。 然后,他们可以将结果发布到更大的行会。
照顾别人,然后将他们与同龄人联系起来。
同步复制对于希望保证两个节点上的数据均相同并且您有一个相当快的机制来传输增量的情况非常有用。 当您写入同步节点时,直到两个节点都提交了数据,事务才完成。
实际上这是什么样的?
想象一下一种双向关系,这种关系允许人们在完全了解信息之前停下来。 想象一下,由于不可能对很多人这样做,因此发生在一位老师和一位学生之间。 现在想象一下,如果老师建立了一种关系,他们了解学生的特殊学习模式和首选的教学方法。


听起来很棒,对吗? 听起来像是指导 。
现在,许多公司都会制定支持导师制的计划,但是很少有能够广泛开展的计划。 毕竟,该方法有两个问题:
缩放比例。 老实说,技术领域仍然需要更多的导师。 导师制很费时间,而且效率不如广播。 寻找愿意花时间进行定期追赶的人,这些人只会改善一个人的生活, 这是一项艰巨的任务。
初始化 。 初学者的新鲜导师将花费大量时间来学习绳索。 有一大堆的软技能,这些材料不存在并且很难找到。 再加上没有一种规范的指导方法,您最终会通过反复试验来做到这一点。
但是,当它起作用时,它就会起作用。 因此,让我们做得更好。
廉价和低保真是我的游戏,因此,我首先为想要学习特定事物的人创建票证列表,然后添加对教学感兴趣的人的姓名。 可以将其视为您在街上看到的电话标志。 “对室友感兴趣吗? 拿一个。”


这使人们可以体验经验式教学的卓越性。 这也意味着我们有一群人可以停下来等待,直到受训者成功吸收了信息。
与往常一样,有很多惊喜。 我们所教的人开始签约成为老师-他们实际上表现更好,因为他们仍然迷失在新鲜的话题中。 他们更有可能了解中继和传输信息而不丢失的最佳方法。
他们更加同步。 他们比较善解人意。 我们雇用了关心的人,这创造了更多关心的人。
很多人刚开始在这个可怕的,混乱的空间中。 将来我们会遇到很多奇怪的问题。 因此,我们需要快速的专家。 我特此提出以下建议:
让我们仔细研究如何创建组织中新人需要的Broadcasts , Gossip和Synchronous Pairs 。
确实,这是另一种说法,即我们应该拥有刚开始时需要的教师 , 社区和朋友 。
实际上,归结为: 成为我们年轻时需要的人 。