专栏首页一丘一壑用Python分析WordPress官网所有插件的开发者信息(续以及人物介绍)
原创

用Python分析WordPress官网所有插件的开发者信息(续以及人物介绍)

转自丘壑博客,转载注明出处

前言

书接上回,上一篇里我们讲了一点数据分析的思路和方法,顺带分析了一下http://WordPress.org上所有插件的作者信息,得到了几个数据,比如插件数量Top10的作者、作者的区域分布等等。本篇作为补充,关于开发者的分析还可以从时间维度分析,比如

  • 最早期的给WordPress开发插件的是哪些人呢?
  • 每年的插件数量增长情况如何?
  • 活跃的WordPress开发者平均多久会发布一个插件?

思路

这次主要用到的字段是added,也就是插件发布到Wordpress.org的日期。

和上次只用到一个key不同,这次我们可能需要多用到几个key,所以可以使用Python字典对象的另一种方法del

具体来说,就是在循环jsonline文件的时候,每一行就是一个插件信息,把不需要的key全部删除掉,只保留需要的key,再把更新过的整个字典对象加入列表中即可,这样就不用每次都手动构造一个新的字典对象了。

最早期的给WordPress开发插件的是哪些人呢?

早期是多早?根据Wikipedia上的记录,2004年5月发布的WordPress 1.2开始支持插件系统(话说那时候Matt也就刚刚20岁啊。。。好年轻啊)

New plugin architecture: The new plugin architecture simplifies modifying or extending WordPress’ features. Plugins can now hook into nearly every action WordPress does.

那我们就把早期定义在04-05年,这已经算是很早期了,在那时候就开始开发WordPress插件的到现在都是一些元老级人物了,打个不恰当的比方,也相当于是1921年上过嘉兴南湖那条小船的了。

下面是代码:

我们都听过钱钟书的那个故事,一位美国的女读者喜欢钱钟书的作品,想要登门拜访他。钱钟书在电话中婉言拒绝了这位女士,拒绝的理由是:“假如你吃了个鸡蛋,觉得不错,何必要认识那下蛋的母鸡呢?”

恰恰相反,我更喜欢去认识母鸡,甚至有时候觉得母鸡的故事比鸡蛋本身更有吸引力。具体来说,就是我对开发者的一些经历、经验、八卦故事更感兴趣,甚至之前对着man手册上的名字去挨个搜索开源届的这些大拿人物。。。不知道是闲的还是为了什么,总之,代码背后都是活生生的人(也有的已经故去)

以下就是用上面的方法得出的几个最早的开发者,我看了一下他们的网站,都挺有意思的,说不定以后可以做一个WordPress名人堂who is who之类的专题吧,这里面有意思的人肯定很多啊。下面就先来认识几个WordPress的早期开发者吧

Matt Mullenweg

Matt大神不用介绍了吧,WordPress创始人,从上面的结果可以看到第一个插件也是他发布的

Dougal Campbell

有没有感觉这位Dougal老哥长的有点像贾冰?

WordPress元老级人物,Mutt对他评价也挺高的。

看了Dougal的博客文章Important People才知道,原来在2010年WordPress业界还有一场挺火爆的协议之争。

WordPress创始人Matt Mullenweg认为Chris Pearson(WordPress Thesis主题框架的开发者)的做法违反了WordPress所遵守的通用公共许可(GPL)协议。双方争执不下,并有可能走上法庭,这会对免费软件发布带来哪些影响呢?遵守GPL协议的代码必须做到免费、开源,并且相关的“第三方”代码也必须遵守GPL。Mullenweg认为GPL是WordPress世界的“权利法案”,因为它可以保护核心的自由

显而易见Dougal肯定是支持Mutt的,而且还在文章中diss了Pearson一把,Pearson自称是 “one of the top three most important figures in the history of WordPress. ”,Dougual老哥说在文章里说,老子才是啊,你是老几。Mutt在下面回复说你就是我心目中的前三。Dougual老哥说“看到没,官方认证啊!”。真是啪啪打脸啊。挺逗的

有意思的是他还把Brian Gardner of StudioPress作为一个正面例子列出来,这个名字我一看太眼熟了,StudioPress这不就是最近我一直在乐此不疲研究的主题框架Genesis的开发商吗

Ryan Boren

Ryan也是一个WordPress的元老级人物,曾供职于 Cisco ,是WordPress的主导开发者,对插件系统有很大贡献,现已荣誉退休。他个人博客上的一些推荐阅读列表也信息量挺大的,值得好好看看

Chris J. Davis

这哥们挺有意思的啊,竟然跑去拍片了,个人网站上介绍自己是一个开发者和制片人, 粗粗看了一下好像还是恐怖片,不得不说国外的程序员们的生活还真是挺精彩的,Ruby On Rails的创始人DHH是业余一名国际赛车手,Python 大神kennethreitz玩摄影玩出了一个励志故事。。。这种例子真是很多了

就像这个知乎问题:为什么感觉国外的程序员更专业?里高票回答所说的:

在中国任何一个角落,码代码的都会告诉你,35岁之后就会码不动了,招聘广告也会写明,20~35岁,你35之前不从代码转管理,你死定了等等等等。听我混互联网行业的兄弟说,干过2年以上可以算得上高级程序员,5年以上就可以上到技术经理,再往上最好到30之前就爬到技术总监。说得仿佛人生必须在40岁之前完结一样。

又扯远了

每年的插件增长量如何?

这部分也很简单,就是把每年的插件数量汇总统计一下,直接用柱状图或者折线图显示出来就可以了。

这种时间序列的数据还有一种比较花哨的图表可以用一下,就是heatmap热力图,通过色彩变化来显示数据。比如Google之前的个人搜索页面上有这种图,可以看出你每天每个时间段使用Google搜索的次数,github上的提交记录也是一种热力图。效果如下

活跃的WordPress开发者平均多久会发布一个插件?

理论上这个分析也是可以统计出来,但是后来想想太麻烦了,而且没什么太大意义,纯粹是为了统计而统计。。。这种数据没什么参考价值,各个插件的开发速度没啥可比性,都是由功能和开发者能力来决定的。算了

未完待续

关于开发者的维度差不多就这些了,下次继续分析一下插件的下载量、评分等情况。

本文完整版代码地址​gist.github.com

用Python分析WordPress官网所有插件的开发者信息(续以及人物介绍) - 丘壑博客​bestscreenshot.com

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Python 学习入门(36)—— @property属性

    @property 可以将python定义的函数“当做”属性访问,从而提供更加友好访问方式,但是有时候setter/getter也是需要的

    阳光岛主
  • python 使用jinja2对html模板文件进行数据替换

    背景:执行完自动化测试后,希望将获取到的测试结果数据替换html模板文件,以生成测试报告。

    小白will
  • Python 学习入门(29)—— 消息队列

    snakeMQ是一个跨平台的Python消息队列库。消息队列让不同主机间通信变得简单可靠。使用snakeMQ,只需要发送消息,剩下的事都交给snakeMQ处理。

    阳光岛主
  • Python 学习入门(24)—— 进程高级

    初步了解Python多进程之后,我们可以继续探索multiprocessing包中更加高级的工具。这些工具可以让我们更加便利地实现多进程。

    阳光岛主
  • Python 学习入门(28)—— 服务器实例

    在新的Python 3.x中,BaseHTTPServer, SimpleHTTPServer, CGIHTTPServer整合到http.server包,So...

    阳光岛主
  • Python 学习入门(38)—— @functools模块

    The functools module is for higher-order functions: functions that act on or ret...

    阳光岛主
  • Python 学习入门(26)—— 装饰器

    装饰器(decorator)是一种高级Python语法。装饰器可以对一个函数、方法或者类进行加工。在Python中,我们有多种方法对函数和类进行加工,比如在Py...

    阳光岛主
  • spark | 做基本计算和批量提交

    结果: Total purchases: 5 Unique users: 4 Total revenue: 39.91 Most popular...

    努力在北京混出人样
  • python | gtts 将文字转化为语音内容

    在学习july的课程: 聊天机器人 ,介绍了一个python: gtts,可以将文字转化为语音,尝试后发现效果还可以。需要在VPN下使用。

    努力在北京混出人样
  • python 爬虫 | 检查网站情况

    2、识别网站所用的技术 在爬去网站之前,了解网站使用的技术,会对爬去数据有一定的印象。这里使用builtwith模块来探测网上搭建的技术。

    努力在北京混出人样

扫码关注云+社区

领取腾讯云代金券