プログラミング生放送、略してプロ生の面々による発表があった。
●戀塚 昭彦
ニコニコ動画の開発者、戀塚氏による発表。戀塚氏はニコニコ動画開発総指揮の他、コメントサーバの開発を行っている。
今回はWindows8上で動く、ニコニコ動画プレイヤの開発過程について紹介。Microsoft Windows Developer Daysのキーノートに向けて、プログラマーの戀塚氏とデザイナのVoQn氏によって、2週間で開発が行われた。
最後に、Windows8タブレットの実機によるデモも行われた。
●鳥居みゆっき
鳥居みゆっき氏による、「ニコニコ動画ノススメ」と題した発表を紹介した。
鳥居みゆっき氏は1994年生まれの高校3年生で、2010年11月から2012年3月までドワンゴで働いていたとのこと。
ニコニコ開発とは、ニコニコ動画上の情報を使い、ニコニコ動画を駆使して開発を行うこと。
ニコニコ生放送で開発している風景を放送したりしながら、プログラマー同士の交流ができたり、分からないことがあったら聞けるメリットがあるとのこと。
●__toxy_
_toxy_氏も高校生。使用言語はC++、C#、Python。
「PSPでニコニコできない」ことに気付き、PSP上で動作するニコニココメントビューアや、ニコニコ実況ビューアなどを開発したとのこと。実機デモも行われた。
●野村大翼
野村氏による発表があった。
まず、ニコ動で検索したい単語をサジェストできるnicosearchについての紹介。nicosearchのAPIは公開しているので、誰でも自由に使えるとのこと。
そして、Windows8向けニコニコ動画ビューアについての発表。Windows Phone向けにC#で開発したビューワがあったので、そのコードを流用して開発を行ったとのこと。ソースコードを少し書き換えることで、Windowws8で動作させることができたそうだ。
ニコニコ動画公式のWindowws8アプリが開発中であることは知らなかったので、今後、非公式であることを強みにするにし、非公式の機能をメインに組み込んでいきたいとのこと。
●増井 雄一郎
増井氏による「作りたいものリスト」についての発表もあった。
何かアイデアを思いついても、それを完成まで持っていけないことが多いので、それであればアイデアを公開してしまってさまざまなメリット(話していて気付くこともある)を得よう、という提案だった。
●小林 秀和
小林氏による「Node.jsを2年間使ってみた」と題する発表があった。
小林氏は「日本一イケてる高校生エンジニア」を自称している。プログラミング歴は8年。Node.jsは2010年から使っているとのこと。
Node.jsを使う時のポイントとして、「Node.jsは銀の弾丸ではない」「フレームワークを使ってはならない」「EventEmitterを知れ」「関数型に学べ」などを紹介した。
●内山 暁仁
内山氏による発表があった。
内山氏の職業は加速器エンジニアで、加速器オペレーション、加速器制御システム開発、制御用サーバ管理などの仕事を手がけているとのこと。
加速器の制御にはオープンソースソフトウェアであるEPICS(Experimental Physics and Industrial Control System)が、40以上の世界の大型実験施設で利用されている。
現在加速器は巨大化し続けており、1つの国では全予算を出せないので人類共通の知的財産として共同で運用されており、自国から遠隔制御・監視するためのなんらかの方法が必要で、そこにWebSocketを利用した遠隔制御が適しているのではないか?とのこと。
最後に、WWWの発祥の地とされているCERNの加速器を、WWWを通じて制御しようとする流れにはロマンを感じる、とした。
●水島 宏太
水島氏による、「Scala+Finagleの魅力」についての発表があった。
Finagleを使うと、非同期RPCシステムを簡単に作れるとのこと。ただし、FinagleはRPCライブラリではなく、RPCシステムを作るためのフレームワークである。
Finagleでは、Codec、Service、Futureが重要な概念となるそうだ。
注意点として、ドキュメントが追随できておらず、場合によってはソースを追った方が早かったり、Finagleはステートレスプロトコル向きなので、ステートフルなプロトコルは工夫が必要とのこと。
●浅海 智晴
浅海氏による「Scalaでプログラムを作りました」と題する発表があった。
Scalaプログラミングの面白い点として、「Object Functional Programming(OFP)」「Monadicプログラミング」「DSL」、OFP新三種の神器として「トレイト(trait)」「モナド(monad)」「型クラス(type class)」などを紹介した。
●尾崎 智仁
尾崎氏による「Scalaで作る奇妙なプログラミング言語」と題する発表があった。
難解プログラミング言語というジャンルがあり、これは意図的に読解が困難なように設計されたプログラミング言語だそうだ。
まず、Brainf*ck。これは8つの命令でメモリ/ポインタを操作するプログラミング言語で、チューリング完全。
コード例
+++++++++[>++++++++>+++++++>+++++<<<-]>.>++.+++++..++++.>-. 「名状しがたいプログラミング言語のようなものNyaruko」も、以下の8つのシンボルを用いる。 =============== (」・ω・)」うー(/・ω・)/にゃー (」・ω・)」うー!(/・ω・)/にゃー! (」・ω・)」うー!!(/・ω・)/にゃー!! (」・ω・)」うー!!!(/・ω・)/にゃー!!! CHAOS☆CHAOS! I WANNA CHAOS! Let's\(・ω・)/にゃー cosmic! ===============
Grass言語はシンボル数3で、以下のようなコードとなる。
コード例
wwwwwWWwwWwvwwWWwWwWwWWWwwwWwwwWWwwW
Iota言語はシンボル数2で、以下のようなコードとなる。
コード例
**i*i*ii***i*i*i***ii***i*i*i*iiiii
最後に、シンボル数1のプログラミング言語Aが紹介された。
Aを並べた数がプログラムになる。Aの数を8で割った剰余がbrainf*ckの命令になり、商が7以下になるまで繰り返す。
問題点として、Hello world!を出力するプログラムの容量が約10の134乗kbyteとなってしまい、これを格納するディスク容量が地球上に存在しないそうだ(人類には早すぎたプログラミング言語A)。
akio0911(ブロガー・iPhoneアプリ開発者)
AR(拡張現実)・iOSアプリ開発・書評・グルメがメインのブログ「拡張現実ライフ」の中の人。cocos2d for iPhoneレッスンノートを執筆(共著)。 世田谷ものづくり学校の自由大学にてアプリクリエイター道場の講師を担当。アプリクリエイターにメイキングストーリーをインタビューしていく番組「ハイパーアプリクリエイターズ」も手掛ける
Copyright © ITmedia, Inc. All Rights Reserved.