読者です 読者をやめる 読者になる 読者になる

詩と創作・思索のひろば

ドキドキギュンギュンダイアリーです!!!

go-sql-driver/mysql の接続に SOCKS5 プロキシを利用する

Go

Go では proxychains みたいな方法が利用できないので、プログラム側で対応してやる必要がある。Go で SOCKS5 プロキシを利用する - 詩と創作・思索のひろば と同様に golang.org/x/net/proxy を利用して実現できる。

import (
    "database/sql"
    "net"
    "golang.org/x/net/proxy"
    "github.com/go-sql-driver/mysql"
)

func main() {
    dialer := proxy.FromEnvironment()
    mysql.RegisterDial("tcp", func(network string) (net.Conn, error) {
        return dialer.Dial("tcp", network)
    })

    db, err := sql.Open("mysql", dsn)
    ....
}

という感じ。DSN を変える必要はない。

all_proxy=socks5://127.0.0.1:10000 などと環境変数を設定して起動してやる。

Google Apps Script を使ってブックオフオンラインで購入した書籍を Google Spreadsheet に記録する

GoogleAppsScript

今年は読んだ本をちゃんと記録していくぞ! と思ったものの読書管理系のサービスは記録が面倒で続かないことが目にみえている。とりあえず買った本だけでもどこかで一覧できればよいのでは? ということで、Gmail に届くレシートから Google Spreadsheet に追記していく戦略をとることにした。最近はブックオフオンラインを使うこともあるので、これに対応してみる。

そこでできたのがこちら。

GitHub - motemen/gas-gmail-to-spreadsheet-bookoffonline-receipt

  1. 書籍購入情報を記録するスプレッドシートを作成し、スプレッドシートのキー(https://docs.google.com/spreadsheets/d/***/edit)をメモしておく
    • カラムは「日付」「書名」「価格」「個数」「注文URL」
  2. Google ドライブ から左上 [新規] ボタン → [その他] → [Google Apps Script] でスクリプトを作成し、src/Main.js のコードをコピペ
  3. [ファイル] メニュー → [プロジェクトのプロパティ] → [スクリプトのプロパティ] に SpreadsheetId という名前のプロパティを追加し、値を先ほどのキーにする
    • f:id:motemen:20170104131959p:plain
  4. [実行] メニュー → [main] でスクリプト実行。初回は権限の確認が行われる
  5. スプレッドシートを確認して、動いてそうなら [リソース] メニュー → [現在のプロジェクトのトリガー] で main を定期的に実行するようにすれば OK(のはず。まだ動いてないのでわからない)
    • f:id:motemen:20170104132155p:plain

スクリプトで処理したメールには gas-{scriptId}-processed なるラベルがつく。

f:id:motemen:20170104132424p:plain

以上。Amazon 版だれか作ってください。今年もよろしくお願いします。

今年詠んだ句ベスト50

はてなスタッフアドベントカレンダー2016の23日目の記事です。昨日は id:yulily100 の『坦々ポテサラという暴力について』でした。

今年の仕事始めの日に、同僚が俳句を詠んでいる話を聞いたのがけっこう面白かったので、自分もはじめてみることにしました。はじめてみると言っても外形的な変化はなにもなく、ただボーッとしている時間に見たものを五七五で表現してみるだけ。投資はゼロで、はじめは季語を入れる努力すらしなかったので頭もつかわなかったくらいです。

できたもののうち、Twitter に投稿できるくらいのクオリティのものは Twitter に投稿し、都度 Google Spreadsheet に記録して一覧できるようにしました。そうやって50句ほど溜まったのがこちら。ベスト50とはオール50に等しいのでした。

俳句: 2016

参考までに客観的な指標としてfav数も載せています(投稿する時間に影響を受けるようなので、あまり参考にはならないところもあると思います)。気に入った句があったら、あなたもfavで投票してみては?

以下に初心者がやってみた感想を記します。

定型

当然のようですが、ただ読んでいるのと作ってみるのとは大違いで、頭の中のことを十七音に収めるだけでも大変であるところに、季語を入れなくちゃいけない、人に読んで分かる情緒を込めなくちゃいけないってんで、真面目にやってみると思った以上に苦労しました。しかし、厳しい要求を満たすような言葉を探して句をさまよわせる作業は楽しいものです。その結果、最終的にでき上がったものがもともとの着想からかけ離れていることもしばしばですが、そこがまた面白いところなのかな、と思ってます。

定型のひとつ、季語を知るために歳時記というのも買いました。最初はウェブで季語の一覧が見られれば十分だろうと考えていましたが、本には良いとされる例句がいくつも載っていて、じっさいこれを読んでみるとハッとするものがいくつも見つかるので、自分のものと引きくらべてみても良い句の得がたさというのがよく分かる思いでした。

また「切れ」というやつもあるんですがこれは恥ずかしながら本を読むまで知らなかったし、まだよく分かっていない……。

前掲のリストを見ると分かりますが、夏から秋にかけてツイートが途絶えています。これは暦のうえで夏になったタイミングで夏の季語を確認したとき、「植物」に分類されるものがあまりに多いので面食らってモチベーションを失ったことからでした。秋まではそれを引きずっていましたが、再びの冬の訪れでやる気をとり戻したかたちです。

参考までに季節・分類別の季語数を図示したのがこちら。植物以外の季語もほかの季節と同じくらいありますが、やはり植物に存在感がありますね。

季節-分類別季語数(出典: 季語検索システム(国際日本文化研究センター)

くり返しになりますが、歳時記はあるのとないのでは大違いでした。自分は同僚の勧めで以下のシリーズを入手しました。ぱらぱらとめくって適当な季語の解説と例句を読むだけでも面白い。オールタイムベストが収録されてるわけなので当然といえば当然か。

現代俳句歳時記 (冬) (ハルキ文庫)

現代俳句歳時記 (冬) (ハルキ文庫)

ちなみに自分はエンジニアらしく、Slack にボットから毎朝ランダムな季語をサジェストするようにしていました。(あまり見てなかったけど)

また、あまりに初心者めいていて外で読むには少し恥ずかしいですが、これもとっかかりとして参考になりました。

知識ゼロからの俳句入門 (幻冬舎実用書―芽がでるシリーズ)

知識ゼロからの俳句入門 (幻冬舎実用書―芽がでるシリーズ)

何冊か俳句にまつわる本を古本で買いましたが、書き込みがされている割合が高く感じました。書き込みは前の人がどう読んだか知れて好きなのでよかったし、歳時記の一冊には老人のものとおぼしき字で季語ごとに一句ずつ書き添えられていて、内容から詠み手が病院にいることも分かり、ちょっと物語を感じたりもしたのでした。

明日のアドベントカレンダーは id:kiyo-shit です。キヨ=シット、あとは任せたぞ!