SlideShare ist ein Scribd-Unternehmen logo
1 von 50
Downloaden Sie, um offline zu lesen
SIerでもSphinxを使いた 
い! 総括 
2014/10/26 SphinxCon JP 2014 
@kk_Ataka
自己紹介 
4 Twitter: @kk_Ataka 
4 GitHub: gosyujin 
4 普段いるところ 
4 Kawasaki.rb 
4 Jekyllrb-ja(主催) 
4 Python力 
4 文法もまだあやしい
発表の趣旨 
4 SIerでもSphinxを使いたいので職場で奮闘してみた備忘録 
4 利用事例 
4 拡張の紹介 
4 Kawasaki.rbというイベントで話した内容の総集編 
4 できたこと、できなかったこと含めて駆け足で共有します 
4 主観が多め
今日話さないこと 
4 Sphinxとはなんぞや 
4 reST記法とはなんぞや 
4 Sphinxのインストール方法とか使い方とか
アジェンダ 
1. 競合ツールとの比較 
2. 導入のためのあれこれ、または導入後の課題 
3. 実際に導入してみた感想
競合ツールとの比較
競合ツールとの比較! 
4 導入するためには上の人を説得するための政治が必要… 
4 競合ツールと比較してよさ気と思ったことを伝えていく 
1. Office(Word, Excel) 
2. Wiki, Markdown 
3. Sphinx 
4 好きな言葉「適材適所」
比較1 Office
Office 長所 
4 SI界のスタンダード 
4 WYSIWYGな操作 
4 きめ細かいデザインが可能 
4 図やフローの挿入が容易 
4 誰のPCにも入っていて、誰でも使える
!?
Office 短所 
4 あらゆるものがOfficeで作成され、至る所にちらかる 
4 日付バージョン管理…(主観) 
4 恐怖の「 議事録_20140505_2(最新)(xx修正).xls 」 
4 検索性が非常に悪い 
4 違うシートとか、吹出しとか 非表示とか…探せない…
Office 短所 
4 diffが取るのがメンドくさい 
4 取れないとは言ってない、最近は取れるっぽい 
4 ミリ単位のレイアウト修正を強いられる 
4 リストとかすぐ壊れる 
4 内容を集中して書かせて! 
4 (職人芸が発揮されるほど)重い
番外 
Officeのいいところ…カット!
Officeのいいところ 
4 Officeでしかできないことも、ある 
4 過去資料でいいところあげてます! 
4 ようは適材適所でよろしくお願いします
比較2 Wiki, Markdown と 
Sphinx
Wiki, Markdown と Sphinx の長所 
Officeで短所として挙げた問題は解消できている!…と思う
Wiki, Markdown と Sphinx の長所 
> あらゆるものがOfficeで作成され、至る所にちらかる 問題 
4 プレーンテキストで作成される 
4 Officeよりは探しやすいんじゃないかと思うのだが… 
4 ブラウザ、エディタの検索とか、Wiki内検索とか
Wiki, Markdown と Sphinx の長所 
> diffが取るのがメンドくさい 問題 
4 Markdownはプレーンテキストなので簡単 
4 バージョン管理もしやすい 
4 Wikiもだいたい差分表示機能あり 
4 diff取りやすい
Wiki, Markdown と Sphinx の長所 
> ミリ単位のレイアウト修正 問題 
4 出力先(html+css、pdfなど)である程度統一できる
Wiki, Markdown と Sphinx の短所 
Officeでは特に意識していなかったことを考慮する必要あり
Wiki, Markdown と Sphinx の短所 
4 記法を覚える必要がある 
4 未経験者にちょい敷居が高い… 
4 「特定部分のみ」のレイアウト修正 
4 cssなどに独自の処理を入れなければならない 
4 図やフローの挿入はタグで挿入 
4 直感的にいじれない(現物をD&D…)
Wiki, Markdown の短所 
4 検索性はあまりよくない 
4 しっかり作れば… 
4 それでもOffice + 共有サーバコンボよりは… 
4 重い 
4 体感としては Office > Wiki, Markdown > Sphinx 
4 サーバ性能とか同時アクセス数によるけど
Sphinx だけの長所 
4 体系的なドキュメントの骨組みを簡単に整えられる 強力な 
機能がある 
4 この辺をサクッとよろしくやってくれているのが 
doctree...である気がする(まだ未調査) 
4 Wikiとかでこれを整備するのはちょっとしんどい
Sphinx だけの長所 
4 検索性はよいと思う 
4 体系的にまとまるため 
4 軽い 
4 Outputが静的ファイル 
4 htmlをWebサーバに置けば静的ファイルを取ってくるの 
と変わらない
ここまでのまとめ 
4 慣れ親しんだOfficeから脱却したい、管理しやすい形式で 
ドキュメント作成に挑戦してみよう 
4 ならば Wiki, Markdown か Sphinx だ! 
4 TipsとかならWiki, Markdownでもいいけど、ドキュメン 
トなのである程度体系的に管理したい 
4 体系的に管理するのが得意な Sphinx だ! 
結論: 一回Sphinxチャレンジしてみましょう!
導入のためのあれこれ、 
または導入後の課題
導入するための壁 
1. 対プロジェクトメンバー(PM)に対して(布教) 
2. 対顧客に対して(納品)
壁1. 対PM
対PM 登場人物 
4 自分 
4 Sphinxを導入したい人、基本的になんでもやる 
4 メンバー 
4 導入したSphinxを使ってほしい人
対PM 「自分」の仕事 
4 今回はreSTで進めることの明確な宣言とサポート 
4 一番大事 
4 これができないと負の成果物が生成される…
対PM 「自分」の仕事 
4 メンバーが「rstファイルを開いてドキュメント作成」に注 
力できる環境を作る 
1. sphinx-quickstartで下準備 
2. ドキュメント自体のアウトライン作成 
3. doctreeの作成 
などなど
対PM 「自分」の仕事 
4 ビルド環境、デプロイ環境などもお膳立て 
4 ビルドはJenkinsなどで拾う 
4 デプロイはApacheにhtmlファイル配備とか(お手軽)
対PM 「メンバー」の仕事 
4 reST記法を覚えてもらう 
4 Markdown -> reST -> Outputという裏技もある 
(Pandoc経由) 
4 バージョン管理ツールとかの話は…割愛
対PM 課題 
4 ローカルPCでのプレビュー 
4 メンバーのPCにSphinxを入れてもらうのは厳しい… 
4 そうすると、確認できるのがサーバにプッシュした時の 
みになってしまう 
4 ローカルで簡単にreSTプレビューできないだろうか… 
4 GitHubとか使えばある程度できるんだけど
対PM 課題 
4 プロジェクト(会社)の風土にあわせたカスタマイズが必要 
かも 
4 こういうレイアウトがいい 
4 こういうヘッダフッタがほしい 
4 こういう改訂履歴ページがほしい
対PM 課題 
4 今回は「変更履歴」出力プラグイン作ってみた 
4 sphinxcontrib-releasenotesプラグイン 
4 .. releasenotes:: ディレクティブを追加したところにGit 
のコミットログと差分を貼り付け 
4 Git使えない人用
壁2. 対顧客
対顧客 登場人物 
4 プロジェクト 
4 Sphinxでドキュメント納品する側 
4 顧客 (社内の人 or 社外の人) 
4 ドキュメントを納品される側 
4 歴史的経緯からOfficeで納品される事が多い 
4 例外はJavadocとか?
対顧客 「プロジェクト」側の仕事 
4 Sphinxで作成するドキュメントに関して「今回はOfficeじ 
ゃない形式で設計書とか書きますよ」の合意を得とく
対顧客 「顧客」側の仕事 
4 特になし?心構えくらい?
対顧客 課題 
4 納品形式 最重要(次ページ参照) 
4 納品後 「誰が」 保守するのか 
4 顧客が巻取ってしまう場合、どう保守すればよいのか 
4 要解決事項、誰かどうやってるか教えてください… 
4 これが解決できないと、Sphinxは納品対象外ドキュ 
メントにしか適用できない…
実際に導入してみた感想
環境 
4 3ヶ月位のほぼ1人プロジェクトで「社内資料」をSphinx! 
4 社内資料なので、納品関係の課題はスルー 
4 環境揃えたい放題 
4 Git + Sphinx + Jenkins etc 
4 途中で1人サポートに入ってもらった
結果 
4 Gitでバージョン管理、テキストなので差分管理も簡単! 
4 エディタが軽いので作成が快適! 
4 Outputからお目当ての章が見やすい!探しやすい! 
4 Outputは、意外と営業の人に受けが良かった! 
4 「え?なにこれ?なんてツール?あとで教えて」
結論 
4 競合ツールとの比較 
4 ドキュメントを書くスピードは早いよ! 
4 導入のためのあれこれ、または導入後の課題 
4 「Sphinxで書いていく!」空気を作るのが難しい 
4 個人的には、「仲間(賛同者)」がいてくれると助かる
結論 
4 メンバーにreSTを書いてもらうのが難しい 
4 メリットの周知、慣例からの脱却までが長い 
4 納品物にするにはちょっと課題が多いかも 
4 今回解決の糸口は見つからず…

Weitere ähnliche Inhalte

Was ist angesagt?

テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなKentaro Matsui
 
ジョブ管理でcronは限界があったので”Rundeck”を使ってハッピーになりました
ジョブ管理でcronは限界があったので”Rundeck”を使ってハッピーになりましたジョブ管理でcronは限界があったので”Rundeck”を使ってハッピーになりました
ジョブ管理でcronは限界があったので”Rundeck”を使ってハッピーになりましたYukiya Hayashi
 
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture世界一わかりやすいClean Architecture
世界一わかりやすいClean ArchitectureAtsushi Nakamura
 
続・パワポは「最後」に開く-もっとみがく!プレゼン資料作成術「大掃除編」
続・パワポは「最後」に開く-もっとみがく!プレゼン資料作成術「大掃除編」続・パワポは「最後」に開く-もっとみがく!プレゼン資料作成術「大掃除編」
続・パワポは「最後」に開く-もっとみがく!プレゼン資料作成術「大掃除編」Michiyo Fukada
 
Neo4j の「データ操作プログラミング」から 「ビジュアライズ」まで
Neo4j の「データ操作プログラミング」から 「ビジュアライズ」までNeo4j の「データ操作プログラミング」から 「ビジュアライズ」まで
Neo4j の「データ操作プログラミング」から 「ビジュアライズ」までKeiichiro Seida
 
テストコードの DRY と DAMP
テストコードの DRY と DAMPテストコードの DRY と DAMP
テストコードの DRY と DAMPYusuke Kagata
 
社内ドキュメント検索システム構築のノウハウ
社内ドキュメント検索システム構築のノウハウ社内ドキュメント検索システム構築のノウハウ
社内ドキュメント検索システム構築のノウハウShinsuke Sugaya
 
OSSを利用したプロジェクト管理
OSSを利用したプロジェクト管理OSSを利用したプロジェクト管理
OSSを利用したプロジェクト管理Tadashi Miyazato
 
【15-A-4】Redmine + Lychee 導入のアンチパターン
【15-A-4】Redmine + Lychee 導入のアンチパターン【15-A-4】Redmine + Lychee 導入のアンチパターン
【15-A-4】Redmine + Lychee 導入のアンチパターンDevelopers Summit
 
劇的改善 CI 4時間から5分へ〜私がやった10のこと〜
劇的改善 CI 4時間から5分へ〜私がやった10のこと〜劇的改善 CI 4時間から5分へ〜私がやった10のこと〜
劇的改善 CI 4時間から5分へ〜私がやった10のこと〜Recruit Lifestyle Co., Ltd.
 
ラクしていい感じのスライドを作るための2つのポイント
ラクしていい感じのスライドを作るための2つのポイントラクしていい感じのスライドを作るための2つのポイント
ラクしていい感じのスライドを作るための2つのポイントKairi Ishizuka
 
高速なソートアルゴリズムを書こう!!
高速なソートアルゴリズムを書こう!!高速なソートアルゴリズムを書こう!!
高速なソートアルゴリズムを書こう!!masakazu matsubara
 
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜Preferred Networks
 
Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.
Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.
Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.kiki utagawa
 
40歳過ぎてもエンジニアでいるためにやっていること
40歳過ぎてもエンジニアでいるためにやっていること40歳過ぎてもエンジニアでいるためにやっていること
40歳過ぎてもエンジニアでいるためにやっていることonozaty
 
UnrealEngine4で合成音声を使いたい
UnrealEngine4で合成音声を使いたいUnrealEngine4で合成音声を使いたい
UnrealEngine4で合成音声を使いたいItsuki Inoue
 
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織Takafumi ONAKA
 
サイバーエージェントにおけるMLOpsに関する取り組み at PyDataTokyo 23
サイバーエージェントにおけるMLOpsに関する取り組み at PyDataTokyo 23サイバーエージェントにおけるMLOpsに関する取り組み at PyDataTokyo 23
サイバーエージェントにおけるMLOpsに関する取り組み at PyDataTokyo 23Masashi Shibata
 
PythonによるCVアルゴリズム実装
PythonによるCVアルゴリズム実装PythonによるCVアルゴリズム実装
PythonによるCVアルゴリズム実装Hirokatsu Kataoka
 
WebRTC SFU mediasoup sample
WebRTC SFU mediasoup sampleWebRTC SFU mediasoup sample
WebRTC SFU mediasoup samplemganeko
 

Was ist angesagt? (20)

テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
 
ジョブ管理でcronは限界があったので”Rundeck”を使ってハッピーになりました
ジョブ管理でcronは限界があったので”Rundeck”を使ってハッピーになりましたジョブ管理でcronは限界があったので”Rundeck”を使ってハッピーになりました
ジョブ管理でcronは限界があったので”Rundeck”を使ってハッピーになりました
 
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
 
続・パワポは「最後」に開く-もっとみがく!プレゼン資料作成術「大掃除編」
続・パワポは「最後」に開く-もっとみがく!プレゼン資料作成術「大掃除編」続・パワポは「最後」に開く-もっとみがく!プレゼン資料作成術「大掃除編」
続・パワポは「最後」に開く-もっとみがく!プレゼン資料作成術「大掃除編」
 
Neo4j の「データ操作プログラミング」から 「ビジュアライズ」まで
Neo4j の「データ操作プログラミング」から 「ビジュアライズ」までNeo4j の「データ操作プログラミング」から 「ビジュアライズ」まで
Neo4j の「データ操作プログラミング」から 「ビジュアライズ」まで
 
テストコードの DRY と DAMP
テストコードの DRY と DAMPテストコードの DRY と DAMP
テストコードの DRY と DAMP
 
社内ドキュメント検索システム構築のノウハウ
社内ドキュメント検索システム構築のノウハウ社内ドキュメント検索システム構築のノウハウ
社内ドキュメント検索システム構築のノウハウ
 
OSSを利用したプロジェクト管理
OSSを利用したプロジェクト管理OSSを利用したプロジェクト管理
OSSを利用したプロジェクト管理
 
【15-A-4】Redmine + Lychee 導入のアンチパターン
【15-A-4】Redmine + Lychee 導入のアンチパターン【15-A-4】Redmine + Lychee 導入のアンチパターン
【15-A-4】Redmine + Lychee 導入のアンチパターン
 
劇的改善 CI 4時間から5分へ〜私がやった10のこと〜
劇的改善 CI 4時間から5分へ〜私がやった10のこと〜劇的改善 CI 4時間から5分へ〜私がやった10のこと〜
劇的改善 CI 4時間から5分へ〜私がやった10のこと〜
 
ラクしていい感じのスライドを作るための2つのポイント
ラクしていい感じのスライドを作るための2つのポイントラクしていい感じのスライドを作るための2つのポイント
ラクしていい感じのスライドを作るための2つのポイント
 
高速なソートアルゴリズムを書こう!!
高速なソートアルゴリズムを書こう!!高速なソートアルゴリズムを書こう!!
高速なソートアルゴリズムを書こう!!
 
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
 
Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.
Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.
Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.
 
40歳過ぎてもエンジニアでいるためにやっていること
40歳過ぎてもエンジニアでいるためにやっていること40歳過ぎてもエンジニアでいるためにやっていること
40歳過ぎてもエンジニアでいるためにやっていること
 
UnrealEngine4で合成音声を使いたい
UnrealEngine4で合成音声を使いたいUnrealEngine4で合成音声を使いたい
UnrealEngine4で合成音声を使いたい
 
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
 
サイバーエージェントにおけるMLOpsに関する取り組み at PyDataTokyo 23
サイバーエージェントにおけるMLOpsに関する取り組み at PyDataTokyo 23サイバーエージェントにおけるMLOpsに関する取り組み at PyDataTokyo 23
サイバーエージェントにおけるMLOpsに関する取り組み at PyDataTokyo 23
 
PythonによるCVアルゴリズム実装
PythonによるCVアルゴリズム実装PythonによるCVアルゴリズム実装
PythonによるCVアルゴリズム実装
 
WebRTC SFU mediasoup sample
WebRTC SFU mediasoup sampleWebRTC SFU mediasoup sample
WebRTC SFU mediasoup sample
 

Andere mochten auch

Sphinx HTML Theme Hacks
Sphinx HTML Theme HacksSphinx HTML Theme Hacks
Sphinx HTML Theme HacksShoji KUMAGAI
 
Oktavia全文検索エンジン - SphinxCon JP 2014
Oktavia全文検索エンジン - SphinxCon JP 2014Oktavia全文検索エンジン - SphinxCon JP 2014
Oktavia全文検索エンジン - SphinxCon JP 2014Yoshiki Shibukawa
 
Sphinx拡張 探訪 2014 #sphinxjp
Sphinx拡張 探訪 2014 #sphinxjpSphinx拡張 探訪 2014 #sphinxjp
Sphinx拡張 探訪 2014 #sphinxjpTakeshi Komiya
 
APIドキュメントの話 #sphinxjp
APIドキュメントの話 #sphinxjpAPIドキュメントの話 #sphinxjp
APIドキュメントの話 #sphinxjpTakeshi Komiya
 
Sphinxで社内勉強会(Git)の
資料を作ってみた
Sphinxで社内勉強会(Git)の
資料を作ってみたSphinxで社内勉強会(Git)の
資料を作ってみた
Sphinxで社内勉強会(Git)の
資料を作ってみたTaku SHIMIZU
 
Sphinx で手軽に作るドキュメント
Sphinx で手軽に作るドキュメントSphinx で手軽に作るドキュメント
Sphinx で手軽に作るドキュメントGo Yamada
 
ドキュメントシステムはこれを使え2015年版
ドキュメントシステムはこれを使え2015年版ドキュメントシステムはこれを使え2015年版
ドキュメントシステムはこれを使え2015年版Keiichiro Shikano
 

Andere mochten auch (8)

Markdownもはじめよう
MarkdownもはじめようMarkdownもはじめよう
Markdownもはじめよう
 
Sphinx HTML Theme Hacks
Sphinx HTML Theme HacksSphinx HTML Theme Hacks
Sphinx HTML Theme Hacks
 
Oktavia全文検索エンジン - SphinxCon JP 2014
Oktavia全文検索エンジン - SphinxCon JP 2014Oktavia全文検索エンジン - SphinxCon JP 2014
Oktavia全文検索エンジン - SphinxCon JP 2014
 
Sphinx拡張 探訪 2014 #sphinxjp
Sphinx拡張 探訪 2014 #sphinxjpSphinx拡張 探訪 2014 #sphinxjp
Sphinx拡張 探訪 2014 #sphinxjp
 
APIドキュメントの話 #sphinxjp
APIドキュメントの話 #sphinxjpAPIドキュメントの話 #sphinxjp
APIドキュメントの話 #sphinxjp
 
Sphinxで社内勉強会(Git)の
資料を作ってみた
Sphinxで社内勉強会(Git)の
資料を作ってみたSphinxで社内勉強会(Git)の
資料を作ってみた
Sphinxで社内勉強会(Git)の
資料を作ってみた
 
Sphinx で手軽に作るドキュメント
Sphinx で手軽に作るドキュメントSphinx で手軽に作るドキュメント
Sphinx で手軽に作るドキュメント
 
ドキュメントシステムはこれを使え2015年版
ドキュメントシステムはこれを使え2015年版ドキュメントシステムはこれを使え2015年版
ドキュメントシステムはこれを使え2015年版
 

Ähnlich wie SIerでもSphinxを使いたい!総括

SIerでもSphinxを使いたい! 後編
SIerでもSphinxを使いたい! 後編SIerでもSphinxを使いたい! 後編
SIerでもSphinxを使いたい! 後編kk_Ataka
 
SIerでもSphinxを使いたい! 前編
SIerでもSphinxを使いたい! 前編SIerでもSphinxを使いたい! 前編
SIerでもSphinxを使いたい! 前編kk_Ataka
 
JUS関西 Sphinxワークショップ@関西 Sphinx事例紹介
JUS関西 Sphinxワークショップ@関西 Sphinx事例紹介JUS関西 Sphinxワークショップ@関西 Sphinx事例紹介
JUS関西 Sphinxワークショップ@関西 Sphinx事例紹介kk_Ataka
 
Sphinx ではじめるドキュメント生活 2012 #pyconjp #sphinxconjp
Sphinx ではじめるドキュメント生活 2012 #pyconjp #sphinxconjpSphinx ではじめるドキュメント生活 2012 #pyconjp #sphinxconjp
Sphinx ではじめるドキュメント生活 2012 #pyconjp #sphinxconjpTakeshi Komiya
 
世界のSphinx事情 @ SphinxCon JP 2015
世界のSphinx事情 @ SphinxCon JP 2015世界のSphinx事情 @ SphinxCon JP 2015
世界のSphinx事情 @ SphinxCon JP 2015Takayuki Shimizukawa
 
Sphinx ではじめるドキュメント生活 2013 #sphinxconjp
Sphinx ではじめるドキュメント生活 2013 #sphinxconjpSphinx ではじめるドキュメント生活 2013 #sphinxconjp
Sphinx ではじめるドキュメント生活 2013 #sphinxconjpTakeshi Komiya
 
JUS関西 Sphinxワークショップ@関西 Sphinx紹介
JUS関西 Sphinxワークショップ@関西 Sphinx紹介JUS関西 Sphinxワークショップ@関西 Sphinx紹介
JUS関西 Sphinxワークショップ@関西 Sphinx紹介Takayuki Shimizukawa
 
自社製品のバージョン管理 進化と問題解決の道のり
自社製品のバージョン管理 進化と問題解決の道のり自社製品のバージョン管理 進化と問題解決の道のり
自社製品のバージョン管理 進化と問題解決の道のりStudy Group by SciencePark Corp.
 
SphinxのCIの続き Azure DevOpsでのビルド結果を、認証付きAzure App Serviceに公開するところまで
SphinxのCIの続き Azure DevOpsでのビルド結果を、認証付きAzure App Serviceに公開するところまでSphinxのCIの続き Azure DevOpsでのビルド結果を、認証付きAzure App Serviceに公開するところまで
SphinxのCIの続き Azure DevOpsでのビルド結果を、認証付きAzure App Serviceに公開するところまでStudy Group by SciencePark Corp.
 
Sphinxの使い方事例
Sphinxの使い方事例Sphinxの使い方事例
Sphinxの使い方事例Go Yamada
 
Heroku で作る
スケーラブルな 
PHP アプリケーション
Heroku で作る
スケーラブルな 
PHP アプリケーションHeroku で作る
スケーラブルな 
PHP アプリケーション
Heroku で作る
スケーラブルな 
PHP アプリケーションMasashi Shinbara
 
C++CLIで、ネイティブCの保守開発に.NETを使って楽をしよう
C++CLIで、ネイティブCの保守開発に.NETを使って楽をしようC++CLIで、ネイティブCの保守開発に.NETを使って楽をしよう
C++CLIで、ネイティブCの保守開発に.NETを使って楽をしようStudy Group by SciencePark Corp.
 
ビルド職人頼みの自社製品リリースを、CI可能にした取り組み
ビルド職人頼みの自社製品リリースを、CI可能にした取り組みビルド職人頼みの自社製品リリースを、CI可能にした取り組み
ビルド職人頼みの自社製品リリースを、CI可能にした取り組みStudy Group by SciencePark Corp.
 
Pyconjp2016 pyftplib
Pyconjp2016 pyftplibPyconjp2016 pyftplib
Pyconjp2016 pyftplibShinya Okano
 
Word camp tokyo2014 わぷーステージ振り返り
Word camp tokyo2014 わぷーステージ振り返りWord camp tokyo2014 わぷーステージ振り返り
Word camp tokyo2014 わぷーステージ振り返りSosuke Eguchi
 
CSS Nite LP38に行ってきた
CSS Nite LP38に行ってきたCSS Nite LP38に行ってきた
CSS Nite LP38に行ってきたYasuyuki Fujikawa
 
Sphinxの環境構築が再現できない問題をDockerで解決してみた
Sphinxの環境構築が再現できない問題をDockerで解決してみたSphinxの環境構築が再現できない問題をDockerで解決してみた
Sphinxの環境構築が再現できない問題をDockerで解決してみたStudy Group by SciencePark Corp.
 
Sphinxで作る貢献しやすい ドキュメント翻訳の仕組み
Sphinxで作る貢献しやすいドキュメント翻訳の仕組みSphinxで作る貢献しやすいドキュメント翻訳の仕組み
Sphinxで作る貢献しやすい ドキュメント翻訳の仕組みTakayuki Shimizukawa
 
Cloud Foundryで学ぶ、PaaSのしくみ講座
Cloud Foundryで学ぶ、PaaSのしくみ講座Cloud Foundryで学ぶ、PaaSのしくみ講座
Cloud Foundryで学ぶ、PaaSのしくみ講座Kazuto Kusama
 
.NETのTuple応用チャレンジ WCFとC++/CLI
.NETのTuple応用チャレンジ WCFとC++/CLI.NETのTuple応用チャレンジ WCFとC++/CLI
.NETのTuple応用チャレンジ WCFとC++/CLIkeitasudo1
 

Ähnlich wie SIerでもSphinxを使いたい!総括 (20)

SIerでもSphinxを使いたい! 後編
SIerでもSphinxを使いたい! 後編SIerでもSphinxを使いたい! 後編
SIerでもSphinxを使いたい! 後編
 
SIerでもSphinxを使いたい! 前編
SIerでもSphinxを使いたい! 前編SIerでもSphinxを使いたい! 前編
SIerでもSphinxを使いたい! 前編
 
JUS関西 Sphinxワークショップ@関西 Sphinx事例紹介
JUS関西 Sphinxワークショップ@関西 Sphinx事例紹介JUS関西 Sphinxワークショップ@関西 Sphinx事例紹介
JUS関西 Sphinxワークショップ@関西 Sphinx事例紹介
 
Sphinx ではじめるドキュメント生活 2012 #pyconjp #sphinxconjp
Sphinx ではじめるドキュメント生活 2012 #pyconjp #sphinxconjpSphinx ではじめるドキュメント生活 2012 #pyconjp #sphinxconjp
Sphinx ではじめるドキュメント生活 2012 #pyconjp #sphinxconjp
 
世界のSphinx事情 @ SphinxCon JP 2015
世界のSphinx事情 @ SphinxCon JP 2015世界のSphinx事情 @ SphinxCon JP 2015
世界のSphinx事情 @ SphinxCon JP 2015
 
Sphinx ではじめるドキュメント生活 2013 #sphinxconjp
Sphinx ではじめるドキュメント生活 2013 #sphinxconjpSphinx ではじめるドキュメント生活 2013 #sphinxconjp
Sphinx ではじめるドキュメント生活 2013 #sphinxconjp
 
JUS関西 Sphinxワークショップ@関西 Sphinx紹介
JUS関西 Sphinxワークショップ@関西 Sphinx紹介JUS関西 Sphinxワークショップ@関西 Sphinx紹介
JUS関西 Sphinxワークショップ@関西 Sphinx紹介
 
自社製品のバージョン管理 進化と問題解決の道のり
自社製品のバージョン管理 進化と問題解決の道のり自社製品のバージョン管理 進化と問題解決の道のり
自社製品のバージョン管理 進化と問題解決の道のり
 
SphinxのCIの続き Azure DevOpsでのビルド結果を、認証付きAzure App Serviceに公開するところまで
SphinxのCIの続き Azure DevOpsでのビルド結果を、認証付きAzure App Serviceに公開するところまでSphinxのCIの続き Azure DevOpsでのビルド結果を、認証付きAzure App Serviceに公開するところまで
SphinxのCIの続き Azure DevOpsでのビルド結果を、認証付きAzure App Serviceに公開するところまで
 
Sphinxの使い方事例
Sphinxの使い方事例Sphinxの使い方事例
Sphinxの使い方事例
 
Heroku で作る
スケーラブルな 
PHP アプリケーション
Heroku で作る
スケーラブルな 
PHP アプリケーションHeroku で作る
スケーラブルな 
PHP アプリケーション
Heroku で作る
スケーラブルな 
PHP アプリケーション
 
C++CLIで、ネイティブCの保守開発に.NETを使って楽をしよう
C++CLIで、ネイティブCの保守開発に.NETを使って楽をしようC++CLIで、ネイティブCの保守開発に.NETを使って楽をしよう
C++CLIで、ネイティブCの保守開発に.NETを使って楽をしよう
 
ビルド職人頼みの自社製品リリースを、CI可能にした取り組み
ビルド職人頼みの自社製品リリースを、CI可能にした取り組みビルド職人頼みの自社製品リリースを、CI可能にした取り組み
ビルド職人頼みの自社製品リリースを、CI可能にした取り組み
 
Pyconjp2016 pyftplib
Pyconjp2016 pyftplibPyconjp2016 pyftplib
Pyconjp2016 pyftplib
 
Word camp tokyo2014 わぷーステージ振り返り
Word camp tokyo2014 わぷーステージ振り返りWord camp tokyo2014 わぷーステージ振り返り
Word camp tokyo2014 わぷーステージ振り返り
 
CSS Nite LP38に行ってきた
CSS Nite LP38に行ってきたCSS Nite LP38に行ってきた
CSS Nite LP38に行ってきた
 
Sphinxの環境構築が再現できない問題をDockerで解決してみた
Sphinxの環境構築が再現できない問題をDockerで解決してみたSphinxの環境構築が再現できない問題をDockerで解決してみた
Sphinxの環境構築が再現できない問題をDockerで解決してみた
 
Sphinxで作る貢献しやすい ドキュメント翻訳の仕組み
Sphinxで作る貢献しやすいドキュメント翻訳の仕組みSphinxで作る貢献しやすいドキュメント翻訳の仕組み
Sphinxで作る貢献しやすい ドキュメント翻訳の仕組み
 
Cloud Foundryで学ぶ、PaaSのしくみ講座
Cloud Foundryで学ぶ、PaaSのしくみ講座Cloud Foundryで学ぶ、PaaSのしくみ講座
Cloud Foundryで学ぶ、PaaSのしくみ講座
 
.NETのTuple応用チャレンジ WCFとC++/CLI
.NETのTuple応用チャレンジ WCFとC++/CLI.NETのTuple応用チャレンジ WCFとC++/CLI
.NETのTuple応用チャレンジ WCFとC++/CLI
 

Kürzlich hochgeladen

クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 

Kürzlich hochgeladen (8)

クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 

SIerでもSphinxを使いたい!総括

  • 1. SIerでもSphinxを使いた い! 総括 2014/10/26 SphinxCon JP 2014 @kk_Ataka
  • 2. 自己紹介 4 Twitter: @kk_Ataka 4 GitHub: gosyujin 4 普段いるところ 4 Kawasaki.rb 4 Jekyllrb-ja(主催) 4 Python力 4 文法もまだあやしい
  • 3. 発表の趣旨 4 SIerでもSphinxを使いたいので職場で奮闘してみた備忘録 4 利用事例 4 拡張の紹介 4 Kawasaki.rbというイベントで話した内容の総集編 4 できたこと、できなかったこと含めて駆け足で共有します 4 主観が多め
  • 4. 今日話さないこと 4 Sphinxとはなんぞや 4 reST記法とはなんぞや 4 Sphinxのインストール方法とか使い方とか
  • 5. アジェンダ 1. 競合ツールとの比較 2. 導入のためのあれこれ、または導入後の課題 3. 実際に導入してみた感想
  • 7. 競合ツールとの比較! 4 導入するためには上の人を説得するための政治が必要… 4 競合ツールと比較してよさ気と思ったことを伝えていく 1. Office(Word, Excel) 2. Wiki, Markdown 3. Sphinx 4 好きな言葉「適材適所」
  • 9. Office 長所 4 SI界のスタンダード 4 WYSIWYGな操作 4 きめ細かいデザインが可能 4 図やフローの挿入が容易 4 誰のPCにも入っていて、誰でも使える
  • 10. !?
  • 11. Office 短所 4 あらゆるものがOfficeで作成され、至る所にちらかる 4 日付バージョン管理…(主観) 4 恐怖の「 議事録_20140505_2(最新)(xx修正).xls 」 4 検索性が非常に悪い 4 違うシートとか、吹出しとか 非表示とか…探せない…
  • 12. Office 短所 4 diffが取るのがメンドくさい 4 取れないとは言ってない、最近は取れるっぽい 4 ミリ単位のレイアウト修正を強いられる 4 リストとかすぐ壊れる 4 内容を集中して書かせて! 4 (職人芸が発揮されるほど)重い
  • 14. Officeのいいところ 4 Officeでしかできないことも、ある 4 過去資料でいいところあげてます! 4 ようは適材適所でよろしくお願いします
  • 16. Wiki, Markdown と Sphinx の長所 Officeで短所として挙げた問題は解消できている!…と思う
  • 17. Wiki, Markdown と Sphinx の長所 > あらゆるものがOfficeで作成され、至る所にちらかる 問題 4 プレーンテキストで作成される 4 Officeよりは探しやすいんじゃないかと思うのだが… 4 ブラウザ、エディタの検索とか、Wiki内検索とか
  • 18. Wiki, Markdown と Sphinx の長所 > diffが取るのがメンドくさい 問題 4 Markdownはプレーンテキストなので簡単 4 バージョン管理もしやすい 4 Wikiもだいたい差分表示機能あり 4 diff取りやすい
  • 19. Wiki, Markdown と Sphinx の長所 > ミリ単位のレイアウト修正 問題 4 出力先(html+css、pdfなど)である程度統一できる
  • 20. Wiki, Markdown と Sphinx の短所 Officeでは特に意識していなかったことを考慮する必要あり
  • 21. Wiki, Markdown と Sphinx の短所 4 記法を覚える必要がある 4 未経験者にちょい敷居が高い… 4 「特定部分のみ」のレイアウト修正 4 cssなどに独自の処理を入れなければならない 4 図やフローの挿入はタグで挿入 4 直感的にいじれない(現物をD&D…)
  • 22. Wiki, Markdown の短所 4 検索性はあまりよくない 4 しっかり作れば… 4 それでもOffice + 共有サーバコンボよりは… 4 重い 4 体感としては Office > Wiki, Markdown > Sphinx 4 サーバ性能とか同時アクセス数によるけど
  • 23. Sphinx だけの長所 4 体系的なドキュメントの骨組みを簡単に整えられる 強力な 機能がある 4 この辺をサクッとよろしくやってくれているのが doctree...である気がする(まだ未調査) 4 Wikiとかでこれを整備するのはちょっとしんどい
  • 24. Sphinx だけの長所 4 検索性はよいと思う 4 体系的にまとまるため 4 軽い 4 Outputが静的ファイル 4 htmlをWebサーバに置けば静的ファイルを取ってくるの と変わらない
  • 25. ここまでのまとめ 4 慣れ親しんだOfficeから脱却したい、管理しやすい形式で ドキュメント作成に挑戦してみよう 4 ならば Wiki, Markdown か Sphinx だ! 4 TipsとかならWiki, Markdownでもいいけど、ドキュメン トなのである程度体系的に管理したい 4 体系的に管理するのが得意な Sphinx だ! 結論: 一回Sphinxチャレンジしてみましょう!
  • 29. 対PM 登場人物 4 自分 4 Sphinxを導入したい人、基本的になんでもやる 4 メンバー 4 導入したSphinxを使ってほしい人
  • 30. 対PM 「自分」の仕事 4 今回はreSTで進めることの明確な宣言とサポート 4 一番大事 4 これができないと負の成果物が生成される…
  • 31. 対PM 「自分」の仕事 4 メンバーが「rstファイルを開いてドキュメント作成」に注 力できる環境を作る 1. sphinx-quickstartで下準備 2. ドキュメント自体のアウトライン作成 3. doctreeの作成 などなど
  • 32. 対PM 「自分」の仕事 4 ビルド環境、デプロイ環境などもお膳立て 4 ビルドはJenkinsなどで拾う 4 デプロイはApacheにhtmlファイル配備とか(お手軽)
  • 33. 対PM 「メンバー」の仕事 4 reST記法を覚えてもらう 4 Markdown -> reST -> Outputという裏技もある (Pandoc経由) 4 バージョン管理ツールとかの話は…割愛
  • 34. 対PM 課題 4 ローカルPCでのプレビュー 4 メンバーのPCにSphinxを入れてもらうのは厳しい… 4 そうすると、確認できるのがサーバにプッシュした時の みになってしまう 4 ローカルで簡単にreSTプレビューできないだろうか… 4 GitHubとか使えばある程度できるんだけど
  • 35. 対PM 課題 4 プロジェクト(会社)の風土にあわせたカスタマイズが必要 かも 4 こういうレイアウトがいい 4 こういうヘッダフッタがほしい 4 こういう改訂履歴ページがほしい
  • 36. 対PM 課題 4 今回は「変更履歴」出力プラグイン作ってみた 4 sphinxcontrib-releasenotesプラグイン 4 .. releasenotes:: ディレクティブを追加したところにGit のコミットログと差分を貼り付け 4 Git使えない人用
  • 37.
  • 38.
  • 39.
  • 41. 対顧客 登場人物 4 プロジェクト 4 Sphinxでドキュメント納品する側 4 顧客 (社内の人 or 社外の人) 4 ドキュメントを納品される側 4 歴史的経緯からOfficeで納品される事が多い 4 例外はJavadocとか?
  • 42. 対顧客 「プロジェクト」側の仕事 4 Sphinxで作成するドキュメントに関して「今回はOfficeじ ゃない形式で設計書とか書きますよ」の合意を得とく
  • 43. 対顧客 「顧客」側の仕事 4 特になし?心構えくらい?
  • 44. 対顧客 課題 4 納品形式 最重要(次ページ参照) 4 納品後 「誰が」 保守するのか 4 顧客が巻取ってしまう場合、どう保守すればよいのか 4 要解決事項、誰かどうやってるか教えてください… 4 これが解決できないと、Sphinxは納品対象外ドキュ メントにしか適用できない…
  • 45.
  • 47. 環境 4 3ヶ月位のほぼ1人プロジェクトで「社内資料」をSphinx! 4 社内資料なので、納品関係の課題はスルー 4 環境揃えたい放題 4 Git + Sphinx + Jenkins etc 4 途中で1人サポートに入ってもらった
  • 48. 結果 4 Gitでバージョン管理、テキストなので差分管理も簡単! 4 エディタが軽いので作成が快適! 4 Outputからお目当ての章が見やすい!探しやすい! 4 Outputは、意外と営業の人に受けが良かった! 4 「え?なにこれ?なんてツール?あとで教えて」
  • 49. 結論 4 競合ツールとの比較 4 ドキュメントを書くスピードは早いよ! 4 導入のためのあれこれ、または導入後の課題 4 「Sphinxで書いていく!」空気を作るのが難しい 4 個人的には、「仲間(賛同者)」がいてくれると助かる
  • 50. 結論 4 メンバーにreSTを書いてもらうのが難しい 4 メリットの周知、慣例からの脱却までが長い 4 納品物にするにはちょっと課題が多いかも 4 今回解決の糸口は見つからず…