0
Hacking Vox and Plagger Tatsuhiko Miyagawa   [email_address] Six Apart, Ltd. / Shibuya Perl Mongers DECON 2006, Tokyo
アジェンダ <ul><li>私の開発環境 </li></ul><ul><li>Vox  の開発環境 </li></ul><ul><li>Plagger  の開発環境 </li></ul><ul><li>svk  でオフラインハック </li><...
<ul><li>私の </li></ul><ul><li>開発環境 </li></ul>
<ul><li>メインマシン </li></ul><ul><li>ThinkPad X40 </li></ul>
<ul><li>Debian Sarge </li></ul><ul><li>VMWare Player </li></ul><ul><li>+ Qemu </li></ul>
<ul><li>PuTTY </li></ul><ul><li>screen </li></ul><ul><li>tcsh </li></ul><ul><li>emacs21 </li></ul>
<ul><li>おすすめフォント </li></ul><ul><li>Consolas </li></ul>#!/usr/bin/perl use strict; use warnings; print &quot;Hello World&qu...
<ul><li>screen  の切り替え </li></ul><ul><li>Ctrl-t </li></ul>
<ul><li>tcsh </li></ul>> ls ~/.tcshrc*  /home/miyagawa/.tcshrc@ /home/miyagawa/.tcshrc.alias@ /home/miyagawa/.tcshrc.bindk...
<ul><li>開発環境 </li></ul>
Vox  開発チーム <ul><li>バックエンド </li></ul><ul><li>フロントエンド  (JS) </li></ul><ul><li>フロントエンド  (HTML/TT/CSS) </li></ul><ul><li>その他いろ...
バックエンドチーム Database Web APIs Catalyst App
<ul><li>Xen </li></ul><ul><li>CentOS </li></ul>> uname -a Linux miyagawa 2.6.12.6-xenU #1 SMP Fri Apr 7 12:46:13 PDT 2006 ...
<ul><li>マシン名 </li></ul><ul><li>{username}.dev </li></ul># via VPN > ssh –l comet miyagawa.dev
<ul><li>アプリケーション </li></ul><ul><li>*.vox.com .miyagawa.dev </li></ul>> cat /etc/resolv.conf search sixapart.com
<ul><li>アプリインフラ </li></ul><ul><li>rpm + mantle </li></ul>[root@mantle]# ls 6arpmbuild  RPMS  SPECS  build.log  BUILD  SOUR...
<ul><li>Xen  からの利用 </li></ul>> svn co http://svn.sixapart.com/repos/… > sudo yum update mantle2 > sudo yum install perlbal
<ul><li>以上 </li></ul>
<ul><li>開発 </li></ul>
<ul><li>オープンソース </li></ul><ul><li>開発モデル </li></ul>
<ul><li>平日の昼間 : Vox </li></ul><ul><li>平日の夜 : Plagger </li></ul>
<ul><li>平日の昼間 : Plagger </li></ul><ul><li>平日の夜 : Vox </li></ul><ul><li>( 忙しいとき ) </li></ul>
 
 
<ul><li>暇なときに開発 </li></ul><ul><li>気が向いたらリリース </li></ul>
<ul><li>テストドリブン </li></ul>/home/miyagawa/svk/plagger> find t -name *.t | wc -l 153
<ul><li>t/core:  コア機能 </li></ul><ul><li>t/plugins:  プラグイン </li></ul><ul><li>t/regression:  回帰 </li></ul>
<ul><li>Test::Base </li></ul><ul><li>データドリブンテスト </li></ul>
<ul><li>Test::Chimps </li></ul><ul><li>chimps-smoker.pl </li></ul>
http://plagger.org/chimps-server
<ul><li>タスクの自動化 </li></ul><ul><li>chimps-smoker </li></ul><ul><li>release.pl </li></ul><ul><li>plugin-start.pl </li></ul>
<ul><li>DRY </li></ul><ul><li>Test::Base </li></ul><ul><li>deps/*.yaml </li></ul>
<ul><li>以上 </li></ul>
svk
So Many Flights <ul><li>1/7-11: Taiwan </li></ul><ul><li>1/13-3/8: San Francisco </li></ul><ul><li>4/27-5/1: Taiwan </li><...
Hack on the flight!
Offline commits > svk cp //mirror/plagger/trunk //local/plagger-trunk > cd ~/svk/plagger-trunk > svk switch //local/plagge...
Merging is dead easy > cd ~/svk/plagger/branches/foo > svk smerge //mirror/plagger/trunk/plagger  > svk commit
<ul><li>CPAN::Mini </li></ul>> minicpan –r http://www.perl.com/CPAN/ -l ~/minicpan
<ul><li>Idea: Search CPAN </li></ul><ul><li>for minicpan mirror </li></ul>
<ul><li>Idea: Wikipedia </li></ul>
<ul><li>以上 </li></ul>
<ul><li>おまけ </li></ul><ul><li>Tips </li></ul>
<ul><li>ack </li></ul>
> perl -MClass::Autouse=:superloader -de 1 DB<1> $cgi = CGI->new
alias cm ./configure && make dc cd e emacs –nw l less maek make h history j jobs pmf perl Makefile.PL mkt make test rm mv ...
<ul><li>ありがとう </li></ul><ul><li>ございました </li></ul><ul><li>ご質問? </li></ul>
Upcoming SlideShare
Loading in...5
×

Hacking Vox and Plagger

3,998

Published on

at DECON (Developers environment conference) 2006 in Tokyo.

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
3,998
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
27
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Hacking Vox and Plagger"

  1. 1. Hacking Vox and Plagger Tatsuhiko Miyagawa [email_address] Six Apart, Ltd. / Shibuya Perl Mongers DECON 2006, Tokyo
  2. 2. アジェンダ <ul><li>私の開発環境 </li></ul><ul><li>Vox の開発環境 </li></ul><ul><li>Plagger の開発環境 </li></ul><ul><li>svk でオフラインハック </li></ul><ul><li>おまけ Tips </li></ul>
  3. 3. <ul><li>私の </li></ul><ul><li>開発環境 </li></ul>
  4. 4. <ul><li>メインマシン </li></ul><ul><li>ThinkPad X40 </li></ul>
  5. 5. <ul><li>Debian Sarge </li></ul><ul><li>VMWare Player </li></ul><ul><li>+ Qemu </li></ul>
  6. 6. <ul><li>PuTTY </li></ul><ul><li>screen </li></ul><ul><li>tcsh </li></ul><ul><li>emacs21 </li></ul>
  7. 7. <ul><li>おすすめフォント </li></ul><ul><li>Consolas </li></ul>#!/usr/bin/perl use strict; use warnings; print &quot;Hello World&quot;;
  8. 8. <ul><li>screen の切り替え </li></ul><ul><li>Ctrl-t </li></ul>
  9. 9. <ul><li>tcsh </li></ul>> ls ~/.tcshrc* /home/miyagawa/.tcshrc@ /home/miyagawa/.tcshrc.alias@ /home/miyagawa/.tcshrc.bindkey@ /home/miyagawa/.tcshrc.complete@ /home/miyagawa/.tcshrc.set@
  10. 10. <ul><li>開発環境 </li></ul>
  11. 11. Vox 開発チーム <ul><li>バックエンド </li></ul><ul><li>フロントエンド (JS) </li></ul><ul><li>フロントエンド (HTML/TT/CSS) </li></ul><ul><li>その他いろいろ </li></ul>
  12. 12. バックエンドチーム Database Web APIs Catalyst App
  13. 13. <ul><li>Xen </li></ul><ul><li>CentOS </li></ul>> uname -a Linux miyagawa 2.6.12.6-xenU #1 SMP Fri Apr 7 12:46:13 PDT 2006 x86_64 x86_64 x86_64 GNU/Linux
  14. 14. <ul><li>マシン名 </li></ul><ul><li>{username}.dev </li></ul># via VPN > ssh –l comet miyagawa.dev
  15. 15. <ul><li>アプリケーション </li></ul><ul><li>*.vox.com .miyagawa.dev </li></ul>> cat /etc/resolv.conf search sixapart.com
  16. 16. <ul><li>アプリインフラ </li></ul><ul><li>rpm + mantle </li></ul>[root@mantle]# ls 6arpmbuild RPMS SPECS build.log BUILD SOURCES SRPMS [root@mantle]# ls SPECS Data-YUID.spec aspell-fr.spec ffmpeg.spec mogstored.spec IO-AIO.spec aspell-nl.spec flvtool2.spec perlbal.spec TheSchwartz.spec aspell-no.spec libevent-1.0-rf.spec pspell012.spec aspell-da.spec aspell-pt.spec mantle.spec rbldnsd.spec aspell-de.spec aspell-sv.spec memcached.spec spread.spec aspell-en.spec aspell.spec mogilefs.spec squid.spec aspell-es.spec cvs.spec mogilefsd.spec
  17. 17. <ul><li>Xen からの利用 </li></ul>> svn co http://svn.sixapart.com/repos/… > sudo yum update mantle2 > sudo yum install perlbal
  18. 18. <ul><li>以上 </li></ul>
  19. 19. <ul><li>開発 </li></ul>
  20. 20. <ul><li>オープンソース </li></ul><ul><li>開発モデル </li></ul>
  21. 21. <ul><li>平日の昼間 : Vox </li></ul><ul><li>平日の夜 : Plagger </li></ul>
  22. 22. <ul><li>平日の昼間 : Plagger </li></ul><ul><li>平日の夜 : Vox </li></ul><ul><li>( 忙しいとき ) </li></ul>
  23. 25. <ul><li>暇なときに開発 </li></ul><ul><li>気が向いたらリリース </li></ul>
  24. 26. <ul><li>テストドリブン </li></ul>/home/miyagawa/svk/plagger> find t -name *.t | wc -l 153
  25. 27. <ul><li>t/core: コア機能 </li></ul><ul><li>t/plugins: プラグイン </li></ul><ul><li>t/regression: 回帰 </li></ul>
  26. 28. <ul><li>Test::Base </li></ul><ul><li>データドリブンテスト </li></ul>
  27. 29. <ul><li>Test::Chimps </li></ul><ul><li>chimps-smoker.pl </li></ul>
  28. 30. http://plagger.org/chimps-server
  29. 31. <ul><li>タスクの自動化 </li></ul><ul><li>chimps-smoker </li></ul><ul><li>release.pl </li></ul><ul><li>plugin-start.pl </li></ul>
  30. 32. <ul><li>DRY </li></ul><ul><li>Test::Base </li></ul><ul><li>deps/*.yaml </li></ul>
  31. 33. <ul><li>以上 </li></ul>
  32. 34. svk
  33. 35. So Many Flights <ul><li>1/7-11: Taiwan </li></ul><ul><li>1/13-3/8: San Francisco </li></ul><ul><li>4/27-5/1: Taiwan </li></ul><ul><li>6/25-7/6: Chicago, Boston, New York </li></ul><ul><li>7/22-28: San Francisco, Portland </li></ul><ul><li>8/5-8: Miyako, Okinawa </li></ul><ul><li>8/28-9/6: London, Birmingham </li></ul>
  34. 36. Hack on the flight!
  35. 37. Offline commits > svk cp //mirror/plagger/trunk //local/plagger-trunk > cd ~/svk/plagger-trunk > svk switch //local/plagger-trunk … > svk commit > svk commit … > svk push
  36. 38. Merging is dead easy > cd ~/svk/plagger/branches/foo > svk smerge //mirror/plagger/trunk/plagger > svk commit
  37. 39. <ul><li>CPAN::Mini </li></ul>> minicpan –r http://www.perl.com/CPAN/ -l ~/minicpan
  38. 40. <ul><li>Idea: Search CPAN </li></ul><ul><li>for minicpan mirror </li></ul>
  39. 41. <ul><li>Idea: Wikipedia </li></ul>
  40. 42. <ul><li>以上 </li></ul>
  41. 43. <ul><li>おまけ </li></ul><ul><li>Tips </li></ul>
  42. 44. <ul><li>ack </li></ul>
  43. 45. > perl -MClass::Autouse=:superloader -de 1 DB<1> $cgi = CGI->new
  44. 46. alias cm ./configure && make dc cd e emacs –nw l less maek make h history j jobs pmf perl Makefile.PL mkt make test rm mv !* ~/.Recycled sl ls sx screen –x x exit
  45. 47. <ul><li>ありがとう </li></ul><ul><li>ございました </li></ul><ul><li>ご質問? </li></ul>
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×