「落合陽一 meets DMM.make AKIBA/初回対談ゲスト:小笠原治」に参加した
ささけんの上の Facebook ポストで知ったイベントに行ってきた。
ホストとなる落合陽一さんは、イベントで登壇して喋っていることを観客席から何度か見ていて、超アグレッシブで面白い人だなぁと感じていた。
ささけんから『レポートよろ」とコメントついてたので、途中まで頑張ってログをメモってたんだけど、落合さんと小笠原さんという頭の回転の早いお二人の掛け合いが始まったあたりから、自分も脳みそフル回転で同じテーマについて考えながら話を聞いたほうがより楽しめるタイプのイベントだなということに気がついて、ログ取りをやめて話に集中するようにした。
落合さんは、筑波大の研究室やピクシーダストという自分の会社で
Digital Nature (デジタルネイチャー)
という単語をテーマに研究活動を続けていて、これは
Digital | Nature
という2つの単語の間の縦棒、壁をいかにしてぶっ壊すかという意味だとおっしゃっていた。世の中森羅万象の物事がすべてコンピュータで感知、制御できるようになった時に、自然と情報世界が同列に扱われる上位概念として Digital Nature を位置づけ、その視点でこれまでの様々なコトモノが再構築されていく。確かに、デジタルと自然って対立軸に置かれる場合が多いので、それを同一に見る視点で物事を考え、そこで何が必要かを考えるという発想は目ウロコだった。
帰りの電車の中でもやもや考えながら気がついたテーマは、さて Digital Nature の考え方で諸々再構築されていった場合「人間はそれに合わせてどのように変わっていくのか?」ということだった。イベント中に落合さんも「人間こそインターネットだ」ということを言っていたが、そこで話された人間モデルはあくまでも現在の人間活動だったように感じる。まだコンピュータの手の届かない場所は世界中のいたるところにあって Digital Nature と呼べる環境はまだ限定的だと思うけど、それでも都心で暮らしているとそれに近い状況にはもうすでになっているはず。
Digital Nature な場の中で生活していくことで、人の思考や行動はどのように変わっていくのだろう?
ぱっと思いつくのは、能動的受動的にかかわらず情報を生み出すことそのものがより価値になっていくだろうということ。生み出されるより多くの情報が、その人の個の存在の独自性を高めていくだろう。もちろんプラスにもマイナスにも作用するし、バカッター炎上案件のようにセンセーショナルな愚行があっという間に世界を駆け巡る例を、私達はいくつもすでに目撃している。
何にしてもエキサイティングで面白いイベントだった。2回目もぜひ参加したいと思う。
どうせなので途中まで取ったログも貼り付けておく。
LL Ring Recursiveで「エンジニア不足はいつまで続くのか」というセッションをやります
いよいよ LL Ring Recursive が開催される9月5日が来週に迫ってきました。
「エンジニア不足はいつまで続くのか」を企画した経緯
私は今回、「エンジニア不足はいつまで続くのか」というパネルディスカッションのセッションを企画しました。
カンファレンスや勉強会で、発表者のスライドの最後に「エンジニア募集中」「We're hiring!」という文章が当たり前に踊るようになってどのくらい経ったでしょうか。2000年代後半のソシャゲブームがはじまった頃には、すでにWebエンジニアの獲得競争が加熱していて、GREE や DeNA の高額な人材紹介料が話題になったものです。
あれから世の中ではクラウドが一般的になり、ビッグデータや機械学習などの新たなトレンドも加わって、相変わらず Web 業界では人材不足が続いています。知人の会社から「どこかに良いエンジニアはいないでしょうか?」という問い合わせが来る頻度も、時とともに増えている印象です。
業界的に深刻な人材不足が続いているにもかかわらず、それが解消される気配が一向にない。もちろん様々な理由があるのでしょうが、もはや皆がそういうものだとあきらめムードに入っている感じもあります。雇われる側のエンジニアにとっては良い状況が続いていると言えなくもないのですが、加熱しすぎた人材獲得戦にはどこか歪んだものを感じてしまうのも確かです。
ということで、この辺りで冷静に状況を俯瞰して見て、Web 人材業界では今何が起きていてこれからどうなっていくのか、様々な視点から考察してみようというセッションを企画してみました。
登壇されるのは以下の方々です。
エンジニア向けの Web メディアを運用しエンジニアの転職事情にもお詳しい、エンジニアType 編集長の伊藤健吾 @itoken0226 さん
本イベント的にはナイスなタイミングでクラウドパックを退職されフリーランスとなった吉田真吾 @yoshidashingo さん
従来の就職の形にとらわれず新しい働き方を模索しているクラウドワークスの吉田浩一郎 @yoshidaCW さん
もちろん私も司会者として登壇します。
このセッションを企画するにあたり、各種の統計資料や IPA が毎年発表している「IT人材白書」なども読み込んでみたのですが、ここで扱われる IT 人材は、大規模案件の下請けやいわゆる SI ビジネス的なものも多く含んでいて、少し自分の興味とは違うなぁと思っています。今回のセッションは、おそらく参加者の多くが居るであろう、Web 業界、インターネット業界に対象を絞って議論を進めたいと考えています。
鹿野さんデザインの当日パンフレットを見逃すな
Maker Faire Tokyo 2015 後の燃え尽き症候群から復活したスタッフの鹿野恵子さんが、当日パンフレットのデザインを昨晩仕上げてきました。すげーなんだこれww プロレス会場で行われるイベントに相応しすぎるスポーツ新聞チックなパンフレットです。
ぜひともイベントに参加してパンフレットをゲットしていただきたいです。チケットは Peatix で3,000円で販売中です。
NIFTY Cloud mobile backend (NCMB) のエバンジェリスト記事が公開されました
先月、以下のブログ記事で報告しましたが、NIFTY Cloud mobile backend (NCMB) というサービスのエバンジェリスト活動の仕事を現在させていただいています。
エバンジェリスト活動の一環で、NCMB の 6/15 リリースの新機能である Google 認証機能を Android で行うやり方の記事を Qiita に書きました。自分としての初エバンジェリスト記事です。
かなり丁寧に書いたので、いろいろ事前準備するだけで 1 記事を使うという贅沢っぷりですw まあその分この記事を読んでその通りにやれば、ハマる人はまあ出ないだろうという初心者に優しい記事になっています。
自分でやってみて分かったのですが、この辺の複数サービス連携機能は、こっちで生成した文字列をあっちに入力して…というのが複雑に絡み合っていて、ぱっと見すごく分かりにくいです。どこで何が必要かということを意識して整理して書いたので、その点は少しは分かりやすくなっていると思います。
Co-Edoで開催されている「エンジニアのための法律勉強会」は法律と向き合う肌感覚を教えてくれる
cc by Paige
昨日は、Co-Edo で開催された「エンジニアのための法律勉強会 #4」に参加してきました。
この勉強会シリーズは、東京山王法律事務所の野島梨恵氏を招いて、主にソフトウェア開発業務における各種法律を、実際の判例を題材にして解説していただくというものです。講師の野島さんがたいへん面白い方で、軽妙な語り口のぶっちゃけトークで、判例の読み方のキモや、トラブルに備えて普段からどのような点に気をつけていればよいかということを、わかりやすく解説して下さいます。
開始当初は3回くらいの予定が、内容がとても面白く評判も良いので、主催者の田中弘治さんがそのままシリーズ化したという経緯で、今回第4回が開催されました。
私はたまたま第1回から参加していて、野島さんの話の面白さにつられて毎回参加メモを gist に残していたので、この辺でリンクをまとめておきたいと思ってこのエントリを書きました。
勉強会が終了して、参加メモを gist にポストするたびに「こんな興味深い勉強会があったのか」とか「知ってれば行ったのに」という声を耳にするのですが、募集段階で私も何度か告知を拡散しているので、ちゃんとそれを拾ってきちんと勉強会に足を運んでください。
いやほんとよい勉強会シリーズなので。
第1回
第2回
第3回
第4回
第5回
第6回
第7回
第8回
第9回
第10回
第11回
第12回
- この日は不参加なのでメモなし
第13回
第14回
(開催のたびにここに情報を追記していく予定)
ニフティクラウド mobile backendのエバンジェリストをすることになりました
今月よりニフティクラウド mobile backendのエバンジェリストを仕事でやらせていただくことになりました。
これはMOOGIFTの中津川さんがやられている DevRel というサービスのお手伝いの一環で、週に2日ほど西新宿のニフティさんにお伺いして作業しています。
エバンジェリストと言っても、まだサービスそのものの中身を勉強中の身であり、エバンジェリスト活動として表舞台に立ち始めるのは早くて来月くらいからだと考えています。
とりあえずニフティクラウドmobile backend (NCMB) の Android SDKの次バージョンの開発をお手伝いしつつ、中身について深く理解していくというのが当面のミッションです。Android開発は大昔に少し触れたくらいで、本格的にやるのは初めての経験なので、新しい知識をどんどん脳の隙間にに突っ込んでいってパンクしかけながら踏みこたえるという、新しい技術を勉強するときにありがちな感覚を楽しく味わっています。
NCMB共々、今後ともよろしくお願いします。
Phalconとはなにか: Phalcon Advent Calendar 1日目
初日から締め切りぶっちしてますが、Phalcon Advent Calendar 2014 - Qiitaの1日目なわけです。
最近は某所のお仕事で Phalcon を使っていまして、結構面白いフレームワークだなぁと思いながらも、案外とクセが強いというか、使い方のノウハウがまだあまり共有されていないと感じたので、ついついアドベントカレンダーを立ち上げてしまいました。参加者が集まらなくても、最悪は少人数でぼちぼちやれば良いなぁと考えていたのですが、存外に好評なようで、開始時点で 13 エントリーも集まっています。
あらためて Phalcon とはなにか
Phalcon は PHP 5.3 以降を対象とするウェブアプリケーションフレームワークです。
High performance PHP framework
その最大の特徴は、コア部分がひとつの PHP 機能拡張として C 言語で書かれており、そのため PHP の文法解析/オペコードへの変換をすっ飛ばして実行されます。それが「最速 PHP フレームワーク」と自ら称している所以となっています。
他にも色々と興味深い特徴を持っていて、
- 独自の ORM
- PHQL という独自の SQL ライクなクエリ言語
- Python の Jinja ライクな文法のテンプレートエンジン Volt
- Dependency Injection (DI)
- 様々なフックを可能とする EventManager
などなど、コア部分を機能拡張として実装する必要からか、他のコンポーネントの利用は少なく、すべて自前で実装しているフルスタックフレームワークとなっています。
なお、Phalcon 本体は PHP 機能拡張として実装されていますが、それを使用するアプリも機能拡張として書かなければいけないわけではなく、通常通り PHP でフレームワークを継承/利用してコードを書いていく形になります。
Phalcon の設計の特徴
フレームワーク設計的な視点で Phalcon をみた時に、一番の特徴は
「DI を中心にしてすべてを設計している」
ということだと思います。
Phalcon の DI は、Phalcon\DI というクラスを実装し、それに機能をすべて登録する一種のデータベースとして利用する形式になっています。主要なクラスはすべて Phalcon\DiInterface というインターフェースを implements しており、DI を軸に各種の機能を呼び出すことで、各クラス間の依存を可能な限り小さくする方針を取っています。このため一世代前のフレームワークにありがちな、コントローラクラスにすべてを詰め込んだいわゆる「ファットコントローラ」に陥ることを防ぐのを容易にしています。
DI を軸にやり取りする以上、基本的な機能を提供するサービスにはすべて Interface が用意されており、実装を独自に差し替えることが可能になっています。ただその Interface が現在の Phalcon の実装に引きずられる形で定義されており、用途によっては汎用性が足らず、自分の望むような拡張ができないこともままあります。
現在の開発状況
Phalcon の現在の安定版は 2014年9月にリリースされた 1.3.3 で 2014年10月にリリースされた 1.3.4 で、これはいくつかの問題点を修正したメンテナンスリリースです。(追記: @kenji_s さんに 1.3.4 がリリースされているとご指摘いただきました。いつもありがとうございます。)
これとは別に現在開発進行中なのが 2.0.0 で 2014年10月16日にベータ3がリリースされたところです。Phalcon 2 の大きな特徴は、Zephir を使ってコアのコードをすべて書き直したことです。 Zephir は型付きの PHP とでも呼べるようなプログラミング言語で、コードを Zend API を使った C 言語に変換しコンパイルすることで、PHP と機能拡張の形でリンクできるネイティブコードを作成することができます。Phalcon を Zephir ベースで書き直したことにより、クラスの型チェックがより高速になったと報告されています。
Phalcon は速度命だけどそれだけじゃない
Phalcon が開発された発想の基本は、PHP の巨大なフルスタックフレームワークで速度の足を引っ張る部分を、根本から解決するにはどうしたら良いかという思考の末にできあがったものだと思います。コアのすべてを機能拡張として C 言語で実装するという選択は、手軽にコードを記述できる PHP のメリットを失わせるものにも思えますが、フレームワーク設計をしっかりと行いフルスタックを作り切ることで、結果的に高性能かつ用途の問わないフレームワークができあがりました。
機能拡張として実装している以上、設計変更のコストは純粋な PHP フレームワークに比べてやはりどうしても高くなります。そのため Phalcon の設計思想は、すべてのクラス設計において統一感があるように感じられます。人によっては多少の好き嫌いはあるにせよ、統一感のある思想のもとに設計されたある意味では美しいフレームワークは、触っていても心地よさを感じるものです。
サイボウズ式に「モバイルフロンティア」の紹介文を書きました
「tech@サイボウズ式」の風穴さんから、エンジニアの方々にアドベントカレンダー的に書籍の紹介記事をお願する企画があるので、小山さんもぜひ何か書いて下さい、と頼まれたが11月の末。何について書こうかといろいろ考えた挙句、やはり今年の書籍といえばこれだよなと、「モバイルフロンティア よりよいモバイルUXを生み出すためのデザインガイド」を選びました。
いや、これ本当に良い本なので、みなさんぜひ読んで下さい。
モバイルフロンティア よりよいモバイルUXを生み出すためのデザインガイド
- 作者: 安藤幸央,佐藤伸哉,青木博信,清水かほる,野澤紘子,羽山祥樹,脇阪善則
- 出版社/メーカー: 丸善出版
- 発売日: 2013/04/25
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (2件) を見る