YAPC::Asia Tokyo 2015 スペシャルレポート

YAPC::Asia Tokyo 2015 1日目レポート[更新終了]

この記事を読むのに必要な時間:およそ 12 分

Teppei Satoさん「Effective ES6」

画像

「Effective ES6」というタイトルでTeppei Satoさんが発表されました。ES5までのJavaScriptのPrototype inheritance,Function scopeなどといった落とし穴と,ES6の代表的な特徴をを紹介されたうえで,ES6によってES5までに落とし穴を回避するために蓄積されたパターンがどのように問題があり,どう解決したかをそれぞれコードの具体例を出しながら解説していました。

画像

最後は,現状ブラウザなどのサポートは完全ではないが,Babelというトランスパイラがあるのでそちらを利用して積極的に使って行きましょう,という話でしめられていました。

Kazuhiro Hommaさん「Web由来の組み込みエンジニアの半年間のすべて ~WebとiOSとBLEとハードウェアデバイスのこと~」

Webの知識をもったハード・組込みエンジニアの重要性は今後上がっていくと思うと語るKazuhiro Hommaさん。世界初の完全後付けスマートロックであるAkerunを開発され,それで起業までされています。そんなご自身の経験をもとに,Webエンジニアが組込み開発を行うにあたって必要となった知識や経験などについて発表しました。

画像

まずはAkerunの生い立ちから語られました。これは「世の中で最もhackされてないものをhackしたい」という思いから飲み会でアイデアが生まれたとのこと。IoT(Internet of Things)やBLE(Bluetooth Low Energy)といった技術の発展と,クラウドファンディングの一般化により資金調達がしやすくなっているという時代的背景もあり,ハードウェアベンチャーを始めやすくなっているといいます。

実際にやってみてると,回路図を読むこと,デジタルマルチメーターやオシロスコープに慣れるなど,Webエンジニアには馴染みのない知識も必要だと感じたそうです。これらの知識は専門のメンバーに任せる部分ではあるのですが,意見を言える程度には知っておくことが重要で,Arduinoでプロトタイプやデモ機などを作って学ばれたそうです。ただそれだけでは不足している部分も当然あり,実際製品化する段階では消費電力を気にしたりセキュリティの考慮が必要などの苦労もあったそうです。

Webエンジニアが組込みをやる利点として,とくにIoT分野では通信やセキュリティの知識などが活かせることや,設定用のWebツールを作れたり工場検査を自動化したりなど活躍できることが多いとのことでした。

最後に「あなたもハードの世界に飛び込んでみませんか」と呼びかけていらっしゃいました。

画像

Yukihiro "Matz" Matsumotoさん「TBD」

これまでにも何度もPerlのカンファレンスに登壇してきたというRubyの創始者Matzさんは,⁠今,新しい言語を設計するならどのような言語にするか」をよく質問されると述べ,Rubyについて良くなかった点についていくつか挙げられました。主なものとして「Perlの影響」⁠Lispの影響」を挙げられました。良い影響も受けたが同時にそれらの言語の失敗もいくつか引き継いでしまったとのことです。

画像

それからRubyを作りはじめた20年前と現在のアーキテクチャの変化についても触れられました。アーキテクチャは振り子のようになっているとのことで,サーバとクライアントの関係性はハードウェア性能の向上によって変わり,Webの発展によって変わり,ブラウザの進化によってまた変わった,ということが起きているそうです。

また,最近はマルチコアが普及してきたことを受け,シェルスクリプトのような言語に可能性を見出しているとのことで,昨年末に開発をはじめたStreemというプログラミング言語について触れられました。Streemは手続き型でパイプラインを組み立て,その後にイベントループでデータを流すという手順で動くそうです。

画像

Streemは200行程度の動作しないプロトタイプをGitHubにアップしたところ,いくつものPull Requestが送られてきて,簡単なサンプルなら動くようになったとのことです。関数定義やライブラリがないなど実用には遠いそうですが,Matzさん自身は最近のテクノロジーバランスに合わせて作った将来性のある言語ではないか,と述べられました。

最後に,環境の変化が新しい言語が生まれるきっかけになるとし,その一例であるStreemは面白いので一緒に遊ぼう,と呼びかけられました。

画像

Toru Kobayashiさん「今フロントエンドで何が起こっているのか」

最初に,今までのWebの歴史を振り返りました。HTML全体を更新するステートレスな時代から,Ajaxを用いて非同期でデータを取得できるようになり,Webは単なる静的なページからWebアプリケーションに進化したといいます。また,jQueryの登場によってブラウザの互換性の問題が改善され,Promiseなどの新しい概念も取り入れられるようになりました。

画像

また,CoffeeScriptやTypeScriptなどのJavaScriptにコンパイルされる言語の話や,Node.jsやECMA Script 2015,Babelなど言語仕様や処理系の話題も取り上げられました。

画像

Angular.jsなどのフレームワークやgulpなどのビルドツールの利点,React.jsやReduxなどのステートレスで宣言的な記述が有用であることなど最近ホットなトピックについても触れられ,幅広い知識が得られる実用的なトークでした。

macopy nnid:mackee_wさん「どうしてもPerlでドローンを飛ばしたい人のためのハードウェアハック概論」

@mackee_wさんによるPerlでクアッドコプターを飛ばすための技術,ハードウェアのハックに関するセッションでした。

画像

前半はクアッドコプターを外部から操作するための方法を説明しました。Phantomというクアッドコプターのハードウェアをハックして,Raspberry PIからArduino経由(UART)でNAZAというコントローラに接続し,クアッドコプターをリモートで動かす方法に関して説明しました。また,ハードウェアをハックするうえで,ボードを安全に作るための手法に関して紹介していました。

画像

後半はクアッドコプターの自作に必要な構成要素やそれぞれの役割・仕組みを,実際のパーツやクアッドコプターの操作デモを交えて説明しました。クアッドコプターの制御にオープンソースのMultiWiiを利用しており,PerlからMultiWiiを操作するための自作ライブラリを紹介しました。

著者プロフィール

青木大祐(あおきだいすけ)

茨城県在住。個人的な用途では主にPerlを使うが,業務では残念ながらC#とTypeScriptしか触らない。大学在学中からPerl6が気になっており,Tsukuba.pmを開催して布教もした。

Twitter:@VienosNotes


臼井洋文(うすいひろふみ)

京都市出身のプログラマ。仕事はPerlでサーバサイド開発がメインだが,必要に応じてiOS/Androidアプリの開発やインフラ周りの整備も行っている。趣味は写真とボルダリング。

Twitter:@usuihiro

Web:http://d.hatena.ne.jp/usuihiro1978/


越智琢正(おちたくまさ)

愛媛県西条市出身。大学進学を機に上京。在学中は超小型人工衛星の研究開発で,ハードウェアをいじったり,C++やC#を利用。就職後にPerlと出会う。仕事ではPerl製フレームワークやゲーム用のBaaS開発,とあるゲームの海外版開発等に従事。人に喜ばれるものを作るのが好き。


田実誠(たじつまこと)

某クラウドインテグレータのデベロッパー。Web技術全般に興味があり,プライベートではRuby,Node.js,Python等で個人ツールやOSSのプラグインを作っていたり。Perlはド初心者。

Twitter:@tzm_freedom

Web:http://freedom-man.com/blog/


中村浩之(なかむらひろゆき)

Spiber株式会社勤務。バイオベンチャーで,生物学実験を行う研究者が使うアプリケーションの開発を行っている。Ruby,Pythonを書いていることが多い。グリッチに興味がある。


野田大貴(のだだいき)

株式会社技術評論社、雑誌編集部所属。主な業務は書籍の編集。

Twitter:@nodawep


藤沢理聡(ふじさわまさあき)

神奈川県在住。ソフトウェア開発や周辺業務に携わっている。長年 Perlを愛用しているが,仕事では他の言語を扱うことが多い。今年はクリスマスプレゼント(Perl 6)をことのほか楽しみにしている。

Twitter:@risou

Web:http://www.risouf.net/


本間雅洋(ほんままさひろ)

北海道苫小牧市出身のプログラマー。好みの言語はPerlやPython, Haskell, Scala, OCamlなど。在学中は数学を専攻しており,今でも余暇を利用して数学を嗜む。現在はFreakOutに在籍し,自社システムの開発に力を入れている。 共訳書に「実用Git」(オライリー・ジャパン),共著書に「FFmpegで作る動画共有サイト」(毎日コミュニケーションズ)がある。

Twitter:@hiratara
Web:http://hiratara.github.io/


安武貴世志(やすたけきよし)

現在は大手Web系IT企業のインフラエンジニアとして,幅広いシステムの構築・運用を担当。インフラ以前はソーシャルゲームのサーバサイド開発をしていたことも。最近,趣味でKoyomiというジョブスケジューラをPerlで書いた。福岡出身。

Twitter:@key_amb

Webサイト:http://keyamb.hatenablog.com/


山中裕之(やまなかひろゆき)

ドラゴンズファン。某会社のプログラマとして活動中。好きな言語はPerl, Ruby, C, C++, Haskelなど。武術が好きで休日はいそしんでいる。

Twitter:@hiroyukim
Web: http://hiroyukim.hatenablog.com