はじめに
Qiitaを見ていると、ときどき「随時更新していきます」と書いてある記事を見かけます。
ただ、本当に「随時更新」されているのかどうかはよくわかりません。
もしかすると「随時更新」とか言いつつ、一度も更新されずに放置されている記事も多いんじゃない?と思ったりもします。
というわけで、本当に更新されているのかどうかちょっと調べてみました。
調査の方法
今回はこんな感じ調査してみました。
- タイトルに「随時更新」を含む記事を取得する(2017年10月16日時点で165件)
- 「更新日 - 作成日」で更新期間(作成された日から更新された日までの日数)を割り出す
- 更新期間順に記事を並び替える
記事の取得はQiita APIを使用しています。
本当は日数だけでなく、更新の回数も取りたかったんですが、APIには用意されていなかったので諦めました。
また、記事の並び替えはRubyで簡単なスクリプトを作成しました。
使い捨ての雑なスクリプトですが、実装はこんな感じです。
require 'minitest/autorun' | |
require 'json' | |
require 'date' | |
def execute | |
# How to create qiita.json | |
# 1. curl -o qiita.json https://qiita.com/api/v2/items?page=1&per_page=100&query=title%3A%E9%9A%8F%E6%99%82%E6%9B%B4%E6%96%B0 | |
# 2. curl -o qiita.json https://qiita.com/api/v2/items?page=2&per_page=100&query=title%3A%E9%9A%8F%E6%99%82%E6%9B%B4%E6%96%B0 | |
# 3. Merge them manually | |
path = '/Users/jit/Desktop/qiita.json' | |
str = File.read(path) | |
JSON.parse(str) | |
end | |
class Item | |
attr_reader :title, :created_at, :updated_at, :url, :tags, :user | |
def initialize(hash) | |
@title = hash['title'] | |
@created_at = Date.parse hash['created_at'] | |
@updated_at = Date.parse hash['updated_at'] | |
@url = hash['url'] | |
@tags = hash['tags'].map{|h| h['name']} | |
@user = hash['user']['id'] | |
end | |
def to_s | |
"#{title}\t#{tags.join(', ')}\t#{user}\t#{created_at}\t#{updated_at}\t#{update_span}\t#{url}" | |
end | |
def inspect | |
to_s | |
end | |
def update_span | |
(updated_at - created_at).to_i | |
end | |
def <=>(other) | |
ret = update_span <=> other.update_span | |
ret == 0 ? created_at <=> other.created_at : ret | |
end | |
end | |
class QiitaTest < MiniTest::Test | |
def test_qiita | |
array = execute | |
items = array.map{|hash| Item.new(hash)} | |
puts items.sort.reverse | |
end | |
end |
調査結果と評価
調査してみるとこんな感じで分布していました。
更新期間 | 件数 | 割合 |
---|---|---|
1年以上 | 15 | 9% |
3ヶ月以上1年未満 | 24 | 15% |
1ヶ月以上3ヶ月未満 | 20 | 12% |
4日以上1ヶ月未満 | 31 | 19% |
1日~3日 | 19 | 12% |
未更新 | 56 | 34% |
円グラフにまとめるとこんな感じです。
こうやって見ると、思ったよりも「随時更新」されていることがわかりました。
調査前は「半分以上が未更新なんじゃないか」と思っていたんですが、僕の予想は外れました。
しかも、1年以上にわたって更新されている記事もあるので、マメな人はちゃんと「随時更新」しているんだなあと思いました!
おことわり
この調査ではあくまで「更新日 - 作成日」で算出した日数だけが評価対象になっています。
そのため、「5年前に作成 => 昨日はじめて更新」したような記事も「5年以上随時更新」と見なされることになります。
また、作成日によるフィルタリングは特に行っていないため、最近作成された「随時更新」記事ほど、更新期間が少ないと評価されてしまいます。
というわけで、この調査方法では本当に「随時更新」の名に恥じない更新頻度を保っているかどうか、正確な評価はできないことをご了承ください。
参考:更新期間の長い「随時更新」記事トップ10
この調査で判明した、更新期間の長い「随時更新」記事トップ10はこちらです。
いずれも1年以上更新されているので、「随時更新」と呼ぶにふさわしい記事ですね。
タイトル | 作成日 | 更新日 | 更新期間(日) |
---|---|---|---|
iOS開発者の為のAndroid開発 思い出しメモ (随時更新中) by ux_design_tokyo | 2013/11/22 | 2017/06/04 | 1290 |
俺得gradleテンプレート(随時更新) by niusounds | 2014/11/21 | 2017/07/11 | 963 |
【iOS】パフォーマンス改善で参考にした記事まとめ(随時更新) by xxxAIRINxxx | 2014/06/17 | 2017/01/26 | 954 |
オレオレ開発環境まとめ - 随時更新! by fakestarbaby | 2012/08/01 | 2015/02/24 | 937 |
SpringBootを使っていてハマった事(随時更新) by yakumo | 2015/08/24 | 2017/09/27 | 765 |
プログラミングでよく使う英単語のまとめ【随時更新】 by Ted-HM | 2015/09/11 | 2017/10/12 | 762 |
(随時更新)ansibleでよく使うコマンド・モジュールまとめ by uzresk | 2015/08/11 | 2017/04/07 | 605 |
【超おすすめ!!】Atomのパッケージ、テーマ、キーバインディング、設定を紹介してみる(※随時更新) by snowsunny | 2015/06/29 | 2017/02/13 | 595 |
LinuxコマンドTipsあれこれ(随時更新) by AkihiroTakamura | 2016/03/14 | 2017/07/26 | 499 |
Linuxコマンド覚書(随時更新) by ao_love | 2015/09/18 | 2016/12/22 | 461 |
まとめ
というわけで、このエントリではQiitaの「随時更新」記事が本当に随時更新されているのかどうか、調査してみた結果を書いてみました。
更新してる人はちゃんと更新してるよ!ということがわかったので、個人的にはすごく納得のいく調査結果になりました😃