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
    这个例子有点挑少而极端的情况说事儿的嫌疑。
    我用 lyx 作过数据记录,这个软件是基于 latex 的,支持织入 R 代码和结果,不过后来发现了 RStudio 和 Rmarkdown,迅速转移阵地。

      dapengde 我知道有些人对 Markdown 反对意见比较强烈,所以我在书中特意为这些”硬核“用户安排了两节:

      只要你愿意敲那些冗长的反斜杠命令以及尖括号标签,用这些文档格式也毫无问题,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 开发者大多了(瞧瞧这些惨淡的星标数和粉丝数)。

        dapengde reticulate 如果支持 bokeh 等动态图形库的话,就没 Jupyter 什么事了

        8 天 后

        yihui

        的确如此,一升级就出错,一出错看半天。所以今年下半年转战 data.table 了。

        我还没有系统学习过tidyverse,看来要考虑要不要先观望一下,先入data.table的坑呢😂

          F-test

          逻辑是这样:tidyverse目前可以看成还在不断开发,活跃度很高,代价就是代码容易变来变去。从目前坛友经验看,tidyverse的旧版本兼容性不好,个人怀疑是测试不充分。

          结论就是: 看工作性质, 做做一次性/探索性的数据分析的话推荐用tidyverse,做R包开发,追求稳定性的话尽量避开tidyverse。

            tctcab henrywangnl 感谢回复和建议,我的意思是想着自己还是学生,先学习一下看起来比较稳定的data.table,然后一边看看tidyverse的开发情况,最后当然希望的是“我全都要”😂

            1 个月 后

            今天我终于憋着一口气跟哈神开了个会,这件破事儿真是让我太费神了;为了开这个会,我还得仔细看他到底在 hugodown 里捣鼓了些什么东西。总之这件事的起因是 blogdown 不让点 Knit 按钮(这在文档中从一开始就强调了),然后 blogdown::serve_site() 有时候会误编译旧的 Rmd 文件(因为 git 设置文件修改时间不靠谱导致 blogdown 误以为有些 Rmd 文件需要重新编译)。这事儿我也是有苦衷的,主要是 RStudio 编辑器无法给我 Knit 按钮的自定义行为(bookdown 可以做到,因为 bookdown 的 Rmd 文件都在根目录下,而 blogdown 则在子目录下,而 RStudio 不支持对子目录下的 Rmd 文件自定义 Knit 按钮行为)。这个问题我从一开始就知道,而且也给编辑器团队反映过,但后来不了了之了。哈神上来不问来由,只顾赶紧解决自己的不适,便开始悄悄重造轮子。解决了 Knit 按钮问题之后,便一发不可收拾,把 blogdown 活生生重写了一大半,两个包里面重叠的函数一大堆,都是他重写的。等到我从另一个人那里得知 hugodown 的存在时,我发现已经拉不住这匹野马了,加上当时我正在疯赶进度以写完我手头的一本书,我也顾不上他。

            当然,我表示强烈抗议之后,哈神是连连道歉了,但我有点怀疑这种一党独大、人挡杀人佛挡杀佛的势头是否能遏制住。毕竟程序员很容易变成控制狂,包括我在内。不知道我这顿拳头能否让他停下来反思一下。

            不管他接下来怎么办,既然那边单方面宣战了,我也只能硬着头皮上了,把 hugodown 解决的问题在 blogdown 里重新解决一遍(很多问题并不难解决),免得那些这么快就倒戈的群众继续妖言惑众,搞得大家将来不知道到底该选哪个。

            哦,这期间还有个大大出乎我意料的故事,刷新了我对官僚主义的认识。当我问起倒戈群众中的一位为什么选择 hugodown 时,她说因为他们公司的 IT 见了 blogdown 这个包名感觉它跟社交媒体有关,所以不许用它,而 hugodown 这个名字看起来很中性,似乎没有什么威胁,所以就放行了,于是公司里只能安装 hugodown 而不能装 blogdown。我特么真是无语问苍天。

              yihui 我还以为会早开了,因为我发现 Github 上 hugodown 似乎停下来了

                Cloud2016 我很早就丢了一封邮件抗议了。要开会的话,我还得花大量时间准备,给他一项一项对比二者的异同,加上我都一年没时间休假了,所以最近休了个假(主要用来更新了一下博客),然后就拖到现在了。

                dapengde 微信是明显的社交媒体软件,肯定是不让用。

                  yihui 但我感觉国内是把 wechat 当作操作系统来用的......好希望我们单位也禁掉它。

                  另外要是抗议无效的话,我觉得可能得以彼之道还施彼身,比如悄悄开发个 tinyverse 什么的,应该比正面迎战有趣一些。

                  不过,大神内耗,好浪费啊。

                    dapengde 嗯,我不会用这种方式浪费时间的,有时间我宁愿闷头写博客。

                    国内微信的霸权实在是太吓人了,无孔不入,简直成了老大哥。我最痛恨的就是从小学开始,微信就成了教育不可缺少的一部分,家长和老师都被死死绑在上面,仿佛离了微信和手机什么都干不了了。

                      yihui

                      套用个最近流行的词,你们内卷了!

                      吃瓜群众继续蹲个后续