我需要为需要两分钟时间才能解决的问题编写程序,该如何收费?[关闭]


127

我对此很困惑。我相信,我获得的经验越多,我越会成为发现错误并迅速解决错误的专家。

现在我的老板从一个程序员那里获得了一个网站,他的代码编写得非常非常糟糕。现在,他发送了要修复的问题列表。

假设这是样式表问题,而老人不知道如何解决,但是根据我的经验,我很快就知道了问题所在,我可以在两分钟内解决它,并且可以解决许多类似的问题。

但是在解决所有问题之后,我意识到我在15分钟内解决了其他人无法解决的所有问题。

我每小时能得到25美元,所以我为这笔花费6年的事情收费6美元,这让我非常难过。

可以收取6美元吗,还是应该有某种收费方法?


9
有时您可以按项目而不是每小时进行联系。:)
Saeed Neamati 2011年

21
我只收取整小时的费用,因此,如果您没有在该小时的剩余时间内得到分配的其他工作,则应该收取全额费用25 $
Petruza 2011年

50
我认为没有什么编程问题需要花费两分钟的时间来解决。以我的经验,您必须始终在一个小时内测试一下您在一分钟内写的内容。如果您是自由职业者,请花两分钟来编写和测试其余小时,而不是花一小时。15分钟的更改相同。达到30分钟后,测试一个多小时,然后充电两个小时。
Andrew J. Brehm

58
让我想起了一个古老的,也许不是真实的,但仍然是个好故事:召唤这位工程师是因为一台机器坏了。他看着它,用粉笔在某个机器零件上做一个十字架,然后说“替换这部分”。他收取50,000美元。经理大为恼火,要求提供逐项帐单以证明费用合理。工程师回答:Chalk-$ 1,知道在哪里制作十字架$ 49,999。
user12889 2011年

23
SO有成千上万的用户免费提供2分钟以上的修复建议。
JeffO

Answers:


121

这个问题很好,因为这是我们所有人作为自由职业者都面临的问题。当我过渡到成为自由职业者时,对我来说最难发展的是时间跟踪学科。在第一年左右的时间里,我只是专注于面向项目的工作,实际上只有在我处于“编码区域”时才为定时器烦恼。随着时间的流逝,我了解到对自己造成的巨大伤害对我来说是无法尽可能多地跟踪自己的一天。

即使在撰写此评论时,我也会运行一个计时器,标题为“ Stack Exchange上的博客”。但更多的是在一秒钟。首先,让我们解决您的问题。

关于时间跟踪,作为自由职业者,我发现的一件事是,某些客户往往遇到很多小问题。作为一个业余爱好者,因为我觉得自己是个“好人”,所以大多数时候我都不会为客户付费。花两分钟来解决问题(有时只需要花几分钟)似乎并不值得花时间启动计时器。但是我发现,在一个月的时间内,这不仅仅是一个2分钟的问题,而是10或20个2分钟的问题。单独考虑,这没什么大不了的。总的来说,我把钱留在桌子上。但不仅如此,客户对我为他们所做的工作量没有了解。结果,他们倾向于a)低估我的工作,b)利用我的优势,或c)仅仅认为我是理所当然的。

与任何人,尤其是客户的关系不好。

接下来,正如其他人指出的那样。没有什么真正需要两分钟。包括电子邮件,电话,错误跟踪系统的登录以及良好过程的所有其他工件。客户在电话中与客户交谈的过程就是客户服务的全部内容,因此应该为您提供补偿。客户应该知道您在电话和应答电子邮件上花费了多少时间。有一次我给客户开了一张发票,显示了与他们花在电话上的时间。后来他们告诉我他们不知道,并且努力遏制自己的倾向,即在遇到问题时不愿意打电话给我。考虑到有时电话会造成破坏性影响,我对此表示赞赏。

我也同意您应该以合理的增量计费。我以15分钟为增量计费,这只是一种奇特的说法,“对于您要我解决的任何问题,我至少要保留15分钟。” 这样做的原因有很多,但对我而言,最大的原因是上下文切换的隐藏成本。对我来说,从一项任务转到另一项任务不是瞬时的。如果是这样的话。从一项任务转移到另一项任务通常会使我停下来检查电子邮件,上厕所,看看G + / Facebook / Twitter等。有人可以说我缺乏纪律性,但对我而言,这是我转换过程不可或缺的一部分齿轮。因此,如果我在盘子上有4个任务,每个任务耗时15分钟,那么我不需要花一个小时来完成这些任务,而是需要大约1.5个小时。这额外的30分钟是上下文切换的隐藏成本。

许多人还提到并谈论了您作为经验丰富的程序员所提供的附加价值。与同事执行相同任务所需的时间只有您的一半,这不仅反映了您的卓越经验,而且反映了您为管理客户而建立的更好的流程。所有这些都直接说明您提供的价值,因此您应该公平地补偿自己。这要求您了解竞争对手根据其工作质量收取的费用。就个人而言,我与该领域的其他自由职业者保持着密切的关系和友谊,这使我能够深入了解此问题,并可以据此调整自己的费率。如果您发现您大体上可以在更短的时间内生产出相同质量的作品,那么一定要多付一些钱。如果您的客户买不起,请寻找新客户并走向世界。让一分钱的客户捏着钱,那些不重视自由职业者提供给他们的工作的客户会选择小鱼。将这些客户推荐给您信任的其他自由职业者,使他们在建立可以给您带来更公平报酬的客户群时使他们成为别人的问题。

我想分享的最后一件事是我看到的没有人真正触及过的东西。从客户管理的角度来看,有时需要为客户安排2分钟的工作。有时,给他们时间可以帮助您建立与客户的信任,并牢固地建立您作为客户的首选人。它还可能会帮助您将来获得更大,更有利可图的项目。知道何时充电,更重要的是何时不充电是很难的部分。但是,当我决定不向客户收取费用时,我会竭尽所能地巧妙地告诉他们这是“在家里”。我告诉他们,我感谢他们发送的所有业务,而且我不介意为他们处理这一问题。我告诉他们,这是我至少能做的。他们通常很欣赏

现在,请允许我返回当前在桌面上运行的计时器,该计时器的名称为“ StackExchange上的博客”。这与您的问题没有直接关系,但是有助于强调保持纪律并准确跟踪时间的重要性。

从业务角度来看,您可以跟踪的最重要的指标是获利能力。知道花了多少时间做有偿工作还是无偿工作非常重要。它可以帮助您建立和了解运行和维护业务中存在多少开销。它还可以帮助您确定可以改进的业务和流程。如果您在本季度末意识到您花费的时间比您认为“在Stack Exchange上写博客”花费的时间多得多,而这是以实际的可计费工作为代价的,那么您可能要考虑减少花费的时间。不过,关于盈利能力,我发现与花费在编码上的时间相比,投入到项目中的时间要多得多。不仅有之前提到的所有电子邮件和其他任务,还有花在确保交易上的时间,向客户开帐单,谈判合同等。这段时间中的大部分时间都不是可计的,但是知道您花费多少时间进行此操作可能会帮助您确定简化业务并同时增加利润的方法。举例来说,您每小时要收取100美元的费用,但您花费大约50%的时间用于进行非计费性管理工作。也许有一个人在那里,您可以以每小时50美元的价格聘请您,以摆脱管理工作。这样一来,您就可以花费更多的时间进行编码,并同时增加利润。它是双赢的。您正在为别人提供有价值的工作,几乎可以肯定地为您的客户提供了更好的服务,并且您赚了更多的钱。但是知道您花费多少时间进行此操作可能会帮助您找到简化业务并同时增加获利能力的方法。举例来说,您每小时要收取100美元的费用,但您花费大约50%的时间用于进行非计费性管理工作。也许有一个人在那里,您可以以每小时50美元的价格聘请您,以摆脱管理工作。这样一来,您就可以花费更多的时间进行编码,并同时增加利润。它是双赢的。您正在为别人提供有价值的工作,几乎可以肯定地为您的客户提供了更好的服务,并且您赚了更多的钱。但是知道您花费多少时间进行此操作可能会帮助您找到简化业务并同时增加获利能力的方法。举例来说,您每小时要收取100美元的费用,但您花费大约50%的时间用于进行非计费性管理工作。也许有一个人在那里,您可以以每小时50美元的价格聘请您,以摆脱管理工作。这样一来,您就可以花费更多的时间进行编码,并同时增加利润。它是双赢的。您正在为别人提供有价值的工作,几乎可以肯定地为您的客户提供了更好的服务,并且您赚了更多的钱。但是您花费了大约50%的时间从事行政性非计费工作。也许有一个人在那里,您可以以每小时50美元的价格聘请您,以摆脱管理工作。这样一来,您就可以花费更多的时间进行编码,并同时增加利润。它是双赢的。您正在为别人提供有价值的工作,几乎可以肯定地为您的客户提供了更好的服务,并且您赚了更多的钱。但是您花费了大约50%的时间从事行政性非计费工作。也许有一个人在那里,您可以以每小时50美元的价格聘请您,以摆脱管理工作。这样一来,您就可以花费更多的时间进行编码,并同时增加利润。它是双赢的。您正在为他人提供有价值的工作,几乎可以肯定地为您的客户提供了更好的服务,并且您赚了更多的钱。

然后,您花了0.79个小时在“ Stack Exchange上进行博客”。我会把这归功于我的营销预算。:)


6
用粉笔写出来。它确实至少支付了票款,如果我是对的,它会支付徽章。:-)
Joris Meys 2011年

1
“粉笔”还是“塞子”?我不确定。
伯恩·里斯

stackoverflow.com/legal/trademark-guidance的 “正确使用堆栈溢出和堆栈交换名称”部分。
彼得·莫滕森

13
@ByrneReese您使用什么时间记录软件?
TehShrike 2012年

64

您不应该收取6美元,这的确有点尴尬。但是,您忘记了一些东西。我无法确定您是否是自由职业者,但您应该至少充电1个小时。那是因为您需要阅读错误列表,解释它们,在解决方案中找到它们,修复它们,测试您的解决方案是否有效,进行发布,可能让其他人测试该解决方案并将更改发布给客户。如果您能在15分钟内完成所有这些工作,那么您必须非常好/很快。

我总是按小时收费。如果某件事情要花费20分钟,那将是1个小时的账单。如果另一份工作需要1小时15分钟,那么仍然是1小时。这样,“额外”的分钟会有所补偿。


9
同意 我想不出要花15分钟才能完成的任何东西。在15分钟内,我几乎无法加载IDE,更不用说查找代码的相关部分了,了解错误,重新编译,部署,测试,记录测试结果,打包,发布,更新SVN等等等
fwgx 2011年

33
非常正确。咨询/自由职业游戏的许多新手都认为,可计费时间是指在物理上编写代码所花费的时间,因为这是他们经过培训才能相信使用非技术经理的时间。算了吧。程序员和工程师都愿意思考。我花在考虑合同工上的任何大量时间都是可计费的时间。无论是在办公室,厨房,飞机上还是厕所中,都没关系。
亚伦诺特,2011年

3
一切都有一个最小值:即使您的最小值等于1/2个小时的费用-对于那些只需花费5分钟即可轻松解决的问题。在大多数情况下,我都会同意至少收取一个小时的费用是非常标准的。然后,它使您有机会说,嘿,您知道我会给您20%的折扣-这很容易解决
IAbstract

1
@克拉兹:太好了。重现该错误花了多长时间?找出要打开哪个文件?修复哪条线?为什么要直接在生产中修复错误?您不使用任何版本控制,构建或质量检查流程吗?
亚伦诺特2011年

1
@Aaronaught,这完全取决于环境。我们并不是在控制水平和控制水平都高的地方工作。当您拥有简单的在线目录时,您可能不会使用修订控制,并且质量检查过程可能仅包含刷新按钮。无需花费太多时间就可以确定页面现在是否正在加载。这仅取决于项目。如果这样做没有任何价值,为什么要花一个小时而不是5分钟呢?
Kratz,

54

您按小时支付薪水,并且根据您的经验,对吗?那是什么问题

有人付钱给您做您可以根据自己的技能实际做的事情,并接受您的每小时工资。所以就做吧。你为什么要把自己比作一个新手,他们花相同的时间做十倍以上?如果您认为每小时工资与同事每小时工资相比是不公平的,请与您的老板/客户交谈,并请他提高您的每小时工资。

我能看到的唯一问题是,如果您凭着丰富的经验,被要求做远远低于您的技能的工作。例如,您是一位经验丰富的开发人员,实际上您会被要求从事任何没有经验的实习生都能像您一样快和好地完成工作。¹ 但是,这就是您的老板/客户的问题,他们向您支付了很多钱,而相反,他可以为相同的结果向初学者支付更少的钱。


¹另一个更常见的情况是,每天花费800美元的自由开发人员被要求花数小时进行手动测试,而只雇用成本更低且实际上做得更好的测试员会更好。


还有其他程序员的经验比我少,他的经验也差不多。我曾经试图告诉他我需要更多,然后将整个工作交给了另一个人。他不了解好的编码和不好的编码之间的区别
user824981

21
“并且他也得到相同的费率”:然后要求提高您的费率。或者找到其他雇主/客户,他们的薪水更高。
阿森尼·穆尔琴科

@MainMia,您的脚注没有任何连接。我怀疑它在编辑中迷路了。
TRiG 2011年

无论市场愿意付出什么。免费企业宝贝!
surfasb 2011年

@ user824981:因此,您可以提高费率,他会将工作交给经验较少的其他人。另一个人做得不好,它会以更高的价格返还给您。无论哪种方式,您都可以完成工作=)。
R0MANARMY

54

无需花费两分钟即可解决。

您必须阅读电子邮件,查看错误列表,重现错误,打开开发工具,导航至文件,进行更改,测试,更改,重新测试,保存,签入,更新Web服务器,测试网站,通过电子邮件将修复的列表发送给老板,等等。

文件的编辑可能需要两分钟,但是其余时间也需要付费。


4
阅读电子邮件:10秒。评论:10秒。复制:20秒。打开文件:10秒。编辑:15秒。测试:10秒。签入:10秒。更新:10秒。试生产:10秒。回复电子邮件:15秒。可以做到的:)
tskuzzy 2011年

5
“试生产:10秒。” 我太偷了!
Christopher Mahan

10
就是这个!你曾经打电话给水管工吗?从他们开车到您家直到他们离开的时间,他们会向您收费。那是他的全部时间,如果您不花钱,那是谁?与发展相同的理由。从被打扰并被要求做某件事开始,直到您单击电子邮件中的通知发送以通知老板工作完成的那一刻,您应该一直在跟踪时间。
Stefan Mohr,

在10秒内进行测试?通常,一个完整的测试涉及为我使用2个或更多不同的浏览器进行测试。
user281377 2011年

24

我上大学时曾与一位教授进行过这种讨论。他为我安排了演出,以解决另一位教授的副业网站由另一名学生草率地整理的一些简单的安全问题。(站点被污损了。)

最终仅需要几分钟的清理工作和权限设置。当他问到收费是什么时,我说了几句“只需几分钟,不用担心”。他回答说:“但是,你花了多长时间学习了,花了多少钱才能在几分钟之内做到这一点?这是50美元。”

在那之后,我总是对这些一次性的东西有所不同,如今,我将最低收费设定为1小时,在第一次收费后增加半小时。


20
“更改权限:$ 1。知道要更改的权限:$ 49。”
本杰克逊

18

让我以一个出租车司机为例,他的票价最低,然后每分钟/距离单位超出最低费用。

经验丰富的出租车司机也许知道捷径,可以在最短的时间/距离内到达您的位置,但是您仍然必须支付最低的票价。

自己也应该这样做,您的最低票价应该是一个小时,这就是我的工作方式。不过只要确保在合同中明确列出了这一点即可。


5
我很难相信出租车司机可以像软件开发人员那样令人信服:)
Boris Yankov

8

我的政策是设置最小结算间隔。如果我什么都没收,我要充一个小时。虽然官方政策是将所有工作都舍入到下一个完整小时,但仅花几分钟的工作我就舍入到$ 0,但随后我为该客户将下一个工作舍入到1小时。客户发现这不仅公平,而且非常积极。它表明您灵活而明智,并且您关心客户。

请记住,“免费”比其货币价值更重要。也就是说,如果显示正确,则客户宁愿为一个cookie支付1美元,如果它免费获得第二个cookie,而不是为两个cookie分别支付0.50美元。这是完全不合逻辑的,但是您去了。

还请记住,您给某人的折扣不会对您有所帮助,除非您告诉他们。如果您为他们工作不花任何钱,请向他们发送$ 0的发票(出于“会计目的”)。实际上,以25美元的信用额向他们发送25美元的发票,得出的总金额为0美元。


这也是我所做的。以15分钟为增量(因此,将16分钟记为30分钟),最少需要一个小时。
安迪

4

这是通常的谬论,恕我直言。您应该认为自己是在为知识量付费,而不是为解决错误付出的努力。


2

作为@MainMa答案的扩展:首先,即使小时费率较低,初学者在同一任务上花费10倍以上的费用,当然也会花费更多。换句话说,您可以以更便宜的方式解决相同的问题,在一个明智的公司/市场中,这几乎可以保证您将长期获得更多的工作:-)长期的工作安全是一件好事。

但是,如果您认为自己的专业知识报酬不高,可以考虑收集有关工作的统计数据,一段时间后,您可以向经理咨询数据,这些数据证明您为出色的工作而付出的代价很低,这可能帮助您加薪。


2

我同意@Scott

我认为您应该以最小的增量计费,例如15分钟。因此,如果您做一件事情需要一分钟,或者10件事情需要12分钟,那没关系;只需以15分钟为增量计费。当您引用某项努力时,您所引用的最少时间为15分钟。这使您的帐单变得简单,客户将始终知道哪些更改会花费最少。

还请记住,与手头任务相关的所有事物都是可计费的。您可以将其降低到60秒左右,这样就可以在开始新一天时启动计算机。请谨慎使用该信息。

关于经验...您的费率应取决于经验和市场。您需要根据自己的技能水平来评估自己认为是公平的。如果您知道初学者的时薪为20美元,这比现在的时薪还低很多,那么将您的费率提高到50美元。您可能会失去一个或两个客户,但是如果您对他们很满意,他们会希望与您保持联系,因为与小时费率较低的低级程序员相比,您可以更好,更快地淘汰工作。

对我而言,最好的方法是使用诸如Harvest之类的时间跟踪工具。我用它来跟踪与项目相关的任何事物。如果客户通过电子邮件发送给您,请在开始阅读电子邮件之前启动计时器。如果需要确定范围或估算工作,请在开始考虑工作之前启动计时器。完成工作后,启动计时器,然后开始忙碌。大多数时间跟踪工具都可以让您将时间向上舍入到最小增量!

这些工具还允许您细分帐单。也许您想为CSS更改收取每小时25美元的费用,但是为编写数据库查询收取每小时50美元的费用,谁知道呢?我喜欢拥有灵活性。我也喜欢拥有这些数据,因为您可以与客户端共享统计信息。如果您通常超过预算,并且可以通过报告(带有时间跟踪工具)显示该预算,则很适合进行重复业务或提高价格的谈判。


1

每小时$ X的最低费用为1/4小时(即$ X / 4)就可以了。实际的修复过程花了几分钟,但也有来回的电子邮件,等等。你不能免费工作。

请进一步注意,只对与您拥有稳定工作流程和持续关系的客户收取1/4小时的费用。如果不算一次,那么一定要按照@Tyanna的建议收取整个小时的费用。


0

您的老板怎么知道只花了15分钟?你有告诉他吗

您的费率是$ 25 /小时,这是有原因的,因为您有技能和经验来支持它。

我想你应该整小时收费。


假设我有不同的20个bug列表要修复。所有这些错误只花了1个小时。我仍然要收费一个小时,无论它们多么复杂
user824981 2011年

@ user824981是的。
斯蒂芬,

2
user824981-舍入到最近的小时。有时你会领先,有时你会落后。最后,它应该均匀。
泰安娜2011年

...并确保您通过电话电子邮件,部署,测试以及与修复错误相关的所有其他开销来收取通信费用。我保证花了你一个多小时。不要让任何人说服您可计费的时间只是调查和键入代码的时间!
maple_shaft

@Maple让我想起了这部漫画
Mark C

-1

确定每次启动隔离任务的最低费用,例如一两个小时。然后提供在剩余的最少预定小时内执行其他项目。

如果他们提供其他任务,那么您就不会亏本:您在那些时间里工作。如果他们提供了太多任务,并且花费的时间比最低任务长,那么您只是将自己推销了更长的演出。如果他们没有足够的物品让您在最短的时间内忙碌,请多谢他们并离开(闲逛无所事事,这比以超级英雄的风格保存培根会更好。

只要您了解费率,没有人会为您赚到最低的通话费用。每个人都知道您希望获得少量保证金,以中断您的日程安排以尽快处理他们的需求。通过提供按时计费的实际工作时间,您为他们提供了非常公平的交易(并决定将您解雇)。


-1

底线是您将每小时费率划分为自然季度。因此,您每15分钟递增一次计费。这是我与客户见过和经历过的最公平的解决方法。这样一来,他们就会知道最低要求是多少才可以进入游戏。然后,在每个点上超过15分钟的增量,您将舍入到下一个15分钟的块。我玩过两种方式,如果进入大块的时间少于7分钟,我将四舍五入;如果超过7分钟,则整整15分钟。

是的,有些人在跟踪等方面已经涉及了其他一些细节。您当然可以对不同类型的任务收取不同的费率,但是我个人比较喜欢保持直截了当的费用,而对于处理不同的变量帐单方,因为我需要足够的带宽才能正常考虑所有事情。


-1

您应该放弃小时费率或设定最低费率。例如,如果您被雇用1个小时,那将浪费您时间。如果修复花费了两分钟,您将不会赚很多钱。

您应该收取至少1个小时的工作费用。如果两分钟的修复为客户节省了大量金钱或时间,那么您应该收取更多费用。这就是基于价值的定价。

这就像一个关于机修工的故事,该机修工通过调节引擎螺丝在一分钟内修理好汽车,然后寄出一张1000美元的账单。$ 1调节螺丝,$ 999知道要固定发动机的哪一部分。


-2

您需要为第一小时的任何时间计费一整小时,然后以15分钟为增量。如果这是正在进行的开发项目的一部分,而您已经开始为此获得补偿,则可以收取15分钟的费用,也可以给他们一次免费赠品,但请确保决策者和支票签署者知道您正在为他们提供额外的费用,英里客户服务彩虹和蝴蝶免费修复。您必须学会衡量何时提供一些免费服务以换取老板的好感可能更有利。请勿经常这样做,因为这不会使您的职业遭受损失,但会导致您的银行帐户遭受损失。


-2

其他人已经指出,应该将阅读和理解错误列表的时间包括在可计费的时间中,因此,您实际上只花了1500万是不可能的。但是我希望看到的不是,而是:如果你真的那么厉害,为什么你每小时只收25美元呢?那就是我多年以前通货膨胀的速度,那时我还没有很丰富的经验。在此处或在Ask.com http://www.oncontracting.com/,dice.com或什至Google中进行一些搜索,以了解您的体验获得者通常能获得的评价。您可能会发现,即使通过代理机构,价格也远远超过25美元。


这不能回答所问的问题
gna

-4

你什么都不收

即使您觉得应该得到补偿,您收取的2分钟修复费用看起来也很糟糕。

但是,如果您像超人一样跳进去,保存了一天,那就更好了。信不信由你,从长远来看,这样做会为您提供帮助。

但是,您不能让这成为习惯养成。如果他继续对他这样做,那么您会坚定地说,我需要一份清单或报告我们需要做的所有事情。

同样,如果您到达那里,花了2分钟以上,我会停下来,做些笔记,并在做任何事情之前将所有情况报告给您的老板,并告诉他您需要做什么以及要花多少钱。


7
这是可怕的建议。为什么当客户/老板习惯于免费使用它时,您会免费工作,然后转身变得不高兴?为什么要花钱和几年来磨练自己的技能,以便比初级开发人员更快地做事,而要比慢速的初级开发人员得到的报酬少(收费少)?
马修(Matthew)

4
永远不要免费工作。执行此操作时,您会打开一个大型蠕虫罐,因为客户希望您免费(也许无限期)承担此责任。
maple_shaft

与客户/老板建立关系。您不会宣传要免费修复2分钟的广告。你进去照顾它,两分钟后告诉他你做完了。这些事情会被记住,未来的工作(您将获得补偿)将如愿以偿。我们公司以这种方式运行非常成功的商业模式。在我看来,这不仅仅是2分钟的修复。我的职业生涯不受此建议的困扰。
Bryan Harrington

有不同种类的“客户/老板”。他们中的大多数人只是想尽可能多地剥削您,有时您需要成为一个该死的商人,以避免这种剥削。
2011年

@nCdy然后您为错误的人工作。在没有实际经验的情况下,对此评论有很多评论。
布莱恩·哈灵顿
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.