关于开源

2014-12-19 18:01:23 +08:00
 greatdk
昨天在Github放了我的第一个开源项目,当然也在V2EX上面贴了上来( /t/154848 )(很高兴得到很多V友的支持)

晚上的时候,你们知道晚上一般是人文思情趣比较高的时候,我又写了一篇文章,叫做《漫谈Github与开源》,地址在这: http://www.wdk.pw/802.html

今天下午发现这篇文章被CSDN的一个微博转载了,然后很多程序员也转载了,不过却基本上都在喷我,轻点的说我太年轻太幼稚了,喷的重的直接说我读书脑子读坏了。

http://susefood.u.qiniudn.com/weibo1.jpg

http://susefood.u.qiniudn.com/weibo2.jpg

http://susefood.u.qiniudn.com/weibo3.jpg

我承认我很菜,对开源的理解也不深刻,昨晚上纯属一时兴起写的文章,可能的确有不少错误。我想在这里问问,关于开源大家到底是怎么想的?我不是质疑微博上的大神喷的不对啊,我就是纯好奇大家怎么想,还有新手应该怎么看待开源?
6784 次点击
所在节点    随想
56 条回复
Sunyanzi
2014-12-19 21:25:21 +08:00
@Havee 我赞同楼主的态度 ... 楼主只是阐释自己的想法 ... 并没有「狠狠的黑另一个」 ...

有思想就要对世界说出来 ... 只有心怀叵测的人才会觉得楼主别有用意 ...

我很欣赏楼主的文章 ... 小小年纪能有这般眼界 ... 未来着实不可限量 ...

如果被这么几句不负责任的乱喷毁了 ... 实在是很可惜 ...
mofet
2014-12-19 21:37:26 +08:00
开源/闭源从精神来说当然是“闭源意味着封闭,而开源则意味着开放”,但“封闭很难进步,开放才会进步”这句是错误的衍生方向,如同资本主义与GC主义的较量,人类社会的逐利性质总会使实际情况偏离理想主义,而接受人性的“利己”弊端并发挥其正面作用作为制衡标准之一的模式 在事实上更成功。

实际当中开源/闭源项目的情况。自古闭源多黑科技,有足够的钱、有开发动力、留得住人才、大神可以专注研究。参见很多开源项目,会感觉到一群水平参差不齐的人在没有利益回报的情况下写出的代码,质量有时能用糟糕来形容。IBM M$ Google 当然也会使用/发起开源项目,但是实际上很多项目和 commit 过不了大公司内部的质量审核。Linux 这种少数大公司靠服务捞钱、产品可以开源的模式不适用于所有领域,而且这种模式本质上是内部代码“共享”给外部,主要支干也要依靠大公司内部封闭的运作。现在这个世界上,是闭源在驱动软件发展,开源在驱动技术交流。

总的来说,逃避现实谈理想都是空想,用否定闭源来追求开源确实是幼稚。
chshouyu
2014-12-19 21:46:59 +08:00
归根结底一句话:楼主你还小
88250
2014-12-19 21:50:45 +08:00
和 LZ 你想法差不多吧,如果你做过几年开源项目还能这么认同自己,这胜过任何负面评论。

纸上谈兵很简单,就像你说的:

“任何项目,在Github上面获得fork或star,都意味着其它工程师对这个项目的认可,这比100个QQ空间的赞更有价值”

来实际行动吧,开源不是这么简单的说说。
abscon
2014-12-19 22:05:33 +08:00
楼主听说过开源协议么?github上找不到你的开源协议呀。既然支持开源,这点功课还是要做吧。

推荐使用WTFPL或者AGPLv3
0x1e240
2014-12-20 02:27:16 +08:00
有GitHub吗?
FrankHB
2014-12-20 04:04:31 +08:00
LZ没搞清楚外延……直说吧,活该。如果要搞精神胜利或者需要某些其他奇怪的人文情怀,不妨讨教一下著名抠脚皮大汉RMS,然后被科普所谓“自由”和“开源”(公认的正式定义可以分别参照fsf.org和opensource.org)的意义和目的之类,根本就是两回事——从一开始就不是同宗,只是后来被讹传合流罢了。这种业内基础历史常识教育同样适合对这种意识形态争议有大惊小怪/过激反应的某些瞎评论的。
LZ看来还的确欠缺了解其它一些讨论这个话题的必要基础,最主要的就是上面有提到的“开源协议”,正式点的说法是许可证(license)。注意“开源”不等同于把代码公开给别人看。没有明示许可证的repo里的内容实际上一般根本说不上真正意义的“开源”——在几乎所有著作权法/版权法管辖下,默认情况别人没权利把你这些东西当成“开源”的东西用。虽然多少是普法范畴,在这个议题上能彻底无视也算是硬伤了,请自行补课。(GitHub真有不少用户都这样,不过和LZ不同,很多本来压根就没当作正儿八经的开源项目,倒也无伤大雅。)
然后……话说原来闭源还有所谓的圈子么。
麻烦搞清楚,现状就是有不少领域闭源=资源不足+普遍落后,代表例子如M$VC的渣编译器前端。反过来的例子也当然不是没有,但往往离多数人都关心的基础领域相距甚远,所以经常会被“外行”边缘化,有意无意地被无视,这有什么不可理解的?某些洗闭源地的这种哪壶不开提哪壶的态度倒也是另一种活该被喷:本来就谁也没欠谁的,有什么脸“俯视”还是仰视?难道开源或者闭源了代码bug就自动没了?
FrankHB
2014-12-20 04:15:55 +08:00
@happywowwow 有些奇怪为什么一个magic number就体现闭源的“生产力”了?“生产力”是集中体现在特定实现的质量上还是被广泛使用以产生影响来得容易些呢?
实际上,被引用的文章里明确说:“QUAKE的开发商ID SOFTWARE 遵守GPL协议,公开了QUAKE-III的原代码,让世人有幸目睹Carmack传奇的3D引擎的原码”……这怎么看都是反面论据吧?假设没有被公开的话,恐怕就没有那么有存在感了。
最后得说一下,这种平方根倒数的实现在许多年以前的主流机器上就不是值得采用的黑科技了。一般而言,SSE更快。
casparchen
2014-12-20 04:48:00 +08:00
我支持开源的精神和想法,但是我也看到有许多被开源“洗脑”的人,每次遇到这类人(或者有这种倾向的人),我都希望能用冷水泼醒他们。
bbx
2014-12-20 04:58:41 +08:00
如果怕被喷,就别在网上留下任何东西。。。。如果这都看不透,确实图样图森破
efi
2014-12-20 07:30:06 +08:00
ibuick 是谁? http://www.zhihu.com/question/20913716
他網站的介紹是抄 Tapbots 的,不過忘記把牛津逗號一起抄過去了。當然,還有很多語法問題。
记得当时在微博上某个评论下讨论关于安卓的东西,然后这位大神就跑来说“用安卓的傻逼,在苹果方面的知识你肯定不如我。。。”然后还无缘无故的说他写过mac os高手进阶的牛逼事迹(操,谁他妈问你了?)
他爱骂人...麻麻说骂人不是好孩子
真名王飞,是一名程序员,也是一名OS X / iOS科技文章作者,大学英语专业,后来因JAVA进入IT界。开发的软件大都是OSX平台的,比如desktopforecasting、icheck等。著有《OSX高手进阶》,参与创建APP分享站疯狂盒子。言辞犀利,率性而为,自称职业果粉,坚决的抵制一切盗版,算是程序员中的另类。

Tinyfool是谁?http://www.zhihu.com/question/19581223
教育背景:曾就读于西南石油学院,因为关系还算强勉强毕业。

职业经历:天津津亚电子 网管/程序员 金远见(文曲星) 同步客户端开发工程师 http://265.com 某软件项目开发工程师 创业:银杏科高技术咨询 共同创始人 创业:银杏泰克搜索 共同创始人 盛大创新院 高级研究员 盛大云中书城官方iPhone/iPad版作者(因苹果政策变化,暂无法上线,越狱渠道内测中) 创业:上海泰尼网络科技有限公司 创始人
Perry
2014-12-20 10:20:08 +08:00
不了解就别下结论.
happywowwow
2014-12-20 10:29:44 +08:00
@FrankHB
1、”被广泛使用以产生影响“,开源和闭源都有被广泛使用的例子,两者的影响都十分巨大,我窃以为闭源的影响力更大。而“特定实现的质量”,优秀的游戏公司有多少开源了他们的代码?闭源的情况下才产生了这么多优秀的游戏,那开源的优秀的游戏有多少呢?
2、的确,“遵守GPL协议,公开了QUAKE-III的原代码”,是反面论据,但magic number的产生是商业公司驱动下产生的,在代码公开之前,它实质是闭着源的。
3、最后得说一下,那是90年代的代码。且magic number在我电脑上依旧更快。
clowwindy
2014-12-20 10:45:41 +08:00
看了一下你的项目,有一个问题:你的项目并不是开源的。

为什么?因为你没有指定 License。

License 是什么?说白了就是授权用户可以自由修改、分发你的代码。如果不指定 License,就暗示着你使用了默认的版权授权:作者版权所有,用户未经授权不得修改、分发。这也意味着你没有授权其它人 fork 你的代码。

开源并不等于源代码是公开的。开源要求项目的作者提供了符合自由软件的定义的 License: http://en.wikipedia.org/wiki/Free_software#Definition
raincious
2014-12-20 13:26:58 +08:00
@clowwindy 错。源代码开放就是开源软件。你说的那是自由软件:)
clowwindy
2014-12-20 14:50:38 +08:00
@raincious

不要误导楼主,不允许 fork 还有意义吗?

Open-source software (OSS) is computer software with its source code made available with a license in which the copyright holder provides the rights to study, change and distribute the software to anyone and for any purpose.
http://en.wikipedia.org/wiki/Open-source_software
raincious
2014-12-20 16:21:24 +08:00
@clowwindy 你又不对了……

好吧,可能是我没说清楚,因为我看了原贴,有一句:

“第一次尝试在Github上面*开源*啊,谁耿直一下fork一把~下次请你喝咖啡啊”。

虽然这不是法律协议,不严谨,但是(不严谨的)可以认为已经“授权过了”。只是协议未跟随软件本身发布。但是不影响作为“口头授权”的效力,只是万一追责的话会有造成扯皮的麻烦(万一楼主说:我没给你用啊),所以不建议。但不能说楼主的代码就不是“开源”的(这也不严谨,因为他毕竟通过这种方式授权了,而且指明了开源)。(我怎么觉得这是抬杠?)

所以现在就处于“它不是开源的”和“它是开源的”的中间状态。我不太反对你严谨的选择“它不是开源的”这个观点。但一种更好的说法是“你的开源项目没有严谨的授权协议”。

开源软件的定义: http://opensource.org/osd

所以说,楼主只需要去这里找个然后套上就可以了: http://opensource.org/licenses/alphabetical

当然,既然都开源了,为什么不这里选呢: http://www.gnu.org/licenses/license-list.html#GPLCompatibleLicenses
kavi
2014-12-20 16:49:17 +08:00
尽管 lz 的很多观点我不赞同,但是这并不影响到什么东西。

成长总是伴随着苦闷和迷茫,只要经历过就是好的,大家都一样。
0x142857
2014-12-20 17:40:39 +08:00
名称代表意味,不同字眼传导不同理念。
gdgoldlion
2014-12-20 18:43:59 +08:00
兄台,你把开源捧太高了。程序界有句话,开源最贵=。=

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/155184

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX