Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ドキュメントを支える技術 / PHP Conference Fukuoka 2016
Search
Ken’ichiro Oyama
May 21, 2016
Technology
3
4.8k
ドキュメントを支える技術 / PHP Conference Fukuoka 2016
ドキュメントを支える技術 PHPカンファレンス福岡2016
Ken’ichiro Oyama
May 21, 2016
Tweet
Share
More Decks by Ken’ichiro Oyama
See All by Ken’ichiro Oyama
ソフトウェア開発におけるインターフェイスという考え方 / PHPerKaigi 2025
k1low
9
4.6k
Parsing HCL/CUE / Fukuoka.go #21
k1low
0
5.2k
実践 net/http Middleware パターン / Kizuku.go Vol.1
k1low
2
290
Cleanup handling in Go / Go Conference 2024
k1low
6
3.5k
CI/CDがあたりまえの今の時代にAPIテスティングツールに求められていること / CI/CD Test Night #7
k1low
17
11k
Command-line interface tool design / PHPerKaigi 2024
k1low
8
3.2k
gostyle IS NOT Go Style / Fukuoka.go#19 Reboot
k1low
1
280
Parsing case study in Go / Go Conference mini 2023 Winter IN KYOTO
k1low
2
1.4k
APIシナリオテストツールとしてのrunn / 4 API testing tools
k1low
3
1.6k
Other Decks in Technology
See All in Technology
Developer 以外にこそ使って欲しい Amazon Q Developer
mita
0
170
Vibe Coding Tools
ijin
1
290
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
3
710
スイッチのBMC、つかってますか?
sonic
0
300
正式リリースされた Semantic Kernel の Agent Framework 全部紹介!
okazuki
1
1.5k
20250514 1Passwordを使い倒す道場 vol.1
east_takumi
0
140
水耕栽培に全部賭けろ
mutsumix
0
140
Terraform にコントリビュートしていたら Azure のコストをやらかした話 / How I Messed Up Azure Costs While Contributing to Terraform
nnstt1
1
560
技術選定を突き詰める 懇親会LT
okaru
2
1.2k
激動の一年を通じて見えてきた「技術でリードする」ということ
ktr_0731
8
8k
dbtとリバースETLでデータ連携の複雑さに立ち向かう
morookacube
0
1k
Cursorをチョッパヤインタビューライターにチューニングする方法 / how to tuning cursor for interview write
shuzon
2
260
Featured
See All Featured
Fontdeck: Realign not Redesign
paulrobertlloyd
84
5.5k
Six Lessons from altMBA
skipperchong
28
3.8k
Embracing the Ebb and Flow
colly
85
4.7k
KATA
mclloyd
29
14k
Adopting Sorbet at Scale
ufuk
76
9.4k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Thoughts on Productivity
jonyablonski
69
4.6k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
32
5.8k
Testing 201, or: Great Expectations
jmmastey
42
7.5k
How to train your dragon (web standard)
notwaldorf
91
6k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
52
2.6k
Transcript
ドキュメントを⽀支える技術 Kenʼ’ichiro Oyama Fusic Co.,Ltd. 2016.5.21 1 PHPカンファレンス福岡2016
Who 2 PHPカンファレンス福岡2016
k1LoW Kenʼ’ichiro Oyama @k1LoW Fusic Co.,Ltd. エンジニア
CakePHP/AWS/さくらVPS GitHub organizations fukuokarb / dotcake / emacs-‐‑‒jp / etc. awspecというAWS⽤用のテストツールを作って います https://github.com/k1LoW/awspec 3 PHPカンファレンス福岡2016
ドキュメント? PHP Manual README PHPDoc 今回はそういう技術ドキュメントの話しではあ
りません 4 PHPカンファレンス福岡2016
ドキュメントを⽀支える技術 概算⾒見見積とか 概算スケジュールとか 定例例報告書とか クライアントと共有するためのドキュメントの 話しをします
5 PHPカンファレンス福岡2016
ドキュメントを⽀支える技術 情報を取得して(INPUT) まとめて(COLLECT) 表⽰示(OUTPUT) 紙(PRINT) 6
PHPカンファレンス福岡2016
紙(PRINT) 紙が⼤大切切(印刷できないとクライアントとのミ ーティングで使えない。提出できない) 可視化だけじゃ⾜足りない 最低限体裁を整える必要がある 紙は、、、死なないっっ!
7 PHPカンファレンス福岡2016
体裁を整えるドキュメントの代表 Word PowerPoint Excel Officeちょっと苦⼿手。。。
なんとかしたい ドキュメントを書きたくない ドキュメントをより効率率率よく作成したい あわよくば⾃自動化したい 8 PHPカンファレンス福岡2016
今回はその試⾏行行錯誤を いくつか紹介します 9 PHPカンファレンス福岡2016
例例1: サーバの利利⽤用状況レポート 10 PHPカンファレンス福岡2016
サーバの利利⽤用状況レポート? 「⽉月次でサーバの利利⽤用状況をレポートとして提 出してほしい」 サーバの利利⽤用状況=メトリクス情報 アクセス数、ロードアベレージ、CPU Usage、 IO、etc、etc
AWS上でオートスケールするようなシステム なんですけど。。 11 PHPカンファレンス福岡2016
システム構成 12 PHPカンファレンス福岡2016
メトリクス情報をグラフで Fluentdで全メトリクス情報をS3に保存 情報を収集する基盤は構築していたが、出⼒力力の 基盤がない。。 かつてはEMR+Excel+PowerPointを駆使して 提出していた
ログがMySQLにあれば。。。 ツラみがある。。。 13 PHPカンファレンス福岡2016
14 PHPカンファレンス福岡2016
Embulk バルクデータローダ(Java製) http://www.embulk.org/ 設定を書くだけで⼤大量量のデータを転送できる システム構築当時はなかった⼀一筋の光
Fluentdで保存したログとの親和性が⾼高い S3のログをMySQLに展開できれば!戦え る!! 15 PHPカンファレンス福岡2016
システム構成 16 PHPカンファレンス福岡2016
そして、紙 17 PHPカンファレンス福岡2016
PHP 18 PHPカンファレンス福岡2016
19 古き良良きインラインPHP PHPカンファレンス福岡2016
PHP, HTML, CSS, JavaScript いつものようにPHPでMySQLに接続 HTMLとCSSで体裁をととのえる HTMLとCSSは印刷に対して優秀だった!!
page-‐‑‒break-‐‑‒*とか グラフはD3.jsで ビルドインサーバで $ php -‐‑‒S localhost:8000 ブラウザで表⽰示したページを印刷 1ファイルで気軽にWebページが作れるPHPの 強み 20 PHPカンファレンス福岡2016
システム構成 21 PHPカンファレンス福岡2016
22 PHPカンファレンス福岡2016
印刷出来ました 23 PHPカンファレンス福岡2016
例例2: サーバのインベントリ情報 のレポート 24 PHPカンファレンス福岡2016
インベントリ情報 「サーバにイントールされているパッケージの バージョン⼀一覧を提出して欲しい」 現在稼働しているインスタンス数⼗十台 まったく別の時期にまったく別のサービスを 構築している
全部SSHでログインして確認。。。??そして その後まとめるの。。。? ツラみがある。。。 25 PHPカンファレンス福岡2016
26 koma PHPカンファレンス福岡2016
koma エージェントレスでリモートホストのインベン トリ情報を収集するツール(Ruby製) https://github.com/k1LoW/koma 類似ツール: ohai /
facter SSH接続できるならsshをkoma sshに変えるだ けで、リモートホストのインベントリ情報を JSONで取得できる $ koma ssh example.com 27 PHPカンファレンス福岡2016
そして、紙 28 PHPカンファレンス福岡2016
取得したJSONを表にして印刷 29 PHPカンファレンス福岡2016
よろしいならばExcelだ 30 PHPカンファレンス福岡2016
PHP 31 PHPカンファレンス福岡2016
k1low/xlsx PHPExcelのラッパーライブラリ https://github.com/k1LoW/xlsx テンプレート.xlsxに値を差し込むシンプルスタ イル 32
PHPカンファレンス福岡2016
33 値を差し込むだけ PHPカンファレンス福岡2016
印刷出来ました 34 PHPカンファレンス福岡2016
例例3: 概算スケジュール 35 PHPカンファレンス福岡2016
概算スケジュール ガントチャート。。。 ⽅方眼紙Excel。。。 祝⽇日。。。 スケジュールは頭の中にあるんだよ!?
あとは体裁だけ。。。 ツラみがある。。。 36 PHPカンファレンス福岡2016
そう、紙 37 PHPカンファレンス福岡2016
Webサービス化してます 38 PHPカンファレンス福岡2016
ti.mefra.me 39 PHPカンファレンス福岡2016
ti.mefra.me http://ti.mefra.me CSVからExcel⽅方眼紙スケジュールに⼀一発変換 ⽇日本の祝⽇日対応 / cURLで⽣生成もできる 40
PHPカンファレンス福岡2016
印刷出来ました 41 PHPカンファレンス福岡2016
まとめ 42 PHPカンファレンス福岡2016
ドキュメントを⽀支える技術 1. HTMLとPHP良良い 2. PHP良良い 3. PHPで作ったWebサービス良良い 43 PHPカンファレンス福岡2016
ドキュメントを⽀支える技術 紙はなくならなかった。。。 なくならないなら⾃自分たちの⼟土俵に持ち込むし かない PHPにこだわらず、使えるものは使って効率率率化 をしていく
ただ、最後の紙へのアプローチはPHPが1番楽 やはりPHPerだった まだまだ多くのドキュメントを⽀支える技術があ りますが。。。時間がないっっ! 44 PHPカンファレンス福岡2016
Thank you! Fusicはテクノロジーが 好きなエンジニアを募集しています https://fusic.github.io 45
46 PHPカンファレンス福岡2016