Google は、カスタムチップを開発するデベロッパーや企業のコミュニティを成長させ、オープンソース ハードウェア関連のエコシステムを活性化するため、昨年より無料のオープンソース チップの設計と製造プログラムを拡大する計画に懸命に取り組んでいます。

今回、このプログラムの拡大と、GlobalFoundries ã¨ã®ãƒ‘ートナーシップについてお知らせします。私たちは合同で、GlobalFoundries 180MCU テクノロジー プラットフォームのプロセス デザインキット(PDK)を Apache 2.0 ライセンスのもとで公開します。合わせて、Efabless ãƒ—ラットフォームでオープンソース設計の製造を行う無償チップ実現プログラムも公開します。このオープンソース PDK は、GF との継続的なパートナーシップから生まれた初めての成果です。GF には、テクノロジーと製造技術に関する膨大で広範な専門知識があります。それを土台として、半導体の開発や製造をより身近なものにし、イノベーションを推進するために、今後も共同作業を進めていきたいと考えています。
GF180MCU 1P5M 5 メタル スタックアップ、9kA トップメタル、M3 層と M4 層の間の MIM

Google はこのプログラムを SkyWater Technologies と合同で開始し、SkyWater の PDK ã® 1 つを Apache 2.0 ライセンスで公開しました。この 2 年間で 6 回のシャトルを後援し、オープンソース コミュニティから 350 点を超える独自の設計の申請を受け、そのうち約 240 点の設計が無償で製造されました。


この新しいパートナーシップは、半導体メーカーのエコシステム市場にとって 1 つの節目を意味します。それを過小評価することはできません。

パンデミックの影響により、世界では、この数年間でデジタル技術の採用がかつてないほど急加速しました。技術トレンドによって、人々の生活のあらゆる側面が変化しています。その結果、GlobalFoundries によると、半導体メーカーの収益の約 73% がモバイル、IoT、自動車などの高成長市場関連になっています。この変化は、半導体産業の「新しい黄金時代」につながるだけでなく、業界としてイノベーションを定義したり実現したりする方法に構造的変化をもたらします。

GlobalFoundries によると、180nm を使用する応用分野は、現在世界全体で年間 1,600 万ウエハーの規模になっています。2026 年には、それが 2,200 万枚以上に増加する見込みです。

180nm の応用分野は、モーター コントローラ、RFID、汎用 MCU と PMIC といった市場に加え、IoT センサー、二重周波数 RFID、モーター ドライブなどの新たな分野によって牽引され続けています。

GlobalFoundries と Google の共同作業によって、こういった応用分野や高成長領域で設計に携わるチップ エンジニアのイノベーションが推進されます。またそれは、半導体メーカーのエコシステムでオープンソース モデルを実現できることを明確に示すものでもあります。

GF 180nm テクノロジー プラットフォームは、大量生産、価格、電圧オプションに関連する新機能をオープンソース チップ設計者に提供します。この PDK には、以下の標準セルが搭載されています。
  • デジタル標準セルライブラリ(7 トラックと 9 トラック)
  • 低(3.3V)、中(5V、6V)、高(10V)の電圧オプション
  • SRAM マクロ(64x8、128x8、256x8、512x8)
  • I/O とプリミティブ(レジスタ、キャパシタ、トランジスタ、eFuse)セルライブラリ
オープンソースの PDK が増えることは、オープンソース チップ開発エコシステムの次のような発展にとって、重要なステップです。
  • オープンソース EDA ツールに複数のプロセス テクノロジーのサポートを追加できる
  • 研究者は、複数のテクノロジー ベースラインで再現性のある設計を実現できる
  • 人気のオープンソース IP ブロックを別のプロセス テクノロジーに移植できる
私たちだけでは、これを作り上げることはできません。ソフトウェア デベロッパーやハードウェア エンジニア、研究者や学部生、愛好家や業界の専門家、スタートアップ企業や業界関係者の皆さんの力が必要です。皆さんの新鮮なアイデアと豊富な経験を、オープンソース チップのエコシステムの拡大に役立てていただけることを期待しています。

ご興味がある方はぜひ、下記をご覧ください :
Posted by Johan Euphrosine、Ethan Mahintorabi – ハードウェア ツールチェーン チーム

最新の MPW-6 シャトルでは、24 か国のさまざまなコミュニティから 90 件の申請を受けました。


今後数か月間で、SkyWater Technology と密接に連携しつつ、新しい SKY90-FD PDK を Apache 2.0 ライセンスのもとでリリースする予定です。また、追加の Open MPW シャトルを計画し、Efabless プラットフォームによってこの新しい 90nm FDSOI テクノロジー向けのオープンソース設計の製造も行いたいと考えています。

オープンソースの PDK を通じてさまざまなテクノロジーにアクセスできることは、オープンなチップのエコシステムの拡大と強化にとって欠かせないことであると確信しています。
  • デベロッパーは、親しんだプロセスノードの制約を超え、既存の設計や新しい設計で、異なる性能、消費電力、領域のトレードオフを模索できます。
  • 研究者は、異なるテクノロジーで研究を再現し、さまざまな性能指数を実現できます。
  • ツールの管理者は、テクノロジーのバックエンドを汎用化し、複数のプロセスをサポートできます。
  • コミュニティは、PDK の構造化、配布、管理の方法を改善できます。
SKY90-FD は 90nm FDSOI プロセスです。従来の CMOS BULK プロセスとは異なり、SKY90-FD には基板と上部シリコン層との間に薄い絶縁材料の層があるのが特徴です。この薄い酸化プロセスのおかげで、トランジスタを BULK プロセスよりも大幅に薄くすることができます。それによって素子を「完全空乏」にできるので、製造プロセスを簡素化できます。この絶縁が追加されることで、寄生リーク電流が大幅に減少して接合容量が下がり、さまざまな環境条件下でスピードと消費電力性能が向上します。

SKY90-FD プロセス スタック トポロジの特徴は、主な相互接続用の 5 つの薄い銅ベースの金属層と、それより高い電流を流せる厚みのある 2 つの追加 Al(アルミニウム)金属層。

このオープンソース PDK は今年中にリリースされる予定です。そこからさまざまな新しい用途が生まれるのが楽しみです。皆さんの感想をお待ちしています。また、オープンなチップのコミュニティから、ますますたくさんの画期的なプロジェクトのアイデアが生まれることを期待しています。

それまでの間は、オープンなチップの探求を始めることができるように、https://developers.google.com/silicon ã®ãƒªã‚½ãƒ¼ã‚¹ã‚„リンクを確認しておきましょう。


Posted by Johan Euphrosine、Ethan Mahintorabi – ハードウェア ツールチェーン チーム

Share on Twitter Share on Facebook

OpenTitan ロゴ

チップの信頼の土台となる

RoT チップは、認証と検証が行われたコードを使って重要なシステム コンポーネントが安全に起動することを検証し、ハードウェア インフラストラクチャやそこで動作するソフトウェアが意図どおりの信頼できる状態を保つことを保証します。RoT チップは、以下を行うことで多面的にセキュリティに貢献します。
  • サーバーや端末が正しいファームウェアで起動し、低レベルの不正ソフトウェアに感染していないことを保証します。
  • オペレータがサーバーや端末の正当性を検証できるように、暗号学的に一意なマシン ID を提供します。
  • 暗号キーなどのシークレットを改ざんされない形で保護します。これは、物理的にアクセスできる人(例: サーバーや端末が輸送中の場合)に対しても有効です。
  • 信頼できる改ざん不可能な監査記録などのランタイム セキュリティ サービスを提供します。
この RoT チップ テクノロジーは、サーバーのマザーボード、ネットワーク カード、クライアント端末(例: ノートパソコン、スマートフォン)、コンシューマー ルーター、IoT 端末などに利用できます。たとえば、Google は専用の RoT チップ Titan を利用し、Google のデータセンター内にあるマシンが、検証されたコードによって信頼できる既知の状態から起動することを保証しています。これが私たちのシステムの信頼のルートになっています。私たちは、確実に信頼できるチップの重要性を認識しており、パートナーと連携して、信頼できる RoT チップのメリットをお客様や業界全体に広げたいと考えています。これを実現する最善の方法は、チップをオープンソース化することでしょう。

透過性と安全性の水準を上げる

オープンソース ソフトウェアと同じく、オープンソース チップも以下のことができます。
  1. 設計と実装が透過的なので、信頼性と安全性が高まります。問題を早期に発見でき、盲目的な信頼を減らすことができます。
  2. オープンソース設計への貢献を通して、革新を実現し、推進します。
  3. オープンで共通なリファレンス設計を通して、実装の選択肢を提供し、一連の共通インターフェースやソフトウェアの互換性の保証を維持します。
OpenTitan プロジェクトは、イギリスのケンブリッジに本拠地を置く独立した非営利企業で、フルスタックのエンジニアリング チームが在籍する lowRISC CIC によって管理され、志を同じくする ETH ZurichG+D Mobile SecurityGoogleNuvoton TechnologyWestern Digital などの企業の連合体により支えられています。

OpenTitan プロジェクトの創設パートナー

OpenTitan はアクティブなエンジニアリング プロジェクトで、パートナーの連合体を代表するエンジニアのチームが参加し、さまざまな観点からアイデアや専門知識を持ち寄っています。オープンソースのマイクロプロセッサ(RISC-V ベースの設計である lowRISC Ibex)、暗号コプロセッサ、ハードウェア乱数生成器、高度な鍵階層、揮発性および不揮発性ストレージ用のメモリ階層、防御メカニズム、IO 周辺機器、セキュアブートなど、RoT チップの論理設計は透過的に行われています。OpenTitan では、よりオープンで透過的かつ高品質な RoT を提供するため、パートナーの連合体が協力し合っています。
従来型の RoT と OpenTitan RoT の重要な設計コンポーネントの比較
OpenTitan プロジェクトは、次の 3 つの原則に根ざしています。
  • 透過性 – ã‚らゆる人のための RoT チップの透過性や信頼性を向上させるため、OpenTitan の設計やドキュメントは誰でも調査、評価、貢献が可能です。
  • 高品質 – リファレンス ファームウェア、付帯検証ツール、技術ドキュメントを含め、高品質で論理的に安全なチップ設計を行います。
  • 柔軟性 – ベンダーやプラットフォームに依存せず、データセンターのサーバーやストレージ、周辺機器、その他のデバイスに統合できる RoT チップ設計を使うことで、導入者が費用を削減して多くのお客様に製品を届けることができるようにします。

OpenTitan プロジェクトに参加する

OpenTitan を活用できるのは、インフラストラクチャをチップベースのセキュリティで強化したいと考えているチップメーカーやプラットフォーム プロバイダー、セキュリティに敏感な企業などです。早速、GitHub リポジトリにアクセスしてみてください。

積極的に OpenTitan と連携して実際にオープンソース チップを安全にしたい方は、ぜひ OpenTitan チームにご連絡ください。製品にパイロット OpenTitan RoT を組み込みたい方は、こちらからお知らせいただけるとありがたく思います。


Reviewed by Eiji Kitamura - Developer Relations Team
Share on Twitter Share on Facebook


Google の創業当初より、フリーウェアやオープンソース ソフトウェアは、Google の技術的、組織的な土台を形作ってきました。Linux カーネルを実行するサーバーから、社員は社内のあらゆるチームのコードにパッチを当てることができるという企業文化に至るまで、オープンソースは Google に欠かすことができない要素です。その引き替えに、Google は膨大なオープンソース コードを公開し、Google Summer of Code や Google Code-in などのイベントを開催し、Software Freedom ConservancyApache Software Foundation をはじめとする多くの団体を通してオープンソースに関するプロジェクトやコミュニティの後援を行っています。

本日(*原文公開当時)、opensource.google.com を公開しました。この新しいウェブサイトでは、オープンソースの利用、公開、サポートに関する情報を Google のさまざまな取り組みと合わせて確認できます。

この新しいサイトでは、オープンソースに対する深い愛に満ちた、Google による幅広い取り組みをご紹介しています。Google が展開するプログラム、支援する組織、リリースしたオープンソース プロジェクトの包括的なリストなど、皆さんの期待にお応えする情報が掲載されています。さらに、皆さんが想定していないような内容も掲載されており、Google のオープンソースに対する「取り組み」の秘密までご覧いただけます。

おもしろそうなオープンソースを探す

Google のオープンソース コードの公開に対する考え方の 1 つに、「多ければ多いほどよい」というものがあります。どのようなプロジェクトが求められているのかわからないため、Google のチームでは、できる限りコードを公開することが推奨されています。そのため、オープンソース ライセンスのもとで数千のプロジェクトが公開されています。TensorFlowGoKubernetes といった大規模なプロジェクトから、Light My PianoNeuroglancerPeriph.io といった小規模のプロジェクトまで様々です。完全にサポートされているものもあれば、試験運用版や娯楽的なものも含まれます。この膨大な数のプロジェクトは、GitHub の 100 以上の組織と Google 内の Git サービスにホストされています。そのため、Google のオープンソースの取り組みの規模や全容を把握するのは難しいかもしれません。

そこで、もっと詳しく実態を把握できるように、オープンソース プロジェクト ディレクトリを公開しました。これは、今後さらに拡大していく予定です。掲載されている多くのプロジェクトにも、Google 内部での用途などの情報を追加する予定です。将来的には、プロジェクトのライフサイクルや成熟度についての情報も追加したいと考えています。

Google のオープンソースに対する取り組み

オープンソースとは、単にコードを公開するだけではなく、コミュニティやプロセスも含まれます。大企業としてオープンソース関連のプロジェクトやコミュニティに参加すれば、様々な課題に直面することになります。2014 å¹´、Google は TODO グループの立ち上げに協力しました。このグループは、オープンソースに深く貢献する企業間でコラボレーションや、ベスト プラクティスの共有ができるフォーラムを提供しています。何年にもわたって積み重ねてきた議論から生まれた Google のオープンソースに対する取り組みに関する内部ドキュメントも、本日公開されました。

このドキュメントでは、新たなオープンソース プロジェクトの公開や他のプロジェクトへのパッチを提供する際のプロセスに加え、社内に導入するオープンソース コードの管理や使用について説明しています。さらに、このドキュメントは 方法だけにとどまらず、なぜその方法をとっているのかという 理由 まで掲載しています。たとえば、あるライセンスのコードのみを使う理由や、パッチを受け取る際に必ず貢献者ライセンスへの同意を求める理由などが説明されています。

Google のポリシーや手続きは、長年の経験やその中で得てきた教訓に基づくものです。Google のオープンソースに対するアプローチは、万人向けではないかもしれません。オープンソースに対する取り組み方は 1 つではないため、このドキュメントを How-To ガイドとは考えないでください。他のエンジニアのソースコードを読んで問題の解決方法を学ぶことは貴重な体験です。それと同じように、オープンソースに対する Google のアプローチや考え方を確認することに価値を見いだしていただければと思っています。

なお、新しい Google オープンソース サイトの裏話に興味がある方は、私たちの友人が運営している The Changelog というサイトの最新エピソードをお聞きください。この新しいサイトがお役に立つことを願っています。

Posted by Takuo Suzuki - Developer Relations Team
Share on Twitter Share on Facebook

import fire


class Example(object):
 def hello(self, name='world'):
   """Says hello to the specified name."""
   return 'Hello {name}!'.format(name=name)


def main():
 fire.Fire(Example)


if __name__ == '__main__':
 main()

Fire 関数の実行により、コマンドが実行されます。Fire を呼び出すだけで、Example クラスをコマンドライン ユーティリティのように使えるようになります。

$ ./example.py hello
Hello world!
$ ./example.py hello David
Hello David!
$ ./example.py hello --name=Google
Hello Google!


もちろん、このモジュールは通常の Python ライブラリとして使うこともできるので、Bash と Python の両方からまったく同じコードを使うことができます。Python ライブラリを書いている際に Python Fire を使うと、コマンドラインから対象ライブラリの一部を実行して簡単に実験できるようになるので、メインメソッドやクライアントをアップデートする必要がなくなります。また、ライブラリを変更すると、それに応じてコマンドライン ツールも更新されます。

Google のエンジニアは、Python Fire を使って Python ライブラリからコマンドライン ツールを生成しています。たとえば、Fire と Python Imaging Library(PIL)を使って構築したイメージ操作ツールがあります。Google Brain ã§ã¯、Fire で構築した実験管理ツールが使われており、Python からでも Bash からでも同じように実験を管理できるようになっています。

Fire によって生成される CLI はインタラクティブモードにも対応しています。CLI に「--interactive」フラグをつけて実行するとコマンドの結果とともに IPython ã® REPL ãŒèµ·å‹•ã—、その他の便利な定義済み変数をすぐに使用できます。詳細および Fire が提供するその他の便利な機能については、Python Fire のドキュメントをご覧ください。

強力でシンプル、かつ汎用性の高い Python Fire が皆さんのプロジェクトに役立つライブラリになることを期待しています。

Posted by Ian Lewis, Developer Advocate, Google Cloud
Share on Twitter Share on Facebook

[単語の途中で折り返しが発生している例]


この問題は、日本語がラテン文字を使用する英語等の言語と違って、単語と単語の間に区切りを持たないことに起因しています。ラテン文字を使用する多くの言語では、単語と単語の間に空白による区切りがあり、単語の途中で折り返しが行われないようにブラウザのデフォルト環境で指定されているため問題は発生しませんが、日本語では、単語の途中でも関係なく折り返しが発生します。

従来も、与えられた日本語の文章に対して単語の区切りを指定し、単語の途中で折り返しを行わないように CSS で制御することでこの問題に対処できました。しかし、このような処理を行うには、単語の区切りが指定できる日本語に精通した作業者が必要でした。Google ではたくさんのウェブサイトを制作していますが、多くは英語をベースに多言語化を施し各国に提供しています。そのため、ウェブサイトを制作するエンジニアが、特定の言語を理解しなくても美しいタイポグラフィを提供できる方法が模索されてきました。

Budou は、この問題に対して自動化されたソリューションを提供するために開発されました。 Cloud Natural Language API を使って単語の境界判別と構文解析を行い、その出力結果をもとに文節を特定します。推定された文節ごとに display: inline-block を指定した SPAN タグで囲むことで、文章の折り返し可能な位置を指定します。Budou によって折り返し可能な位置が指定された文章を HTML に変換することで、デバイスの画面幅に関わらず、最適な位置で折り返された文章を自動で表示できるようになります。以下の図では、「常に最新、最高のモバイル。Android を開発した同じチームから。」という文章がさまざまなブロック幅で表示されたときの折り返しの変化を表しています。上のブロックが Budou 適用前、下のブロックが Budou 適用後です。Budou を適用することにより、ブロック幅に関わらず適切な位置で折り返しが行われることがわかります。



[Budou 適用前と適用後の文章の折り返しの比較]


また Budou は、Python で記述されたシンプルなスクリプトなので、テンプレートエンジンのカスタムフィルタとして使うことも、Grunt や Gulp を始めとするビルド ツールのタスクとして使用することもできます。ひとつの文章を処理するたびに Cloud Natural Language API にリクエストを投げますが、バージョン 0.1.1 以降では、すでに処理した文章に対しては重複したリクエストを投げないキャッシュ機能も利用できるようになりました。また、静的コンテンツに対して使う場合には、Budou であらかじめ処理しておいた HTML を使えば、追加リクエストが発生しません。

Budou は、ウェブページのタイトルや見出しなどの比較的短い文章に適用されることを想定して開発しています。スクリーン リーダーの挙動によっては SPAN タグで囲まれた部分や WBR タグで区切られた部分を分割して読み上げることもあるため、長い文章に適用するときには注意が必要です。

2016 å¹´ 9 月現在、Cloud Natural Language API がサポートする言語は、英語、スペイン語、日本語です。現時点で Budou は、日本語のみをサポートしています。今後、Cloud Natural Language API のサポート言語の拡充に伴って、中国語やタイ語など、日本語以外の単語区切りを持たない言語にも対応できるようになるかもしれません。

みなさんのご意見・ご要望は大歓迎です。ぜひ GitHub を通してご連絡ください。
https://github.com/google/budou


Posted by Shuhei Iitsuka - Brand Studio
Share on Twitter Share on Facebook



サンタ トラッカーを使ってみるには、GitHub(google/santa-tracker-web および google/santa-tracker-android)からコードをチェックアウトします。どちらのリポジトリにも説明が記載されていますので、自分用にビルドすることができます。

サンタ トラッカーは、12 月 24 日にサンタがプレゼントを配る状況を見るだけのものではありません。サンタが休日の旅の準備をしている間、サンタ村を探検して冬にまつわる体験やゲーム、教育用コンテンツを楽しむことができます。

オープンソースとして公開されたサンタ トラッカーの概要は次のとおりです。

Android アプリ





Android Wear




ウェブ







今回のアップデートによって刺激を受けた皆様が、サンタ トラッカーを作り上げているすばらしいコンポーネントを活用して、魔法のようなコンテンツを生み出すことを楽しみにしています。


Posted by Yuichi Araki - Developer Relations Team
Share on Twitter Share on Facebook

TensorFlow は、ディープ ラーニングの実装のための豊富な機能をサポートするほか、演算フローをグラフとして定義することで様々な計算処理を表現でき、ディープ ラーニングに留まらない優れた汎用性を備えます。自由度の高い Python API を提供し、新しいアイディアをすばやく簡単に表現できます。また TensorFlow に備わる自動微分や各種の初期レート最適化の機能は、勾配降下法を使うあらゆる機械学習アルゴリズムの実装で威力を発揮します。ここにあるチュートリアルではいくつかの例を公開しています。
TensorFlow は、ポータブルで高速な実運用サービス向けのライブラリとしてゼロから設計されており、研究目的に限らず実サービスにも利用できます。デスクトップ PC での GPU によるモデルのトレーニングからスマートフォンによるサービス提供まで、シームレスな展開が可能です。Google が公開する最新のモデル アーキテクチャ例を使用すれば、強力な機械学習アルゴリズムをすぐに使い始められます。ImageNet 画像認識モデルの TensorFlow によるフル実装もまもなくリリースする予定です。

さらに TensorFlow の真価は、それがオープンソース ソフトウェアであることにあります。スタンドアロン ライブラリと関連ツール、チュートリアル、そしてサンプルが Apache 2.0 ライセンスで公開されており、あらゆる企業や組織において無償で利用可能です。

Google 社内のディープ ラーニング研究者は、例えばニューラル ネットワークから得たシグナルによる Google 検索の品質向上や、今後提供される魔法のような機能の実現など、すべての研究で TensorFlow をすでに活用しています。Google では今後も各種サービスでの機械学習の実装に TensorFlow を使用していくほか、すでに公開済みのアルゴリズムの TensorFlow 実装も進める予定です。開発者の皆様による www.tensorflow.org への参加をお待ちしています。

Posted by Kazunori Sato - Developer Advocate, Cloud Platform
Share on Twitter Share on Facebook

サンタ トラッカーといっても、ただ単にクリスマス イブのサンタさんのプレゼント配達状況を追跡するだけではありません。クリスマス シーズンを通して、冬をテーマにした数々のゲームで遊んだり、北極にあるサンタ村でサンタさんか配達の準備をする様子を見ることができるんですよ。

オープンソースとしてリリースしたのは以下のようなものです。

Android アプリ


Android Wear


Web 版



サンタ トラッカーを支える技術がどのようなものか、ぜひソース コードをご覧になって確認して下さい。開発者の皆様のお役に立つことを願っております。

Posted by Yuichi Araki - Developer Relations Team
Share on Twitter Share on Facebook



「自分には無理」と思ったあなた!GSoC 経験者で Google 東京 R&D センターで働いているソフトウェア エンジニアの体験談(2012 å¹´2011 å¹´2010 å¹´)をご覧のうえ、日本語で GSoC 関係者や経験者に質問したい方はぜひ GSoC メーリングリスト(日本語) をご利用ください。経験者曰く、GSoC に参加するのに必要なのはコードを書く情熱とほんのちょっとの勇気です。

さあ、プロジェクト一覧を見て、開発者に問い合わせてみましょう。

応募期間: 日本時間 2014 å¹´ 3 月 11 日(火)04:00 〜 3 月 22 日(土)04:00
(UTC 協定世界時 2014 å¹´ 10 月 10 日(月)19:00 〜 3 月 21 日(金)19:00)

皆様の参加をお待ちしております。
Share on Twitter Share on Facebook


2012 年の Google Summer of Code プログラムには、1,212 名の学生の皆さんが参加することになりました。学生の皆さんの、コミュニティでの活動が始まります。まずは、メンターと知り合いになり、ドキュメントを読み、IRC チャネル(ハッシュタグは #gsoc)でハングアウトを行い、5 月末に実際にコーディングを行う前に、コミュニティに慣れ親しみましょう。

今年の Google Summer of Code では 180 もの組織が参加しています。これらの組織やスケジュールについてもっと知りたい場合には、Google Summer of Code のプログラムサイトをご覧ください。

今回、参加される学生の皆さん、おめでとうございます。刺激的で実りの多いプログラムとなることを楽しみにしています。
Share on Twitter Share on Facebook


Google Summer of Code 2012 (以下 GSoC) の学生申し込みが始まりました。プログラミングが好きな学生のみなさん、5,000 ドルを得るチャンスです。GSoC は 2005 年に始まった、学生とオープンソースコミュニティを結びつける奨学プログラムです。GSoC ではオープンソースコミュニティが学生の皆さんにやってもらいたいプロジェクトのアイデアを用意します。学生のみなさんはこれらのプロジェクトアイデアを元に自分がやりたいことを提案します。もちろん自分独自のアイデアを提案することも可能です。プロジェクト案が採択されたら、メンターとともにプロジェクトの完遂を目指します。メンターはプロジェクトを進めるにあたって適宜アドバイスを提供します。プロジェクトを終えることができれば 5,000 ドルを手にすることができます。そして何より、あなたが書いたコードが世界中で使われるのです。こんなにエキサイティングなことはありませんよね?

私は 2008 年に学生として参加し、2009 年にはメンターとして参加しました。オープンソースコミュニティに本格的に関わるのが初めてだった自分にとって、このときの経験は得難いものになりました。コードをレビューしてもらうことでソフトウェアのデザイン方法やイディオムなどを、自分で勉強するよりもはるかに速いスピードで学ぶことができました。コードをレビューする立場になった時も、問題に対するさまざまなアプローチがあることを知るよい機会になりました。オープンソース活動をしていない学生にとって、他人と協力してコードを書く機会はさほど多くありませんし、人が書いたコードをレビューすることもめったにないでしょう。GSoC はそのような機会を与えてくれる場でもあります。

GSoC に興味はあるけれど応募を躊躇してしまうこともあるかもしれません。私自身がそうであったように、英語でのコミュニケーションに不安を覚えたり、達成できそうなプロジェクトアイデアを見つけられなかったり。過去のエントリ記事にある体験談(2011 å¹´2010 å¹´)をぜひご覧ください。過去の参加者も同じような不安を抱えていました。GSoC に参加するのに必要なのはコードを書く情熱とほんのちょっとの勇気です。

GSoC 2012 では現在、各オープンソースコニュニティがプロジェクトアイデア公開し、学生の皆さんの応募を待っている段階です。オープンソースコミュティの一覧からプロジェクトアイデアを探してみてください。学生の応募締め切りは 4/6 19:00 (UTC)です。みなさまの応募をお待ちしています。
Share on Twitter Share on Facebook



Q. 学生時代にオープンソースに関わるようになったきっかけは何でしたか?

花岡: 当時サークルの先輩で今は Google のエンジニアの T さんに誘われました。
向井: 僕は Linux を使っていて、プロダクトの文句をブログで書いたら作者から連絡があったんです。オープンソース系のものはコメント機能やメーリングリストがあることが多いので、意見交換から関わりをもつことができますね。
服部: GSoC がオープンソースのデビューでした。

Q. Google Summer of Code に応募してみようと思った理由は?

向井: 好きな開発ができて、さらにお金がもらえるからです。(笑)
花岡: 興味があるプロジェクトがあったのと、メンターの指導のもとで実際の開発に関われることに惹かれました。
服部: 正直、T シャツが欲しかったから。だめでしょうか。。(良いと思います)

Q. プロジェクトは具体的にどのように進めるのでしょうか。メンターとはどのような関係ですか?

鵜飼: 進め方は携わるプロジェクトの内容と、その組織との物理的な距離や時差によって個人差はありますが、基本の作業はオンラインで行えるので、ネットにさえアクセスできればどこからでも参加可能です。
花岡: そうですね。僕は当時京都にいたんですが、メンターがいる組織が東京にあって、打ち合わせ、中間発表と最終発表を東京で行いました。(※) メンターも日本人でしたし、日常のやりとりや発表はすべて日本語でした。
向井: 僕は反対に一度もメンターと会うことはありませんでした。英語のメールやチャットでやりとりをして、また、進捗についてブログを書くようにしていました。ライブラリーを作る仕事だったので、メンター以外の人からもいろんなメールが飛んできたのを覚えています。
服部: 院試などと重なって大変な時期もありましたが、プロジェクトを終わらせてから院試の勉強をしました。ニューヨークにいるメンターとは、IRC上で連絡を取りながら進めていました。あの時差は学生だったからこそ克服できたのかもしれません。

※開発や発表に掛かる移動などは GSoC の規定外で行われます。詳しくは FAQ をご覧ください。

Q. 振り返って、どういう点が有益でしたか?

花岡: まず、知り合いが増えました。先日、自然言語処理の学会へ行った際に GSoC がきっかけで出会った人たちに再会しました。Google 日本語入力の開発に携わることになったのも、GSoC があったからだと思います。
向井: 技術力が身につくのはもちろんですが、例えば、英語のメーリングリスト上で行われるディスカッションの進め方など、大学の研究所ではあまり得られない知識や経験が身につきます。
服部: 僕は専攻がハードウェアだったんですが、GSoC でソフトウェアの開発に直接携われて、そこからいろいろあって Google に入社できたんだと思います。
全員: おおー。

Q. 応募にあたっての準備や心構えなど、学生にアドバイスがあればぜひ教えてください。

鵜飼: まず、やってみたいプロジェクトを選ぶこと、わからないことがあればメンターにどんどん聞くことです。むしろ、いままで開発をやったことがないけれど、やってみたい人を後押しするための仕組みなので、背伸びをするくらいが良いんです。
花岡: そう。「ちょっとわからないけど、やってみたい」がちょうど良いと思います。
向井: 提案書作成の際に自己アピールを心がけることも重要だと思います。(※) なぜ興味を持ったのか、メンターも学生さんに興味がありますし。

GSoC Student Guide には提案書のサンプルもあるのでぜひご活用ください。

Q. 採択される秘訣、その他裏話があれば教えてください。

鵜飼: 多くの場合、応募をする前にメンターの人たちにコンタクトを取ることが可能なので、質問をしたり、事前に情報収集をすることがおすすめです。
向井: その組織のメーリングリスト上のディスカッションを見て雰囲気をつかむこともできますね。
服部: 僕は提案書の作成や実際の開発より、振込先登録などの手続きに手こずりましたが。
向井、花岡: 同じく。

Q. ありがとうございました。最後に、給付金は何に使いましたか?

花岡: 普通に貯金しました。
向井: 僕も貯金した気がします。
服部: 開発をさらに快適に進められるよう(?)人間工学に基づいたデスクチェアーの購入にあてました。(笑)

参考になりましたでしょうか。

Google は 2011 å¹´ 3 月 28 日から 4 月 8 日(金)19:00 UTC まで学生の皆さんからの応募を受付けています。申込み方法や多くの学生に最も重要な T シャツに関する情報など、参加のための詳しい条件は次のサイト(英語)をご覧ください。

http://socghop.appspot.com

日本語で GSoC 関係者や経験者に質問したい方はぜひ GSoC メーリングリスト (日本語) もご利用ください。

皆さまからのご応募お待ちしております!

参考

Google Japan 公式ブログ上で過去に掲載された GSoC 関連記事
2010å¹´  http://googlejapan.blogspot.com/2010/04/google-summer-of-code.html
2009å¹´  http://googlejapan.blogspot.com/2009/03/google-summer-of-code-2009.html
2008å¹´  http://googlejapan.blogspot.com/2008/03/google-summer-of-code-2008_9888.html

Google エンジニア インタビューシリーズ 第 1 å¼¾: 鵜飼文敏
2007å¹´  http://googlejapan.blogspot.com/2007/06/google-1.html
Share on Twitter Share on Facebook

[本記事は、Google のオープンソースプロジェクトやプログラムに関するブログ 「OpenSource at Google」 にオープンソースチームの Ellen Ko が投稿した「Now on YouTube: googleOSPO」というポストの一部を翻訳したものです。-山崎]




また、学生の皆さん向けには、「student programs channel」 というチャンネルを既に用意しており、Google Summer of Code のビデオ、プレゼン資料などをご覧いただけます。こちらもあわせてご覧ください。

Share on Twitter Share on Facebook