年収格差を検索できるWebサービスを作った

年収格差トップ500企業の一覧

f:id:rochefort:20171204000516p:plain 

動機

社員と役員の年収格差が大きいトップ500社 | 賃金・生涯給料ランキング | 東洋経済オンライン | 経済ニュースの新基準 をみていたのですが、なんと一覧が画像なんですよね。
えー、そりゃないわーと思って、OCRでテキスト抽出し、JSON化して勢いでWebサービス化しました。
みんな検索したいよね。
 
どうやら東洋経済さんは、ちょくちょく面白そうなデータ分析の結果を画像で公開するということをやっているようです。
HTMLで公開して欲しいな。買いたい人は買うだろうし。
 

OCR

知らない人も多いかと思うのですが、Google Docに画像かませるとテキスト抽出してくれます。
細かいやり方は書きませんが、今回は「社名」部分と「数値」部分に分けて抽出すると効率よく取り出せました。
社名部分は80%ぐらい、数値部分は95%ぐらいの精度ぐらいだった気がします。数値部分は最後の「取締役、執行役の合計(人)」だけ取り出せなかったのでここだけ手打ちです。おそらく間違ってる箇所があるかと思いますのでご指摘いただければ修正します。
 
ちなみに日本後は以下の文字がよく間違っていました。まぁ、この辺りはフォントにもよるかと思います。

美、癸

 

アプリ部分

当初Railsで作っていましたが、とりあえずJSON表示するだけなら、フロントエンドのJSでええやんと思い立ち、Vue.js + Bulma (CSS Framework) で作成しました。
 
あと、テーブルは njleonzhang/vue-data-tables というライブラリを利用しました。
ほとんどコード書かずに設定だけでテーブルの検索、ソート、Paginationが実装できます。
かなり独特な作りなのと、中国での利用者が多いようでググると中国語というのが辛い、CSSが当てにくい、Bulmaと干渉するなどで色々大変でした。ということでスマホの最適化などは未実施。
便利は便利なんだけどなぁ。

 

余談

業種で検索できるようにしたりとか、株価表示させたりとか、利益・売上、従業員数なども表示したら面白そう。
気が向いたら改修していくかも。
ここら辺のデータが欲しければ、東洋経済さんのデータを買うとすぐに分析できたりするんでしょうね。

業務時間外コミットの一覧を出すrubyのscript

CEOの方が基本18時に退社するように心掛けています、というようなことを仰っている会社にお話を聞きに行くことがありました。
そちらではGithubにその企業用のリポジトリが公開されており、検証用のコードと思われるものがいくつか存在したので、見てみたところ
 
 
あれ、おかしいな、夜中12時越えのcommitが沢山あるぞ。。。
 
ということで業務時間外のコミット一覧を出すscriptを書いてみました。
github.com

実行例

業務時間外のコミットの一覧と月の集計(何回)を出すスクリプトです。
some_dir を任意の場所に指定ください。複数リポジトリにも対応しています。

$ bundle exec ruby lib/overwork_checker.rb some_dir
2012-08-05 | 2012-08-06 03:29:02 +0900 | some_dir | fixed typo
2013-04-01 | 2013-04-01 23:53:20 +0900 | some_dir | bump up 0.0.7
2013-04-02 | 2013-04-03 00:59:30 +0900 | some_dir | refactor
2013-04-23 | 2013-04-24 01:29:39 +0900 | some_dir | change markdown style for gemnasium.com link
2013-04-24 | 2013-04-24 23:05:06 +0900 | some_dir | add code climate badge

{"2012-08"=>1,
 "2013-04"=>4}

以下の時間でのコミットを対象にするようにしていますので、ご自身の環境に書き換えてお使いください。

def office_hour?(hour)
  hour >= 6 && hour <= 18
end

余談

まぁ、真面目なエンジニアほど個人の勉強のためだったり、今抱えているプロジェクトのためだったりでprivateな時間削って色々やってしまうとは思います。ある程度は仕方ないとは思うのですが、会社のリポジトリへのコミットだと、それ仕事でしょ、という気がします。だったら休日出勤・残業という形で給与に反映いただける方がまだ健全ですね。
色々難しいなぁ。

MacOSX High Sierra のインストールに失敗した話

そろそろいいかと思ってOS Upgradeしたら、起動できなくなって焦りました。
f:id:rochefort:20171124014216j:plain

macOSがインストールされてないですって、そんな殺生な。
 
 

とりあえずTime Machineで戻す

初めてTime Machine使った気がします。
macOSユーティリティを起動させ、Wi-fiに繋いでから、Time Machineで戻しました。

APPLE AirMac Time Capsule - 2TB ME177J/A

APPLE AirMac Time Capsule - 2TB ME177J/A


買っててよかった、Time Capsule
NASとして利用していて、TimeMachineもWi-fi経由で勝手に取ってくれるようにしていたので、本当に助かりました。
 
f:id:rochefort:20171124020352j:plain

再チャレンジ

原因は不明なのですが、Macに繋がっていた不要なケーブル類(外部ディスプレイ)を外してもう一度チャレンジしたらインストールできました。
 
なんだろう。
すごいモヤモヤしますが、とりあえず今の所問題なさそうです。
ググるといくつか失敗報告が見つかりますが、原因がよくわかりません。
とにかく、これから実施する人は必ずバックアップとってからやってください。