生活密着型ラウドロックの男女混合スリーピースバンド、打首獄門同好会の日本武道館ライブに行ってきた。控えめに言って最The高だった。
打首獄門同好会との出会いは、いつからか覚えていないけれども結構な最近(2016年後半あたり?)で、YouTubeのレコメンドに出現したのを視聴したのが多分最初で、ほどなくAppleMusicでリピートしまくり、その後マグロック2017で生観戦して本格的にはまってしまった。
どこが良いのかと聞かれたら、まず楽曲、演奏技術の高さ、三人の人柄、そしてお子さんから老夫婦までいる客層など枚挙にいとまがない。これはもう一組の推しバンド、赤い公園にも通じるものがある。客層に関しては本当に幅広くてワンマンではファミリー席が用意されるし、親子三代できている人たちも見かけたし、65歳くらいの夫婦も斜め前の席にいた(白髪の旦那さんの方は公演中一度も立ち上がらなかったけどw)。
どんな曲があるのか興味がある人用にMVをお気に入り順に貼っておきます。まずはフローネル
日本の米は世界一、この曲一番人気じゃないかな
布団の中から出たくない、うちの子が大好きな曲
武道館ライブから数日たっているわけだけど心地よい余韻に浸っている。これがあと数週間して余韻が消えた時のロスが怖いけど、またどこかでワンマンやるようなら参戦したいと思った次第(できれば息子を連れて行ってあげたい)。
開演前の物販(180分待ち!)で買えず、公演後になんとか買えたキッズ用Tシャツ
第59回グラミー賞において、最優秀ロック・アルバム賞を受賞したCage The Elephantの最新アルバム『Unpeeled』(アコースティック・ライブ・アルバム)が昨日発売されたんですが、それに先立ってアコースティックライブの公式MVが YouTubeにアップロードされています。これが最高なので是非視聴してみて下さい。以下代表的な曲を貼り付け。
Shake Me Down は往年のOasisを彷彿させます
Ain't No Rest For The Wicked はこのYouTubeで使われていることで知りました
SHUNSUKE NAKAMURA (中村俊輔) -Celtic (セルティック) -2005-2009- - YouTube
舌っ足らずなラップが最高です
Cigarette Daydreams はいつ聴いても泣ける
Cage The Elephant最高なんで他のアルバムも是非聴いてみて下さい
RCA (2017-07-28)
売り上げランキング: 28,257
なぜ作った?
今の自分にとって一番必要なのは癒しだから
機能
- インスタグラムで和久田アナのハッシュタグがついた画像を取得して #wakuda に流す
- Google Custom Search APIで取得した和久田アナの画像を一時間に一度 #wakuda に流す
- "img" "imgplz" などと発言するとGoogle Custom Search APIで取得した和久田アナの画像を #wakuda に流す
以下順序立てて説明
インスタの画像取得について
Zapierを利用、ザピエルと読むらしい。ZapierはIFTTTやmyThingsと同様に簡単にWebサービス同志を連携できるもの。今回はこのやり方を真似させて貰った
ZapierでSlackを佐野ひなこちゃんで埋め尽くす #apijp - @i2key のBlog
きっとPythonやなんかで自力で出来ないこともないだろうけど、簡単に出来るものがあるのならばそれを利用する。但しあまり更新されないし、人任せなところもあるのであまり期待せずに画像が流れてくるのを待っているところ
AWS Lambda Pythonを使った画像の定期投稿
Google Custom Search API、AWS Lambda Python、SlackのIncomingWebhooksを利用。流れ的には、先ずGoogle Custom Search APIを使い、画像URLをS3に保存。そしてスケジュールイベントでAWS Lambdaを起動させ、ランダムチョイスでひとつ画像URLを選択してSlackのIncomingWebhooks経由で投稿する。PythonでSlackのIncomingWebhooks(SlackのAPIと言えばいいのか)を操作するのに今回使用したのはslackwebというライブラリでこれがすごく簡単に投稿してくれる
Python 2.7.13 (default, Jan 31 2017, 21:53:31) Type "copyright", "credits" or "license" for more information. IPython 5.4.1 -- An enhanced Interactive Python. ? -> Introduction and overview of IPython's features. %quickref -> Quick reference. help -> Python's own help system. object? -> Details about 'object', use 'object??' for extra details. In [1]: import slackweb In [2]: slack = slackweb.Slack(url='https://hooks.slack.com/services/*****************') In [3]: slack.notify(text="test") Out[3]: u'ok'
Amazon API Gatewayを使ったbot的な画像投稿
Google Custom Search API、AWS Lambda Python、Amazon API Gateway、SlackのOutgoing Webhooksを利用。 定期投稿の場合はslackwebを使ったのだけど、Amazon API Gateway + Outgoing Webhooksの場合はAWS Lambdaでjsonなレスポンスを返してあげればSlackに投稿される。流れ的にはSlackの該当チャンネル上で任意の言葉を発言すると、Outgoing WebhooksがAmazon API GatewayのWebAPIを叩き、AWS Lambdaが起動する。AWS LambdaがS3にあるURLからランダムチョイスで選択しSlackに返信される。
以下適当なコード
from __future__ import print_function, unicode_literals import random from random import SystemRandom from string import ascii_lowercase, digits import boto3 from settings import config as cfg def _random(farm): return random.choice(farm) def _create_anchor(image): return image + '#' + ''.join(SystemRandom().choice(digits+ascii_lowercase) for i in xrange(20)) def get_image_list(bucket, key): s3 = boto3.resource('s3') bucket = s3.Bucket(bucket) obj = bucket.Object(key) obj = obj.get() body = obj['Body'].read() return (body.decode('utf-8').split(',')) def lambda_handler(event, context): if not event['token'] == cfg['SLACK_TOKEN']: return "" msg = _create_anchor(_random(get_image_list(cfg['BUCKET'], cfg['KEY']))) payload = {"text": msg} return payload
Amazon API Gateway の APIキー認証
今回一番悩んで嵌った箇所がこれ(というか多分今もわかってないかも)。 API GatewayでAPIキー認証を行う場合APIキーはリクエストヘッダにキーを含める必要がある。 SlackからOutgoing Webhooks経由でAPI Gatewayを叩く際、キー認証を行うにはOutgoing Webhooksからのリクエストヘッダにキーを含めなくてはならない(?) それは出来そうにないのでOutgoing Webhooks経由ではAPI キー認証は出来ないということでいいのだろうか。なので現在はAPI GatewayのセキュリティはOpenにしてそのかわりOutgoing Webhooksに含まれるトークンをLambdaで受け取って認証している(トークンの認証に失敗すれはLambdaはなにもしないで終了)
画像取得について
Google Custom Search APIによる画像取得は現在1回/日しか実行していない。というのは毎回画像取得のLambdaを実行させても結果はあまり変わらない為。 また件数も50件しか取得していない。これは取得する件数を増やすと和久田ファン的に納得できないノイジーな画像が増えてくる為で仕方が無く50件におさえているのが実情。 投稿される画像はいつも似たような画像が多くなるのでそれも新鮮味が欠けてくるので悩ましいところ。
画像重複問題
Slackは1時間以内に同じURLを投げつけると警告を出してプレビューしてくれない模様

和久田ファンとしては非常にゆゆしき問題なので、問題を回避すべく色々考えた結果、ランダムな文字列のアンカーをくっつけることにした
def _create_anchor(url): return url + '#' + ''.join(SystemRandom().choice(digits+ascii_lowercase) for i in xrange(20))
画像URLを引数に取ることによってランダム文字列のアンカー付きのURLが返される。Slack側には違うURLと認識されるが、プレビュー時にはアンカーは無視されて正しい画像が展開される。一応これでうまくいっている。
その他
とりあえず一個前のブログ記事にもあるように、システムエンジニア職を辞めてしまい新しいことをやっているのだけど、思ってた以上に激流で日々ラフティングをやっているような気分。毎日ヘロヘロになっているのでこれさえあれば頑張れると思って残っている力を振り絞って作った。後悔はしていない。
以上です
職種転換します
約13年間、社内SEとして働いてきましたが、7月より財務会計の世界に飛び込みます(転職じゃなくて異動)。
といっても新卒で入社した会社では経理部に配属され予算管理や債権・与信管理等を足掛け8年以上やってきたので(多少の畑違いな所はありますが)環境的には実質出戻りとなります。なんでSE辞めるの?って言われれば、ただ単にお上に経理やらない?って打診を受けたので承諾した(サラリーマンにとって打診は命令だろ?)ってことなのですが、実際には少なくとも2日程は悩みました。悩んだのですが結局職種転換を決めた理由の一つに昔からの自分ならではの決め事が関係しています。
それは、2つの事柄をはかりにかけた場合、もしくは本当にこいつで良いのかな?って悩んだ時、好きなものではなくて合っている(合ってそうな)ものを選択するとうまくいくことが多いということです。
勿論全ての事象がこの限りではないですが、小さなことで言えば服装も髪型もそうだし、転機で言えば3社から同時に内定を貰った転職も自分がしたいもの好きなもの興味があるものを尊重しつつも専門家や信頼のおける人の意見を聞き、どちらが自分に合ってそうなのかを考え選択したほうが上手くいったような気がします。
結局、私は自分のことを良く知っているようで結局何も知らないということです
経理の仕事は新卒の時に人事が適正を鑑みて配属されキャリアを積んだもの。SEは自分がやりたくて立候補して半分以上独学でキャリアを積んできたもの。この場合、自分にとってエンジニアは好きな仕事、経理は合っている仕事ということですね、どちらの仕事がより自信を持って相手にお金を請求することができるかを想像した時、きっと経理の仕事だろうなって思ったからです。
勿論『好きこそものの上手なれ』も否定しません。
私から業務を引き継ぐ後輩君へ
(このブログは見ていないと思うけど)君も提案型営業マンから社内SEへの配置転換となってさぞかし驚いたでしょう。振り回しちゃったようで申し訳ない。色々思うところはあると思うけど、適正に関して言えば何も問題ないですよ。
ことプログラミングに関して言えば、不具合箇所のあたりをつけるところや、機能追加の実装アイデアなんかはプログラミング開始ほんの数週間とは思えないくらいの非凡なセンスだと思います。久しぶりに会社で地頭が違う人に出会いました(笑)
但し今後は(スマートに出来ることはわかった上で)若いんだから失敗を恐れず全社ネットワーク止めちゃうくらいもっと腕白にトライしてほしいかな。
なんでもやってみればいい。きっとその失敗が糧になるでしょう。
そういえば、後先考えずチェレンジせよというメッセージを込めた曲が最近リリースされました。赤い公園のjourneyという曲です。
勝手にやめるな青春のjourney
死ぬまでヤングでいようぜbrother
お前の残した足跡が答えになる
名曲誕生の予感がするので是非聴いてみるといいですよ。
ユニバーサル ミュージック (2017-06-21)
売り上げランキング: 510
Shizuoka.pyのメンバーの皆様へ
仕事の内容は変わりますが、今後Pythonを書けない、書かないとは一言も言っておりませんw。寧ろ仕事でプログラムに触れない分書きたくなるでしょう。また皆で集まって知見、経験を共有できる日を楽しみにしております。
ではでは
先日会社帰りにイシグロ中吉田店に寄り、店員さん捕まえてタナゴ釣りの道具一式揃えたいんだけど云々言って適当に見繕ってもらった。
本当はタナゴ桶(注:リンク先は画像検索)とか欲しいけどこの釣りは凝りだしたら本当にきりがないし、まずは最低限のもので。実は振替休日である今日行くために慌てて揃えたのだけど諸事情で断念。7〜8月は仕事で無理そうだし、行けるとしたら9月以降かな。うーん恋しい