调查方法
分享:
这是一份公开报告,只要注明数据来源即可使用其内容。
减小样本偏倚
我们根据回复来源对数据进行加权。我们以不太偏向 JetBrains 用户的外部来源的回复为基础,例如 Twitter、Facebook、Instagram、Quora 上的付费广告和受访者的推荐。我们将每个受访者的来源单独考虑在内,根据加权程序生成结果。
我们进行了三个加权阶段,以便能够更公正地了解全球开发者群体。
第一阶段:根据每个地区的专业开发者数量进行调整
在第一阶段,我们汇总了在针对不同的国家/地区时收集的回复,然后对这些数据应用了我们对每个国家/地区的专业开发者数量的预估。
首先,我们从专业开发者和在职学生那里获得调查数据,这些数据是通过在 22 个地区的各种社交网络上发布的广告提供给我们的,同时我们还从各种同侪推荐中获得数据。尽管我们未在乌克兰和俄罗斯投放调查广告,但我们将这两个国家/地区纳入报告中,并使用 2021 年数据的近似值对它们进行相应的加权。然后,我们按照这 22 个地区的预估专业开发者人数,对这些回复进行加权。这样确保了受访者分布与我们对每个国家/地区的专业开发者人数的预估相对应。
第二阶段:目前就业和失业的开发者比例
在第二阶段,我们将每个国家/地区的学生和失业受访者比例强制为 17%。我们这样做是为了确保与上一年的方法保持一致,因为这是我们唯一可用的数量预估。
至此,我们从外部来源获得了许多回复,按区域和就业状况加权。
第三阶段:就业状况、编程语言和 JetBrains 产品使用
第三个阶段相当复杂,包括通过求解方程组进行的计算。我们利用了这些加权后的回复。对于每个区域的开发者,除了他们的就业状况外,我们还计算了 30 多种编程语言各自的份额,以及回答“我目前使用 JetBrains 产品”和“我从未听说过 JetBrains 或其任何产品”的受访者比例。这些数字成为方程中的常量。
下一步是再添加其他来源的两个回复群组:JetBrains 内部沟通渠道(例如 JetBrains 社交网络媒体帐号和我们的研究小组)和针对特定编程语言用户的社交网络广告系列。
求解一个包括线性方程和不等式的系统
我们设计了一个包括 30 多个线性方程和不等式的系统,这些方程和不等式描述了以下信息:
- 受访者的权重系数(例如,样本中的 Fiona 代表了法国 180 位软件开发者的平均情况)。
- 受访者回复的特定值(例如,Pierre 使用 C++,他是一名全职开发者,之前从未听说过 JetBrains)。
- 在受访者中的必要比率(例如,27% 的开发者在过去 12 个月中使用过 C++,等等)。
为了使用权重系数的最小方差(非常重要!)求解此方程组,我们使用了 Goldfarb 和 Idnani 的对偶方法(1982,1983),这种方法帮助我们为 26,348 名受访者校核了最优的各个权重系数。
未来,我们将继续更新和改进我们的方法。敬请期待《2024 开发者生态系统调查》!