开发者生态系统:Data Playground
为估算任何特定国家/地区的开发者人数,我们会从国际劳工组织(例如欧盟统计局)收集数据,并利用该特定国家/地区的国家/地区统计数据(例如,我们会使用加拿大统计局提供的加拿大数据)。由于不同的国家/地区对于“程序员”一词有着不同的定义,我们所收集的是与自身研究目的最为相关的数据。例如,在美国,以下职业与“程序员”的定义密切相关:
每年,我们都会开展年度开发者生态系统调查,向全球 30,000 名开发者征集意见。这些数据对于建立我们的研究模型起到了重要作用。它使我们能够全面了解开发者社区,获得对热门编程语言、工具、技术、开发者偏好和新兴趋势等方面的洞察。
我们依靠特定国家/地区 (X) 在指定年份 (T) 的人口规模和开发者人数来构建我们的模型。我们会使用国家/地区最新的公开数据来确定具有最新信息的年份以进行计算。这使我们能够计算该国家/地区特定年份的开发者密度。
DevDensity = DevNumber/Population
为了计算同一国家/地区最近几年(T+1、T+2…)的开发者人数,我们假设开发者密度恒定,并将其应用于由联合国预测的该国家/地区近年人口数量。根据回顾性分析,此模型被证实有效。为了计算数据缺失的国家/地区的开发者人数,我们会使用同一地区内其他国家/地区(用“Y”表示)的数据。对于各个国家/地区 Yᵢ,我们会计算所有已知年份的平均密度。然后,我们会在所得平均值中选择 10% 分位数。这将得出 X 国家/地区开发者密度的近似值。
计算出开发者总体人口密度后,我们就可以计算出该社区内特定类别开发者的规模。从开发者生态系统现状调查数据中了解样本中感兴趣类别所占份额(例如,所有程序员中的 Python 用户),我们就可以计算出此特定类别的规模,如下所示:
CategorySize = CategoryShare х DevPopulation
假设我们想要估算 2023 年美国使用 Python 的开发者人数。
我们拥有 2023 开发者生态系统调查的数据,并且可以依赖以下调查问题的回答:
在所有回答美国作为国家或地区的受访者中,美国使用 Python 的开发者占比将被估计为回答“Python”作为其编程语言的受访者的加权占比。
2023 年美国使用 Python 的开发者人数估算方式如下:
SizeUsaPython = ShareUsaPython х DevPopulationUSA
我们的调查方法有一些局限性:
我们的模型目前仅考虑专业开发者。我们未包括学生或业余爱好者,因为我们的数据和调查方法不足以统计这些人群。
当特定年份的信息缺失时,我们会使用最新的可用数据。对于某些国家/地区,数据缺失且需要更换或清理。
我们仪表板的筛选器选项有限,并且仅包含我们拥有全面数据的选项。
这些数字仅反映最或然值(平均预测),不应被视为精确值。根据模型的回顾性测试,平均而言,真实值与预测值的偏差为 14%(MAPE 指标)。此值可供我们大致了解真实值与仪表板所示预测值之间会存在多大偏差。
我们的工资计算器基于我们在年度开发者生态系统调查中收集到的数据。工资数据通过询问受访者以美元为单位的年度净工资(税后)获得,不含任何奖金。
我们的工资计算器调查方法有一些局限性: