SlideShare a Scribd company logo
vi(m)を教える
仕事をした話
自己紹介

        Yuki Asano
  Woking at atWare.Inc in Yokohama

       ScrumAlliance Certified ScrumMaster

       id:guyon / @gu4
今日の話

  上司:
   guyonさんvimを教える
   仕事を引き受けてくれないか


   私:
   Yes sir.
   やりがいがある仕事ですね
本当の話

  上司:
   新人研修の講師メンバーと
   して1stフェーズのviを使った
   プログラミング基礎よろしく

   私:
   えっ!
   vimじゃなくてviですか?
作戦 ...




 プログラミングに利用する前提
 ならvimで提案してみよう...
関係者が集まった場で




私:「せっかくなのでvimを!
   vimだとxxxでxxxですよ」
偉い人たち:「ふむ。それはいいですね」
その時の私の顔
私が担当したフェーズの前提

プログラミング基礎を学ぶ
●


全操作をLinuxで
●


エディタはvi(m)で
●


事前に言語指定あり
●


専攻が情報系じゃなかった人もいる
●


期間は4週間程度
●
研修がはじまりました
もしこんな人たちが紛れていたら...
一日目


 ・ローカル環境を整えよう
 ・Linux基礎
 ・エディタ入門

 ・vimtutor
エディタ入門

・エディタに求める事
・プログラマーが求める事
 ソースコードの編集/プログラムを書く為の機能
 検索・置換/文字コード/柔軟なフォーマット設定
 同じ作業を繰り返さなくても良いマクロ機能
プログラムが書けるエディタ




  Windows・Mac・Linuxで
 それぞれ2〜3種類紹介しました
プログラムが書けるエディタ



  EmacsとvimはLinuxで紹介
TextMateや秀丸はシェアウェアなので
  あえて例としてあげなかった
良い習慣を持ったプログラマが求める条件

・パワフル = 効率性と時間の損失
・長くつきあっていく
・どんな環境にも対応できる
  xx言語専用→ xx言語と心中 / すぐやる気は有限
  Web関連に関するテキストも考慮
  柔軟に挙動や機能を拡張できる
新人さんにおすすめするエディタ

・Yokohama.vim #1のナレッジを伝授
 1. 近くにいる「すごい人と思っている」人と
  同じものを使う
新人さんにおすすめするエディタ

2. OJTやペアプロ相手と同じ物を使う
新人さんにおすすめするエディタ

3. 人気のあるエディタを使う
新人さんにおすすめするエディタ

4. 最高レベルの完成度と言われているエディタを使う



     各OSで2つずつ紹介
学習コスト

・初期導入時のコストは一定ではない
・一生プログラムを書くなら?
・学習曲線はまっすぐではない
 
研修で使うエディタの事

・特徴だけざっくりと
・好きだからといって偏った勧め方は
 しない
・目的意識をはっきりと
vimtutor




     時間をかけてたっぷりと
2日目以降




  アローキーを封印する人 現る
2日目以降




   オプションは小出しに!
2日目以降




        :set nu
数日以降




設定ファイルは面倒臭さを知ってから
レビューで小ネタ披露




      #で移動
レビューで小ネタ披露




     visualモード
レビューで小ネタ披露




     syntax on/of
MacVimの新事実




  「自宅でMacVim使ってます!」
MacVimの新事実


フレーズが先行?
 He says「またMacVimか!ですよね?」


  実は「Macでvim」を使っているだった
プラグインの導入




  最後の最後まであえて封印
最終的に




viはただ使いにくいだけと思ってしまう
       パターン回避!
最終的に




レトロスペクティブで「vimサイコー」
    という声があがった
まとめ



詰め込みすぎず、ハンズオンでやれば
  変なエディタ扱いされない!
おしまい




「Guyon vimエバンジェリストになる」
     というお話でした

More Related Content

Viewers also liked

1 Linux入門 第5章 スクリーンエディタ-vi-
1 Linux入門 第5章 スクリーンエディタ-vi-1 Linux入門 第5章 スクリーンエディタ-vi-
1 Linux入門 第5章 スクリーンエディタ-vi-Enpel
 
(初心者向け) Vim の機能紹介@nagoya.vim #1
(初心者向け) Vim の機能紹介@nagoya.vim #1(初心者向け) Vim の機能紹介@nagoya.vim #1
(初心者向け) Vim の機能紹介@nagoya.vim #1cohama
 
自宅サーバーを立てる話
自宅サーバーを立てる話自宅サーバーを立てる話
自宅サーバーを立てる話
naba0123
 
Linux syllabus
Linux syllabusLinux syllabus
Linux syllabus
Linux Training Chennai
 
JA7YCQプログラミング勉強会 第1回 ~プログラミングやってみようか~
JA7YCQプログラミング勉強会 第1回 ~プログラミングやってみようか~JA7YCQプログラミング勉強会 第1回 ~プログラミングやってみようか~
JA7YCQプログラミング勉強会 第1回 ~プログラミングやってみようか~
Neppo Telewisteria
 
Programming camp code reading
Programming camp code readingProgramming camp code reading
Programming camp code reading
Hiro Yoshioka
 
Xp祭り2013
Xp祭り2013Xp祭り2013
Xp祭り2013
Yoshihiro Furukawa
 
お絵かきのお話(~nw構成図ってどんな感じで書いてます?~)
お絵かきのお話(~nw構成図ってどんな感じで書いてます?~)お絵かきのお話(~nw構成図ってどんな感じで書いてます?~)
お絵かきのお話(~nw構成図ってどんな感じで書いてます?~)
Tatsuya Maruno
 
イマドキC++erのモテカワリソース管理術
イマドキC++erのモテカワリソース管理術イマドキC++erのモテカワリソース管理術
イマドキC++erのモテカワリソース管理術
Kohsuke Yuasa
 
Scalaのコンパイル速度の話が聞きたいだろうし、するつもりだ
Scalaのコンパイル速度の話が聞きたいだろうし、するつもりだScalaのコンパイル速度の話が聞きたいだろうし、するつもりだ
Scalaのコンパイル速度の話が聞きたいだろうし、するつもりだ
yoshiaki iwanaga
 
ロードバランスへの長い道
ロードバランスへの長い道ロードバランスへの長い道
ロードバランスへの長い道
Jun Kato
 
ふつうのLinuxプログラミング
ふつうのLinuxプログラミングふつうのLinuxプログラミング
ふつうのLinuxプログラミング
Shuhei KONDO
 
ネットワークでなぜ遅延が生じるのか
ネットワークでなぜ遅延が生じるのかネットワークでなぜ遅延が生じるのか
ネットワークでなぜ遅延が生じるのか
Jun Kato
 

Viewers also liked (13)

1 Linux入門 第5章 スクリーンエディタ-vi-
1 Linux入門 第5章 スクリーンエディタ-vi-1 Linux入門 第5章 スクリーンエディタ-vi-
1 Linux入門 第5章 スクリーンエディタ-vi-
 
(初心者向け) Vim の機能紹介@nagoya.vim #1
(初心者向け) Vim の機能紹介@nagoya.vim #1(初心者向け) Vim の機能紹介@nagoya.vim #1
(初心者向け) Vim の機能紹介@nagoya.vim #1
 
自宅サーバーを立てる話
自宅サーバーを立てる話自宅サーバーを立てる話
自宅サーバーを立てる話
 
Linux syllabus
Linux syllabusLinux syllabus
Linux syllabus
 
JA7YCQプログラミング勉強会 第1回 ~プログラミングやってみようか~
JA7YCQプログラミング勉強会 第1回 ~プログラミングやってみようか~JA7YCQプログラミング勉強会 第1回 ~プログラミングやってみようか~
JA7YCQプログラミング勉強会 第1回 ~プログラミングやってみようか~
 
Programming camp code reading
Programming camp code readingProgramming camp code reading
Programming camp code reading
 
Xp祭り2013
Xp祭り2013Xp祭り2013
Xp祭り2013
 
お絵かきのお話(~nw構成図ってどんな感じで書いてます?~)
お絵かきのお話(~nw構成図ってどんな感じで書いてます?~)お絵かきのお話(~nw構成図ってどんな感じで書いてます?~)
お絵かきのお話(~nw構成図ってどんな感じで書いてます?~)
 
イマドキC++erのモテカワリソース管理術
イマドキC++erのモテカワリソース管理術イマドキC++erのモテカワリソース管理術
イマドキC++erのモテカワリソース管理術
 
Scalaのコンパイル速度の話が聞きたいだろうし、するつもりだ
Scalaのコンパイル速度の話が聞きたいだろうし、するつもりだScalaのコンパイル速度の話が聞きたいだろうし、するつもりだ
Scalaのコンパイル速度の話が聞きたいだろうし、するつもりだ
 
ロードバランスへの長い道
ロードバランスへの長い道ロードバランスへの長い道
ロードバランスへの長い道
 
ふつうのLinuxプログラミング
ふつうのLinuxプログラミングふつうのLinuxプログラミング
ふつうのLinuxプログラミング
 
ネットワークでなぜ遅延が生じるのか
ネットワークでなぜ遅延が生じるのかネットワークでなぜ遅延が生じるのか
ネットワークでなぜ遅延が生じるのか
 

More from gu4

Terraformでオーケストレーションを統一する
Terraformでオーケストレーションを統一するTerraformでオーケストレーションを統一する
Terraformでオーケストレーションを統一する
gu4
 
Yokohama.vim#8
Yokohama.vim#8Yokohama.vim#8
Yokohama.vim#8
gu4
 
ストレスレスなフロンティアを求めて NoSSHな環境でB/Gデプロイメントを使い運用にのせた
ストレスレスなフロンティアを求めて NoSSHな環境でB/Gデプロイメントを使い運用にのせたストレスレスなフロンティアを求めて NoSSHな環境でB/Gデプロイメントを使い運用にのせた
ストレスレスなフロンティアを求めて NoSSHな環境でB/Gデプロイメントを使い運用にのせた
gu4
 
Nulab tokyo office relocation party LT
Nulab tokyo office relocation party LTNulab tokyo office relocation party LT
Nulab tokyo office relocation party LT
gu4
 
5年間Yokohama.vimをやってみて感じた事
5年間Yokohama.vimをやってみて感じた事5年間Yokohama.vimをやってみて感じた事
5年間Yokohama.vimをやってみて感じた事
gu4
 
Mackerelに触れる前にサーバー監視について考えてみよう
Mackerelに触れる前にサーバー監視について考えてみようMackerelに触れる前にサーバー監視について考えてみよう
Mackerelに触れる前にサーバー監視について考えてみよう
gu4
 
AWS 0からはじめるハンズオン
AWS 0からはじめるハンズオンAWS 0からはじめるハンズオン
AWS 0からはじめるハンズオン
gu4
 
「とても小さいVim」vim tiny
「とても小さいVim」vim tiny「とても小さいVim」vim tiny
「とても小さいVim」vim tiny
gu4
 
「Vimrcリーディングに役立ちそうな」vimrcの設定とplugin管理
「Vimrcリーディングに役立ちそうな」vimrcの設定とplugin管理「Vimrcリーディングに役立ちそうな」vimrcの設定とplugin管理
「Vimrcリーディングに役立ちそうな」vimrcの設定とplugin管理gu4
 
Yokohama.vim
Yokohama.vimYokohama.vim
Yokohama.vim
gu4
 

More from gu4 (10)

Terraformでオーケストレーションを統一する
Terraformでオーケストレーションを統一するTerraformでオーケストレーションを統一する
Terraformでオーケストレーションを統一する
 
Yokohama.vim#8
Yokohama.vim#8Yokohama.vim#8
Yokohama.vim#8
 
ストレスレスなフロンティアを求めて NoSSHな環境でB/Gデプロイメントを使い運用にのせた
ストレスレスなフロンティアを求めて NoSSHな環境でB/Gデプロイメントを使い運用にのせたストレスレスなフロンティアを求めて NoSSHな環境でB/Gデプロイメントを使い運用にのせた
ストレスレスなフロンティアを求めて NoSSHな環境でB/Gデプロイメントを使い運用にのせた
 
Nulab tokyo office relocation party LT
Nulab tokyo office relocation party LTNulab tokyo office relocation party LT
Nulab tokyo office relocation party LT
 
5年間Yokohama.vimをやってみて感じた事
5年間Yokohama.vimをやってみて感じた事5年間Yokohama.vimをやってみて感じた事
5年間Yokohama.vimをやってみて感じた事
 
Mackerelに触れる前にサーバー監視について考えてみよう
Mackerelに触れる前にサーバー監視について考えてみようMackerelに触れる前にサーバー監視について考えてみよう
Mackerelに触れる前にサーバー監視について考えてみよう
 
AWS 0からはじめるハンズオン
AWS 0からはじめるハンズオンAWS 0からはじめるハンズオン
AWS 0からはじめるハンズオン
 
「とても小さいVim」vim tiny
「とても小さいVim」vim tiny「とても小さいVim」vim tiny
「とても小さいVim」vim tiny
 
「Vimrcリーディングに役立ちそうな」vimrcの設定とplugin管理
「Vimrcリーディングに役立ちそうな」vimrcの設定とplugin管理「Vimrcリーディングに役立ちそうな」vimrcの設定とplugin管理
「Vimrcリーディングに役立ちそうな」vimrcの設定とplugin管理
 
Yokohama.vim
Yokohama.vimYokohama.vim
Yokohama.vim
 

Vi(m)を教えた話