196-R二十周年,Hadley Wickham访谈
刘小泽写于2020.6.10 在Medium看到有一个关于哈德雷的专访,分享给大家【老哈可是花花的偶像】 如果你身边有朋友在学R语言,却不认识哈德雷,那真的有必要普及一下了: https://medium.com/nightingale/dataviz-and-the-20th-anniversary-of-r-an-interview-with-hadley-wickham-ea245078fc8a
R语言20周年
2000年2月29日,R 1.0.0正式发布,当时主要是针对统计学家。20年后,它已经发展壮大,功能越来越齐全,在数据科学和可视化领域产生了不可估量的影响。
当前,R与Python一起在学术界广泛使用,而且R还被世界各地的新闻工作者采用,作为数据整理和可视化的首选。
R语言的发展,离不开这个人
他是绘图系统ggplot的开发者,是数据处理方案(例如dplyr和tidyr)的创新者。目前在Rstudio担任首席科学家,在他的带领下,一组开发人员不断研究Tidyverse,促进着数据科学的发展。
哈德雷开始是通过Microsoft Access Databases接触编程的,当他在奥克兰大学上本科时接触到R(那时R刚刚开发出来)。后来去到爱荷华州立大学攻读博士学位,并在那里开发了ggplot,后续编写了数十种广泛使用的R包,用于数据整理,分析和可视化。
哈德雷以“ 整洁的数据 ”(tidy data)的概念而闻名,这个概念源自他开始设计数据库的经验。曾获得2006年约翰·钱伯斯(John Chambers)统计计算奖,并于2019年因其在统计计算,可视化,图形和数据分析方面的有影响力的工作而获得著名的COPSS Presidents奖。他写了4本书(3本开源),在:http://hadley.nz/
以下是记者的问题和哈德雷的回答 让我们看看牛人是怎样炼成的
问题一
2003年在奥克兰大学读本科时首次接触R,那时候在R编程是什么感觉?
- 实际上哈德雷从来没有上过专门针对R或R编程的课程,但是奥克兰大学的几乎每个统计学课程都使用它,,而且我还以计算机科学双专业的身份完成了很多其他编程工作。
- R感觉像是一种奇怪的语言,它执行了哈德雷认为在编程语言中无法实现的工作
- 要是在Windows上将R与R GUI一起使用的,那时哈德雷的所有脚本都是.txt文件,所以不知道如何如何编辑它们的,甚至在Word文档中都有一些代码
- 在Rstudio之前的,唯一获得帮助的地方是R-help,这非常吓人
- 画图也都是base包解决
问题二
与Ross Ihaka或Robert Gentleman(R的创造者)有任何联系吗?
起初作为一个自学者没有,但离开奥克兰后联系变得更多【看来只有修炼到一定水平,才会接触到更多的牛人】
问题三
您能谈谈ggplot的诞生吗?该软件包的动机是什么?早期开发是什么样的?
- 刚开始用Lattice,但同时比较失望
- 开始阅读Lee Wilkinson写的The Grammar of Graphics,获得灵感
- Lee Wilkinson访问了哈德雷正在攻读博士学位的爱荷华州立大学,给到很多反馈
- ggplot was a “functional grammar of graphics”,这也就是gg的意思吧,图形语法
后来诞生了ggplot2
重点引进了图层机制,用
+
来添加不同的图层。但这个与ggplot不冲突,算是另一个全新版本他经常做的一件事就是素描。有时只是笔和纸,写出代码的外观,有时则是键入虚构的代码,想象整体工作的方式。然后他在Rstudio拥有一个团队,在内部做了大量工作来收集意见,并通过博客和媒体分享给更多用户。
他之前带了一个实习生:Thomas Lin Pedersen,在实习期间就推动了ggplot2大部分的发展,之后也一直在继续努力,目前是Rstudio ggplot的首席开发人员
现在已然是大牛:Thomas开发的拼图patchwork广受好评,花花之前也写过 大佬新包patchwork:可能是迄今为止最优秀的拼图包
问题四
促进R社区发展的原因是?
之前R语言的发展,很长一段时间以来,可能有这么多人在提供帮助,因为R-help确实使他们望而却步。但现在,StackOverflow非常令人欢迎和友好,并且使用#rstats
在Twitter上变得更加流行,另外还有一个庞大的社区群体:Rladies值得关注
R数据可视化的下一个20年
哈德雷和托马斯在这一点存在较大的观点分歧。哈德雷认为,R中可视化的未来与JavaScript的可视化有着根本和不可分割的联系。制作高质量可视化效果的人数正在增长,希望更多的人继续以编程语言而不是点击工具来表达可视化效果
That’s my hope for the next 20 years, that it becomes a given that code is the language of data science and data visualization.