家バーKMY-A3のはなし
KMY-A3です pic.twitter.com/o5u1vMVKTq
— kama2vern (@kama2vern) 2018年2月3日
社会ではあらゆる形の暴力が蔓延し、無力な人々の日常はおびやかされ続けている現実があります。
そうした現実に対してぼくらはグラスの底に沈んだ答えを片手に人生をやっていく必要があります。
つまり家にバーで出来上がるのは全くもって必然ということです。
KMY-A3(かまや と読みます)はそうした論理を基に形成された家バーです。
基本ずっと一人で勝手に作ってやってるか一人遊びに来るか程度だったのですが、先日それなりに人が来て中々楽しさと大変さがあったのでまとめておきたいと思います。
アイスペールは必須
我が家にはバーカウンターなどというシャレたものはなく、リビングのテーブルの上に酒と割材を並べまくるという宅飲みスタイルになるため、テーブル上に氷をプールできる道具が必須になります。
一応アイスペールは持ってたのですが4人来ると凄い勢いで氷が無くなっていくので大きめのサイズが良さそう。
パール金属 アイスペール 1.5L ダブル ステンレス IENOMI K-6023
- 出版社/メーカー: パール金属
- メディア: ホーム&キッチン
- 購入: 2人 クリック: 2回
- この商品を含むブログを見る
リビングとキッチンの往復がダルすぎる
ミキシンググラスでステアしたりシェイカーでシェイクした後などの使用済み氷を処分するのにリビングのシンクに持ってく運用をしていたのですが、何か作る度に行ったり来たりを繰り返すことになるのでこれが極めてダルかった。
氷を捨てられるビニールなり箱なりが必要になってきます。作る人にアルコールが回って曖昧になってくると使用済み氷使い回すようになるのでまあどうでもよくなるのですが。
後は冷やして保存しておくべき酒や割り材は冷蔵庫にあるので、取りに行ったり戻したりもダルい。劣化を許容出来るならやってる最中は全部リビングに置いておくと良さそう。
あるいはリビングに専用の小さい冷蔵庫を置いてしまうなど……
知識があるとよい
針金紳士というぼくの友人が曖昧な注文をしまくるのですが、人間は基本曖昧なのでその曖昧さに答えるための酒の知識などがあると望ましいです。
今回そういうの一切なかったのでぼくはひたすら強い酒を作りまくってたのですが恐らくこういうことはよくない。
知識をベースに作ったのはオールド・パルくらい。古くからの仲間 を意味するカクテルです(この集まりが小、中学生時代から続く友人の集まりだった)
グラスがもっと欲しい
カクテルグラス一つしかないので、ショートカクテルは一人しか飲めないみたいな状況になってました。
無限にカクテルグラス欲しいのですが置き場がない。グラスホルダーめっちゃほしい。
T&B ワイングラスホルダー グラスハンガー ラック ステンレス製 吊り下げ 穴あけ不要 ネジ止め不要 2レーン ロングタイプ (2?3cmまで対応)
- 出版社/メーカー: T&B Inc
- メディア: ホーム&キッチン
- この商品を含むブログを見る
そもそも家にバーカウンターが欲しい
カウンターキッチン付き賃貸で職場の近くを調べると賃料がアなので厳しい。石油王の皆さんお願いします。
まとめ
家バーは楽しいのでやってみましょう。カクテル完全バイブルという本があると大体なんとかなるのでおすすめです。
- 作者: 渡辺一也
- 出版社/メーカー: ナツメ社
- 発売日: 2012/09/14
- メディア: 単行本
- この商品を含むブログを見る
道具はセットのやつ買っとけば良いと思います。
【Lucky Style】 カクテル バーテンダー カクテルセット 5点 LS-35-5
- 出版社/メーカー: Lucky Style Japan
- メディア: ホーム&キッチン
- この商品を含むブログを見る
ところでVA-11 Hall-Aというゲームは大変面白いのでみなさんもやりましょう。
2018の抱負
抱負
死なない 病まない
こまっていること
- 自分の人生が完全に余生
- その割に仕事上の不安がすごい
- 仕事上の立場が変わる
- 仕事で何も考えてないことに気付く
- 人生もそうじゃん
- 昔はきっとゲームとか作りたかった
- いろいろ挫折して、そういうのが完全に失せていった
- 多分トビーフォックスみたいなことがしたかった
- そのことに対しての行動はまるで足りてはいなかった
- 秒速の会社を辞めるときのモノローグみたいになってる
- このままでは会社どころか人生を辞めるリスクがあるのではなかろうか
- 人生で他に特に何もないが、友人と居るのは楽しい
- 昔よりは自己肯定感はある気がする、が、どうしろというのだ……
- メンタル大分マシになってて、これは本当にめでたい デパスキメたりとかはしてない
- 親友はみんな人生やっていっててすごい
- 自分の感情として引け目は無いのでマシにはなってる
- 一方で目的が無いから宙ぶらりんになってる気はする
- 多分、仕事人間にはなれない
- プログラミングにフルコミットも、多分そこまで突き詰められない
- さて人生どうしよう
- 取り敢えず死にそうだし病みそうな一年だしそれには抗ってくか
- こうして白馬村のとあるペンションで2018年の抱負が出来上がった
みなさんどうやってるんですか人生
5分やれ
とまあ、そういう趣旨のwebサービスっぽいものを作った。
サービスとしてはクソシンプルで、やること入れてStartって押すと5分タイマーが動いて終わると草が生えるという代物。
緑地活動の一環にどうぞ。
https://five-minutes-worker.herokuapp.com/
裏周り
Ruby on Railsでフロント周りはReact.jsを使っています。 両者とも初、というかWebサービス的なやつを0から作るのが初な気がする。
Sprockets使わずに全部webpackで吐く方針でやってみました。
最初のレンダリング後は全部レスポンスjsonで貰って差分更新するようなスタイルになってます。
Heroku無料枠上で動いてます。なのでたまに動いてません。許せ。
クソ重いんですが一応assetsはAmazon Cloud Frontに載ってます。
NewRelicとかにトラフィック流れてきたらちゃんと調査したい(時間はおそらく無い
もちべ
ぼくの人生というのはあまりにゴミみたいなもので、すぐに怠惰な方向へ走り自己嫌悪のままに一日を終え生涯を終える傾向があるのですが、それでも人は何かをやっていく必要があり、ある程度は自分に自信と誇りを持たなければそもそも社会に適合できないという社会そのものが持つ性質を見据える必要があります。(要出典)
そうした世の中で少しでも日々に自信を持てる時間というのを作り、溜め込み、可視化していくのが人間モドキがまっとうな人間になるための必要なステップだと考えました(補足ですが、このサービスは自身のドッグフーディングを第一目的としたものであり、これから使っていただけるかもしれない方を揶揄する意図はありません)
つまり5分だけがんばる時間を積み重ねていけば日々はきっと良くなるだろう、という信仰のもとにこれは出来上がりました。
がんばる、とは何でも良いとは思ってます。勉強とか、運動とか、睡眠とか、ゲームとか、アニメとか、まあ色々あるでしょう。
インスパイア元としてポモドーロテクニックというのもあり受験期には大変世話になったのですが、そもそも25分とか長すぎるので5分にしてます。とにかく雑で良いのです。
雑であれ短くであれ、少しでも何かを努力したという時間を積み重ねていくことが大切なのです。
というわけで良ければどうぞご利用ください。
本当の理由
作って公開するか悩んでる内に仕事が変わって時間外労働時間が10倍になったので、こりゃお蔵入りさせるなら世に放流だけしといた方が良いな、という背景があります。
なのでメンテとかあんまりすぐ出来ないかもしれません、すみません。
あとHeroku無料枠でごめんなさい。無料枠の分際でAWSのCDNは生意気に使っててすみません。
ゆく年
こういうの書いてたので雑に振り返ります
基礎欲しい
- ネットワークとかの
- マスタリングTCP/IPは読んだ
- C10k問題とかマルチプロセス/マルチスレッドモデルとかイベント駆動モデル辺りのざっとした知識入れた
- 遅延推測とか全くやってない(去年は必要な機会があったけど今年全く不要だったからそういうもんだと思う)
- "綺麗なコード"
- 古典に学ぶ
- 低レイヤーへのコンプレックスが云々
- まあ↑読み切ったら多少はマシになるんじゃないでしょうか
- つまり全然ダメということです。現実は厳しいものですね
- JNIとかcrash dumpのsymbols analyzeとか仕事でやったので抵抗は無くなった(無くなっただけ)
- まあ↑読み切ったら多少はマシになるんじゃないでしょうか
体力・バイタリティ
- ジム
- 通っちゃいるが尋常じゃない頻度でサボっている
- 主に理由はゲーム・酒・ダルい等があり対策が必要
- ジムに通う目的の一つである「適正体重までの健康的な増量」は一定の成果があった、約+2kgほど
- 通院が必要になったら面倒くさがらない
- そんなに風邪引くこと無かったので良いんじゃないかと思います
- ただそろそろ歯科医行ったほうが良い気がする……
考える力つけましょう
- 相変わらず脳は死んでる
- 読書の癖もついてないので改善のアイデアがないと厳しいんだと思う
- ジム中に読もうかと思った時期もあったが全く集中できなかった
- Twitter見ると分かるんですが全く減ってないです
取り敢えず読んでるは読み切りましたか
- Game Programming Patternは読み切った(というか英語版読んでたし……)
- オンラインゲームを支える技術はClient/Server型MMOの実践辺りで止まってる
ほか
- 振り返って自分のブログ見てると何やってる人なのか全く分からねえなこれ
- 道楽で生きてる人っぽい 蔑称的意味の方のDilettante
- 本業はモバイルアプリゲームエンジニアです
- 来年もよろしくお願いします
SorceryでExternalが動かない際にはconfigのcallback_urlを見直してみる
Ruby on Rails初心者の断片プログラマーです(マサカリは程々にお願いしますの意)。
いま個人開発でRuby on Rails触っていて、認証部をシンプルな感じにして最高に楽をしたかったのでSorceryを利用しようとしたのですが、External(外部認証機能、OAuth認可するやつ)をTwitterで利用しようとした際にハマったのでここに解決法を記しておきます。
バージョン
結論
callback_urlのドメインは0.0.0.0だとsessionでrequest tokenを共有できなくてダメというやつです。
開発中はlocalhost, Productionならwww.yourawesomeservice.comとかである必要があります。
yourewasomeserviceは適宜よしなにお願いします。session共有できる設定とかでも多分平気(試してない)。
事象
Sorceryのチュートリアルの通りに進めていると、Twitterを介して認証処理が成功してcallbackした際に401 unauthorizedが返ってくるという問題があります。
他にも以下に挙げられているようなことが原因で発生することがあるみたいです。
Sorceryの実装
この辺
https://github.com/Sorcery/sorcery/blob/master/lib/sorcery/providers/twitter.rb#L45-L53
:request_tokenと:request_token_secretをsessionから持ってきてるのが分かるかと思います。
get_access_tokenの実装はProtocols::Oauth下に
https://github.com/Sorcery/sorcery/blob/master/lib/sorcery/protocols/oauth.rb#L22-L27
get_request_tokenではtokenとsecret見て、nilだったらTwitterに問い合わせる感じになってます。
https://github.com/Sorcery/sorcery/blob/master/lib/sorcery/protocols/oauth.rb#L10-L13
これつまりどういうことかっていうと、初回のrequest_token取得時に利用したsessionと、その後のcallbackで利用するsessionが同一でないとrequest_tokenが適切に渡らず、request_tokenが適切に渡ってないとaccess_token取る前にもう一度request_tokenを発行しようとするわけです。
新しいrequest_tokenを発行しても実際に認証完了しているのは古い方のrequest_tokenなので、認証の済んでいない新しいrequest_tokenを使ってaccess_tokenを取ろうとしても401が返ってくるわけですね。
そして、特別な設定をしていない限りはRailsのsessionは異なるドメイン間で共有されないので、localhost内のsessionにrequest_tokenがあってもcallback実行時の0.0.0.0内のsessionにはrequest_tokenが入っていないという流れが起きます。
終わりに
こうして改めて見ると結構しょーもない理由で悩んでいた気がしますが、人が学びを重ねていく過程においては止むを得ないということで見なかったことにします。
何か誤りなどありましたら教えてください。謝ります。このジョーク超面白くないですか。
A poem of testing
テストコードってなんで必要か
モバイルゲームクライアントという特殊な環境
- 仕様追加/変更が多い
- DynamicなUIを求められる箇所が多い
- 機能単位の直交性があまり高くない
とはいえ複雑化するクライアント事情
- UIの整合性
- ユーザの操作制御
- 複雑なState管理
- API通信
- データ加工とView表示
テストを単純に書けば良いというものでもない
書くこと・保守することは間違いなくコストになる
テストを書けそうなら以下の辺りか
- UI Componentの存在/属性検証
- UserActionが適切にdispatchされているかの検証
- ユーザ操作に対して変化するStateの検証
- Infra層へのrequest/responseが適切かの検証
- Infra層から得たデータを元にViewObjectを生成するロジックの検証
どこまでやるのか、という程度問題は結局残り続ける(UI要素全検証とかシンドいと思う
経験からクライアント書いててネックになりがちな所は以下だと思っている
- UIの整合性
- 複雑なState管理
- Clientで持たざるを得なかったdomain logic
ソフトウェアをより良くするための保護と、サービスをより良くするための身軽さを両立する位のバランス感覚でやれると嬉しい
ごーるでんうぃーく9日目
昨日はなにもしませんでした。
今日は劇場版『遊☆戯☆王 THE DARK SIDE OF DIMENSIONS』見てGAME ON行ってきました。
シンクロ召喚全盛期だった頃に結構ガッツリやってて原作も全巻読んだくらい熱量だったんですが映画とにかく凄かった。
海馬社長のための映画なので彼が好きな人は見た方が良い。それでなくても原作ちょろっとでも知ってる人だったら見て楽しめると思います。
GAME ONの方はPONGとか昔のアーケード筐体やポータブルゲーム機なんかが展示・試遊できる感じで、展示まわりながらゲームやそれ取り巻く環境の歴史とかが見れるやつです。
友人と行ってきてPONG対戦したんですがカドでの打ち返しに固執しすぎて負けました。
閉館ギリギリに行ったのでもうちょいゆっくり見ても良かったかもですね。
ポンやで pic.twitter.com/MpRc9ZUsYe
— kamakama (@kama2vern) 2016年5月7日