这里说这种话估计没什么问题,我是超级轻量级加小白用户,我之前觉得tidyverse特别好,但现在渐渐不大喜欢这个样子了,开始练习base plot,学习 data.table,有时候也用他们个别的函数,毕竟有时候能省几行代码。但我觉得这些东西想往信仰方面发展的时候就太可怕了,有点千秋万代,一统江湖的意思。
hugodown 是个啥新玩意?
感觉这里面涉及的身份太多了:工作的话,发足够的钱就好,哪家公司没有斗争。语言的话,最好跳出具体的条条框框,站在更高的维度去看R这门语言,没有不扯淡的语言。对99%的用户,base R里的内容就够用了。装X追潮流被牵鼻子真没啥好处,毕竟冷暖自知。
作为一家公司必须打造一个标准,形成规模化,至于代码可读性,方不方便排错等等都不重要,比如 Matlab 生成的 C/C++代码谁能看懂,SPSS 报错信息谁能搞明白,但是丝毫不缺大量的人免费为其培养用户基础,最终占领市场,我们从背后的商业逻辑来看就都清楚了!RStudio 不过是又一家披着开源的外衣的商业公司
Cloud2016 披着开源的外衣
欧,不完全是这样,我们也穿着开源的内衣。我敢拿性命担保,我们厂长(就是写代码最勤的那个男人)绝对是从内心支持开源的,只不过无论开源不开源,有人的地方就有江湖、有政治,厂长他也控制不了这一大伙人,而且控制也未必合适。厂长只能引领大方向,比如把 RStudio 从 Inc 公司转变为 PBC 公司,以保证(至少名义上)RStudio 在可预见的未来仍旧会是一个良心公司。
跑题跑得有点远了。不过也反映出一些问题。我以前其实就跟公司领导层说过净土的一个潜在危险,就是它的势力太大会导致吐槽的人不敢吐槽,或者不敢公开吐槽,因为毕竟站出来跟大多数人(信众?)唱反调会显得有点蠢;即使吐槽,声音也会显得非常微弱。这样的话,净土宗可以人挡杀人、佛挡杀佛,而缺乏制衡它的力量。万一民怨积攒太多,而他们一直听不到这些声音的话,搞不好哪天一伙陈胜吴广揭竿而起另立一派、灭了净土宗也不是完全不可能。
这次不是净土宗的问题,是左右互搏术啊
这二党之争应该属于公司内部家务事,作为外人,不知道方不方便评头论足。说起派别和势力消长,这是从开发者角度或者说是公司角度来看的,自然看得更为高远。作为普通用户,我才不懂也不管什么净土宗不宗的,只是看哪个工具好用就用哪个。
固定扳手和活动扳手都有存在的价值,不存在谁灭谁的问题。净土宗再狂,base R 仍然在手边摆着,想用就用没人拦着。反之亦然。净土美艳不可方物,脾气反复无常,用户各有喜恶,自有选择。还是交给市场决定吧,用户用脚投票咯。只是别忘了这些都是干活儿的工具,干出漂亮的活儿来才是正事儿。
说回 hugodown,我是不打算尝试的,因为 blogdown 已经足够好用。单从用户角度出发,多一个功能接近、相互竞争的工具,不是坏事。只是这对 @yihui 太不公平,低调老实的人在这种情况下会吃亏。而且,大神为此内耗实在可惜,哈神有这工夫还不如稳一稳净土包,把向下兼容做得好一点。
至于同一公司为啥出两款类似产品,可以想想 R 里面为啥同时有 library() 和 require()俩函数,为啥腾讯明明有qq还弄个微信,也许能找到答案。
- 已编辑
二党还不算有争,既然开源,谁都有开发自由;不因同在一家公司就让开发者回避某些已撒种的领域,这在我看来挺符合开源精神的(这些种子以后是否长成不一样的物种也未可知)。问题是,以净土宗这样的势力,随意玩票跨个界就能让已多年耕耘一隅的同公司明星员工也感压力和担忧,更遑论非同公司的普通开发者;另外,让人感到压力的不是产品本身而是产品后头的光环。以净土和 RStudio 现在的体量,它们是否善用影响力或可决定整个 R 开发社区是否有相对公平的竞争平台,进而决定开发社区是否有良好的生态。
虽然我只是个轻量级用户,但有时也觉得净土宗似乎想用 R 包的形式重塑 R 语言。yihui 围绕 Rmarkdown 开发的一系列包扩展了 R 语言的应用疆土,如果把这些包比作 R 语言的进化,那净土的产品在我看来更像是 R 语言的整容。最开始净土下的几刀还挺好,但后来好像不那么审慎了。
我觉得 R 包跟 R 的关系应该是细胞器跟细胞的关系,一个细胞器混好了没准能成个叶绿体或线粒体,对细胞至关重要,但一个细胞器老想着去重写核基因组,这似乎不是明智的选择。
- 已编辑
Cloud2016
RStudio 的营利模式跟 Matlab, SPSS 等不一样。这后两家是卖咖啡冷饮的,而 RStudio 是咖啡免费(RStuido,R 和 R 包们),但进屋坐着喝需要收钱(提供服务器)。所以有多少人用 RStudio 旗下的包无所谓,激活 R 开发社区,扩大用户群体才符合他们的利益---社区越强大,R 用户越多,服务器的潜在使用者就越多。有明星产品当然好,但非自家产的明星产品也不和 RStudio 产生利益冲突,因为这些都是咖啡,反正是免费的。所以我很纳闷为什么 RStudio 不帮忙宣传下 data.table 等非自家产的神器,将这些好东西都纳入培训班,扩大 R 的影响力,而不是光扩大净土的影响力。
大力支持开源,增加各种咖啡冷饮数量才符合 RStudio 的“商业逻辑”,他们做得不错,但还不够好。
我对 tidyverse 没什么敌意,只要它不会将 data.frame 和 data.table 类型的数据对象强制转化成 tibble 类型,并且只能使用 tidyverse 去后续操作数据的话,我还是可以忍的,总之,只要它不妨碍我继续使用 Base R 函数(包括 data.table)我都不会去攻击它!
- 已编辑
Liechi 此文把 R Markdown 也拖下水了:
This blind faith extends to other RStudio products, such as RMarkdown. On Tidy follower on Twitter, for example, mistakenly thought that one cannot write reproducible code -- code that give the same result no matter when or where it is run -- unless one uses RMarkdown. This of course is quite false; RMarkdown is neither necessary nor sufficient for reproducibility. But the poster had apparently heard "Use RMarkdown for reproducibilty," and took it more literally than even RStudio meant it.
老实说,除了 R Markdown 和 Jupyter Notebook,我真不知道别的工具。
dapengde 我知道有些人对 Markdown 反对意见比较强烈,所以我在书中特意为这些”硬核“用户安排了两节:
- https://bookdown.org/yihui/rmarkdown-cookbook/latex-hardcore.html
- https://bookdown.org/yihui/rmarkdown-cookbook/html-hardcore.html
只要你愿意敲那些冗长的反斜杠命令以及尖括号标签,用这些文档格式也毫无问题,RStudio 都支持。
- 已编辑
Liechi 不知道现在还有多少人记得当年大明湖畔的 Sweave 呢?我的感觉是现在很大一部分 R Markdown 用户不知道 R Markdown 背后是 knitr 驱动的,而 knitr 的用户中可能更少人知道 knitr 和 Sweave 的渊源。然后更更少的人知道 LyX 里嵌入 R 代码的脚本是谢大贡献的,以及更更更少的人知道 LyX 的中文界面还是谢大翻译的。
其实开源社区真心需要一些史官来把很多埋藏在软件背后的历史梳理一下。
Ihavenothing 你要是不提,说实话连我自己都快忘了。史上两大默默无闻的良心编辑器:LyX 和 TeXmacs。原来我还帮忙翻译过 LyX 界面,突然深感骄傲,哈哈!这么说来,RGui 的界面我也掺和过,我曾经辣么厉害我家里人造嘛!
我早该重新写一篇 LaTeX 与 Markdown 对比的博文了,得为 LaTeX 正正名。尽管我的本意不是要污蔑 LaTeX,但 Markdown 的盛行间接造成了污蔑 LaTeX 的结果。这也是开源界的开发者们名声太不对等的结果,我的影响力可能比 LaTeX 开发者大多了(瞧瞧这些惨淡的星标数和粉丝数)。