我希望避免这样的情况,即我的开发人员不会彼此分享常识(他们遇到的问题的解决方案,很酷的提示,常见的错误,实现特定目标的快捷方式,配置问题,部分要求等).我正在考虑这种情况,因为这种缺乏沟通是偶然的(误解或管理不当造成的) - 我不是在考虑开发人员故意为自己保留知识的情况.
我相信以下技术对于改进开发人员团队中的信息流非常有用:
还有什么想法?你在公司使用什么技术(或者你有没有)?您如何鼓励开发人员在他们之间分享知识?
最近,我们遇到了一个工作问题,如果一个人自己编写一些代码,似乎与其他团队成员一起看着它并且去"嗯?那个丑陋,难以管理,我需要重写那"
事实上,最近,我自己不得不重新考虑一周前写的东西,以便我能够添加我的(相关)功能.
我知道结对编程是实现这一目标的方法,但我们有一个不平衡的团队(3名成员).由于我们的团队目前正在努力推进,我们真的没有时间进行同行评审(尽管我们可以进行配对编程,因为我们可以将其估算到我们的任务估算中)
我只是好奇人们如何建议我们在生成糟糕的代码时克服这些问题.
在结对编程中,团队中每个成员的经验都可以传播给新成员.这种体验总是与代码同步,因为对的"高级"知道代码是如何工作的以及设计是什么.
那么在这种情况下设计文档的效用是什么?
UPDATE
我并不暗示没有设计,我暗示没有文件.有一个练习结对编程的团队,我认为每个人都是一次性的,因为每个人都知道代码.如果高级开发人员离开,我认为至少有一个人知道代码,因为之前已经分享了经验.
我在一个团队,我试图说服我的队友采用TDD(因为我已经看到它在我以前的团队工作,设置类似).另外,我个人认为,至少在开始时,如果TDD和结对编程都是一起完成的话,这确实有帮助.这样,两个缺乏经验的(在TDD中)开发人员可以互相帮助,讨论要编写哪种测试并取得良好进展.
另一方面,我的经理认为,如果我们一次在团队中引入两个新的开发实践,那么两者都很可能会失败.所以,他希望保守一点并介绍任何一个.
我如何让他相信这两者都是互补的而不是正交的.或者我错了?
曾几何时,有一个名为"Developer Collaboration"的netbeans插件,允许您进行远程配对编程.
现在,在Netbeans 6.7中,没有更多的"开发者协作",但有一些叫做"Kenai支持".不幸的是,Kenai似乎没有实时编辑器,它似乎只适用于开源项目,但我的项目是封闭源代码.
我切换回Netbeans 6.5,但我发现"Developer Collaboration"插件不再可以通过插件管理器(从工具>插件)下载,我无法从插件门户中找到它
我在哪里可以找到旧的"开发人员协作"插件?或者我有哪个选择?
我的团队开始接受结对编程,我们中的一些人比其他人更熟悉Resharper(和其他生产力工具)。我正在与Mark Miller一起观看DNR电视节目,他有一个Visual Studio插件,可以显示按下了哪些键。我认为在配对以及与其他开发人员进行演示时,这将是一个很棒的插件。您可以在此处查看正在使用的插件。
有谁知道该插件是否公开可用?如果没有,是否还有其他可用的类似产品?
Emacs手册中的此页面描述了一个make-frame-on-display允许您访问远程Emacs会话的函数.我对这个功能的兴趣是用它来与同事远程共享缓冲区进行配对编程.
从页面:
甚至可以使用此功能让两个或多个用户在同一个Emacs作业中同时在两个显示器上键入.然而,在实践中,如果他们不小心,不同的用户可以容易地干扰彼此的编辑.
我该如何设置?我需要什么?我的伴侣需要什么?细节没有说明,但我不太了解Emacs知道从哪里开始.
有没有其他方法来获得共享的Emacs会话? 来自Emacs Wiki的这个页面指的是一个叫做的东西multi-tty.我上面提到的问题也适用于此.
哪个更好:multi-tty或者make-frame-on-display?
在JetBrains ` Code With Me页面中,我可以看到一段提到:
您可以使用 Code With Me 进行实时协作、编辑代码、共享服务器以及运行调试会话。
但是,我看不到如何共享服务器。例如,如果我在本地启动 API 服务器,我找不到通过Code With Me共享它的方法。
我只是在寻找一种通过Code With Me共享本地服务器的方法,而不是任何第三方网站等。
我将不胜感激任何帮助
这个术语在英语社区似乎很常用.我好奇它是什么?是两个学生一起在一台PC上编码还是什么?这个组织(不管它是什么)只在美国使用吗?
在Google文档中,可以有多人实时编辑文件.我试过这个,发现响应时间有点慢.我想在Eclipse中做同样的事情.可能吗?如果没有,那么有什么好的选择呢?
我认为一般来说,Peer评论是开发过程的一个非常好的部分,它们经常捕捉或质疑在最初编写代码时不明显的事情,并使你更加自我意识,以便你更好地格式化,发表评论等.
但是,如果你是成对编程,你实际上有一个实时的同行评审,那么作为这个过程的一部分,还值得同行评审吗?你有同伴评论吗?
我问,因为结对编程在我工作的地方开始发生,通常这被视为同行评审的替代品.我不太确定,但认为开发人员花在结对编程和同行评审上的时间可能会损害生产力.
前段时间有一个类似的问题,但重点不同,没有明确的共识
什么是可用于衡量结对编程性能的软件指标?
要清楚
是否有任何指标用于专门测量结对编程,并不用于衡量个别程序员?用于测量的参数是什么?
例如:如果我们想测量单个编程和结对编程的成本,我们假设对于单个编程Cost = x因此对于该对将是Cost = 2*x
对
并且对于个体时间= t的时间相同,而对于时间= 2*t
因此,如果我想使用代码行来衡量产品大小,那么使用此指标,个人和对之间是否存在任何差异?
任何的想法
我正在和招聘人员讨论使用配对编程的机会.
对我来说,有两个高级开发人员一起工作的担忧,因为我希望我会在另一个工作的同时阅读.
但是,当我与这位招聘人员交谈时,我想到了配对编程可能有用的方法,如果有一个编辑器允许两个人同时对同一个文件进行更改,那么,一个人可能正在制作文件中的注释,正如其他人正在努力实现该功能.这些注释可能有助于解释设计该功能时的思维模式是什么,因为如果两个高级开发人员正在研究某些功能,那么它应该是一个足够复杂的问题,需要进一步解释.
我不知道任何允许这样做的编辑器,因为它可能必须是基于网络的,以便同时查看和修改同一个问题.
这样的事情会有用吗?
这种工具还有什么其他的用途我会失踪?
我不在乎讨论配对编程是否是一个好主意,我有自己的看法,但这个概念对我来说非常有趣.