iOSDC Japan 2017 に当日スタッフとして参加してきた

まったく iOS 関係ない人間だけど、9月15日から9月17日にかけて開催された iOSDC Japan 2017 に当日スタッフとして参加してきました。

なんでスタッフなんかやってたの?

iOS とか一切関係ない人間なんですが、主催者の @tomzoh が PHP / Beer 界隈でよく会う人だったのと、懇親会のビールが豪華っていう去年の実績があったのでビール目当てに当日スタッフに申し込んでました。 はい、完全にタダビール目当てです。

前日まで

当日スタッフなのでとりあえずSlackに入ってぼけーっとビール関係の話題の時にクソリプをするということをメインでやってた。 あとは去年と同様にトークの開始5分前に次こんなセッションやるよーってのをツイートする為のデータをセコセコと作成。

あとはひたすら寝て過ごしていました( ˘ω˘)スヤァ…

当日

私は Track A の担当だったので @akatsuki174 さんの下テキトーにうにゃうにゃとしておりました。今年は質疑応答時のマイク係が多かったので主にセッション中の雑用をやっていた感じ。

  • 去年とかbuildersconでも同じ仕組みで勝手が分かっていたのでタイムキーパー用のiPhone/iPadの設置をしたり
  • セッション中に参加者・ビデオ・カメラ的に一番問題なさそうな電気の調整をしたり
  • マイクスタンドがなかったのでコードがでてくるセッションの時はマイクを持っていたり
  • フリードリンクエリアに行ってビールの冷え具合を確認したり
  • Track A は会場で温度調節ができず、防災センターに電話する必要があるので誰かが会場寒いってツイートを見かけたらSlackに貼ってくれるのでそれを見て電話したり
  • とむぞーさんの反応がない時は探し回ったり
  • LT中にバドワイザー配りつつ飲んだり

ちなみに一番頑張ったのは準備中のフリードリンクを並べる所でした。4つ並べると鶴が見えるってことでひたすら並べていたり…。 f:id:hamaco:20170919170012j:plain

あとは、クロージング後にスタッフ打ち上げをしてからの夜のiOSDCで僕の元気は完全に0になりました。

Japan Taxi様のクーポンがなかったら駅で力尽きて死んでいたかもしれませんね。

翌日

夜のiOSDCの疲れにより1回休み。地味に足が痛くて辛い1日でした。

購入から半年やっとMacbook Proがまともに使えるようになった

去年の年末に購入したMacbook Proが、話題の高温時にキーがうるさくなるやつだったので修理に何回か出してたのがやっと終わった。

キーボード交換する → 他のキーがうるさくなるとか、キートップだけ交換してもらったけど解決しなかったりとか、エンジニアに聞いたら把握してるけど直せないって返されたりとかあったけど4回目の修理でやっと今の所特にキーボードの音的には問題なく使用できるようになった。

店頭で再現させる為に予約の20分ほど前にApple Storeに行って、目立たない所で yes | xargs -L 1 -P 32 >> /dev/null なコマンド実行してウォームアップしていくのともこれでオサラバですわ!

PHPカンファレンス福岡2017に行ってきた

今年で3回目になるPHPカンファレンス福岡2017に行ってきました。

※ この記事は まみーさんのブログ の下位互換なので、ここ読まずにまみーさんのを読むのが時間を有効に活用できて良いと思います。

前日(金)

お昼

お昼のタイミングで空の上だったので、福岡に着いてから現地の人に教えてもらったうどん屋さんでうどんをもぐもぐ。

もくもく会 & #phpgenba

お昼食べた後は、PHPカンファレンス福岡2017のプラチナスポンサーでもあるFusicの会議室が開放されていたのでおじゃまして、横で #phpgenba の収録をしてる中 Hammerspoon の設定と格闘。 収録が気になる中、一応やりたかった右 Shift を ^& にする設定はできたので OKOK。

袋詰めのお手伝い

微妙に前夜祭まで時間があったのと、この一年間を振り返ってみると中の人に迷惑を掛けてばっかりだったので、Fusic に居たスタッフの方々と一緒に会場の FFB ホールに行って、袋詰めのお手伝いを…。 袋詰め自体は結構スムーズに進んで、30分ちょっとで終わったので前夜祭にもそこまで遅刻せず行けたのはよかったのかなと。

前夜祭

今年は、スタッフ・スピーカー前夜祭に一般人も参加可能だったので、去年みたいに偶然を装おって同じお店を予約して突撃とかしなくてすんでとても楽でした。

二次会

はい、いつもの?エールズでした。

三次会

とても有名らしいラーメンをもぐもぐ。

四次会

睡眠

色々あってだいぶ歩いた…。

当日(土)

今年も先着でTシャツがあるとのことで、開場と同時くらいに会場に行ってちゃんとTシャツを確保! 今年のTシャツは普段着としても使いやすそうな感じなのが素晴しいですね。

ちなみに各年のTシャツは↓な感じ。

あとは今回、ステッカー置き場に勝手にステッカーを置いてきて良いとのことだったので ShouldBee とか Y8 とかのステッカーをこっそり置いてきたり。

イベントの話

福岡のPHPカンファレンスは、スポンサーの紹介をしっかりしていたり、Twitter でも色々告知とかしていたりして全体的に丁寧で好印象なのがとても良い。 無限コーヒーとか Ask The Speaker とか、セッション聴くだけでなく交流しやすいようになってるし。 運営がとても大変そう(特にTwitterでよく見る一部の人が)なのだけども…。

ちなみに、セッションは既に資料をまとめて下さっている方がいるのでそっちを見るとヨサソウ。

実は福岡に行く時は毎年 Wi-Fi のアクセスポイント名を変更しているのですが、今年はこの上から3つ目の名前にしていました。 (何も考えてなくて当日 Wi-Fi 一覧見てテキトーに考えたとか言えない……)

懇親会

色々…そう、色々ありました…。

二次会

イノベータージャパンの人たちの漫才を聞きながらワニ肉とか変わったものを食べたり、

三次会

やはりここに戻ってくるんだよなぁ。

四次会

テキトーに見つけたBARで怪しいトークが繰り広げられてました。

五次会

ラーメン欲が残っていたので開いてたお店でラーメンをば…。 ところでこのお店の中の人しょっちゅうエゴサしているのかふぁぼ早いですね。

睡眠

そして、5時頃ホテルに戻り就寝…

翌日(日)

お昼

お昼は @tomzoh / @uzulla コンビと一緒に河太郎でイカ! 去年と微妙にメニューが変わったりしてたけどとても美味しかった!

アフターハック

お昼食べた後は去年同様 Fusic で After Hack を。Hack と言いつつ私は Twitter ばっかりやってたような気がするけどね。 ビール3缶しか飲めず、今年も無限ビール達成されてしまってくやしい……

ところでなんで私がメイヤーなんですかねぇ?

飲み会

優しい人たちが来てくれたおかげで、ぼっち飲みせずにすんでとても嬉しかったですまる

名物らしいらーそーめんの写真取り忘れた…。

翌々日(月)

帰りの飛行機が15時過ぎとそれなりに時間に余裕があったので、事前に天神の Genius Bar を予約して Macbook Pro の4回目の修理依頼をしに。 4回目ともなるとサポートの人も「前やったから知ってると思うけど」的な発言がちょいちょいあって面白かったです。

そして、Macbook がなくなったことで荷物がとても軽くなるので、旅行ついでに修理に出すのとても良い感じ。

おまけ

ところでPHPカンファレンス福岡2017のステッカーとしおりを大量に頂いてきたので、PHP勉強会東京とかに参加すると行ってない人でも多分カッコいいステッカーとしおりが手に入りますよ!

f:id:hamaco:20170614202221j:plain

HammerspoonでRShiftを^と&にする

Sierra になってから Karabiner が使えなくなってしまったので、Hammerspoon で頑張るメモその1

今回は右の Shift を単押しで ^、 左の Shift を押しながらで & になるようにしたかったのでやってみた。

local LShift = false
module.rshiftKeymaps = hs.eventtap.new({hs.eventtap.event.types.flagsChanged}, function(e)
    local flags = e:getFlags()
    local keyCode = e:getKeyCode()

    if keyCode == 0x38 then
        LShift = flags.shift
    end
    if keyCode == 0x3C then
        local rawFlags = e:getRawEventData().CGEventData.flags
        if LShift and rawFlags == 131334 then -- 131334 = LShift+RShift
            return keyStroke({"shift"}, "6")() -- &
        elseif rawFlags == 131332 then -- 131332 = RShift
            return keyStroke({}, 0x18)() -- ^
        end
    end
end)
module.rshiftKeymaps:start()

Modifier Key に関しては keyDown / keyUp イベントが発火されないっぽいので、flagsChanged イベントで結構無理矢理頑張っていてちょっと辛い所。 あと、flagsChanged イベントだと、 keyDown / KeyUp 時両方とも発火されてしまうので、 rawEventData のフラグを見てどのキーが押されているのか判断している。

au から IIJmio に MNP した

iPhone 6 Plus にしたタイミングで au に乗り換えていたんだけど、丁度先月で2年縛りが終わって更新月だったので IIJmioMNP した。 au 端末使ってるとこういうのめんどくさいけど、iPhone 7 Plus は Apple Store で買ったので問題なし。

最初は Nexus 5X でお試ししている DMM Mobile に SIM 追加すればいいかなーとか思っていたんだけど、DMM Mobile に MNP する場合、「一度現在の契約を解除する → 新規申込で MNP する → SIM を2枚にして Nexus 5X に挿す」となんかすごくめんどくさいし、手数料とかあれな気がしたので無難に IIJmio に。

SIM が届いた後に IIJmio 側の MNP 手続きが電話で自動音声に対して電話番号とか入力するだけで済むので MNP 自体はだいぶ楽な感じがしました。 ただ、本人確認で保険証の住所を略字で書いてたら再提出喰らって SIM 届くまでは時間が掛かりましたが…w

通信速度とかのついてはまだ乗り換えたばかりなのでなんとも言えないけど、DMM Mobile と違って高速通信切り替える為のアプリがまともに動くのは便利。 これ低速通信下でもちゃんと使えるのかとかは使っていくうちに分かってくるかなーって感じ。

phpallのDocker版を作ってみた話

この記事はPHP Advent Calendar 2016の19日目のエントリです。

はじめに

PHPerは大体自分のマシンにPHPの各バージョンを入れて、バージョン間の挙動の違いなどを確認していると聞きました*1
しかし、各バージョンのPHPをビルドするのって時間が凄くかかってめんどくさいですよね。

なら各バージョンのPHPが動く Docker イメージを作ればいいのではとか思い、PHP 5.0.0 以降の各バージョン毎の Docker イメージを作ってみました。

https://hub.docker.com/r/hamaco/php-all/

使い方

まず、Docker イメージをダウンロードしておかないと話にならないので以下のコマンドで一括ダウンロードします。

$ docker pull -a hamaco/php-all

ただ、1イメージ辺り20MB程容量を喰う為、ディスク容量に余裕のない人は docker pull hamaco/php-all:7.1.0 みたいにして自分の必要なバージョンだけダウンロードしてきてください。
Docker イメージのダウンロードが完了したら、以下のリンクから docker-phpall をダウンロードしてきて PATH の通った所に置いてください。

github.com

そして、docker-phpall コマンドの引数に、実行したい PHP のコード or 実行したい PHP ファイルを渡してあげると、、、

$ docker-phpall '"0x1"=="1e0"'
php-5.0.0: bool(true)
php-5.0.1: bool(true)
php-5.0.2: bool(true)
php-5.0.3: bool(false)
php-5.0.4: bool(false)
php-5.0.5: bool(false)
php-5.6.28: bool(true)
php-5.6.29: bool(true)
php-7.0.13: bool(false)
php-7.0.14: bool(false)
php-7.1.0: bool(false)

こんな感じでダウンロード済みの Docker イメージの各バージョンで実行され、結果が出力されます。
上記コマンドの場合出力がないですが、phpall 同様に実行結果が空の場合 var_dump() で囲んで再実行しているのでその結果が出力されています。

まとめ

だいぶさっくり紹介ですまぬ…すまぬ…。

@hnw さんの https://github.com/hnw/phpall にあるインストールスクリプトを使用して PHP のインストールを行なっているので、基本的に phpall 互換になっていると思います。
docker-phpall の引数の挙動自体も、上記 phpall コマンドに合わせているつもりなので、同じような使いかたができると思います。もし、挙動が違うようでしたら PR なり、不具合報告なりして頂ければと。

あと、闇PHP勉強会で PHP5 以前のバージョンも作れとか圧があったのでもう少し改良予定です。そもそも新バージョンの PHP のビルド手動でやりたくないのでその辺もどうにかしないと…。

アイマスハッカソンを(一応)主催した #imas_hack

こんにちは! この記事は アイドルマスター Advent Calendar 2016 - Adventar の19日目の記事という体でイベントの報告になります。

はじめに

当日参加してくださったプロデューサーの皆さま、現地にはこれなかったけどニコ生の方で視聴してくださったプロデューサーの皆さま、スタッフの皆さま本当にありがとうございました! & お疲れ様でした!
そして、今回の会場を貸してくださったクラウドワークスさん本当にお世話になりました。

自己紹介

イベント報告の前にイベントでまともに発信できなかったのでとりあえず簡単に自己紹介をば…。
基本的にライブとかコンシューマーの方のゲームとかやらず、主にミリオンライブ!の方で豊川風花Pをしています。
あとはミリオンライブ!のプロデューサーデータを集めているサイトの運営をしていたり。

きっかけ

そもそもの開催のきっかけはこのツイートでした。

そして翌日にはたたき台ができるという素早さ。

GitHub - imas/hackathon at c616ac39bc39a7c9c30d7db97e3337a720da909c

こんな感じで @treby006 氏のフットワークの軽さに驚きつつ開催する流れに…。

前日まで

基本的に運営に必要そうなことは全部他の人がやってくれた*1ので、私はなんとなく Twitterハッシュタグとか見てひたすらふぁぼりつつ、参加ためらってそうな人を見つけたらとりあえずメンション投げるとか雑なことをやってました。
ひたすら他の人が有能だったので私はテキトーなこと呟いたり懇親会の担当をしたりしていただけな気がしますw

当日

当日は入口の受付席に座りつつ、Twitter と Slack で賑やかししつつ↑の運営サイトのバグ修正とかしていました。
私のハッカソンの成果は↓のツイートに全て集約されている気がします。なぜか @bode_mmk さんのクソコラを作って遊んでいましたw

全体としては思っていたより皆静かにもくもくしつつ、会場で常にBGMを流していたので曲によってはサイリウム振り始める人がいたり、リアルにあまり騒ぐとあれなので Slack の方にコール用のチャンネルが作られてそっちで盛り上がったりとなかなか面白い雰囲気のイベントでした。

まとめ

受付の場所がちょっと離れていたので私は直接会話とかでは参加できなかったんですが、Slack の方で盛り上がっていたのでぼっち感もなくわいわいできてよかった!
せめて来年の内(夏?)には第2回を開催していきたいなーと言う気持ち。そして次回こそはちゃんとハッカソンして発表するぞという気持ち。
あれ? あんまり主催した感がないな? まあ気のせいやろ。

そういえば、#imas_hack の Slack は誰でもウェルカムなので興味のある方は是非参加してくださいね!

*1:特に準備色々やって頂いた https://twitter.com/gomao9 さん本当にありがとう!

幕末!アイドル新撰組 は500位爆死しました #imas_ml

今月もガシャ回してて引換券が余っていたのでなんとなく走った。
なんか1200位と500位でそんなに差がない気がしたのでなんとなくSP走りしてたんだけど、やはり速度がでないせいでじわじわとボーダーに追い付かれ追い抜かれでダメでした。
ど、どうせ10%チケなんか当たらないからいいんだもんね!

f:id:hamaco:20161003154713j:plain:w300

Kindle Unlimited で漫画を色々読んだ

Kindle Unlimited の初月が無料だったのでお試し登録して読んだ本のまとめ。大体読んでて面白かったやつは上の方にある感じ。

大体読んだやつ

1~2巻だけ読んだやつ

最初は最新刊 or 1冊前まで対象だったりした本が、1巻のみ対象になってたりと地味にストレス溜まりそうな感じになってしまっていてあれなので継続はしない。
また来年とかある程度落ち着いてきた頃に見て、便利そうなら戻ってくるかもしれないけどどうだろうなー。

iOSDC Japan 2016 にスタッフ参加してきた

まったく iOS 関係ない人間だけど、2016/08/19 - 08/20 に開催された iOSDC Japan 2016 に当日スタッフとして参加してきました。

なんでスタッフなんかやってたの?

iOS とか一切関係ない人間なんですが、主催者の @tomzoh が PHP / Beer 界隈でよく会う人だったのと、懇親会のビールが豪華って噂を聞いてビール目当てに気がついたら当日スタッフに申し込んでました。 はい、完全にタダビール目当てです。

前日まで

当日スタッフだから当日まで ( ˘ω˘)スヤァ… してればいいやって思ってたんだけど、Twitter にセッション内容を自動ポストしたいって Issue がしばらく担当求むになってたので自動投稿するプログラムを PHP (ここ重要)で書きました。
最初はプログラムなんか書く気なくて Buffer でやろうとしてたんだけど、画面からポチポチ登録するのが糞めんどくさくて結局 PHP を書いて cron でツイートするように…。

このセッション前ツイートがどの程度役に立っていたのか分からないけど、単純なコードを書くだけでできるのでとりあえずやっておくのもいいのかなーって。
ツイートするセッション情報も iOSDC では json で全て取得できたので、ツイート用のデータを作る*1のがめっちゃ楽でしたしね。

ちなみにこのプログラム書いてる時、記憶の片隅にあったけどどこで見たか思い出せなかったので自分で書いたんですが、これ去年の YAPC で同じようなことやってたんですよね。
しかも自動ツイートするやつ公開されていると言うね。

当日

前夜祭と当日は Track A の雑用担当的なことを担当していました。
司会業は他のスタッフがやってくれていたので、私はスタッフ用 Slack を見つつ告知しないといけないことの告知をしたり、席の誘導をしたり、ランチセッション前にお弁当を配ったりとそんなことをやってました。
あと iOS 関係の会話とかできないし、知り合いもいないから他のスタッフより比較的暇な気がしていたので、懇親会では美味しいビールを飲みつつ司会業以外で LT のサポートとかをやってました。

しかし、 LT の時間にはバドワイザーがでてくるし、懇親会では Punk IPA やら Black Hammer やらよなよなやら毬花やらめっちゃ豪華なビールが飲めて、ビールに合う食事が付いてきて最高のプログラマー向けカンファレンスでしたね!
私のイベントの記憶はビールで埋めつくされているのでちゃんとしたイベントの内容が知りたい人は他の人の感想記事を見てくださいw

さいごに

いやー、ほんと発表だけじゃなくビールも最高な良いイベントでしたね! これはもし来年があって来年もビールが豪華ならまた参加するしかないぞ!

*1:これも PHP で書いた