こんにちは!
今まで何回かハッカソンの話をしてきたのですが,僕がハッカソンでよく使うサービスやツールについてまとめて行きたいと思います.
ハッカソンに出る際はぜひ参考にしてください.
IFTTT
一つ目はIFTTT(「イフト」と読みます)です.
これは「もし〜があれば〜をする」という処理をプログラムを書かずに,GUIで実装できるサービスです.
使い方は「IFTTT 使い方」で検索するといろいろ出てきます.
僕がよく使う方法は,web hookとツイッターを連携させて,HTTPリクエストを受けるとツイッターに投稿するという使い方をします.
昔はツイッターAPIの公開鍵の取得が容易だったみたいで,直接ツイッターのAPIを叩けば良かったみたいなのですが,今は申請しないといけないみたいですね...
仕方なくIFTTTを使っています.
詳しい使い方はまたどこかで書きます.
Convert cURL syntax
ハッカソンによってはAIPが提供されているということがあります.
例えば,上のIFTTTのwebhookのAPIをターミナル上から叩くときは
curl -X POST -H "Content-Type: application/json" -d '{"value1":"a","value2":"b","value3":"c"}' https://maker.ifttt.com/trigger/hoge/with/key/apikeyhogehoge
こんな感じで書くと思います.
これと同じことをPythonで実現しようと思うと
import requests headers = { 'Content-Type': 'application/json', } data = '{"value1":"a","value2":"b","value3":"c"}' response = requests.post('https://maker.ifttt.com/trigger/hoge/with/key/apikeyhogehoge', headers=headers, data=data)
こんな感じになります.
調べればいい話なのですが,時間がないハッカソンでコピペだけでこれだけの量を書いてくれるサービスはとても便利です.
ngrok
自分のPCでサーバを建てて,他のPCからアクセスしたいということがあると思います.
しかし,ハッカソンで数回使うだけなのに,サービスをデプロイするというのは面倒な気がします.
そこで使えるのがngrokです.
これを知ったときは割と感動しました笑
英語のサービスなのですが,日本語で解説してくれてるサイトもありますので,調べてみてください.
一つ注意があるとすれば,ngrokで公開していることときはngrokを動かし続けなければいけないということです.
最初は分からずにngrokを停止させてhttpリクエストを打ってたのでそこだけ少しハマりました.
AWS Lambda
(おそらく)一番有名なのを最後に持ってきましたw
個人的には,IFTTTのプログラム版と考えていて,条件分岐とかIFTTTでは出来ないようなことを書くのに使っています.
無料枠とかあるのでハッカソン中くらいは(下手しなければ)使えると思います.
まとめ
ハッカソンでよく使うサービスについて書きました.
もちろんハッカソン以外でも使うと便利な場面がいろいろあると思うので,ぜひ参考にしてください.
ハッカソンについてはこちらにも書いてありますのでぜひ読んでいってください!