「なんぞこれ!? 凄すぎやろ!!」と思った開発補助ツールの紹介です。
IT関連の仕事をしている人や、プログラミングをしている人なら、お世話になることが多いWebサービスの1つに"Stack Overflow"が挙げられるではないでしょうか。
エラーメッセージをそのままコピペしてgoogleで検索すると、英語のページになりますがStack Overflowのページに辿り着くことがほとんどです。そして、だいたいその手の質問が投稿されていて、解決方法が載っていたり。
利用人数も膨大で、質問をすると本当に数秒で世界中から返事が返ってきたりします(返答は英語)。まさに世界1のプログラミングのリファレンスと言えるのではないでしょうか。
( アクセス数は世界で57番目だそうです *Alexa - 2016/2/23 )
そんなStack Overflowの膨大なリソースを便利に検索出来るアプリケーションが「how2」です。

このhow2はnode.js製でnpmのパッケージとして提供されており、コマンドライン上で起動。コマンドを打つとStack Overflowで検索を行い検索結果を返してくれます。
実際に使ってみた個人的な感想ですが、便利度は200%と言ったところです。
それでは導入して検証してみましょう。
how2はインストールから使い方まで簡単に出来ます。
( node.jsのインストールは事前に済ませておいてください )
# how2のインストール *環境によっては先頭に'sudo'をつけてください
$ npm install -g how2
尚、今回の検証にnode.jsのv 5.7を使用しました。
使い方もかなりシンプル。例えば、”rubyでphpのfile_get_contents()"はどう使う?"っという感じで検索してみましょう!
# 使い方 ( how2 -l 言語 調べたい内容 スペース空きも可能です )
$ how2 -l ruby file_get_contents
### 結果 ###
image - Ruby file_get_contents equivalent
Edited to retrieve from external URL:
PHP:
$image = file_get_contents("http://www.example.com/file.png");
Ruby:
require 'net/http'
image = Net::HTTP.get_response(URI.parse("http://www.example.com/file.png")).body
"how2 -l ruby file_get_contents" と打つと上記のような結果が返ってきました。この結果はStackOverflow以外のサイトから引っ張ってきたようです。検索の仕方によりますが、サンプルコードも載せられていることがほとんどです。
続いてはjavascriptの人気dateライブラリ"moment.js"のことについて検索してみます。" moment.jsでmysql timeに変換するには?"という感じで問い合わせてみました。
# 検索内容
$ how2 -l js moment mysql
##
javascript - How to insert moment JS time into MySQL
This result happens because you are using the toISOString() (http://momentjs.com/docs/#/displaying/as-iso-string/) method and it is not a valid format to insert into your DATETIME column. The correct format probably is YYYY-MM-DD HH:MM:SS(I think it depends on MySQL configuration, but this is the default) as the docs (http://dev.mysql.com/doc/refman/5.6/en/datetime.html) points out.
So you should try using moment's format() (http://momentjs.com/docs/#/displaying/format/) method like this:
myDate = moment(data.myTime.format('YYYY/MM/DD HH:mm:ss')).format("YYYY-MM-DD HH:mm:ss");
In fact, I don't know what data.myTime is, but if its a moment object too, you can change the first format() method and remove the second one.
こちらはStackOverflowの検索結果がサンプルコードと共に返ってきました。StackOverflowからなので、コメントも添えられています。また、返答は1つだけと言うことは少ないので"Enter キー"を押すと更に紐付いた他の回答も表示。"ESCキー"でhow2が終了します。
1つ注意点なのですが、あまり曖昧な検索だと"You are doing to many requests to Google. You need to wait a bit before trying again."というメッセージが返ってきて検索結果が返っこないこともあります。
以上でhow2の紹介は終わりです。
実際に導入して試してみれば、その素晴らしさがわかると思います。how2はコマンドライン上で動くので、特にiTerm2 + Vim + tmux等の多窓環境で開発をしている人には最強のツールと言えるのではないのでしょうか。気になったかたはゼヒ×2チェックしてください。
GitHub: santinic/how2