VimConf2015にLT発表者枠で参加してきました
先日開催されたVimConf2015にLT発表者枠で参加してきましたので熱の冷めないうちにレポを書きたいと思います。
全体を通して
朝から10時30から夕方の18時までという丸一の有料カンファレンス。 去年はお昼からだった覚えがあり長丁場だなと思っていたのですが、いざ参加してみるとあっという間に時間は過ぎました。
当日の一つ一つのセッションについての様子は他の方が様子を書いてくださっているのでそちらに譲り(Togetterまとめは現時点で未作成だったので作成しました。)個人的な感想を中心に!
VimConf2015まとめ
感想
- VimConf2015のサイトが素敵だった
- kaoriyaさんの発表でマシントラブルで資料なしで決行されたのすごい
- GoogleCodeが閉鎖される期限が決められている中でできること
- vimアカウントの委譲の話しなど「前提で無理」と捕われず最善の為に何ができるかという考え方や動き方など着目して話されている視点がとても興味深かった
- Linda_ppさんのreact.jsを使ったBrowserへのVim埋め込みのインパクトでかかった
- 今後WYSIWYGエディタの代替えで使えるようになったらいいのになぁ
- 日本語さえ使えれば...
- みなさん「ただの...ですから」と謙遜力が半端なかった
- 茶番も含め面白かったです!
- すごく発表者自身が楽しんでいる感じがしました
- derisさんの発表を見て仕込みに地味に時間がかかっただろうなぁと感心
- その瞬間にでた最後のJobsを真似たフレーズ
- 懇親会で「実は発音もyoutubeみて素振りした。でも想定よりうまくできなかった。」と言っていたけど満足そうな顔してたのが印象的だった
- yoshiko_pgさんの発表自分の発表前で集中して見れなかったけどフロントエンドでの視点面白かった
- 帰り際にujihisaさんに「来年のVimConfにあわせて日本に来るのでその時にYokohama.vimが開催してもらえれば参加したい」と声をかけて言ってもらえたのがうれしかった。
- 懇親会であえてほとんどしゃべったことない人に声をかけてみたのですが、シャイ力を発揮したのと逆にしゃべろうとしてしまい自分の事ばかり話しすぎた感もあり、帰ってから少しヘコんだ。
- 最近導入したchoosewin作者のt9mdさんとお話したのにお礼をいいそびれた
- 名前と顔とプラグイン名の一致がしきれていなくて多分他にも多数いたはずなので次回の時にはお話しやご挨拶したい
- 運営の方々の配慮が行き届いて素晴らしかった。
- 全体をとおしてすごく楽しかった。これにつきる。
私自身の発表について
私のスケジュールで大きな所用2つと重なってしまっていまい参加を諦めてかけていた所、2つの所用がずれたのでキャンセル待ちということもあってLT枠で申し込みました。
10分ってあっという間ですね。VimConfということで少し緊張しタイマーを見ながら最後駆け足になっていましたがなんとか残り時間3秒あたりで発表を終えることができ、ほっとしました。
自分が大事にしてきたことや楽しむ事への想いやモチベーションが伝わっていたら幸いです。
自身の発表に関するツイート
今後の自分のためにTogetterでまとめてみました。 ツイートを見ると良かったと言ってもらえたので素直にうれしかったです。
最後に
発表者として参加するカンファレンスは久々でとても緊張してしまいましたが、発表者としてしゃべってみるとフィードバックや得る事も多くて結果的にやってとてもよかったです!
会場を提供してくださったmixiさんどうもありがとうございました。「福利厚生がすごいので興味がある人は聞いてください」と会場説明の時のアナウンスで聞いたのですが聞けずじまいで、どんなものがあるんだろうと単純な興味で聞けなかったのだけが心残りです。
また来年も参加したいと思います!みなさんお疲れさまでした!!
@haya14busaさんを基調講演で招き Yokohama.vim.osaka? #7を開催しました
今日はYokohama.vim.osaka? #7を開催しました。
Osaka.vim #5はkyotoで行われたらしいので、Osaka在住の今Vim界隈で最も熱いと話題の@haya14busaさんが東京へインターンに来るタイミングで基調講演をお願いして横浜でやったら面白いんじゃない?という軽いノリで前回の懇親会で話題にしていたら、その場で開催が決まったというのが今回開催の経緯です。
という感じで、haya14busaさん駆動で行いました。今回は発表セッション中心に1個ワークショップをひとつやりました。
また、発表セッション時には同日開催だったOsaka.vimの会場とappear.inで繋ぎました。突然の申し出にかかわらず一緒にできたのはうれしかったです。あまりコミュニケーションはできず申し訳なかったのですが、ありがとうございました。*1
アイスブレイク
今回も「私のVimキーワードはなんだ?」をやったのですが、場をほぐすのに盛り上がった気もします。そんなに難しくないキーワードでもハマるとなかなか抜け出せない所と、他の人のキーワードが見えているというのは面白いですね。
基調講演
@haya14busaさん
Vimと関わってhaya14busaさんがどういう風に影響を受けてきたのかという話しを聞きました。 プログラミング歴3年で、現在ははてなインターンやG社のインターンに参加されるまでに至った経緯はVim関係なくすごいと思いました。
技術力は意外と必要ない 初心者でも案外デキる 小さいことからだってよい 誰かに助けてもらったり 誰かを助けたりできると それはとっても最高っぽい
こういう事を言っていました。 活動量のパワーで押し切ったとのことでですが、インプットとアウトプットが伴うとすごい事になるんだということを改めて実感しました。
Vimはインタラクティブなソフトウェアだから目に見えて面白い機能を簡単に実装できる、という意味でいいなぁ。JSがよくそういう理由でプログラミング入門と言われるけど、これからはVim scriptでは? #yokohamavim
— Takayuki Tsukitani (@tsukkee) October 24, 2015
インプットというのが「人からの助言や助けを通じて、IssueやプルリクについてもVimで学べた。」ということなので、作ったものが動いて役に立った・人に使ってもらった以上の経験があったというのは想像できます。さすが基調講演、感極まりますね。
最後にこんな質問も
「なんでそもそもVimを触ろうと思ったんですか?」「単にかっこいいと思ったから」 #yokohamavim
— guyon (@gu4) 2015, 10月 24
発表セッション
@basyura さん
VimExcelについて
これは、ExcelのマクロでVim的な操作ができるというもの。 会場のみなさんはExcelを使う人は多くなかったのですが、
仕様書を書く時便利
という所々でいれる@basyuraさんのフレーズに会場から、突っ込みや笑いが入ります。
デモでは地味に便利という機能を披露してくれました。そして、最後にtweet.vimに関して質問やリクエストがあると「プルリクエストお待ちしております!」と笑ってかえすあたり和やかでよかったです。プルリクエストの壁は高くないよという雰囲気がでてますね!
@yasuharu519 さん
haya14busaさんが発表者として参加されると聞いて惹かれて参加を決めたとの事。 Codic API を使ったプラグインで変数名を決めてくれるというプラグインを作った話しや、自分がPluginを作るにあたって感じた事を紹介してくださいました。
「help読むといいよ」と言っており、共通した鉄板的なベストプラクティスになってきましたね。
@Linda_ppさん
「NeoVimでプロセス間通信をMessagePack-RPCで書くことができ、調査して今わかった事」という資料なしの飛び込みLT。 Vimで外部プロセスをしていたところを、MessagePack-RPCで書く事ができることになったのはでかく、マルチプラットホームでNeoVim + Electronを使ったGUIアプリを作ることを模索しているそう。
Node.jsでやり取りするデモをみせていただき、未来を感じました。リモートペアプロも夢じゃなく面白かったです。
ワークショップ
以前に会社でやったプチワークショップをYokohama.vim向けにアレンジしてみました。
問題の質問が「何パーセント」かをあてるというもの。間違った差分が多いほど持ち点から減らすことになり、持ち点を競うゲームです。
前半5問は私からの問題で、後半はチーム毎に出し合ってもらい「Vimのアイコン中で”Vim”という文字が占める領域の割合は何%?」というようなものもでて、かなり熾烈を極めました。最終的にはかなり真剣に悩みつつもをかなり盛り上がって楽しかったです。
リモート発表&懇親会
@kamichiduさん
@kamichiduさんから夕方くらいに「今起きた」と一報がはいり、2時間ほど移動にかかるので今から行くのは難しいとのこと。
こんな感じでやり取りはスムーズにすすんで、懇親会内でリモート発表実現に。
元々の発表は「クラウド破産」の話しをしようとしていたとの事でしたが、リモート発表では「libcall入門」という話しを聞きました。 Vim関数はcallはmicrosecくらいかかって遅いよということで、libcallを使ったらどうなるか、どうやって実現するかということを話してくださいました!
懇親会でお酒を飲みながら発表を聞くというのはこれはこれで面白かったです!対面でお逢いしたらぜひご挨拶しておれいを言いたいです :-)
懇親会
会場でビアバッシュしました。今回も近くのショッピング施設でテイクアウトしてわいわいと。 たくさんの方の参加(参加者全員)ありがとうございました!今回は寿司やチキンやカレーやナン加えて、チーズナンも買ってもりもり食べました。 Vimネタを肴に色々と話しをして、楽しい時間をすごせました。個人的には数年ぶりお逢いした @tsukkeeさんと身の上話をしたり「こういう場の提供をできるのはすごいことだよ」と言ってもらえたりして、純粋にうれしかったです。
自分が楽しくなる事を前提に毎回やることを考えていますが、結果的に参加してくださるみなさんも楽しめたと思って帰ってもらえたら嬉しい限りで、また足を運んでもらえるというのが、続けていけるモチベーションになります。参加してくださる皆さんありがとうございます。
来年くらいになると思いますが、またそう遠くないうちに開催したいと思います!
最後に
懇親会後のモクモクタイム。
それぞれが各々コード書いたり、私はこのブログエントリーを書いていました!
*1:ノリだけでOsakaの名前も勝手に使わせてもらってしまったり・・・
JDK9にReactive StreamsがJSR前のJEPの状態だがDoug Leaさん手腕で導入されるのか?
先日開催された野毛倶楽部「Reavtiveの夜」で話題になった、Reactive StreamsがGithubで仕様を決めてすごいという話をご紹介しましたが、もう少し当日あった話を深掘りしてご紹介したいと思います。
まず、Reactive Streamsについて簡単に言う下記の問題に対する解決方法の一つの仕様です。
Pub/Subを利用するときにSub側のノード数やトラフィックを監視して調整するのはキツイので、Sub側がバッファの余裕によってPub側にメッセージリクエストをしてメッセージをもらうという仕組みです。
詳細は岡本さんのブログや発表エントリーを参考にして頂くとよくわかります。
スライドをベース(22ページあたりからがReactive Streamsの話)に当日お話を聞いたのですが、仕様策定には
- Typesafe
- NETFLIX
- Pivotal
- Redhat
などのベンダーが関わっており、ベンダーだけでなく個人で関っている方もいます。 Javaを使っていてこの方の功績にあやかっていない人はいないと思うのですが、JSR166を主導しjava.util.concurrentを導入までリードした「Doug Lea」さんです。
彼が、JDK9でReactive Streamsをサポートできるように猛烈な勢いで進めているそうです。
JEP draft: Concurrency Updates for JDK 9
上記がJSRへ一定のプロセスを踏んで昇格する前のJEPです。岡本さんの話によるとDong Leaさんは3ヶ月でこのJEPを完了させようとしているとのこと。目標は2015年11月。もう来月の話ですね。記憶が曖昧ですが、すでに実装も進んでいて存在すると言っていたような。
当日も「2日前にも更新されてますねー」というような現状を見てみたり、岡本さんからJEPに関するディスカッションやり取りや経緯の話を聞いて勢いを感じました。
本当にJDK9に入っても不思議じゃありませんね。岡本さんが「ランタイムを制するものがReactiveを制する」と言っていたように、JDK9に入ったらReactive Streamsに関わる運用要素の全て賄えるというわけではなく、それによって普及が加速しライブラリやサービスやプラットホームなどの大きめの粒度でイケているランタイムが出揃い、世界ユーザーのプロダクション導入が実績が出揃ってきて、デファクトの流れになるんじゃないでしょうか。
この波はすぐ先ではなく、もう少し先になるかもしれません。 また、JavaだけでなくScalaの波もあるので何がどう主流で採用されていくのかは「こうなのかなー」という個人的な想いはあっても読めません。
当日メモを取っていたわけではなく間違っている事を書いている可能性もあるので、指摘や補足をもらえると嬉しいです!
他にも面白かった話題があったので、思い出せれば別エントリーでご紹介できればと思います。
岡本さんを招いて野毛倶楽部「Reactiveの夜」を開催しました
よこはまクラウド勉強会というコミュニティにはふたつの顔があり、昼の部と夜の部というのがあります。
最近は各月で
- 昼から始まる「ふつうの人たちによるふつうのエンジニアに向けた」勉強会
- 夜からはじまりこの人の話を聞いて見たいとテーマにあった人を招いてディープな話題を繰り広げる
という毛色が少し違う感じで2つの側面で主催者も楽しみにながらやっています。
そして、今日は下記イベント(夜の部)を開催しました。
「Reactive」の現状と技術的な方向性についてゆるふわで語り明かす
というコンセプトで岡本さんを招いてスライドを使い発表形式スタイルで座談も交えながら、Reactiveを軸にお話を聞いたり近い未来の話や動向や現状とのすり合わせなど、過去最大級の盛り上がりであっという間の4時間を過ごしました。
キーワードとスライド発表の様子を中心に今日のネタを紹介します。
Photos:
まずはReactiveという言葉が先行している所もあるので整理してから
リアクティブプログラミングを行う為のライブラリのひとつ。Javaで実装されています。 値を変更したらデータフローとしてメッセージパッシングで値がこういう風に変更されるよという。基礎的なこと。
このあたりから徐々に深い話しに入っていきます
会場のボルテージも高まります
近い将来の話や岡本さんが考える流れをいろいろとしていただき
Reactiveでコンポーネント化されている事により、データフローを表現する実装コードは一つでもバックで実行エンジンを切り替えて実行する事が可能だという実例をご紹介いただきました。
そして、このあたりに岡本さんからの本日の格言のひとつがでて「ランタイムを制するものがReactiveを制する」というフレーズ。 ランタイムがどれだけ重要な役割を果たしているのかという話。
Pub/Subでよくぶちあたる問題点とリソースを最大限に活かす事。ブローカーで全体を把握するという発想が引き起こす事。 Publisher側で送りすぎるとsubscriber側パンクするし、subscriber側のリソース確保しまくってメッセージバッファ領域を広げまくっておくとリソースもったいないよねってなる。
システムが破綻しない事が大事。Publisherに任せる事によって実現できるよね。Back-Pressureというキーワードはこの後もちょくちょくでてきました。
分散の話しからNetflix Hystrixに話題が広がって。本日の話しの中心のひとつとなりました。 ちなみにキャラクターは「ハリネズミ」だそうです。
マイクロサービスの視点で非同期処理という肴に、野毛の肴が相まって盛り上がり。 Scalaやモナディックプログラミングなど話しは広がりまくりです。 長時間戻ってこない場合の時やリトライのしくみ、Finagleのはなしなどキーワードは多すぎで紹介し切れないくらいありました。
話しの途中でこんなエントリー記事を紹介していただいたりも。
またまた、資料を使いながら新しい発表の肴に。
Reactiveマニフェストのあたりのはなし。用語が参考になったり、「このあたりについては〜?」みたいな気になるポイントについて質疑があった時に「実はReactiveマニフェストでも言及がありまして」というやりとも何度かありました。
私自身はアジャイルマニフェスト的なところや響きでのわかりやすさのマーケティング要素の面も気になっていましたが、今日話しを聞いてReactiveマニフェストに好感を持ちました。
Reactiveなんちゃらおおいですよね。名前があるってべんり。違いやどういう背景でこの呼び名がでてきたかというところまでお話してくださったので、わかりやすかったです。すごく説明上手で岡本さんすごいと心の中で感心しまくっていました。
とても分かりやすい図
Reactive Systemについてどんどん言及。従来の3層モデルとのちがいも。 GitHub上で仕様策定したというのはインパクト大きかった。IETFやRFCなどのように標準化するプロセスや決め方などをあえてとらず、こういう形で実現できたという事はすごいことでは。
三崎マグロが推しの居酒屋の個室を借りてプロジェクターを持ち込んでいるだけで簡素、裏に見えているのはホッピー!! 10人未満がひとつの大きなテーブルですごく近い距離感で質問ができる空間でやってます。
reliableの話題からAeron。キーワードに結びつくフレームワークの紹介をその場でアクセスしながら話しました。
非同期と結果整合性の話しから、分散合意やパクソスやモノイドやCRDTなどがキーワードに。 委譲を行った場合にどうするといいのか。どういうことを考えなければいけないのかというわりと現場であるリアリティ度が高い話しをしました。
Scalaの話しをしていてClojureの話しになってDatomicにいきついたのか?どの流れでこの話しになったのか忘れてしまいました。
Clojureの作者が作ったデータベースDatomicが凄い
既に3回岡本さんのReactiveの発表を聞いている参加者の一人である田中さんがブログで言及していた「CRUD is Dead」について話題が及びます。データの扱いについてupdateではなくappendすることでの違いなど。Amazon Auroraの中の作りとRDBのはなし。アーキテクチャ選択とデータ量が増える事によりリソースコストが増大しユーザが負担するコストとのトレードオフの話しなどもありました。
tanakakoichi9230.hatenablog.com
こんな話題や
あの人は過去にこんな事やっていたんですねー。って話したり。
Playの話しからAkkaまで、ほぼ終盤でこの話題が登場。
入り口から出口まで。ストリームというのは今後ひとつのキーワードとなっていくという実感。
JDBCのスレッドプールあたりのわだいを混ぜつつ
InfoQでこんな事をいっていたよね。Reactiveマニフェスト2.0。イベント駆動からメッセージ駆動に言い方かえてたり。
ReactiveSocket。「asynchronous, binary boundary」について。Netflixは今日たくさんでてきたキーワードでした。エコシステムについても話題になりました。NetflixはRFCを狙わなくてもデファクトであれば自身サービスで困る事はないのでは。むしろデファクトでなくてもGoogleと同じで自身で必要なものを作っていけるし、そうしているのではと。
最後に
写真を並べたらこんなにあったのかーと改めてReactiveをキーに色々はなししたなーと実感。 ご紹介した写真以外にも幾つか話題が合ったのですが写真を撮って場面もあったり、三崎マグロに熱中していることもありました!えっ!?
岡本さんにはテリトリーの広さと見識の深さなど感心するばかりで、色々な質問もできて今日はたのしく過ごせました。 快く引き受けていただき本当にありがとうございました。
次回のよこはまクラウド勉強会の野毛倶楽部(平日の夜開催の部)では違うテーマでもこんな感じでふるゆわでやっていきたいと思いますので、興味のある方は是非ご参加ください!!キャパも小さくあまりおおっぴらに宣伝していませんが、告知ページで募集していきます。
本当にさいごは連投の写真を締めくくる写真締めで。
*1:両方とも懇親会を野毛という街飲み屋に繰り出し普段感じている事をざっくばらんに懇親をしています
feedSomeKeys_3.jsが動かなくなっていてアップデートできたがVimperatorは今後はどうなる?
Firefoxを使い続けている理由としてVimperatorを使いたいからというのが大きな理由かもしれません。 ブラウザときって話せないのがブラウザのアップデートなのですが、時々プラグインにとって互換性が壊れるインパクト高い仕様が追加や変更されることがあります。
その都度、プラグインの作者さんは対応してくださっていますが、どうやらFirefoxに「署名なしのアドオンは実行できないようになる」という計画があるようで、もしかしたらVimperatorも動作しなくなるのではという不安があります。
FirefoxをEmacs化するKeySnailを最後まで看取ります | るびきち「日刊Emacs」
今回、feedSomeKeys_3.jsが動作しなくなったのは
同バグの修正により、トップレベルにおけるletおよびconstの扱いは、ECMAScript 2015 Language Specification(通称ES6)の仕様に合わせる形で変更された。その結果、以下のような具体的な影響が出ている。
下記エントリーにある関係しているのかな?2週間ほど前のanekosさんによってコミットされた最新版のfeedSomeKeys_3.jsにアップデートしたら無事動作するようになりました。
Vimperatorの2.0系から起こっている互換性による不安は抱えたままですが、今も昔も変わらずそんなものだと思っているので使えなくなるまで使おうと考えています!最近はVimperatorについて情報が少なくなってきたけど、きっとVimerator分裂の危機時に比べればそんなに状況は悪くないんじゃないかと楽観視しています。
新たに常用しているTreeStyleTabが動作しなくなるかもという状況は環境を見直す良い転換期と思うので、Vimperator以外のアドオンも気にかけてみようと思います。
Yokohama.vim.reboot #6を開催し次回日程も決まりました
ずいぶん前の話になりましたが、 Yokohama.vim.reboot #6 を 8月29日に開催しました。
開催にあたって
最近Vimをノーマルな感じで使っていて、vimrcになにを書いてあってどのプラグインで何を実現したかも忘れてしまうくらいで、最近の事情のキャッチアップを生の声を聞きたいなぁと思って久々に開催しました。
一昨年あたりは土日に活動すること自体が家庭の事情で難しかったのですが、昨年あたりから少しずつ状況が改善されコミュニティ活動を再開できるようになってきました。
当日
当日は、アイスブレイクをしてシャイなVimmer同士でコミュニケーションしたり、テーブルに分かれてvimrc読みながら各々が自分の使い方やアドバイスをしあったり、vimrcを改善させたりといったことをしました。
また、 @deris0126 さんがビルまで着くも道のりがダンジョン感溢れる会場までなかなか到着できず外に出てしまったりし、応援する時間があったりとハプニングもありました。
時間が過ぎるのは早いものであっという間に本編は終了し、多数の方が懇親会に参加くださいました。 懇親会では @thinca さんがライブコーディングをしてくださったり、Vimを肴にして懇親を深めました。
その懇親会の中で @haya14busa さんの話題があがり、次回のYokohama.vimで招こうという話しになって、その場でTwitterでやりとりをして次回の基調講演で来てくださる事になりました。
こういう軽いノリで開催してしまっていいものか・・・ と思う事もありますが、参加してくださる人が楽しんでもらえて来て良かったと思ってくれるなら、うれしい限りです。
次回
とうことで、次回は10月24日 Yokohama.vim.osaka #7 です。 場所は横浜(みなとみらい)で開催します。
Osaka.vimも同日の開催されるようで、関西にお住まいの方は是非大阪で開催されるOsaka.vimにご参加ください! 当日は基調講演や発表セッションを大阪と繋いで楽しもうと考えて準備を進めています。
おたのしみに!
はてなダイアリーからはてなブログに移行しました
先週、「はてなダイアリーからはてなブログに移行は簡単にできますよ。はてブもスターもRSS登録も一緒にね。」という話聞いたので、機能も追加されずメンテナンスモードのダイアリーからブログに移行しました。
これで、SlideShareも埋め込みできる!