先发布还是先发布文件?


23

我从事一个项目已经有几年了,并且我开始收集一个不错的用户群。我已经创建了一个项目页面,其中包含一些基本文档,但实际上,这仅是一个FAQ。我知道我需要改进它,以便它对新用户和高级用户都提供更多信息,并且这是下一发行版的任务清单中的下一个。

但是,下一个版本具有用户群渴望获得的功能。我已经准备好立即发布它,它已经打包并可以使用了。我只需要将其部署到适当的分发服务。

要点。这些功能对我的用户很重要,但是文档对我很重要。我应该等到重写文档后再发布吗?我当前的用户群足够了解如何使用新功能,因此我不必担心。由于我的空闲时间有限,因此可能需要花费几周才能完成文档,但是如果我让他们再等待的话,社区就会把我烤死。

客户在这种情况下正确吗?对于现有用户而言,梦幻般,直接的功能是否应该优先于针对新用户的强大文档?


更新:哇,这么多优质的回复!您确实帮助我更好地了解了我应该如何与项目及其用户进行交互和支持。太感谢了!


14
是的,客户是对的。推出该版本,然后花两周时间准备好文档。您已经告诉我们,缺少文档不会对用户群造成不利影响,而且仅两周时间。 如果这是一次真正的演出,那么您的客户或组织将一口气烤掉您,因为两周没有发布就可以减少两周的时间来赢得市场份额。
罗伯特·哈维

3
根据项目的不同,您可能会在单独的分支中以“ beta”或“ preview”发布新版本。
CodesInChaos

2
什么样的文档-最终用户文档或源代码文档?还是您的项目在两者之间没有区别?
布朗

5
这里似乎没有任何冲突:如果将其打包并准备好使用,那为什么不发布它,然后继续处理文档,两周之内仅文档更新呢?您是否担心发布会产生大量工作(涉及报告的错误等),从而阻止您使用文档?答案应考虑到您不能同时执行这两项操作的原因。
史蒂夫·杰索普

@DocBrown在这种情况下,它是用户文档。源代码文档仅对我有用。
cyberbit

Answers:


45

简单:发布测试版!然后,在完成文档编制后,对新版本进行最终发行。

如果您有用户愿意尝试新的东西,那么一定要利用它。您将获得错误报告,可能会向社区提出有关难点的问题,以便您知道将精力集中在文档等上。您可能还希望根据用户反馈来调整某些内容,这可能会影响文档。

基本上,每个人都赢。


不进行早期发布的原因之一是,如果您认为用户不会接受“测试版”,那么您应该三思而后行,但是按您的撰写看来,他们会对此感到满意。

另一个原因是,如果使用您使用的任何发行渠道进行Beta版发行存在技术困难。这样一来,单独进行Beta版和最终版发行可能会比花在麻烦上更为麻烦。如果您认为您的软件是完整的,那么在这种情况下,我将依靠早期发行版,完成后更新文档。否则,存在文档被延迟的风险,然后整个发行版将被延迟,或者您最终最终发布时都没有最终文档,所以现在就做吧。


1
过去我已经为小型工具做过很多次了……代码已经完成,一切似乎都可以正常工作,但是这已经是周末了,我现在不应该为完成文档而烦恼。我只是将其打包为Beta版本,瞧,如果您非常想要新版本,那么就在这里,否则,您必须等待下周末。
Pimgd

在我问这里之前,我实际上考虑过一个beta版本!这个想法的问题在于,我使用的渠道迫使我编写一个完全独立的应用程序以发布版本。我开始着手开发一个单独的beta,但是它的后勤工作很困难,在项目的这个阶段似乎并不值得。
cyberbit

取而代之的是,我选择使用该功能的原因是使它成为普通版本中的选择加入测试版。这样可以确保想要稳定体验的人保留它,并且想要新功能的人可以使用它,但要知道它可能会中断。然后,在将来的发行版中,我可以将功能从“选择加入”转变为“集成”,删除beta版本,一切都变得不错了。
cyberbit

3
Apache使用“发布候选对象”标记功能上已完成的项目,但只是在验证该程序包具有所有资源,并且确实可以在黄金时段使用。听起来您已经超出Beta阶段了(功能成熟但还不完整)。
Berin Loritsch 2016年

@BerinLoritsch我已经看过以前使用过的。该标签实际上适合这种情况。我猜想在正常发行中加入选择加入功能就像是候选发行一样。它很稳定,可以正常工作,但是还没有看到光。
cyberbit

15

如果我说对了,那您就是在空余的时间做这个项目,没有钱。如果是这种情况,那么请做一些让您感觉更好的事情(用户等待,请准时记录下来)。您不应该感到来自“用户”的压力。许多人在Internet上撰写了有关此内容的文章(感到压力的大FLOSS作者和贡献者)。

但是,如果您获得报酬或获得一些利益,请执行用户想要的操作。这意味着要做对客户用户最有利的事情,在这种情况下,只需按时发布并记录即可。您说他们会找到办法的,所以这没什么大不了的。


你答对了!这是无偿演出。但是我确实受益匪浅,因为我是我所说的高级用户之一。:P不过,您说的是有道理的,感谢您的回答!
cyberbit

4

一般而言,有两种类型的文档:技术性文档,用于对您的代码(类,单元等)进行文档化,以及新功能如何操作以及如何在代码和用户文档中实现。IMO,技术文档是必不可少的,尤其是如果软件开发不是您的全职工作。我花了很多时间在这上面,因为由于终身的承诺,我在编写代码方面可能会间隔很长时间。

用户文档很好,但我认为不是必需的。当然,这取决于应用程序的复杂性,用户群对正在讨论的主题领域中计算机和系统的使用的熟悉程度-在您的情况下,您的客户似乎可以掌握新功能的工作原理。有一种观点认为,良好的用户体验和良好的用户界面需要最少的用户文档。

另外,如果您的时间有限,并且确实感到如建议那样去开发文档,那么您可以制作一些简短的视频,仅介绍新功能。这将使您花费一些时间来编写实际的文档,然后可以填写不太重要的细节。

一些营销技巧可能使您能够平衡用户的期望并仍然可以提升您的品牌。这实际上取决于您到目前为止所创建的应用程序的类型和工作流程,但是您可能会看到新版本的欢迎屏幕,并且在应用程序中,您可以通过提供链接或通过播放应用程序中的视频来显示视频。


3

不仅要为此特定示例添加一些内容,而且还为常规工作流程添加一些内容:

文档可能是您的definition of done文档,但是文档大部分时间都超出了最低限度的可行产品(MVP)的限制。

客户不仅永远是对的。如果是商业产品,发布可能具有很大的商业价值,并且绝对是当务之急。

所有者定义了业务价值(我认为这是您的价值),那么,对您的客户来说,作为产品更有价值的是什么?

如果没有文档,是否还有释放风险?

例如比赛 ; 如果竞赛在您之前发布了此超级功能,您可能会失去一些用户。

询问您自己或产品负责人这些问题,您的答案将很清楚。


2

新功能使老用户感到高兴。好的文档会吸引新用户。您应该专注于哪个,取决于您更需要哪个。您表示用户群状况良好,因此可以等待新功能。作为老用户,我也喜欢优质的文档。开源的好处:老用户添加了自己的功能。


2
好的文档仅在记录确实存在的内容时才吸引新用户。
罗伯特·哈维

@robertharvey已显示当前用户群。因此,我认为他们正在使用一些未发布的beta或其他东西。
candied_orange

有一个现有的发行版,尽管文档不足,但从声音的角度来看,它仍被认为是稳定的。
jpmc26 2013年

2

您尚未澄清问题,也可能未向用户说明这些选择的后果。您在用户支持上花费了多少时间?其他文档会减少您花费在支持上的时间或增加销售量吗?做文档对您有什么好处?

您的用户想要文档中的新功能,但是他们是否意识到提供支持,修复错误,发布补丁程序等的可用性可能会下降?

如果当我要做的只是向您发送带有问题的电子邮件时,我不花时间去阅读说明,为什么我会想要有关新功能的文档?


-1

如果软件包准备发布,请发布给客户/客户并开始处理文档。当您共享文档以帮助他们了解已部署的功能时,可以很好地与客户沟通。

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.