PyQオフィシャルブログ

Pythonのオンライン学習プラットフォームPyQのオフィシャルブログです

【Pythonエンジニア列伝:vol.4】cocoatomoさんに、 Pythonドキュメント日本語訳プロジェクトの足跡を聞きました。

f:id:nana_yu:20180502145953p:plain

この記事はPythonエンジニア列伝第四回の2記事目です

Pythonエンジニア列伝は、「Pythonエンジニアたちのインタビューを通して、Pythonを使う人達がどんな人なのか、どんな場面で活用しているのか、なぜPythonに出会ったかなどを紐解く」連載です。

連載はトピックごとになっているので記事単体でも読むことができます。この記事では、Pythonドキュメントの日本語訳プロジェクトへの関わりとプロジェクトの足跡のお話をききました。バックナンバーは下記を参照してください。

バックナンバー

連載は全7回の予定です。

  • その1…cocoatomoさんの紹介と技術ドキュメント翻訳との関わりや歴史を伺いました

pyq.jp

CPython翻訳プロジェクトについて

プロジェクトとの出会い

cocoatomo

Dive into Pythonを翻訳した次の年の、社会人3年目、2010年ぐらいですかね。そのあたりで今のCPythonのドキュメントが2.5から2.6に変わったんですよね。

Python2.6自体は2008年がファーストリリースなんですが、この間にGeorg がドキュメンテーションツール Sphinx を作ったので、2.5でLaTeXだったドキュメントの作成ツールが2.6からSphinxに変わったんですよ。

最初にそのドキュメントを日本語に翻訳しようというプロジェクトが発足したのが2.6.2でした。そのプロジェクトをたまたま知って、参加しますと言って翻訳を一部やったのがCPython翻訳の始まりです。そこからずっと参加しています。

f:id:nana_yu:20180316121622p:plain

f:id:nana_yu:20180316122251j:plain
清原

その当時は何人くらいの方が参加されていたんですか?

cocoatomo

SourceForgeで当時の痕跡を見つけてきました。

f:id:nana_yu:20180316121622p:plain

f:id:nana_yu:20180316122251j:plain
清原

すごい。SourceForgeって懐かしいですね。

cocoatomo

確認したところによると、メンバーは、 稲田直哉さん とか 渋川よしきさんなどなど。やはり目立つのは稲田さんですね。

f:id:nana_yu:20180316121622p:plain
f:id:nana_yu:20180316122251j:plain
清原

そうですね、稲田さんは今でも深くPythonに関わってらっしゃいますね。

稲田直哉さん

Python自体の開発にも深く関わっている方です。BDFL Delegateとして(ユニコードや文字コードなど Guido van Rossum のみで判断できない仕様についての)Pythonの仕様の決定もされています。

初期 - CPython翻訳プロジェクト発足当初

f:id:nana_yu:20180316122110p:plain
佐藤CPythonの翻訳プロジェクトは、何人かがネット上で集まって翻訳する中で、どのような進め方をしているんでしょう。

cocoatomo大ざっぱに2つの時期がありまして、私が参加した直後は今はなきGoogle CodeでMercurialで管理されていました。そのころはチケットを起こして「私がこれを翻訳します」と宣言して(プロジェクト管理上の)ロックを取ってました。
f:id:nana_yu:20180316121622p:plain

Google Code

https://code.google.com/

開発者向けにAPIなどを提供したり、オープンソースプロジェクトをホスティングするサービス。2016年1月に閉鎖。現在はGoogle Open SourceGoogle Developers などの後継サービスがGoogleから提供されてますが、閉鎖当時はGitHubなどへの移行を推励していました。

中期 - Google Code終了とGitHubへの移行

cocoatomoそれから、Google Codeがついに終わるぞという時期がありまして。
f:id:nana_yu:20180316121622p:plain
f:id:nana_yu:20180316122251j:plain
清原あったあった。
cocoatomo告知されたのが2015年だ。2年前ですね。その時、稲田さんから突然、データの移行を試してくれって言われて。移行ツールで全部移して、今のGitHubに移ってます。なので履歴は全部消えずに残っていてIssueも移行されてます。
f:id:nana_yu:20180316121622p:plain
f:id:nana_yu:20180316122110p:plain
佐藤GitHubへの移行ツールがあったんですか。
cocoatomo

Googleが出してくれていました。構成は全然違うんですけど、例えばWikiだったらWiki用のレポジトリが個別にできて、という風に、ある程度関連付けて移行することができました。

GitHubに移ってGit管理するようになって、Transifexも使うようになって、というのが、二つ目の波ですかね。翻訳する人はあまりGitHubに触らないとかGit操作をしないっていう状態になりました。実はその裏で管理者が手でやってたんですけど。

f:id:nana_yu:20180316121622p:plain

Transifex

https://transifex.com/

文章やテキストの翻訳をするプラットフォームで、原文への対訳をシステム上で入力していくだけで、翻訳が完了する。

翻訳した結果は .po ファイルとして取得できる。

f:id:nana_yu:20180316122251j:plain
清原ファイルをTransifexからダウンロードしてきてGitにコミットするんですか?
cocoatomo.po fileのダウンロードとコミットはそこでもう自動化されていたんです。 手動でやっていたのは原文の更新の部分ですね。自動化されていた部分は、稲田さんが3.6を担当したから、じゃあ2.7をやってと私が担当を依頼されて、という作業履歴がGitHubで見つかりました。
f:id:nana_yu:20180316121622p:plain
f:id:nana_yu:20180316122251j:plain
清原2人で掛け合いをしながら頑張って進めている。
cocoatomoそうですね、残った人で活発なのがその2人だったんです。
f:id:nana_yu:20180316121622p:plain
f:id:nana_yu:20180316122251j:plain
清原それは管理の部分ということですよね。現在は、アクティブにプロジェクトに参加しているのは何人くらいなんですか?
cocoatomo管理でアクティブなのは私1人ですね。稲田さんはPython自体の開発に関わるようになったので。でも、今は原文の更新も自動化できたので、管理側は一人でも問題ないくらいは楽になっています。
f:id:nana_yu:20180316121622p:plain


現在 - Python.orgドメイン公開に

f:id:nana_yu:20180316122251j:plain
清原今はTransifex上で作業が完結できるんですか?
cocoatomoはい。もう翻訳する人はTransifexだけで作業すれば良い状態になってますね。
f:id:nana_yu:20180316121622p:plain
f:id:nana_yu:20180316122251j:plain
清原なるほど、だいぶ楽になっていますね。当時は大変だったでしょうけど、今から翻訳に参加する人は気軽に協力できそうですね。
cocoatomo原文の更新を自動化する発端はPEP 545で、色々決められているんです。PythonのドキュメントをPython.jpじゃなくてPython.orgの本家のドメイン下で公開しようという内容です。
f:id:nana_yu:20180316121622p:plain

f:id:nana_yu:20180316122251j:plain
清原これ、PEPあるんだ!

PEP

PEPはPython Enhancement Proposal の略で、Pythonの仕様の提案や改善案がまとめられた文章。プロポーザル(=企画・提案)を提出し、内容を精査、承認されることでPythonの正式な仕様や活動として取り込まれていく。

Python 日本語ドキュメントのお引越しについてのブログ記事

対談後、上記の内容のブログ記事を発表されました。本記事でお話されていた内容とさらに掘り下げたお話になっていますのでぜひご覧ください。

tink.elliptium.net

次回の内容と配信スケジュール

PEPというPython独自の仕組みが出てきました。次回はこのPEPにまつわるグローバルなコミュニケーションについて伺います。 次回のPythonエンジニア列伝(その3)は 4/12(木) 配信予定で全7回の予定です。どうぞお楽しみに。

PyQブログの更新は、SNSで告知しています。

その他リリース情報・Pythonお役立ち情報なども配信しています。

PyQ公式Twitter

twitter.com

PyQ公式Facebook

www.facebook.com

連載記事一覧

  • その1…cocoatomoさんの紹介と技術ドキュメント翻訳との関わりや歴史を伺いました
  • その2…この記事です
  • その3…PEP454と翻訳にともなうグローバルなコミュニケーションのお話を聞きました。
  • その4…プロジェクトへの参加方法とPythonコミュニティのメリットを聞きました。
  • その5…語学面でのドキュメント翻訳の難しい所や、モチベーションの保ち方を聞きました。
  • その6…cocoatomoさんというPythonistaのこれまでの足跡を聞きました。
  • その7…(最終回)cocoatomoさんの今後の展望や活動について・PyQについてききました。

エンジニア列伝アーカイブ

過去回も充実した内容です。次回配信までにいかがですか?

第一回:清水川貴之さん

第二回:鈴木たかのりさん

第三回:石本敦夫さん

pyq.jp

Copyright ©2017-2018 BeProud Inc. All rights reserved.