SlideShare a Scribd company logo
1 of 31
手抜力
細合 晋太郎
九州大学
with 作業効率化大喜利
WWEST2016
2016/3/4 WWEST2016 1
手抜力
≠成果を疎かにする
☆ 少ない労力で最大限の成果を
☆ 作業を効率化する
☆ 人に任せる
☆ 機械に任せる
自動化できることは全部
任せて悠遊とすごしましょう
2016/3/4 WWEST2016 2
石炭産業科学館に行ってきました
☆ 手掘り→蒸気機関→圧縮空気→電気
☆ 25000人(ピーク時)→2000人(閉鉱時)
大牟田
機械化,自動化はロマン
2016/3/4 WWEST2016 3
なんでも自動化すればよい?
ボールをある地点に持っていくだけに工数かけすぎ! だがそれがいい.
2016/3/4 WWEST2016 4
トレードオフ
☆ 投入コストと回収できるコストを把握する
☆ 投入
☆ 学習コスト
☆ 実装コスト
☆ 回収
☆ 手動での作業コスト – 運用コスト
☆ 作業工程の明示化,モチベーション
☆ 初回で回収するのはまず無理.何度同じよう
な作業を繰り返すのか把握すること
☆ 複数人で利用する場合は,布教・説得・教育
コストもかなり大きい.もちろん導入できれ
ばx人数なので,リターンも大きい
投入
回収
0 1 2 3 4 5 6
2016/3/4 WWEST2016 5
おしながき
☆ インフラ構築
☆ Vagrant, Docker
☆ Ansible, chef, puppet, salt, Noob
☆ クラウド
☆ サービスあれこれ
☆ ソフトウェア開発
☆ MDD,テンプレート
☆ ビルド環境
☆ CI
☆ 機械加工
☆ 3Dプリンタ,レーザーカッター,CNC
☆ 事務処理
☆ POI, iText, Groovy
適宜,それ使ってるよ!
という事例があれば割り込んで
頂けると助かります!
2016/3/4 WWEST2016 6
インフラ編
まだ手動でOSインストールしてますか?
2016/3/4 WWEST2016 7
仮想環境
☆ Virtual Boxベースの
ハイパーバイザ型VM
☆ Linuxベースのコンテナ型VM
☆ 起動早い
☆ Linux環境が必須
Host OS
Vagrant
VM
Host OS
Docker
VM
2016/3/4 WWEST2016 8
構成管理(1)
☆ OSインストール後に設定したり,インストール
してくれるツール
☆ 例えば,LAMP環境を一括導入・設定する 等
☆ 基本的に作業スクリプトを作成し,実行する
(リモートでできるものもあり)
☆ レシピがあれば,いつでも誰でも同じ環境を構
築できる
☆ 作業手順を明示化できる.(よくあるApacheを
インストールして,httpd.confの~の項目
を・・みたいなマニュアルは要らなくなる)
☆ 特定環境でしか動かないようなものも,レシピ
だけ残しておけば,いつでも再現可能.Docker
と合わせると,テスト環境の仮想化が捗る
2016/3/4 WWEST2016 9
version DSL 特徴 総合評価?
3.0 ruby or
puppet-
dsl-ruby
Web UIからノードのリアルタイ
ム制御が可能?
★★★★ 8.2
11.4 ruby, json Web UI,Rubyからいろいろい
じれる.要クライアント.jsonで
設定をまとめられる
★★★★ 8.3
1.3 python? Web UI,ターゲットOSにクライ
アントをインストールしなくてよ
い
★★★★★ 9.0
0.17 yaml,
python,
PyDSL
Web UI,SSH経由でクライアン
トインストールされる
スケーラビリティに優れる(ら
しい)
★★★★ 8.8
構成管理(2)
http://www.infoworld.com/article/2609482/data-center/data-center-review-puppet-vs-chef-vs-ansible-vs-salt.html
大きな差異はないかも.慣れた言語や周り
の環境に合わせて導入するのがよいかと
2016/3/4 WWEST2016 10
構成管理(Extra)
☆ Raspberry Piのイメージ作成超メンドイ.
☆ 20チーム分用意しろとか,DDだと何時間かかん
ですか・・.
☆ noobでちょっと幸せになれました.
☆ インストーライメージを焼く感じ,小さいので書
き込みにもそれほど時間掛からない.
☆ 初回起動時に自動的に展開されインストールが始
まる.RPiが複数枚あれば,並”列”処理可能
☆ もちろん独自イメージも扱える(ちょっとややこ
いですが・・)
☆ ただしIPの設定等は,インストール完了後に個別
設定
☆ 構成管理ツールでIP設定が結構鬼門です..リ
モートでやるにしてもIP分かってないと難しいん
ですよね.
2016/3/4 WWEST2016 11
クラウドサービス
☆ IaaS (Infrastructure as a Service)
☆ 仮想PCをあなたに
☆ AWS EC2,IDCFクラウド,IBM Cloud
☆ PaaS (Platform as a Service)
☆ 組み合わせれば大きなサービスもサクサク開発
☆ Google App Engine, Microsoft Azure,Yahoo
myThings, IBM Bluemix
☆ SaaS (Software as a Service)
☆ いつでもどこからでも同じアプリを
☆ Google (Drive, Docs, GMaiil,,),Dropbox
2016/3/4 WWEST2016 12
IaaS
☆ プライベートクラウド(VM Sphere),
AWS EC2, IDCFクラウド,IBM Cloudと
使ってきたが,大きな差異はない.
☆ どこのものでもちょっとした設定で,VMを
立てられる
☆ 性能/コストと他サービスとの連携で選択
2016/3/4 WWEST2016 13
PaaS
☆ 大抵,サービスがコンポーネント化されて提
供されており,必要なものを選択・組み合わ
せて利用する
☆ 例えば,Node,MQTT,StorageでIoTっぽ
い何かが欲しい場合,コンポーネントを選択
するだけで,基本的なサービスはすべて提供
される.
☆ 上記のような典型パターンがパックされたも
のも多い
https://console.ng.bluemix.net/catalog/2016/3/4 WWEST2016 14
SaaS
☆ どこからでも同じサービスを受けられる
☆ ローカルのデータが吹っ飛んでも,問題ない
☆ 今年に入ってスマホを二回(水没,分解失敗)変
えましたが,移行楽々でした
☆ Googleのエコシステムからはもう抜けられ
ない気がしています.楽天で予約したメール
を解析されて,カレンダとマップに自動追加
されちゃうとか.
☆ Google*, Dropbox,Kindle,Todoist,
Trello, Idobata, Chatwork, feedly
2016/3/4 WWEST2016 15
ソフトウェア開発編
ソフトウェアはソフトウェアで作ればいいよね
2016/3/4 WWEST2016 16
ビルドスクリプト
☆ ビルド手順の形式化,ライブラリ等依存関係
の管理
☆ make
☆ 基礎教養
☆ ant
☆ 最近はあんまり見ないですね
☆ maven
☆ とりあえず
☆ gradle
☆ 最近オススメ
2016/3/4 WWEST2016 17
バージョン管理
☆ CVS
☆ Subversion
☆ git
☆ バージョン管理もエコシステムが大事.CIと
仲良くないと扱いずらい
☆ 最近はもう全部githubでええやんってなって
ます
2016/3/4 WWEST2016 18
CI (Continuous Integration)
☆ 継続的インテグレーション
☆ CD (Continuous Delivery),DevOpsなども
ほぼ同義
☆ コミットから,自動ビルド,自動テスト,自
動デプロイまで,常に最新版が自動的に作ら
れる
2016/3/4 WWEST2016 19
Bots
☆ Slack / Idobata等チャットと連携
☆ 簡単な時刻のお知らせから,ビルド結果やカ
ンバンの監視,コマンドの受付などなど
2016/3/4 WWEST2016 20
Framework
☆ 最近はフレームワークに加え,ライブラリや
プラグインのパッケージ管理まで含めたもの
が便利です.
☆ Spring 4
☆ Spring Bootがステキ.
☆ Node
☆ NPMで大体揃う.多過ぎて選ぶのが大変・・
Framework
Package
Repository
検索
依存関係も
含め取得
作るのココだけ!
2016/3/4 WWEST2016 21
モデル駆動技術
☆ MDDに限らず
☆ 抽象度の高いものからコード生成
☆ DSL
☆ ちょっとしたスクリプト
☆ 稀によくやるExcel to Code
☆ 特定の構造に沿った何か → 変換ルール →
コード
☆ メタモデル(のようなもの)を把握するのが
大事.作っておけば使いまわせる
2016/3/4 WWEST2016 22
astah m2t
☆ astahでゆるめにコード生成するプラグイン
☆ 実体は単なるgroovyスクリプトで,astahの
APIを叩いてモデル取ってきて,テンプレー
トエンジンに流し込んでるだけ
2016/3/4 WWEST2016 23
機械加工
ちっさな工場がおうちにやってきた
2016/3/4 WWEST2016 24
3Dプリンタ
☆ なんでも作れる夢の機械
☆ ではない.
☆ 材料の特性や作成可能な形状,積層方法など
いろいろと気を使ってモデリングが必要
☆ 材料を手動で削り出して同じもの
作る労力を考えたら,まるで魔法
☆ 3Dモデリング環境もフリーで十分
使えるものが多くある
2016/3/4 WWEST2016 25
レーザーカッター
☆ 木材,紙,スチロール,アクリル,皮革等,
正確に切り出せる
☆ ガラスや鏡に彫刻することも可能
☆ 金属が切れるものは高いので手が出ません
☆ が,調整が結構大変,,失敗すると切れない,
出力上げすぎると燃える
☆ 制御ソフトがくs・・
2016/3/4 WWEST2016 26
CNC
☆ 基板の削り出しや金属(アルミ・真鍮等)の
削り出しまでできちゃう機械加工の王道
☆ 図面のままに部品が削り出せる嬉しさ.手で
加工したらここまでの精度出せないよ
☆ 切子で机の周りが大変なこと
になります.切削油が必要な
場合はさらに最悪な状況に
2016/3/4 WWEST2016 27
その他もろもろ
一番時間食ってるのは雑務かも
2016/3/4 WWEST2016 28
POI,iText
☆ 未だに避けて通れない,Office系ファイルと
PDF
☆ 自力でパースするには,あまりにエグいファ
イルフォーマット.
☆ apache POI : Office系ファイルを扱えるラ
イブラリ,もちろんxlsx等~x形式も使える
☆ iText : PDFライブラリ.解析,生成等いろ
いろ行える.
☆ ExcelのリストからPDFの帳票を出力など
☆ 修了生リストから,修了証作成とかに利用し
た
2016/3/4 WWEST2016 29
Chocolatey (Winパッケージ管理)
☆ cinst chrome
でインストールできる.
☆ 基本的にインストーラを拾ってきて,インス
トールしてくれるだけ.inst/uninstの管理
はしてくれる
☆ 主要なアプリは登録されている
☆ Linux, Macだと余裕でできますよね.わかっ
てます.Windowsのパッケージ管理はクソ
でした.かなりマシになりました.
2016/3/4 WWEST2016 30
まとめ
☆ 便利な道具をうまく使って手抜きしましょう
☆ 自動化に拘り過ぎて目的を見失わないように
しましょう
☆ よいツールがあったら情報共有しましょう
2016/3/4 WWEST2016 31

More Related Content

Viewers also liked

FabLab Southern Federal 2014
FabLab Southern Federal 2014FabLab Southern Federal 2014
FabLab Southern Federal 2014
Paul Serikov
 
Gee Ukase
Gee UkaseGee Ukase
Gee Ukase
rix
 
Inria - Extrait du catalogue logiciels calcul haute performance (HPC)
Inria - Extrait du catalogue logiciels calcul haute performance (HPC)Inria - Extrait du catalogue logiciels calcul haute performance (HPC)
Inria - Extrait du catalogue logiciels calcul haute performance (HPC)
Inria
 
Face 2
Face 2Face 2
Face 2
Tony
 

Viewers also liked (20)

Retaining Wall in Costa Rica
Retaining Wall in Costa RicaRetaining Wall in Costa Rica
Retaining Wall in Costa Rica
 
PartizKWIS
PartizKWISPartizKWIS
PartizKWIS
 
Geoconda muñoz beneficios web 2.0
Geoconda muñoz beneficios web 2.0Geoconda muñoz beneficios web 2.0
Geoconda muñoz beneficios web 2.0
 
How are you?
How are you?How are you?
How are you?
 
Full Prism Solution Overview
Full Prism Solution OverviewFull Prism Solution Overview
Full Prism Solution Overview
 
Wright Canvas Art & Fine Art Photographs
Wright Canvas Art & Fine Art PhotographsWright Canvas Art & Fine Art Photographs
Wright Canvas Art & Fine Art Photographs
 
FabLab Southern Federal 2014
FabLab Southern Federal 2014FabLab Southern Federal 2014
FabLab Southern Federal 2014
 
Gee Ukase
Gee UkaseGee Ukase
Gee Ukase
 
Inria - leaflet of research centre Nancy - Grand Est
Inria - leaflet of research centre Nancy - Grand EstInria - leaflet of research centre Nancy - Grand Est
Inria - leaflet of research centre Nancy - Grand Est
 
Festivals
FestivalsFestivals
Festivals
 
Geoconda muñoz beneficios web 2.0
Geoconda muñoz beneficios web 2.0Geoconda muñoz beneficios web 2.0
Geoconda muñoz beneficios web 2.0
 
Vocabulary Body
Vocabulary BodyVocabulary Body
Vocabulary Body
 
Inria - Extrait du catalogue logiciels calcul haute performance (HPC)
Inria - Extrait du catalogue logiciels calcul haute performance (HPC)Inria - Extrait du catalogue logiciels calcul haute performance (HPC)
Inria - Extrait du catalogue logiciels calcul haute performance (HPC)
 
Rencontres Inria Industrie - Qualité logicielle - OWF13
Rencontres Inria Industrie - Qualité logicielle - OWF13Rencontres Inria Industrie - Qualité logicielle - OWF13
Rencontres Inria Industrie - Qualité logicielle - OWF13
 
Face 2
Face 2Face 2
Face 2
 
астахов, SIW 2010
  астахов, SIW 2010  астахов, SIW 2010
астахов, SIW 2010
 
Hfc f outside plan
Hfc f outside planHfc f outside plan
Hfc f outside plan
 
Geoconda muñoz beneficios web 2.0
Geoconda muñoz beneficios web 2.0Geoconda muñoz beneficios web 2.0
Geoconda muñoz beneficios web 2.0
 
Inria - Software assets - Aerospace
Inria - Software assets - AerospaceInria - Software assets - Aerospace
Inria - Software assets - Aerospace
 
Presentacion geocondamuñoz
Presentacion geocondamuñozPresentacion geocondamuñoz
Presentacion geocondamuñoz
 

Similar to 手抜力

Similar to 手抜力 (6)

[db tech showcase Tokyo 2016] D32: SPARCサーバ + Pure Storage DB仮想化のすべらない話 〜 Exa...
[db tech showcase Tokyo 2016] D32: SPARCサーバ + Pure Storage DB仮想化のすべらない話 〜 Exa...[db tech showcase Tokyo 2016] D32: SPARCサーバ + Pure Storage DB仮想化のすべらない話 〜 Exa...
[db tech showcase Tokyo 2016] D32: SPARCサーバ + Pure Storage DB仮想化のすべらない話 〜 Exa...
 
20161212 岩本
20161212 岩本20161212 岩本
20161212 岩本
 
AWSで稼働している ブログ(ヤマムギ+3)の コスト
AWSで稼働している ブログ(ヤマムギ+3)の コストAWSで稼働している ブログ(ヤマムギ+3)の コスト
AWSで稼働している ブログ(ヤマムギ+3)の コスト
 
初めてのAWS 90分version
初めてのAWS 90分version初めてのAWS 90分version
初めてのAWS 90分version
 
別の角度からAWSを眺めてみた話
別の角度からAWSを眺めてみた話別の角度からAWSを眺めてみた話
別の角度からAWSを眺めてみた話
 
20131116_OSC福岡_CloudOS「Apache CloudStack」概要
20131116_OSC福岡_CloudOS「Apache CloudStack」概要20131116_OSC福岡_CloudOS「Apache CloudStack」概要
20131116_OSC福岡_CloudOS「Apache CloudStack」概要
 

More from Shintaro Hosoai

テキスト型Domain Specific Language (DSL) 開発フレームワークXtext の紹介
テキスト型Domain Specific Language (DSL) 開発フレームワークXtext の紹介テキスト型Domain Specific Language (DSL) 開発フレームワークXtext の紹介
テキスト型Domain Specific Language (DSL) 開発フレームワークXtext の紹介
Shintaro Hosoai
 
Eclipse con2010 参加報告 upload
Eclipse con2010 参加報告 uploadEclipse con2010 参加報告 upload
Eclipse con2010 参加報告 upload
Shintaro Hosoai
 

More from Shintaro Hosoai (11)

UMLだけじゃないもやもやを解消するモデリング技術の紹介 その2 Feature Model
UMLだけじゃないもやもやを解消するモデリング技術の紹介 その2 Feature ModelUMLだけじゃないもやもやを解消するモデリング技術の紹介 その2 Feature Model
UMLだけじゃないもやもやを解消するモデリング技術の紹介 その2 Feature Model
 
astah関西勉強会#2 STAMP Workbenchではじめる安全分析
astah関西勉強会#2 STAMP Workbenchではじめる安全分析astah関西勉強会#2 STAMP Workbenchではじめる安全分析
astah関西勉強会#2 STAMP Workbenchではじめる安全分析
 
astah関西勉強会
astah関西勉強会astah関西勉強会
astah関西勉強会
 
Mqttで始めるIoT
Mqttで始めるIoTMqttで始めるIoT
Mqttで始めるIoT
 
Xtext入門
Xtext入門Xtext入門
Xtext入門
 
Xtext&Xtend documents
Xtext&Xtend documentsXtext&Xtend documents
Xtext&Xtend documents
 
Xtext practice
Xtext practiceXtext practice
Xtext practice
 
Umlとは
UmlとはUmlとは
Umlとは
 
Eclipse modeling projectの概要
Eclipse modeling projectの概要Eclipse modeling projectの概要
Eclipse modeling projectの概要
 
テキスト型Domain Specific Language (DSL) 開発フレームワークXtext の紹介
テキスト型Domain Specific Language (DSL) 開発フレームワークXtext の紹介テキスト型Domain Specific Language (DSL) 開発フレームワークXtext の紹介
テキスト型Domain Specific Language (DSL) 開発フレームワークXtext の紹介
 
Eclipse con2010 参加報告 upload
Eclipse con2010 参加報告 uploadEclipse con2010 参加報告 upload
Eclipse con2010 参加報告 upload
 

手抜力