どurakuの作ったもの、作ろうとしているもの、作ろうとしていたものの近況。2017年10月」に参加してきました。このユーザー会へは初めて参加しました。Tocker氏の解説は分かりやすいスライドに、実例有り、分かりやすい日本語訳も有りでした。私はDB担当としてMySQLを触っているというよりは、作っているアプリケーションの一部として構築したりSQLを書いたりDDLを叩いたりチューニングしたりしている、といったぐらいなので知らない部分もかなり多かったです。LOCKEDなどなど。MySQLは基本的に新しくなるほど高速化を続けていますが、マルチバイトで高速化しているというのはそれだけでもうメリットが大きそうで嬉しいですね。パフォーマンス面は5.7で主に読み込みが強化されましたが、8.0では書き込みも高速化されているようです。質疑応答は「sli.do」というサービスを使って質問を募り回答するという形式。他の人の質問に対して投票をする事ができるのが面白く、票を多く集めた質問から聴いていくといった事が出来るのはなかなか新しいです。質疑応答は本当にボリューミーかつ深い質問も多く、私にはもう分からないレベルの物もちょくちょく有りましたが、刺激的でした。印象に残っているのは「(Oracleの)MySQLへの投資は良い意味で変わっていない」という言葉、OracleをMySQLのアップデート先とも考えておらず、別のユーザー層が有り、それぞれ大切にしていくというようなニュアンスだったと思います。この部分は正直な所ちょっと意外でもありました。どこまでスケールするかという質問では、正直な所分からないが(CPU以上に)IO周りの最適化が大切になってくる、との事でした。intelのOptaneなど、今までのSSDとも少し違う新ジャンルのストレージ技術によってDBの世界もどんどん変わっていくのでしょう。サポート面では、8年間サポートを続けるために、3つのGAが保守中として残るような感じ?にしているなど、MariaDBとの方針の違いとしての話題も有りました。本番環境向きであり、開発環境には向かないというのも個人的にはちょっと意外でした。他にも本当に様々な話題が有り、オフレコ扱いであるような部分も有り、貴重なお話でした。8.0で結構な数の予約語が増えている点での盛り上がりが有りました。”path”など、既存のアプリケーションで使ってそうな物も有り、注意点として大きそうです。Wordshttps://dev.mysql.com/doc/refman/8.0/en/keywords.html例えばPHPだと各種フレームワークやライブラリのクエリビルダを使っているとこの辺はカラム名もエスケープしてくれていたりしますが、こういう時に助かるんですね。生のSQLを書いている箇所は見直そうと思います。XProtcolを実装したセッションでは、名前と存在は知っている程度のXProtcolの中身がどうなっているのか、実際に実装するためにはどのファイルを参照すればいいのか、メタデータの扱い等、これもまたなかなか聴けない話題でした。プロトコルを実装するためにはやぱりパケットの中身をみたりなど、低レイヤーの知識も必要になってくるのですね。言語によって実装に違いがあったりなどもするようで、罠も多そうな印象でした。初MyNA会は、私のような雰囲気でDBを保守・チューニングしている人にはレベルが高い部分も多々ありましたが、全体として分かりやすく出来ていて、知らなかった事、ここでしか聴けなかったであろう話盛りだくさんでとても良かったです。8.0の良い所活用していきたいです。ーーーーまた、ここ2か月間、いくつかのジャンルのカンファレンス(セッション)や会に出てみて、どのジャンルでもやっぱり「出来る」人のレベルは普通の人とは全然違うなと改めて感じました。CRUDを書いたり(でも本格的なオブジェクト指向、ドメイン志向設計には未だ弱い)、LinuxやDBのセットアップ、チューニングだったり(トラブル時の対処は本職のサーバーエンジニアには及ばない)、AWS上の各種ネットワークやRDS、LB、WAFを設定したり、Zabbixでのモニタリングをいじっていたり、どれについても薄いレベルでしか触っていない現状。今後どこに行っても新人レベル(吸収力で言えば新人以下)でしょう。何かしらに絞って掘り下げていく(=環境も変える)べきなのだろうか......。言ってどれにしようかというと。日本PHPユーザ会によるPHPカンファレンス2017に参加してきました。このカンファレンスは数年ほど一般参加させていただいております。今回は某ライブのDay2公演と日程が被っており、前日にDay1公演だけ観てくるつもりだったのですが、体調を盛大に崩し参加できず......。この日もまだ病んだ状態でした。行く途中でmeijiの「速攻元気」というゼリー飲料を買って飲んだのですが、これ、成分的にはカフェインの無いエナドリなんじゃないの?という代物で、カロリーは控えめ。病んでいる時にはなかなか効果があるんじゃないかと思います。基調講演は見られなかったのですが、今回は「チャレンジ」がテーマのようです。パンフレットの表紙にも「challenge!」と書かれています。今回はDocker関連のカンファレンスが3つも有りました。高橋邦彦(kunit)」を拝聴しました。開発者間で統一する為の開発環境というと最近はVagrantが一般的ですが、Dockerにしてみるのもいいのでは?という話題でした。vagrant+ansibleの環境は意外と壊れる問題、バージョン間の差異が出やすいなどが理由でした。Dockerの基本的な事からの説明、設定ファイルそれぞれの意味などが丁寧に説明されました。私は実際にDockerを使った事は1度もないため、docker-composeなどワードとしては知っているが具体的にどういう物なのか知らないレベルの人に助かるセッションでした。Docker上のポートと親ホストではポートが変換される事など知らない事も有りました。他にはレガシーシステムをどう今時に近いものへ持って行くか、という話題も多かった気がします。将宣」では、アプリケーション間のRequireすらあるような闇の深い環境をどう改善していったかという話でした。レガシーと言ってもどこかで意を決してやらなければいけない。始めた後は少人数によるプロトタイピング、先に共通コードの完成を目指す、そこでの問題の先取り、開発環境の統一など、やる事をやっていき、「PDCAを普通に回した」「円滑なコミュニケーション」と言った説明からも有るように、体制・計画としてしっかりやって行く事が大事なのだなと思いました。改」では、実際に移行をするうえでどんなテクニックが用いられたか踏み込んだ話も有りました。モニタリングを入れる事でアプリケーションの改善点がわかる、AWSのALBを使ったパスベースルーティングを用いる事で、実装が終わった新ロジックから切り替えて行く事が出来るなどのお話が有りました。AWSのALBは私自身も業務上活用していますが、アプリケーションの改修・移行に用いるというのは初めて聞く用法で面白かったです。アプリケーション全体を切り替えないので徐々に切り替えが行える、問題があった時は切り戻しが楽というのは有効度が高そうです。セッション管理には気を付ける必要があります。Spanner」の話(既存のRDBとの互換性は無いけどAuroraよりもスケールするRDB(NoNoSQL)みたいな感じなのかな)、PECL拡張を登録するまでの話(WindowsバイナリはPECL側が自動でビルドしてくれていた!)など、今回もなかなか知らない、聴く機会のない内容が多く興味深かったです。今回はどこかで困っている、辛い、レガシーであるといった部分に「そこで困っているよねぇ」と同意できる話題と、それに対する取り組みの話がちょくちょく有って、そういう意味でも「challenge!」だったんだろうなぁという印象のPHPカンファレンス2017でした。どんなに有名な所でもPHPのバージョンは古かったり、辛い部分が有ったりするのは共通で、そこをどう解決して行けたか、しようとしたかという話はなかなか参考になりました。今回は懇親会も初めて参加したのですが、懇親会LTもなかなか面白かったです。病み上がりに長丁場だったので途中で抜けましたが、もし次が有ればもっといろんな人に話しかけられたらなぁと、思ったり思わなかったり。urakuHTML5カンファレンス2017に行ってきた2017年9月24日に東京電機大学で開催されました。Webフロントエンドのカンファレンスは初めての参加でしたが、フロントエンド以外の技術についても多く、Webに関するかなり総合的なカンファレンスでした。DNSの運用、基盤のオペレーションをしている人々、インターネットしての未来がどうなっていくのかといった話が有りました。「サービスを提供するされる以上の『インターネット』の本来の有り方」についての話題ですね。最近はいかに(商業的な)サービスを提供するかのような話が多いですが、こういった話を聴ける場というのは中々少ない現状ですのでなかなか良かったです。NTTコミュニケーションズ」を拝聴しました。RTCがメインではないセッションでも取り上げられていたりなど、盛り上がりを感じました。新仕様の常としてWebブラウザごとに仕様が違うだけでなく、ユーザーごとのネットワークの様々な構成・スイッチやルータの設定、カメラの機種の違いまで考慮しないといけない世界と、越えなければいけないハードルは多そうです。RTC導入の為に「ある程度」は楽になるマネージドサービスなどは提供されているようですが、それでも問い合わせがあったら調査・対応のような地道な努力が必要なようです。パケットをキャプチャして調べるスキルが求めらる世界です。東京理科大学」では、ハードウェアの寄りの話も有りました。Webの話でありながらJPEGを展開してVRAMに載った時のサイズの大小であったり、テクスチャ圧縮の話題が出てくるのが「3D」の世界である事を感じさせます。WebGLは1.0ならかなりサポートが進んでおり、ゲーム以外でも活用が進んでいるとの事です。CLIを使う」と言った事が紹介されていたり、CSSのセッションなどがあったり、幅広い内容でした。今回初めて参加して、もっとフロントエンド一辺倒なカンファレンスなのかと思っていたけど、インフラ面や社会情勢、ビジネス面まで、Webってそこだけで出来ていないよねという広い内容が有って、バックエンド・インフラもやる身としても結構面白いカンファレンスでした。