![]() |
1
5
最有可能的情况是你和一个团队合作,这也应该考虑到。测试/评估技术成熟度的一些方法:
|
![]() |
2
2
一些经验法则。 一次只能使用一种“新”技术。你用的新东西越多,出现严重问题的可能性就越大。 确保使用它有好处。如果新技术不能给你一些优势,你为什么要使用它? 计划学习曲线。新技术的某些方面你不知道。你和你的团队,必须花更多的时间去学习他们,然后你认为你会。 如果可能的话,先在一个不那么重要的小项目上尝试新技术。你们公司的会计制度不是最好的实验场所。 有后备计划。新技术并不总是值得的。知道你什么时候在“棺材角落”了,现在是时候救出来了。 |
![]() |
3
1
“现场测试”和“过时”之间有区别,开发人员(包括我自己)通常更喜欢前沿的东西。在某种程度上,你必须让你的开发人员对他们的工作感到高兴和感兴趣。 但我从未有过客户对现场测试技术不满意。他们通常不知道或不关心用于生产产品的技术。他们的首要任务是如何在日常与IT的交互中工作。 当开始一个新项目时,在评估我是否应该移动到一个新的平台时,会想到两个问题: 1)去新平台有什么好处?如果它能显著缩短开发时间或显著提高用户的性能,我将考虑采用半出血边缘技术。 2)与新平台相关的风险有哪些。有没有可能我会遇到一些在新平台中还没有完全解决的场景?对这个新平台的支持可能会失败,而我会留下来支持一个不受欢迎的环境吗?如果我在项目的关键时刻遇到困难,是否有合适的支持渠道可以使用? 像所有事情一样,这是一个成本/收益分析。一般来说,虽然我一直在学习和培训新技术,但我不会使用一种至少6-12个月没有被大量开发人员广泛采用的技术(环境、库、服务器平台等)为客户构建什么。 |
![]() |
4
1
这取决于上下文。每个组织都必须做出自己的决定。关于这个话题的经典文献是 Crossing the Chasm 作者:杰弗里·A·摩尔。 |
![]() |
5
0
如果开发产品的公司/社区以良好的产品而闻名,那么我很高兴对他们的新产品下一个安全的赌注。 例如,我很乐意在Rails3或Ruby1.9上开发,因为我确信它们在最终确定时会很好。 然而,我不会在Supernewlang中写太多代码,直到我确信他们有一个伟大的、支持良好的产品,或者他们有一个我无法缺少的特性。 我会得到最值得信赖的产品,这符合我所有的需要。 |
![]() |
6
0
|