昨天,在知名社交新闻论坛 Reddit 上,一网友发帖求助:“我开发了一个应用程序。一些用户要求它开源。我该怎么办?”此帖迅速引发了评论区的数百条留言热烈讨论。
这位求助者并非计算机科班出身,对自己写的应用程序代码也没有很自信,之前写了个应用程序,但是在考虑是否将其开源期间,就在网上遭受了一场“小战争”,导致他对这个网络世界的信任崩塌了。
对他影响很大的一点是,“一位开发类似应用程序的用户在公开场合对我的应用程序非常居高临下地指点,但私下里请求我与他分享部分代码。嫉妒与钦佩几乎来自同一个地方”。
图片来源:Reddit社区
在此之前,他确实是考虑开源其应用的。但在这之后,他开始持保留态度。截至发稿前,该原贴已经删除,他的最后决定也无从求证。但从求助者的原帖,以及他与网友的探讨中,我们发现不少人对开源软件的认识仍然非常有限,也存在一些误解。
热心网友在线出招儿
在原帖评论区,有人鼓励他不必理会旁人,继续做自己想做的事,自己决定是否开放源代码。
也有劝他先从商业利益考虑:“看看你能不能先用它赚钱,如果它流行起来,你可以选择让它开源。不用把它送给可能会从你这里获利的人。”
还有从实际操作方面给出建议:“你可以把它保密并手动添加协作者。这样社区的人可以帮助你,但你可以控制谁才能看到源码。”
与求助者经历类似的网友,建议他等待至少 6 个月到 1 年的时间再开源,实际上倾向于劝其不要开源。并认为这种行为可能有利于竞争对手复制源码。
从大部分回帖来看,求助者更倾向于以防开源代码落入竞争对手手中,不开源。
因此被早先劝作者“做自己想做的事”的那位网友直白地怼:不要让那些讨厌的人影响最初的判断、支配你的行为,这听起来更像是你为不开源找的理由和借口。同时又苦口婆心地劝他:这是你的代码,用它做你想做的事。对于你的宏伟计划,世界不会关心你用哪种方式实现。
不过求助者也强调了自己不是在找借口,如果这个问题没有发生,应用程序可能已经开源了。我们看到的只是一个即将踏入开源世界、还没有对开源有太多认识的萌新被击穿了信任,因此缩回了保护壳,令人惋惜。
开源专家的正面解读
开源世界到底是怎样的?此类问题在开源世界的解法是什么?或许大家可以来听听几位开源前辈的分享。
在最新一期 CSDN《开谈》——“开源是如何开始吞噬软件的?”直播中,恰好也聊到了此类话题:有开发者认为,开源可以让任何一种核心是基于算法/软件/程序的技术或者产品在很短的时间内失去技术门槛,全世界各国的技术人员都可以快速迈入这个门槛。既然开源可以让大家站在同一个起跑线,那是否意味着最早开源此类技术的人也失去了先发优势,面临被力量更大、其他优势更多的企业碾压、垄断市场的可能?如此一来,开源反而让这些开发者处于市场竞争劣势?如何看待开发者这类的忧虑?
开源社理事庄表伟表示:其实这种忧虑在今天而言是一种幻觉。换言之,开放源代码给你带来的也可能是一种虚幻的满足或者说虚幻的安全感。许多厉害的软件源代码就在那里,你随时可以取用,但这不意味着你就能编译出一个同样厉害的产品。同样的,对厂商而言,代码不开源就能够守住商业秘密吗?这是另外一种虚幻的安全感。对于个体开发者,开放的源代码并不会给你带来更多安全感,对厂商来说,闭源的代码也不会给你带来更高的竞争优势。
真正的市场竞争力往往不在代码上,可能是在别的东西上。例如产品设计、功能、市场占有率的提升技巧这些与代码无关的地方。
开源之道主创适兕对以上观点也表示认同,同时他还为开源的真正价值做了诠释:
过去几十年是一个被信息轰炸的时代。如今的开放源代码,就像过去的信息轰炸,信息的产生速度已经远远大于每个人吸收的速度。此时我们要认识到人力成本才是真正的生产要素。
开放源码非常重要的一点是开放“可能性”,它可以让社区用户和创始者一起创新,挖掘更多新玩法,这是开源非常大的价值点。当全世界都可以基于开源项目协作、使用,这会为整个社会带来更大的价值,这是我们大力推崇开源的很大因素。
以上是开源专家们的解答,仅为大家提供一种参考。开源给了普通人很好的机会去参与到更大的历史贡献中来,也为大家打开一扇窗去探索新的世界。对于初入开源世界的新人,专家们也给到了几条探索思路:
对开源世界有好奇心,对看到的开源内容保持不断探索下去的兴趣;
对代码有好奇心,去查看源代码、试着使用源代码;
对社区有好奇心,参与线上或者线下的开源社区,结识志同道合的好友,交流思想、增长见识。
对此问题有不同观点,也请留言分享给我们~
参考来源:
https://old.reddit.com/r/learnprogramming/comments/y26efa/im_made_an_app_some_users_are_demanding_it_to_be/