マイクロソフトによる買収が決定したGitHub(ギットハブ)。
GitHubはソースコードのバージョン管理ツールのスタンダードであり、GitHubはGitを活用したリポジトリ管理の分野でNo.1の存在です。エンジニア採用の現場では、GItHubで公開しているソースコードの品質が「エンジニアの実力の評価」の指標にもなっています。
オープンソース文化との親和性の高さも魅力の1つです。マイクロソフトによるGitHubの買収に対しては、国内外のエンジニアから猛反発が起きています。GitHubという「オープンソース文化の象徴」のようなサービスがマイクロソフトに買収されることに、生理的な嫌悪感を抱く人が多い様子。
特にGitHub買収に、大きな不安を抱いているのがGitHub製のエディタ「Atom」のユーザーです。マイクロソフトはVisual Studio Code(VSコード)の開発を手がけており、AtomとVSコードはユーザー層が大きく重なります。VSコードは、Atomから生まれたフレームワーク「Electron」を使って開発されており裏側の技術も多くの部分で重なるのです。
マイクロソフトの買収によって、AtomはVSコードに統合。消えていくのでしょうか。
マイクロソフトとGitHubは、GitHub買収への反発の声をどう受け止めているのでしょうか。
こうした疑問の声に、海外掲示板Redditで新CEOのNat Friedman氏が反応。AMA(Ask Me Anything)形式で質問に答えました。かなり踏み入った質問にもNat氏は次々回答。トピックは大盛り上がりでした。
Nat氏が語るAtomエディタやGitHubの今後をまとめます。
この記事の目次
- 1 GitHub(ギットハブ)とは
- 2 Atomエディタとは
- 3 GitHub新CEOが、GitHubのこれからについて語る
- 4 人々がGitLabやその他のプロバイダにコードを移していることについてどう思う?
- 5 マイクロソフトがかつて、オープンソースソフトウェアのアイデアを否定していたのは何故だと思う?
- 6 マイクロソフトはGitHubのAtomエディタについて、どのようなプランを持っている?(VSコードのユーザーと、明らかに重なっているけれど)
- 7 GitHub内検索を改善する予定はある?いまの検索機能では、コード例を探すのが難しくて……
- 8 マイクロソフトに持ち込みたいGitHubのカルチャーは何?
- 9 docxファイルのような複雑な非テキスト形式のファイルをマージする方法があるのかい?それはクールだ!
- 10 エドワード・スノーデンは5年前、マイクロソフトがNSAと協力してoutlook.comにバックドアをインストールしたことを暴露した。マイクロソフトは(GitHub)リポジトリの改ざんを防ぐために何ができる?
- 11 まとめ
GitHub(ギットハブ)とは
GitHubとは、バージョン管理ツール「Git」を使い、世界中の人々が自身のソースコードやデザインデータを公開できるようにした「Hub(ハブ:拠点)」です。
バージョン管理ツール「Git」とは誰が、いつ、何を変更したのかを記録できるシステム。ソースコードやデザインデータを編集する際、細かな編集記録が残る上「ある特定時点の状態の復元」も可能とします。
GitHubはGitを用いたソースコードや各種データのホスティングサービスを提供。同サービスの開発にはRuby on Railsが使用されており、わかりやすいインターフェースで直感的にリポジトリ(データの保存庫)を作成できることも人気の理由です。
GitHubのサービス開発・運用を行うGitHub社は、2008年に設立。同社はGitHubの他、デスクトップアプリケーション開発向けフレームワーク「Electron」や人気エディタ「Atom」も提供しています。
2018年6月にマイクロソフトが買収を発表。新CEOには、クロスプラットフォーム開発ツール「Xamarin」を手がけたことで有名でNat Friedman氏の就任が発表されました。この買収には、国内外のエンジニアの間で波紋が広がっています。
Atomエディタとは
Atomエディタは、GitHub製の高機能エディタです。オープンソースで開発されています。2014年にパブリックベータ版が発表。2015年にバージョン1.0がリリース。登場から数ヶ月で月刊アクティブユーザーが100万人を突破しました。
Atomの最大の特徴は、拡張性の高さです。
A hackable text editor for the 21st Century (21世紀に向けたハック可能なテキストエディタ)というテーマを掲げるAtom。パッケージと呼ばれるプラグインがAtomには多数取り揃えられており、用途に応じて追加が可能。オープンソースのため、パッケージもユーザーが自由に開発できます。他のエディタを大きく上回るハッカブルさと、健全なユーザコミュニティの存在が魅力です。
またAtomは、デスクトップアプリケーション向けフレームワーク「Electron」が開発されるきっかけとなったことでも有名です。ElectronはAtomから生まれたフレームワークであり、今日ではVisual Studio CodeやSkype、Discordなどのデスクトップアプリケーションに使用されています。
Atomエディタは非常に人気が高いエディタであり、マイクロソフトにとってはVisual Studio Codeの競合に当たります。
そのため買収を機に「AtomはVisual Studio Codeに統合されるのでは」「Atomは”死ぬ”のでは」という見方が広がっていました。
GitHub新CEOが、GitHubのこれからについて語る
マイクロソフトによる買収決定後、GitHubのユーザーの間では混乱が拡大。GitHubに次ぐナンバーツーのGitリポジトリ管理ソフトウェア「GitLab」へのソースコードのインポート数は、GitHub買収発表後に10倍に急拡大しています。
Nat Friedman氏のRedditでのAMA(Ask Me Anything)実施は、こうした現状を受けてのものでした。
GitHubの今後の方針や、Atomエディタの処遇についてうかがえる書き込みを紹介します。
全ての書き込みは、Redditの以下のスレッドを参照しています。
・I’m Nat Friedman, future CEO of GitHub. AMA.
人々がGitLabやその他のプロバイダにコードを移していることについてどう思う?
Nat:Developers are independent thinkers and will always have a healthy degree of skepticism, but I admit I was sad to see that some felt compelled to move their code. I take the responsibility of earning their trust seriously.
OTOH, I think it’s great that git gives developers the flexibility to move their repos like this, and I hope those who have tried out other Git hosts in the past few days will keep an open mind and consider moving back once we’ve demonstrated our commitment to openness and made GitHub even better. If they choose not to move back, that’s their prerogative and we celebrate developer choice even when developers don’t choose us.
That said, the GitHub team reports that the set of users who have migrated or closed their accounts is extremely small, and this is more than made up for by the surge of new signups and new interest in GitHub this week.
開発者とは独自の考え方をもっているものだし、健全な懐疑主義者でもある。僕は、彼らが自分のコードを移行せざるを得ないような気持ちにさせたことが悲しい。
その一方で、Gitが開発者にリポジトリを移行する柔軟性を与えていること自体は素晴らしいと思っているよ。他のGitホストをここ数日で試してみた人たちが、私たちがよりGitHubをよくしていき、オープン性へのコミットメントを示すことで(GitHubに)戻ることを検討してくれたらと願ってる。もし彼らが戻らないことを選んでも、それは彼らの特権だし、私たちを選ばないという開発者のチョイスを祝福したい。
あと、GitHubチームは移行、もしくはアカウントを閉鎖したユーザーは非常に少なかったとレポートしている。GitHubへの今週の新たな関心や、新規登録によって補われたということだ。
GitHubのユーザーが続々とGitLabに移行していることに対しての、Nat氏の返答です。
マイクロソフトによるGitHub買収が生理的な嫌悪感を引き起こしている理由の1つは、かつてのマイクロソフトのオープンソースに対する否定的な態度にあります。特にかつてのマイクロソフトは、Linuxをライバル視。マイクロソフトのソフトウェア分野での寡占状態を脅かす存在として認知していました。
有名なエピソードは1998年の「ハロウィーン文書事件」。マイクロソフトの内部文書が流出し、同社のオープンソースへの対抗戦略が明らかに。ハロウィーン文書ではオープンソースソフトウェアはマイクロソフトにとって短期的な収入とプラットフォームへの脅威と位置付けられ、オープンソースの市場参入を防止するための施策が議論されていました。
こうした経緯から、マイクロソフトは「オープンソースに否定的な企業」という見方が根強いのです。よってマイクロソフトに否定的な感情を持つエンジニアを中心に、マイクロソフト傘下に入ったGitHubからの移行が進んでいます。
しかし、近年ではマイクロソフトはオープンソース化に大きく舵を切っています。同社はGitHubへのコミット数が最も多い企業の1つであり、AltJSの代表格である「TypeScript」やエディタ「Visual Studio Code」などをオープンソースで公開。さらにWindows 10ではLinux対応も実装。Windows上でLinuxが使えるようになりました。
Nat氏は、今回の買収がGitHubユーザーに対して混乱を巻き起こしたことを少なからず後悔している様子。一方でGitHubの今後のオープンソース文化への貢献が、一度は離れたユーザーが同サイトに戻ってくるきっかけになればと期待しているようです。
マイクロソフトがかつて、オープンソースソフトウェアのアイデアを否定していたのは何故だと思う?
Nat:Fear.
恐怖だね。
Nat氏はかつてのマイクロソフトの、オープンソースへの対抗戦略や否定的な態度の裏にある感情を「恐怖」と読み解いています。
かつてのマイクロソフトのソフトウェア全般やWindows OSにとって、Linuxに代表されるオープンソースは大きな脅威だったようです。
一方、近年のマイクロソフトはオープンソース戦略を推進。多くの企業がデジタルトランスフォーメーションに当たって、クラウドやオープンソースソフトウェアの導入を進める中、マイクロソフトはMicrosoft Azureとオープンソースソフトウェアの連携を強化。オープンソース対応によって顧客の利便性を高めると同時に、クラウドコンピューティングやオープンソースの分野で企業としてのプレゼンスを高めることに成功しています。
かつて「恐怖」を抱いていたオープンソースソフトウェアを、自社の事業に全面的に導入。オープンソースの活用で自社の存在感を高めることに成功したマイクロソフト。企業として前向きな変質を、今まさに遂げていると言えるでしょう。
マイクロソフトはGitHubのAtomエディタについて、どのようなプランを持っている?(VSコードのユーザーと、明らかに重なっているけれど)
Nat:Developers are really particular about their setup, and choosing an editor is one of the most personal decisions a developer makes. Languages change, jobs change, you often get a new computer or upgrade your OS, but you usually pick an editor and grow with it for years. The last thing I would want to do is take that decision away from Atom users.
Atom is a fantastic editor with a healthy community, adoring fans, excellent design, and a promising foray into real-time collaboration. At Microsoft, we already use every editor from Atom to VS Code to Sublime to Vim, and we want developers to use any editor they prefer with GitHub.
So we will continue to develop and support both Atom and VS Code going forward.
開発者は自身の設定を本当に入念に行うもので、特にエディタのチョイスは開発者がもっともパーソナルに行う決定の1つだ。プログラミング言語の乗り換えや、仕事の変更。新たなコンピュータの入手やOSのアップグレートもよくあることだ。でも、エディタだけは選んだものを何年にも渡って使い続ける。僕が一番やりたくないことは、Atomユーザーからこうした決断を取り上げるということだ。
Atomは健全なコミュニティを持つファンタスティックなエディタで、熱心なファンがいて、デザインも素晴らしい。そして有望なリアルタイム共同編集にも進出している。マイクロソフトではすでにAtomもVSコードもSublimeもVimも使っていて、開発者にはGitHubとともに好きなエディタを使って欲しいと思ってる。
だから私たちは、AtomもVSコードもどちらも開発とサポートを続けていくよ。
Atomエディタのファン、ユーザにとって非常に重要な発言です。Atomエディタの存続は、Nat氏のこの発言によって確定したと言えるでしょう。
マイクロソフトの社内ではAtomもVSコードもSublimeもVimも採用されており、開発者は好きなエディタを選べるというのも見逃せないポイントです。マイクロソフトの社内でVisual Studio Codeではなく、AtomやSublimeを使用しているエンジニアがいるというのは少々意外な事実ではないでしょうか。
今日のマイクロソフトは自社製品に固執する企業ではなく、あくまでオープンソース文化にコミット。エンジニアの開発環境にも一定の自由度を認めていると言えます。
開発や運用の効率を上げるためには、オープンソースの導入が有効なケースもあり、自社で作った製品だからといって「必ず自社製品を使わなくてはいけない」ということはない。自社製品にこだわり続けると、かえって市場に乗り遅れてしまう場合もある。
こうしたマイクロソフトの思い切った姿勢をうかがい知ることができます。
GitHub内検索を改善する予定はある?いまの検索機能では、コード例を探すのが難しくて……
Nat:I agree (and so does everyone else who uses GitHub). I’m not familiar with the exact plans, but this is a clear area for us to invest in in the future.
(その提案に)賛成だよ(GitHubを使う全てのユーザーがそうであるように)。僕は正確なプランに精通しているわけではないけれど、私たちにとって将来的に投資すべき領域であることは明らかだ。
GitHubユーザーにとって嬉しい事実の一つが、GitHub内検索の改善が予定されているということです。
GitHubは非常に便利なサービスですが、サイト内検索に弱点を抱えており、必要なコード例が中々見つからないというケースもしばしばです。「コード例(Code Example)を探すのが難しい」という声に対し、Nat氏は「投資すべき領域であることは明らか」と回答しています。
今後、ソースコードレベルでの検索性能がさらに向上していくと思われます。エンジニアにとってGitHubは単なるバージョン管理サービスの域を超え、ソースコードの検索サイトとしてもより便利に使える存在になっていくでしょう。
マイクロソフトに持ち込みたいGitHubのカルチャーは何?
Nat:One of the cool things about GitHub is that GitHub runs on GitHub; their sales, marketing, and legal functions actually use issues and pull requests to collaborate across the company. This means that all of the various teams work in the open, and this contributes to a very collaborative culture (it also means that new lawyers at GitHub learn how to merge a PR and which emojis to use when they join!).
GitHubも最もクールなことの1つは「GitHubはGitHub上で運用されている」ということだ。セールスもマーケティングも法律部門も実際にイシューとプルリクエストを会社を横断した共同作業のために使っている。このことはあらゆる全てのチームがオープンに業務をしていることを意味するし、とてもコラボレーティブな文化に役立っていると思うよ(このことはGitHubの新しい弁護士がジョインするときに、自己PRと使う絵文字をマージするということでもあるよ!)
Nat氏はマイクロソフトに持ち込みたいGitHubのカルチャーとして「GitHub runs on GitHub」を掲げています。Gitというとエンジニアが使うツールというイメージが強いですが、同社ではセールスから法務に至るまで全面的にGitが導入されています。
Gitに対し、難解な印象を持つ人が多い理由の1つには「Gitはコマンドで操作するもの」というイメージの強さがあります。GitHubは直感的なGUIの整備や「GitHub Desktop」(デスクトップアプリケーション)の提供を通じ、Gitへの門戸を大きく広げました。
DevOpsやリモートワークなど、スピーディーかつ高い透明性が求められる働き方とGitの相性は非常に良いものがあります。エンジニアだけに限らないより多くの職種でのGitの導入は、日本でも段階的に進んでいく可能性があるでしょう。
docxファイルのような複雑な非テキスト形式のファイルをマージする方法があるのかい?それはクールだ!
Nat:From what I understand, GitHub uses markdown heavily internally for legal docs, etc.
僕が理解している限りでは、GitHubでは重点的に内部では法律文書などにマークダウンを使っているよ。
驚くべきはGitHub社の、GitHub活用のレベルの高さです。法律文書にもマークダウン形式を導入し、効率的な管理を実現しているそうです。
エドワード・スノーデンは5年前、マイクロソフトがNSAと協力してoutlook.comにバックドアをインストールしたことを暴露した。マイクロソフトは(GitHub)リポジトリの改ざんを防ぐために何ができる?
Edward Snowden revealed only 5 years ago that Microsoft cooperated with the NSA to install a backdoor into outlook.com. Tampering of GitHub repositories at the behest of government or corporate actors is, in this context, not unthinkable. Git commit signing is the obvious best defense against this, but we are in a landscape where most software engineers don’t yet know how to do this.
How can Microsoft work to cryptographically prove repository history is never tampered with and that old vulnerable versions of releases are not served to select clients?
エドワード・スノーデンは5年前、マイクロソフトがNSAと手を組んでoutlook.comにバックドアをインストールしたことを暴露した。政府の命令や企業の内部関係者によるGitHubリポジトリの改ざんは、このコンテクストでは想像できないことではない。Gitコミットの署名はこのことへの明らかに最適な防衛手段だが、私たちはほとんどのソフトウェアエンジニアがそれをどうやってやればいいのか知らない状態にある。
マイクロソフトはリポジトリの履歴が決して改ざんされることなく、過去の脆弱なバージョンのリリースがそれを選択したクライアントに渡らないように、どのようにして暗号化を進めますか?
Redditに投稿されたこの質問は、より詳細な解説が必要でしょう。
エドワード・スノーデンはアメリカ国家安全保障局 (NSA) および中央情報局 (CIA) の元局員。NSAによる個人情報の不当な収集を暴露したことで知られる内部告発者です。2013年に行われたスノーデンの告発によると、NSAはベライゾンをはじめとする大手通信会社の協力のもと、全世界の通話情報を傍受。通話内容はもちろん、利用者のメタデータも収集されていたとのことです。
通信傍受にはマイクロソフト、アップル、フェイスブックをはじめとするIT企業も協力していたとされます。特にスノーデンによれば、マイクロソフトは通信が傍受しやすいように、outlook.comのチャットの暗号化を避けるなど「バックドア」を用意していたとのこと。このことは全世界で大々的に報道されました。
エドワード・スノーデンは現在、アメリカ司法当局から逮捕状が出されています。スノーデンは他国への亡命を検討したのち、ロシアの期限付き滞在許可証の発行を受け、現在は同国に滞在中です。
今回のRedditの質問は、これらのスノーデンの告発を受けてのものです。Nat氏は以下のように回答しています。
First, to be clear, we don’t give governments direct access to customer data, and we don’t create backdoors: https://blogs.microsoft.com/datalaw/our-practices/#did-participate-in-prism-program
I love the idea of making it easier for developers to sign their commits, and would support making this the default behavior in VS Code, Atom, and GitHub Desktop (I know it’s possible now, but takes some setup and advanced knowledge). This already happens automatically when I make commits in my browser on github.com.
まず最初に明らかにしておきたいことは、私たちは政府に対して顧客データに直接アクセスする権限を与えてはいないし、バックドアを作ってもいないということだ。:https://blogs.microsoft.com/datalaw/our-practices/#did-participate-in-prism-program
僕は開発者がコミットに署名しやすくするというアイデアは本当に良いと思うし、VSコードとAtom、GitHub Desktopではこれらはデフォルトの動作としてサポートしているよ(現時点で可能だけれど、多少のセットアップの手間と高度な知識は必要だ)。またこれらの動作はGitHub.comにブラウザからコミットをすると、自動的に行われる。
Nat氏は、政府の個人情報収集へのマイクロソフトの関与を完全に否定。バックドアの存在も否定しました。
その上で、GitHubリポジトリの改ざんを防ぐ手立てとしての「署名」の仕組みに全面的に賛同。VSコードやAtomで署名をつけるにはやや複雑なセットアップが要されますが、これらの設定の簡素化をしていきたいと考えているようです。
まとめ
今回のNat Friedman氏のAMA(Ask Me Anything)は、GitHubの今後にとって非常に意義深いものだったことは間違いないでしょう。
Atomエディタの存続が確定したことは、数多くのエンジニアにとって非常に喜ばしいことです。
加えて不特定多数のユーザーからオープンに質問を受け付け、過去のマイクロソフトのオープンソースへの拒絶反応やエドワード・スノーデンの暴露についてなど、やや答えづらい質問にも真摯に対応。こうした姿勢は、GitHubの新CEOにふさわしい極めて「オープン」なものだったと言えます。
マイクロソフトの買収によって、GitHubが良い方向に発展していくことを期待しましょう。
はじめての転職、何から始めればいいか分からないなら
「そろそろ転職したいけれど、失敗はしたくない……」そんな方へ、テックキャンプでは読むだけでIT転職が有利になる限定資料を無料プレゼント中!
例えばこのような疑問はありませんか。
・未経験OKの求人へ応募するのは危ない?
・IT業界転職における“35歳限界説”は本当?
・手に職をつけて収入を安定させられる職種は?
資料では、転職でよくある疑問について丁寧に解説します。IT業界だけでなく、転職を考えている全ての方におすすめです。
「自分がIT業界に向いているかどうか」など、IT転職に興味がある方は無料カウンセリングにもお気軽にお申し込みください。