50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

Stack Overflow 上最热门问题是什么?

  • 2019-03-05
  • 本文字数:2613 字

    阅读完需:约 9 分钟

Stack Overflow上最热门问题是什么?

要找到 Stack Overflow 全时最热问题很容易,但是当前最热问题能告诉我们现在的重要话题。在本文中,你可以了解到怎么才能得到当前最热话题。


从下图的交互面板中你可以得到具体问题的答案。下面,我们来看看它是怎么创建的。


交互面板的链接如下:https://datastudio.google.com/reporting/1UUTtohIB1fBH7e8An-6AhEn4AyU3eMjd/page/QwNg

最热 stack overflow 问题 – 全时 vs 当前


我们可以看到:


最热的全时 Stack Overflow 问题——九年以前创建的超过七百万阅读量——甚至不是一个编程问题: 我怎么才能撤销 Git 里我最近的一次提交?


前十个最热问题,4 个是 git 相关,3 个 JavaScript 相关,一个 Java 相关,一个 Linux 相关,一个 HTML 相关。还差什么?


前十没有 Python 的问题。意不意外?


我们再看看最近一个季度的最热的十个问题:



我们可以看到:


最热的问题还是“我怎么才能撤销 Git 里我最近的一次提交?”——最近一个季度有 40 万个阅读量。


编程相关的问题变了:现在 10 个问题里面有 4 个与 Python 相关。


Java 不见了——它不再出现在当前最热的十个问题里。


观察最热 30 个问题的标签的话,趋势会更加明显:



Java 和 SQL 已经从前 30 中掉落了。同时 Python 牢牢占据了阅读量前 10 和前 30 的榜单之首。

每个标签的最热问题是什么?

你可以看到任何一个标签的最热问题。在查看每个标签的最热问题之前,你可以先猜一下 JavaScript,Python 和 go 的最热问题是什么。


JavaScript, Python, Go: 问题各不相同





从这个面板中每个标签的前十个问题以及它们的趋势都一目了然。Python 开发者一直在问“用 for 来遍历字典”,JavaScript 开发者问“我怎么才能从一个数组中移除某个元素”,Go 开发者问“字节数组转 string 的最佳方法是什么”

TensorFlow 问题


人们对机器学习兴趣满满,而 TensorFlow 是该领域最热的项目之一。但是从最热的问题可以看出人们还在挣扎于“用 pip 无法安装 TensorFlow”以及他们当前的 CPU/GPU 能力问题。


TensorFlow 项目组可以用这个面板来追踪这些问题的趋势——比如说研究出一种傻瓜式的方法来用 pip 安装 TensorFlow。

Kotlin 十大热门问题: 当前 vs 以前

用这个面板你可以直接看到在任何一个季度的最热的十个问题。比如说,我们可以来比较一下 Kotlin 在 2018 年第四季度和 2017 年第二季度的最热十个问题:




看起来不错:大多数 2017 年的热门问题消失了,可以猜测,这个团队在解决用户遇到的常见问题方面做得很不错。2018 年第四季度的热门问题基本上都是新的,跟几个月以前的完全不一样。

Redis 热门问题——基于 Java vs C#

以下是 Redis 的十大热门问题:



可以看到,当前最热门的问题是怎么在 Windows 上安装 Redis。如果你是打算改进 Java 库的 Redis 开发人员,这个信息对你用处不大——好在这个面板可以过滤出子标签的信息。


我们再来看看 Redis+Java 的前十个热门问题:



如果我们过滤 redis 和 Java,我们会看到不一样的问题:比如说,大多数都与 Redis 和 Spring 有关。


而 Redis 和 C#的热门问题就大有不同了:



有意思的是,Redis+Java 的热门问题问的是 C#的简要案例。也许开发者们在官方文档中没找到?

一个问题,多个回答

在这个面板上,你还可以看到每个问题有多少回答。比如说,最热门问题“在 Rust 里如何将 String 转换为 int”有 5 个回答。Go 语言的“把字节数组转换为 string 的最好方法是什么”有 12 个不同的回答。



往前十更深探索

为什么在前十就停止了?你也可以接着去探索更深入的热门前 30 问题:



怎么实现:queries

你可以在 BigQuery 里面找到所有的数据。每三个月 Stack Overflow 都会公布一份他们最近的数据快照,我们可以拿来副本来做查询。

Stack Overflow 热门问题,当前 vs 全时

SELECT (   SELECT tag    FROM UNNEST(tags)    ORDER BY view_count DESC LIMIT 1  ) tag  , * EXCEPT(tags)FROM (  SELECT quarter_views , view_count    , ROW_NUMBER() OVER(ORDER BY quarter_views DESC) q_ranking    , ROW_NUMBER() OVER(ORDER BY view_count DESC) ranking    , ARRAY(       SELECT AS STRUCT tag, b.view_count        FROM UNNEST(tags) tag       JOIN `fh-bigquery.stackoverflow_archive_questions.merged_aux_tags` b       ON tag=b.tag      ) tags, title  FROM `fh-bigquery.stackoverflow_archive_questions.merged`  WHERE quarter='2018-12-01'  AND view_count > 50000)WHERE q_ranking<30 OR ranking <30ORDER BY 1 DESC
复制代码

查找每个问题在某段时间内的阅读量

首先我存下了这段时间的每个快照的副本,然后开始计算这些快照之间的阅读量的变化。


好在查询语句看起来很简单:


CREATE OR REPLACE TABLE `stackoverflow_archive_questions.merged` AS  SELECT   IFNULL(    view_count -       LAG(view_count) OVER(PARTITION BY id ORDER BY view_count)    , view_count) quarter_views, * FROM (     SELECT PARSE_DATE('%Y%m',_table_suffix) quarter          , id, view_count     , SPLIT(tags, '|') tags     , score, creation_date, answer_count     , accepted_answer_id, title   FROM `fh-bigquery.stackoverflow_archive_questions.q*` )
复制代码

每个标签的热门问题

#standardSQLSELECT title, quarter_views, view_count FROM `fh-bigquery.stackoverflow_archive_questions.merged`WHERE 'google-cloud-dataflow' IN UNNEST(tags)AND quarter='2018-12-01'ORDER BY quarter_views DESCLIMIT 10
复制代码


超过一年没有更新的当前最热问题

#standardSQL    WITH top_questions AS (  SELECT  id, title, quarter_views, view_count   FROM `fh-bigquery.stackoverflow_archive_questions.merged`  WHERE 'google-cloud-dataflow' IN UNNEST(tags)  AND quarter='2018-12-01'), latest_answer AS (  SELECT parent_id, DATE(MAX(COALESCE(last_edit_date, last_activity_date, creation_date))) answer_last_edit_date   FROM `bigquery-public-data.stackoverflow.posts_answers` b  GROUP BY parent_id)SELECT SUBSTR(title, 0,80) title, quarter_views, view_count, answer_last_edit_dateFROM top_questions aJOIN latest_answer bON a.id=b.parent_idWHERE DATE_DIFF(CURRENT_DATE(), answer_last_edit_date, DAY)>360ORDER BY quarter_views DESCLIMIT 10
复制代码



英文原文:


https://towardsdatascience.com/finding-the-real-top-stack-overflow-questions-aebf35b095f1


2019-03-05 08:0310173

评论 1 条评论

发布
用户头像
stackoverflow里最有名的问题就是怎么退出vim
2020-05-08 10:54
回复
没有更多了
发现更多内容

当代码遇上玄学……

ZA技术社区

代码 bug 程序员‘ 玄学

DAPP持币生息项目系统开发|步骤逻辑|源码搭建

l8l259l3365

MSE Nacos 配置变更审计平台使用指南

阿里巴巴云原生

阿里云 微服务 云原生 nacos

释放未来:2024 年区块链应用程序开发

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 公链开发

Gas Hero Pets NFT 概览与数据分析

Footprint Analytics

区块链 NFT

听GPT 讲Rust Cargo源代码(1)

fliter

软件测试学习笔记丨http/https/tcp握手和回收/mock相关解释

测试人

软件测试

【快递鸟】智能化之路:即时零售的崛起与线下商超的转型

快递鸟

同城配送

听GPT 讲Rust Cargo源代码(2)

fliter

企业借助聚道云软件连接器,轻松实现员工福利管理优化!

聚道云软件连接器

案例分享

5天!软件开发考试该如何准备?

统信软件

AI 绘画平台难开发,难变现?试试 Stable Diffusion API Serverless 版解决方案

阿里巴巴云原生

阿里云 云原生 Stable Diffusion Stable

点击查看 Milvus 社区十大关键词(上)

Zilliz

开源社区 Milvus 向量数据库 云原生向量数据库

跨境远程控制软件分享,为何放弃向日葵?

小喵子

远程 远程软件 远程桌面办公

提升企业级数据处理效率!3.0 系列版本的四个集群优化点详解

TDengine

tdengine 时序数据库

帮助某百年车企实施 ASPICE 的一点点感悟

QE_LAB

测试 汽车 质量保证 流程规范 ASPICE

为什么要用云手机养tiktok账号

Ogcloud

云手机 海外云手机 tiktok云手机 云手机海外版

软件测试学习笔记丨Charles_Mock实战

测试人

软件测试

Linux线程API使用与分析

不在线第一只蜗牛

Linux 运维 服务器

如何领导规模化敏捷变革?

敏捷开发

敏捷开发 敏捷开发管理 safe 企业转型 规模化敏捷

用户故事地图实际应用

敏捷开发

产品设计 软件开发 用户体验 交互设计 产品管理

Nacos 官网重大升级,提供官方发行版下载包,3.0 里程碑版本新特性预告

阿里巴巴云原生

阿里云 微服务 云原生 nacos

使用 AI 构建面向未来的 DevOps

亚马逊云科技 (Amazon Web Services)

人工智能 机器学习

2024年前端开发趋势的 6 个框架

伤感汤姆布利柏

人工智能与低代码开发: 创新技术的未来

不在线第一只蜗牛

人工智能 低代码

Stack Overflow上最热门问题是什么?_文化 & 方法_Felipe Hoffa_InfoQ精选文章