Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
クラウドサービスを活用した開発環境
Search
mzp
May 23, 2015
Technology
3.4k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
クラウドサービスを活用した開発環境
オープンソースカンファレンス Nagoya 2015での発表資料です。
http://mzp.hatenablog.com/entry/2015/05/23/184645
mzp
May 23, 2015
More Decks by mzp
See All by mzp
アイドルとして勤務する -理論と実践- / Work as cute idol. - theory & practice - #imas_hack
mzp
2
18k
日本語入力の落とし穴
mzp
4
14k
アイマスハッカソン 2017-ライブの感動を再現する
mzp
1
2.5k
The reason for using reason
mzp
2
3k
ぺろぺろ - Github pull request bot framework -
mzp
2
3.4k
Love💕LivePhotos
mzp
0
1.6k
日本語入力とLisp
mzp
1
3.6k
Amazon EC2 スポットインスタンスを開発環境にする話
mzp
0
1.6k
Rubyistのための型入門
mzp
19
6.2k
Other Decks in Technology
See All in Technology
[2026 Oracle Technical Deep Dive] エンタープライズAIエージェントを支えるOCIソリューション。ラインナップと特徴を理解しよう! (2026年9月17日開催)
oracle4engineer
PRO
0
180
Mastering Agentic Development: Harness Engineering for Effective Coding Agents
konippi
3
670
Argo CDとAtlantisで実現するインフラ管理のセルフサービス化──小規模SREチームで支えるプラットフォーム
cassius7
0
270
キャリアLT今日までそして明日から
kentapapa
1
140
Incremental HTTP
kazuho
5
1.9k
高負荷プロダクション環境におけるAWS Lambdaのリアル 〜スケールとコストを左右する実行ライフサイクルの技術仕様〜
maimyyym
2
850
認知負荷を吸収し、プロダクトをまたぐPR Preview基盤の設計事例
taiki45
2
570
HolmesGPTで始めるSREエージェント入門!プラットフォームの障害調査はAIにお任せ 〜
sanghyuk
0
250
生成AIを使って「人が」考える技術 ― AI時代の人機共想と実践ノウハウ|UNITT AC2026
ishiirikie
0
520
spanner-autoscalerに学ぶ CRD設計パターン 〜自動化と緊急時対応を両立する Kubernetesコントローラーの作り方〜
tkuchiki
0
220
AI臭い文章とは何なのか
nasuvitz
38
77k
人にやさしく、AIにやさしく、書き手を選ばないIaCのガードレール再考 / Rethinking IaC Guardrails for Humans and AI Alike
kohbis
5
2k
Featured
See All Featured
Building Applications with DynamoDB
mza
96
7.2k
The Language of Interfaces
destraynor
162
27k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.9k
Prompt Engineering for Job Search
mfonobong
0
470
AI Search: Where Are We & What Can We Do About It?
aleyda
0
8k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.4k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
270
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.6k
Color Theory Basics | Prateek | Gurzu
gurzu
1
480
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
68
58k
What does AI have to do with Human Rights?
axbom
PRO
1
2.4k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
Transcript
クラウドサービスを活用した 開発環境 mzp / ocaml-nagoya 1 2015-05-23 ΦʔϓϯιʔεΧϯϑΝϨϯεNagoya 2015
アジェンダ • 転職したら開発環境が社内サーバ中心からクラウド サービス中心へと大きく変化した • どう変化したかについて話します • 紹介するサービスは主にGithub, Slack, Qiita:teamな
どです 2
自己紹介 • Twitter: @mzp • 所属: ocaml-nagoya • 関数型言語OCamlの勉強会(最近、活動してない…) •
今日は開発環境の話をします 3
OSS活動 4 • メンテナンス コントリビュート 公開 • AquaSKK • rubocop
• autodoc • MsgPack • FlicksKK • AsakusaSatellite • rubotyプラグイン などなど
経歴 • 社内SE → スタートアップ 5
今日の話 • どのような環境で開発をしているか • その前に、いくつか質問させてください 6
Q. 業務として開発にか かわっていますか? 7
Q. どのような分野ですか? (組込/Web/ゲーム/その他) 8
Q. クラウドサービス使っ ていますか? 9
前職の開発環境 • コミュニケーションは口頭、もしくはメール • Excelで作られたスケジュール表や課題管理表 • 開発に必要な各種サーバは社内にある • (余談)スーツ着用 10
どう変化したか • 「ソフトウェアを作る」という作業自体は変わっていない • ただし、その開発に使うツールなどは大きく変化した 11 社内サーバ クラウドサービス OSS 前職
現職
注意事項 • 個人の意見であり、所属する企業・団体の意見を代表す るものではありません。 • 特定の企業、製品を推奨する、もしくは批難する意図も ありません。 • 今回の発表は開発者視点で解説したものとなります。 実
際に導入するにあたっては、それ以外にも様々な視点か ら検討する必要がありますが、今回は省略しています。 12
ソースコード管理 13
社内サーバを利用した場合 • バージョン管理: Subversion • 課題管理: Redmine / Trac /
Excel • (余談: Microsoft VSSを使ってるプロジェクトもあった) 14
社内サーバを利用した場合 主な運用方法 • 全員がtrunkにコミットする • 一人づつ別のブランチにコミットする ⇒ コードレビューがやりにくい 15
Github ソースコード管理サービス • Gitレポジトリのホスティング • Wiki • 課題管理 16
Gitの特徴 • 分散バージョン管理 • ブランチの作成、マージが高速 • コマンドが豊富 17
プルリクエスト • Githubの特徴の1つ • 「とあるブランチから、別のブランチへのマージを依頼 するための仕組み」 • ちょっとわかりにくいので例で見ていきましょう 18
1. 不具合がでた ある日、対応しないといけない不具合が発生しました 19
2. がんばって直す がんばりましょう 20
3. プルリクエストを作る 1.今回作業用のブランチを作る 2.修正内容をコミットする 3.Githubにpushする 4.Github上でプルリクエストを作成する 21
プルリクエストの例 22 タイトル 内容説明 変更内容(diff) コメントできる
4. レビューを受ける • 他の人にレビューしてもらう • 問題なければmasterブランチにマージされる 23
プルリクエストの利点 • 作業の単位が明確になる • 必ずレビューがはさまる • レビュー支援機能が充実している • (他のサービスと連携しやすい) 24
OSSでのGithubの利用 1.バグを踏む 2.がんばって直す 3.レポジトリをコピーする(forkする) 4.プルリクエストを作成する 5.レビューを受ける ⇒ マージされる / 拒否される
25
プルリクエストの利点(2) • コミット権がなくてもバージョン管理できる • 普段と同じ作業でOSSに参加できる • publicレポジトリなら無料で利用可能 26
類似サービス クラウド • Bitbucket • Gitlab.com 社内サーバ • Github Enterprise
• Githubクローンたち(Gitlab, Gitbucket, ...) 27
コミュニケーション 28
社内サーバを利用した場合 • メール: 簡単なコミュニケーションには使いづらい • 電話: 複数人では会話できない ⇒ 「標準化されている」のは大きな利点 ⇒
置き換えるのは無理なので補完するサービスの紹介 29
コミュニケーション チャットツール 30
Slack 31
それ以外の機能 • 1対1でメッセージを送りあうこともできる • 絵文字も使える • iPhoneアプリもあるので様々な環境で使える • IRC Gatewayもある
32
IRC gateway 33
メールと比較した利点 • 短い文書でも気軽に送信できる • 多数の人に同時にメッセージを送れる • あとから検索できる • 各メッセージにリンクを貼れる 34
類似サービス クラウドサービス • HipChat • ChatWorks • idobata 社内サーバ •Let’s
Chat •AsakusaSatellite 35
コミュニケーション ビデオ会議 36
Google Hangout 37
特徴 • ブラウザだけで参加できる • URLを共有さえすれば誰でも参加できる • 特定の人しか参加できない設定も可能 • (バッテリーの消費が激しい) 38
使い方の例 1.出社したので GoogleHangout を使って朝会をする 2.朝会がおわったので作業をはじめます。質問はSlackで する 3.今日は打ち合せの日です。 再びHangoutで打ち合せを する (社内用Hangoutとは別)
39
別解: Sqwiggle 40
文書管理 41
対象とする文書の種類 • TODO • 日報 • ノウハウ • 議事録 •
外部から受けとった文書(APIドキュメントなど) 42
社内サーバを利用した場合 • Excelで作る • 作ったのは共有フォルダに置いたり、LotusNotesに置 いたり。 43
文書管理 TODO 44
Trello カードを作り、リスト間を動かしてく 45
リストの例 • やるかどうか検討する • やることに決めた • やっている • 連絡まち •
レビュー待ち • 完了 46
ホワイトボード + ポストイットの イメージ 47
文書管理 日報、ノウハウ 48
Qiita • プレインテキストだけで記 述できる(Markdown) • 記事にタグ付けや全文検 索ができる • デスクトップアプリもある •
ITエンジニア向けに特化 49
Qiita:team • Qiitaの特徴をほぼそのまま供える • 特定のメンバーしか閲覧、投稿できない • 文書テンプレートを設定できる 50
Qiita:teamの例 日報 51
Qiita:teamの例 ノウハウ 52
その他の特徴 • 今後の展望、ビジョン • 開発環境の構築手順 • 飲み会の出欠 • などなど 53
類似サービス Esa.io (\( ⁰⊖⁰)/) 54
文書管理 議事録、受け入れ文書 55
GoogleDrive • 文書、スプレッドシート、プレゼンテーションが作れる • 設定によって他の人と共有可能 • 複数人で同時編集可能 56
GoogleDriveでの管理方法 議事録 • 一部はQiita:teamに書かれる • 他社と共有する場合や、全員で同時に編集する場合 はGoogleDrive 受け入れ文書 • そのままGoogleDriveにアップロードする
57
その他 58
複数のサービスを利用する問題点 • 更新通知の方法が統一されていない • 操作方法が統一されていない • 連携していない ⇒ 中間をつなぐ仕組みが必要。 59
bot • チャット上で動く自動応答プログラム • 定期処理をしたり、特定の語句に反応して処理をしたり • フレームワークがいくつかあり、簡単に作れる 60
botの例 • 各サービスの更新通知 • 認証付きURLからの内容引用 • 今日の当番の確認 • CIとGithubを組合せたデプロイ •
各種リマインダ 61
その他紹介していないサービス • CircleCI: CIサービス • Bugsnag: エラー管理サービス • Mixpanel: ユーザの動向調査
62
まとめ • 各種サービスを活用することで、ソフトウェア開発を効 率化できる • Github/Slack/Qiita:teamあたりが便利 63
さらに先に 64
AWS スポットインスタンス • ローカルではなくクラウド上で開発環境を構築する • Amazonのインフラをオークション形式で借りる • 0.01ドル/Hくらい • バッテリー消費が少ない!!
• ネットワーク速度も速い!!! 65
VRターミナル • 顔の向き等をトラッキングす るヘッドマウントディスプレイ • ざっくり言うと仮想世界に入り こめる 66
VRターミナル 67