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

简介: 本文用Python分析了54421个WordPress插件的开发者信息,从时间维度得出了基本的折线图和热力图,并介绍了一些早期的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年上过嘉兴南湖那条小船的了。

下面是代码:

1620

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

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

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

Matt Mullenweg

1620

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

Dougal Campbell

1620
1620

有没有感觉这位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

1620

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

Chris J. Davis

1620

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

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

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

又扯远了

每年的插件增长量如何?

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

1620

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

1620

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

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

未完待续

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

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

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

目录
相关文章
|
9天前
|
机器学习/深度学习 数据采集 算法
时间序列结构变化分析:Python实现时间序列变化点检测
在时间序列分析和预测中,准确检测结构变化至关重要。新出现的分布模式往往会导致历史数据失去代表性,进而影响基于这些数据训练的模型的有效性。
25 1
|
1天前
|
Kubernetes API 开发工具
【Azure Developer】通过SDK(for python)获取Azure服务生命周期信息
需要通过Python SDK获取Azure服务的一些通知信息,如:K8S版本需要更新到指定的版本,Azure服务的维护通知,服务处于不健康状态时的通知,及相关的操作建议等内容。
30 18
|
7天前
|
存储 算法 安全
Python案例分享:如何实现信息的加解密
Python案例分享:如何实现信息的加解密
19 10
|
2天前
|
机器学习/深度学习 数据可视化 搜索推荐
使用Python实现深度学习模型:智能睡眠监测与分析
使用Python实现深度学习模型:智能睡眠监测与分析
14 2
|
3天前
|
机器学习/深度学习 搜索推荐 TensorFlow
使用Python实现深度学习模型:智能饮食建议与营养分析
使用Python实现深度学习模型:智能饮食建议与营养分析
20 3
|
4天前
|
Python
惊!Python进程间通信IPC,让你的程序秒变社交达人,信息畅通无阻
【9月更文挑战第13天】在编程的世界中,进程间通信(IPC)如同一场精彩的社交舞会,每个进程通过优雅的IPC机制交换信息,协同工作。本文将带你探索Python中的IPC奥秘,了解它是如何让程序实现无缝信息交流的。IPC如同隐形桥梁,连接各进程,使其跨越边界自由沟通。Python提供了多种IPC机制,如管道、队列、共享内存及套接字,适用于不同场景。通过一个简单的队列示例,我们将展示如何使用`multiprocessing.Queue`实现进程间通信,使程序如同社交达人般高效互动。掌握IPC,让你的程序在编程舞台上大放异彩。
12 3
|
4天前
|
机器学习/深度学习 搜索推荐 算法框架/工具
使用Python实现深度学习模型:智能运动表现分析
使用Python实现深度学习模型:智能运动表现分析
21 1
|
8天前
|
JSON 安全 API
Python开发者必看:OAuth与JWT授权机制的惊天秘密😱
【9月更文挑战第9天】在现代软件开发中,尤其在Web和移动应用领域,用户认证与授权至关重要。对Python开发者而言,OAuth和JWT是提升应用安全性与用户体验的关键技术。OAuth通过“授权而不认证”的理念保障用户数据安全,JWT则利用JSON Web Tokens实现无缝的信息传递。两者结合可构建高效且安全的认证体系。掌握这些技术,将使你的应用更加出色。
8 0
|
9天前
|
应用服务中间件 网络虚拟化 nginx
Python中采用lasso、SCAD、LARS技术分析棒球运动员薪资的案例集锦
以上是对每个问题的简要答案,由于篇幅限制,未能深入到1000字的详细解释,但希望这提供了一个良好的起点。对于这类复杂的话题,深入研究和专业指导至关重要。
16 0
|
4月前
|
安全
SiteGround如何设置WordPress网站自动更新
iteGround Autoupdate功能会自动帮我们更新在他们这里托管的所有WordPress网站,这样做是为了保证网站安全,并且让它们一直保持最新状态。他们会根据我们选择的设置自动更新不同版本的WordPress,包括主要版本和次要版本。在每次自动更新之前,他们都会为我们的网站做一个完整的备份,这样如果有什么问题,我们可以轻松地恢复到之前的状态。在本文中,我们将介绍如何在SiteGround中设置WordPress网站自动更新。
528 0
SiteGround如何设置WordPress网站自动更新