您应该如何处理不再希望维护的热门项目?


75

我是一个拥有大量非技术用户群的项目的维护者。我已经将其维护了大约4年,并根据需要添加了新功能。

我现在想继续进行其他项目,并停止为此应用程序开发。由于用户的非技术性,过去几乎没有代码贡献。我不相信我会找到其他人来接手该项目。

错误,问题和功能请求-这些仍然存在。我仍在回复电子邮件以寻求帮助,因为我不确定是否应该忽略它们,告诉他们我不在使用该应用程序,还是应该响应仅在某些情况下才能发送电子邮件。

什么是“放弃”该项目但仍让用户使用该应用程序的最佳方法?


更新(2016年7月)-它没有按计划进行。我在自述文件中发布了一个公告,不久之后,我开始收到更实质性的文稿。通过错误修复,功能,文档和问题活动拉取请求。从那时起,该项目感到“焕然一新”,我现在很高兴与新项目一起维护它。我也有合作者。猜测可能是那种影响我对项目的看法的贡献,并且随着贡献质量的提高,它再也感觉不到杂事了。


1
您可以将其移植到新平台或新技术上吗?这样一来,您的工作就很有趣,并且您可以解释支持的电话,这些电话将不再对旧代码进行错误修复和增强,并建议它们在就绪时进行升级等?
Stefan

5
出于好奇,这是什么项目?链接?(假设它是开源的)
Andres F.

70
是Google阅读器,不是吗?
Kyralessa 2013年

3
仔细检查一下您的假设:您的用户群是否太过技术性而无法维护项目,或者您的项目太封闭而无法参与问题和功能请求之外的参与?
Bengt

现在我们都想看到该项目...您应该添加链接。
daviewales

Answers:


40

我猜这不是在您是有薪雇员的工作场所中进行的项目,而您是在业余时间免费做某事的吗?

如果您没有从中赚钱,那么显然没有任何诱因,也没有任何其他人新鲜应变的诱因。(除非可能是针对慈善机构或类似的自愿组织)

或者,为什么不考虑增加付费功能的可能性。

这样,您可能会有动力继续前进。您可能会发现有人愿意付费,尤其是当替代方案是停止积极开发该系统时。(当然,人们可能会放弃您的系统,但是您在乎的是,您已经没有得到报酬)。

另一种选择是使用该项目来学习新技术?是网站吗?升级到最新技术?例如从Asp.Net转换为MVC4?构建移动版本,使其基于服务,并为此创建iOS应用程序前端?


23
另一种可能性是将项目出售(或捐赠)给公司。您有了用户,公司就能看到利润。
苏珊(Sulthan)2013年

@Sulthan绝对!
ozz 2013年

1
如果您没有通过提高利率赚钱,或者开始收取服务费用。
Bill Leeper 2013年

9
他将其标记为“开源”。这有点像慈善或志愿工作。动机是完全不同的。通常,您不能出售开源项目。但是他总是可以为其他工作付费。获取一个捐赠池,用于下一步修复/添加的内容。
菲利普(Philip)

@Sulthan-非常有趣,没有考虑过。我将看到哪些公司对此感兴趣。
Mendhak 2013年

25

向您的用户社区宣布放弃该产品。也许您会找到维护者角色的继任者。尝试安排一些移交时间,就像在日常工作中处理一个项目一样。

正如esr在《大教堂和集市》中所说:

当您对某个程序失去兴趣时,对它的最后职责是将其交给有能力的继任者。


2
除此之外,在编程站点上发表评论,看看是否有人愿意接管。有些人不确定他们想做什么项目,但是想要一些编码经验并且愿意接受想法。移交期可能会在短期内涉及更多工作,但有望在长期内获得回报。
詹姆斯,

11

另一个建议给您,这与您要提出的建议略有相反,但我认为应该在列表中考虑。您是否考虑过放弃?如果您有一个项目正在被人们积极地使用并且对其有越来越高的要求,但是却无法自己进行修改,并且您是该软件的唯一专家,那么您可以向他们收取费用。

如果源代码是开放的,则可以考虑将其关闭(如果您想遏制进一步开发项目的竞争,则可以选择)。当下一个功能请求进入时,对$ xyz收费,请说是。

只是要考虑的一种选择。


11
采取先前开放源代码的应用程序并将其设为封闭源程序将极大地困扰许多用户,如果其他用户根据某些开放源代码许可证贡献了代码,则视他们是否签署了任何贡献者协议而定,这甚至在法律上是不可能的。收取开源项目的工作费用与突然关闭以前打开的内容之间有很大的区别。
詹姆斯,

3
@James对完成的工作收取费用并不一定意味着关闭源。这仅表示某人希望该软件具有新功能,并且他希望获得添加该软件的动力-没有理由在保持软件开源的同时不收取工作费用。
2013年

1
@Daenyth当然,但是这个答案特别提到关闭它,因此需要讨论。
詹姆斯

@James您无需将其设为封闭源。您仍然可以以开源形式发布新功能...但是在检查清除之前,没有理由发布提交代码。
雪橇

1
@ArtB是的,我知道,但是此答案专门提到关闭它,因此我的评论专门针对此。
詹姆斯

7

放弃粉丝群是一件困难的事情,尤其是当您与他们不同时。如果用户组中有开发人员,那么这将是一个容易解决的问题:只需宣布您即将退出,并建议其他人加紧努力,以帮助他们在离开之前加快速度。既然没有,问题实际上是这样的:您(或您的用户)是否可以在对您(或您的用户)有意义的时间内找到可以替代您的人。

过去,我维护多个项目的时间比我关心的时间长,因为这对我的声誉有利。我的身材虽然很小,但在我的领域帮助我在需要或想要工作时找到了工作,这对我来说很有价值。足够的价值使其值得在我可以的时候投入时间。最终,我当然走了,但是我确保所有后续人员都可以使用完整的项目代码。


“放弃粉丝群是一件困难的事情,尤其是当你与他们不同时。” 没错!我确实关心他们,这里的其他一些帖子都在谈论使我的意图明确+收费,这可能行得通。
Mendhak

“我在这个领域的地位帮助我找到了工作”。好点-简历/简历上的开源项目总是让人印象深刻。
Mawg'3

5

您是否要放弃该项目,因为...

您不想再做吗?

然后:正常关闭ala Reader。

或...雇用开发人员(在下面继续)

还是因为您亏钱?

计算自付费用(并在下面继续)

还是因为您没有赚钱?

计算您需要多少以使自己有不同的感觉:

  1. 必须支付自付费用
  2. 开发人员继续开发的成本
  3. 利润率

对您的用户诚实:向他们解释,维护该服务需要花费一定的时间,精力等。

然后要求捐款和/或为现有功能付费。不要试图发明会延迟确定该服务是否真正有价值以支持其自身的高级功能。只需使用您拥有的功能即可。

如果用户bit子好,那么他们可以去其他地方。如果捐赠和/或注册不足,请关闭。

残酷-一旦拔下插头就不要回头。


2
为这些想法+1。包括您每月要向某人进行商业收费的“账单”。然后,对您的用户说,从那时起,他们可以加入并雇用一名维护人员。地狱,也许您甚至可以申请该职位:)
Zlatko

@zladuric-同意,这就是为什么我要支付“继续开发的开发人员费用”(其中“您”可能是该开发人员)的原因。太多的开发人员在没有意识到需要开展业务的情况下做“有趣”的事情。TANSTAAFL
帕特

3

正如其他人所述,您有几个选择。我的选择是发出停产通知。表示将在该日期和该日期关闭产品。

另外指出,由于该产品已接近使用寿命,因此仅解决影响应用程序按设计或预期功能运行的严重错误。IE(如果服务器已关闭),您将重新启动并运行它。

如果用户有数据,则可能必须为他们添加一种导出数据的方法。

看看Google最近如何使用Reader进行指导。他们关闭了它,这是一个非常受欢迎的服务,但是它不符合他们的长期目标,因此需要做出关闭它的艰难决定。


1
+1这是一个类似的优秀(IMO)项目的示例:picoos.sourceforge.net
Vorac

3

有某种中途测量的可能解决方案吗?让项目继续进行,但减轻您的工作量?

例如,您说您仍在回复电子邮件以寻求帮助。您可以建立一个用户论坛并坚持所有支持查询都通过该论坛完成,以便其他高级用户可以提供帮助吗?


1
此外,将开发限制在主要错误修正范围内。这样,应用程序(应该最终)就可以正常运行且功能强大。
Vorac

好意思的答案只是在延迟不可避免的事情。杀死它或赚钱。不要半途而废-那样只会消耗能量。
2013年

2
@pat,您似乎在假设某人可能拥有的唯一动力就是金钱。编写开源软件还有其他动机,我认为操作人员在谈论要帮助用户时会明白这一点。无论如何,在这种情况下,此答案可能不适用于OP,但它们是“ OMG Money”以外的其他解决方案,至少应该进行讨论。
詹姆斯

@詹姆斯-抱歉,是的。我们需要钱才能生存。在这个世界上,我们所有人的时间都非常有限。我们应该专注于创造最大“价值”的事物。在没有价值的项目上进行工作是浪费生命。如何衡量价值:1)如果其他人在项目中找不到价值(并且不使用价值),那么该项目的“奖励”程度如何?2)金钱是我们衡量“价值”的方式。3)机会成本-如果OP继续从事此(未评估?)项目,-OP正在进行的工作是什么?
2013年

@Pat OP清楚地表明项目拥有大量的用户群,所以我不知道您从何处得到这种“不有价值”的垃圾。仅仅因为当前没有人付款并不意味着没有人重视它。金钱是一种衡量价值的手段。许多人还采取其他措施,例如他们开发了许多其他人想要的有用软件。但是谈到有限的时间,我真的不愿意在评论部分中对此提出政治论点-再见。
詹姆斯

1

转向纯付费模式会杀死很多用户,但是纯付费模式有很多替代选择。我玩的视频游戏为捐赠者带来了额外的好处,例如每小时更多的下载量“这是一个纯粹的基于技能的游戏,不要与薪酬混为一谈,从而赢得垃圾大声笑”。另一个游戏《流亡之路》提供了外观升级。其他站点进行调查以换取带宽。捐赠编码器可根据需要向免费用户多次提供(X Time)可更新的许可证,但捐赠者会获得永久许可证。

有大量的现金选择权,但仍然可以吸引免费用户。

老实说,大多数人都没问题,所以我只想先设置一个可以支付您每月费用的小费区域,然后问一下。


1
我可以看到您的答案与OP的问题有何关系,但OP的要求稍有不同。他们想继续进行该项目。您的答案中的许多要点都会与项目保持持久联系。

1

您已经包含了open-source标签,所以我想您的项目是软件是开源的。

过去几乎没有代码贡献

不幸的是,但是如果您正在做所有事情,这是可以理解的。只要合理运行,许多用户就不会参与其中。

有些领导者喜欢委派所有责任,有些领导者喜欢保持更严格的控制。尽管有必要保持平衡,但关键是要尽快委派。

我已经创建了30多个开源项目,即使我离开了它们,许多项目仍处于活动状态。这是我的建议:

  1. 非常慷慨地给Bug Tracker访问权限,也许授予曾经编写过一行代码的任何人。如果有人开始做疯狂的事情(可能性很小),您仍然可以通过管理员控制将其删除。不要忘记赋予其他权利:源代码控制,Wiki,人群翻译,Facebook页面,Twitter帐户,官方网站,谷歌分析等。

  2. 在论坛(和网站通知)中发布消息,宣布您即将退休,并寻找新的项目负责人。

  3. 即使没有人担任团队负责人,也可能发生致命的问题(愚蠢的例子:硬编码的URL变成404,导致应用在启动时崩溃),它可能会被某人解决。如果没有人修复致命的缺陷,那么这意味着您不必再担心太多了,您已尽力而为,但该项目似乎不再可行。


谢谢-我想这是Github不能完全发挥作用的地方-我没有那种安全控制措施。哪些VCS平台支持您正在谈论的那种功能?
Mendhak

相反,Github实际上是最好的地方之一。使用Github,您可以创建一个“组织”帐户,并邀请其他开发人员加入。另外,Github使得查看流行的叉子变得容易,这是一件好事。
Nicolas Raoul
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.