レポート

GitHubが僕たちを,仕事の現場を変えた!──「GitHub Kaigi」レポート

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

「Atom」開発の舞台裏

続いては,テキストエディタAtomについてのNathan Sobo氏の発表です。先日オープンソース化が話題になったことでご存知の方も多いと思われるAtomですが,Sobo氏はその発案者でありメインの開発者のひとりでもあります。

つい先日オープンソース化が発表され話題を呼んだAtomについて発表するNathan Sobo氏

つい先日オープンソース化が発表され話題を呼んだAtomについて発表するNathan Sobo氏

Atomの開発に至る経緯

そもそもGitHubは新しいテキストエディタを開発することになったのでしょうか。同氏はそのモチベーションを説明するにあたって,まず2つのテキストエディタに言及しました。

そのうちの1つはEmacsです。Emacsはオープンソースで開発されており,Emacs Lispを使った拡張も含め,深いレベルまでプログラマブルなことが特長となっています。しかし一方で,その歴史の古さもあってモダンなデスクトップアプリケーションと同じようには動きませんし,セットアップやカスタマイズに多くの労力が必要です。

もう1つはTextMateです。Emacsとは逆に,モダンなUIを持ち,インストールしてすぐに開発を始めることが可能なテキストエディタですが,拡張性などに乏しいという欠点もあります。

これらのテキストエディタを使った経験から,⁠TextMateの直感的な使い心地と便利な機能を持ち合わせつつも,ハックもできるモダンなEmacs」が欲しかったことが開発の動機であったとSobo氏は言います。

Atomのしくみ

Emacsのようなプログラマブルなしくみを作るには,その下部レイヤとなるスクリプト言語のインタプリタとさまざまなプラットフォームに対応したネイティブインタフェースが必要です。しかし,これを一から実現するのは現実的ではありません。

そこで同氏が注目したのがWebブラウザです。クロスプラットフォームであることはもちろん,高速なJavaScriptインタプリタを持ち,それを使ってDOMにアクセス可能なこと,HTML/CSSを使ってモダンなUIを構築できることなど,まさに理想的なシステムだったといいます。

そこで同氏は,Chromiumをベースに,デスクトップアプリケーションとして動作するエディタとして必須の機能を持たせるための「Atom Shell」を開発しました。これを用いてプログラマブルで開発しやすいテキストエディタを実現したのです。

Atomの開発に参加する

これらの説明に続き,Atomのさまざまな機能を動画で紹介し,さらにはAtomの拡張パッケージを開発する方法も紹介したSobo氏は,最後に「拡張のためのパッケージはもちろん,オープンソースとして公開されたAtomのコアも含め,多くのエンジニアに開発コミュニティに参加してほしい」との呼びかけを行い,発表を締めくくりました。

発表のスライド(PDF)はDropboxからダウンロードできます。

入門書には載ってないGit & GitHub Tips

次のセッションは,Qiitaを開発するIncrements⁠株⁠の高橋侑久氏による発表です。⁠入門書には載ってないGit & GitHub Tips」と題して,Qiitaへの投稿の中から厳選されたGit/GitHubのテクニックが紹介されました。

「入門書には載ってないGit & GitHub Tips」セッションスライド

発表の最後には目の前でこれらのテクニックを駆使し効率的にPRをレビューする姿を披露するなど,Git/GitHubを使う開発者であれば誰もが役立つ発表となっていました。

盛り上がったテクニック実演の様子

盛り上がったテクニック実演の様子

Rebuild.fm公開録音!

長時間に渡ったセッションの締めくくりとして,宮川達彦氏の人気PodcastRebuild.fmの公開録音が行われました。ゲストとして同席したのは,このイベントの主催者の一人である伊藤直也氏です。

両氏は当日の発表を振り返りつつ,Gitのブランチ戦略をじめ,Hubot,CircleCIといったGitHubをとりまくツール・サービスについてや,伝達ツールとしてのアニメーションGIFの活用まで,幅広いテーマでのトークを繰り広げました。

当日の様子はRebuild.fmで公開予定ですので,ぜひチェックしてみてください。

「Rebuild.fm Live」で話す宮川氏(左)と伊藤氏(右)

「Rebuild.fm Live」で話す宮川氏(左)と伊藤氏(右)

Lightning Talks

イベントの最後にはLTの時間が設けられました。GitHubをどのように活用しているのかといったテーマはもちろん,デザイナや研究者にとってのGit/GitHubの利用まで,多彩な発表が行われました。

以下にそのスライドを紹介します。


以上,駆け足ながらGitHub Kaigiの様子を紹介しました。Git/GitHubのスキルは,今やエンジニアにとってなくてはならないスキルのひとつとなりつつあります。みなさんもこれを機会にGit/GitHubの利用を始めたり,さらなる活用方法を探ってみたりしてはいかがでしょうか。