Go Wiki: Go talks

講演のプレゼンテーションについては、http://talks.golang.org をご覧ください。包括的で、厳選された、検索可能なインデックスについては、Damian GryskiによるGopherVidsをお試しください。

公式

入門講演

Go入門

Russ CoxのGoツアー

[ビデオとディスカッション]

Goを高速、楽しく、生産的にする3つの要素:インターフェース、リフレクション、並行性。これらをデモンストレーションするために、おもちゃのWebクローラーを構築します。

Go:シンプルなプログラミング環境

[ビデオ] [別のビデオ] [スライド]

Goは、効率的な静的型付け言語と生産的な動的言語のギャップを埋める汎用言語です。しかし、Goを特別なものにしているのは言語だけではありません。Goは広範で一貫性のある標準ライブラリと強力でありながらシンプルなツールを備えています。

この講演では、Goの紹介に続いて、Goプログラミング環境の能力、スコープ、シンプルさを示す実際のプログラムのツアーを行います。

Goを始めよう

[ビデオ]

このセッションでは、Goをインストールしてシンプルながらも便利なプログラムを作成することで、言語とその標準ライブラリとツールの感触をつかみます。

Goプログラミング

[ビデオ] [コード]

Rob PikeとRuss CoxがGoogle I/O 2010で行ったプレゼンテーション。Goでのプログラミングが他の言語とどのように異なるか、Go特有の機能を示す一連の例を通して説明します。これらには、並行性、埋め込み型、任意の型に対するメソッド、インターフェースを使用したプログラム構築が含まれます。

Go Tech Talk

[ビデオ] [スライド]

Rob Pikeが2009年10月にGoogleで行った1時間の講演。この言語の最初の公開紹介です。言語は作成されてから変更されていますが、それでも良い入門書です。

Goでの開発

GoでWebアプリを作成する

[ビデオ] [スライド]

Rob PikeとAndrew GerrandがGoogle I/O 2011で発表した講演。シンプルなWebアプリケーションの構築とデプロイメントについて説明し、App EngineのGoランタイムを紹介します。

実世界のGo

[ビデオ] [スライド]

Andrew GerrandがGoogle I/O Bootcamp 2011で発表した講演。Goの型システムと並行性モデルの概要を説明し、現実の問題を解決するGoプログラムの4つの例を示します。

Google Cloud Platformでの統合アプリの構築

[ビデオ]

Andrew GerrandがGoogle Developer Day Japan 2011で発表した講演。Google App Engineで実行され、Google Cloud Storageに格納されているレイトレース画像をレンダリングするWebアプリケーションの開発について説明します。

App EngineでのGoによる高性能アプリ

Google I/O、2013年5月

[ビデオ] [スライド]

実践的なGoプログラミング

[ビデオ] [スライド] [コード]

この講演では、Goで完全なWebアプリケーションを開発する方法を紹介します。URL短縮サービスの簡単な例を使用して、設計、ストレージ、並行性、スケーリングの問題を詳細に検討します。

Goでの字句スキャン

[ビデオ]

Rob PikeによるこのGTUG講演では、Goの機能を表現力豊かに組み合わせて使用する字句スキャナーの詳細な設計について説明します。(初期化時にゴルーチンを避けることについての最後の議論は古くなっています。Go 1ではinit関数でゴルーチンが許可されているため、余分な複雑さは不要です。)

Goの本番環境での利用

Google I/O、2012年6月

[ビデオ]

2009年にGoがリリースされて以来、多くの企業(もちろんGoogle以外にも)がこの言語を使用してクールなものを作成しています。このセッションでは、いくつかの企業のプログラマーが、本番環境でGoを使用した経験を直接共有します。

Go:優雅に成長するコード

[ビデオ] [スライド]

Goプログラミング言語の主要な設計目標の1つは、コードの適応性です。つまり、シンプルな設計を取り、それをクリーンで自然な方法で構築するのが簡単であるべきです。この講演では、着信TCP接続のペアを一致させるシンプルな「チャットルーレット」サーバーについて説明し、Goの並行性メカニズム、インターフェース、標準ライブラリを使用して、Webインターフェースやその他の機能で拡張します。プログラムの機能は劇的に変化しますが、Goの固有の柔軟性により、元の設計は成長してもそのまま維持されます。

bignum計算機の実装

[ビデオ] [スライド]

Rob Pikeは、APLのような計算機言語のインタープリターについて説明します。

Go in Go

[ビデオ] [スライド]

Rob Pikeは、GoツールチェーンをCからGoに移行することについて講演します

Goでの並行性

Goの並行性パターン

Google I/O、2012年6月

[ビデオ]

高度な並行性パターン

[ビデオ] [スライド]

Google I/0、2013年5月

並行性は、高性能ネットワークサービスを設計するための鍵です。この講演では、昨年好評だったGo Concurrency Patterns講演を拡張し、Goの並行性プリミティブをより深く掘り下げ、複雑な並行性の問題をシンプルなGoコードでどのように優雅に解決できるかを見ていきます。

Goの設計

Goの表現力

[スライド]

Goを表現力豊かで分かりやすい言語にする性質についての議論。この講演は、Rob PikeがJAOO 2010で行いました。ハードウェアエラーのため、イベントの記録は失われました。

言語設計への新たな挑戦:Go

[シドニー大学からのビデオ] [スライド]

Goの主要な機能のツアーと背景説明。この言語を初めて学ぶ方を対象としています。この講演はOSCON 2010で行われました。この講演は、2010年9月にシドニー大学でも行われました。

Go Emerging Languages Conference講演

[ビデオ] [スライド]

Rob PikeのEmerging Languages Conferenceプレゼンテーション。2010年7月に配信されました。講演概要

Goの並行性へのアプローチは、並行性を中心とする言語(Erlangなど)でさえ、多くの言語のアプローチとは異なりますが、深いルーツを持っています。1978年のHoareの論文からGoへの道は、Goがどのように、そしてなぜそのように機能するのかについての洞察を提供します。

Goの現状

2014年6月

[ビデオ] [スライド]

2015年2月

[ビデオ] [スライド]

2015年5月

[ビデオ] [スライド]

その他

GCCのGoフロントエンド

[論文]

gccのGo言語フロントエンドの説明。Ian Lance TaylorがGCC Summit 2010で発表した論文。

Goプロモーションビデオ

[ビデオ]

Goの高速コンパイラをRuss Cox氏が実演する短いプロモーションビデオです。

Goチームの紹介

Google I/O、2012年6月

[ビデオ]

David Symonds、Robert Griesemer、Rob Pike、Ken Thompson、Andrew Gerrand、Brad Fitzpatrickによるパネルディスカッション。

Goチームとの炉辺談話

Google I/0、2013年5月

[ビデオ]

Andrew Gerrand、Brad Fitzpatrick、David Symonds、Ian Lance Taylor、Nigel Tao、Rob Pike、Robert Griesemer、Sameer Ajmaniとの炉辺談話。

Go言語の現状

[ビデオ] [スライド]

非公式

コミュニティメンバーによる講演。

Let's Go、またはGo入門

[ビデオ (14:35から開始)] [スライド] [ソースコード]

この講演はロシア語でGo言語を紹介しています。

Goモジュールとは何か、そしてどのように使うのか?

Paul Jolly 氏による LondonGophers での講演

[ビデオ] [スライド]

Go 1.11の新機能

Daniel Martì 氏による LondonGophers での講演

[ビデオ] [スライド]

Go 1.11リリースの先行紹介

WebAssemblyを始めよう

Johan Brandhorst 氏による LondonGophers での講演

[ビデオ] [スライド] [WebAssemblyコード] [gRPCコード]

この講演では、Johan氏がGo 1.11のWebAssemblyポートと、JavaScriptの複雑さを扱う際にどのように役立つのかを紹介します。

GoとMongo - そしてその変化

DJ Walker-Morgan 氏による LondonGophers での講演

[ビデオ] [スライド]

Goを使ったシンプルな並行性教育言語の構築

Nicholas Ng 氏による LondonGophers での講演

[ビデオ] [スライド]

この講演でNicholas氏は、並行性理論(プロセス計算)を教えるために設計されたシンプルな言語の設計と実装を、Goを使って実装したものを紹介します。彼は、実装で使用されているGoの静的解析ツールの一部を取り上げ、それらの使用方法を紹介します。

Remotoの紹介

Mat Ryer 氏による **LondonGophers** での講演

[ビデオ]

Mat氏は、RPCサービスの構築を容易にすることを目的とした新しいプロジェクトRemotoを初めて紹介します。gRPCはクライアント(特にWeb)には適しておらず、RESTful設計はAPIを混乱させることがあります。Remotoでは、Goインターフェースを使用してサービスを定義し、サービスの構築と利用に必要なすべてを生成できます。

Go Swagger

Simone Trubian 氏による **LondonGophers** での講演

[ビデオ]

Simone氏は、Go Swaggerコマンドラインツールの概要を説明し、REST APIの設計における生産性を向上させるためにどのように使用したかを簡単に説明します。

GoにおけるORM

Renato Serra氏による **LondonGophers** での講演

[ビデオ]

Renato氏は、ORMが役立つ場面、選択肢、そして実際に使用した経験について説明します。

Goコードにおける未使用のパラメータ

Daniel Martì 氏による LondonGophers での講演

[ビデオ] [スライド]

Daniel氏は、SSAとコールグラフを使用して強力なコード解析ツールを作成する方法について説明します。特に、関数内で未使用のパラメータを検出する方法を実演します。

嘘、大嘘、そしてベンチマーク

Amnon氏による **LondonGophers** での講演

[ビデオ] [スライド]

Amnon氏は、マイクロベンチマークが現実のシステムを最適化する際に誤解を招く可能性がある理由、データレイアウトがコード構造よりも重要な場合が多い理由、そしてGoがパフォーマンスの追求にどのように役立つのかについて説明します。

ゼロから作るデバッガ

Liz Rice 氏による **LondonGophers** での講演

[ビデオ] [スライド] [コード]

Liz氏は、数行のGoコードでデバッガを構築することで、デバッガの仕組みを説明します。これには、Goのソースコードとコンパイルされるマシンコード命令との間のマッピング、ptraceシステムコールを使用したブレークポイントの設定、実行中のプロセスの検査と変更が含まれます。

SDLを使った高速フラクタルの楽しみ

Sue Spence 氏による **LondonGophers** での講演

[ビデオ] [スライド] [コード]

マンデルブロ集合やジュリア集合のような画像を作成するGoプログラムは、多くの場合、画像ファイルを出力します。この講演では、Simple DirectMedia LayerライブラリのGoバインディングを使用して、ディスプレイデバイスに出力する方法を紹介します。

並行性:RubyからGoへの旅

Mathilda Thompson氏による **LondonGophers** での講演

[ビデオ]

多言語環境におけるGo

Kevin McKelvin 氏による **LondonGophers** での講演

[ビデオ]

この講演でKevin氏は、Goを導入し、多言語環境に移行した経験、成功と課題、そしてGoが彼の会社の全体的なアーキテクチャと戦略にどのように適合しているかについて説明します。

Goサービスの提供

Zak Knill 氏による **LondonGophers** での講演

[ビデオ]

Goサービスの提供:会社にGoを導入し、最初のGoサービスをデプロイした後、次のステップは何でしょうか?この講演では、次のステップについて、「X(10、20、30)分で本番環境に新しいサービスを」という有名な話や、その過程での落とし穴にも触れながら説明します。

GoでLambdaを使う

David Blooman 氏による **LondonGophers** での講演

[ビデオ]

GoでLambdaを使う - 本番環境での1年間:私たち(FundApps)は、金融サービスのデータのインポート/スクレイピング/解析を行うサービスを構築し、その上にAPIを構築するために、lambda関数でGoを使用しました。Goでのlambda関数のヒントとコツ、制限事項、パフォーマンス、Apexフレームワークの使用について説明します。

REDメソッド

Tom Wilkie 氏による **LondonGophers** での講演

[ビデオ]

また、採用活動をしている方、または採用を希望している方のためのセクションも設けています(前回のように見逃してしまう場合は、遠慮なくお知らせください)。

Goのnetパッケージを楽しく有益に悪用する

Michał Witkowski 氏による **LondonGophers** での講演

[ビデオ]

この講演では、Goのコンポジションベースの哲学をnetパッケージに適用することで、スタックの機能を大幅に拡張する美しく有用なハックを作成する方法について詳しく説明します。net.Connを探求し、それらをどのように創造的に(悪)用できるかを探ります。net/httpを覗き見し、http.Handlerとhttp.Roundtripperインターフェースを創造的に利用して便利なミドルウェアを構築する方法を探ります。そして、net/httpの内部構造と、tls.Connやx/net/http2との関連性についてさらに深く掘り下げ、それらがどのように機能するかを理解し、その知識を基に、最も美しいハックのいくつかを紹介します。

2018年のstringer

Daniel Martì 氏による LondonGophers での講演

[ビデオ] [スライド]

2018年のstringer - あなたが聞いたことがないであろう新機能のデモンストレーション。


このコンテンツは Go Wiki の一部です。