僕の勤める会社は主にシステムの受託業務をやっています。
受託といってもさまざまで、中には下請けだけでなく孫請け、ひ孫受けの仕事なんかもあります。
僕が長らく受け持っている仕事が孫請けの仕事でして、ある日社長から
「孫請けやってて、下請法知らなくていいのは小学生までだよねーwwww」
と言われたのでちょっと勉強してみた。

下請法の対象範囲は資本金の額で決まる
そもそも、対象となる範囲が資本金の額で決まるのです。

親事業者(委託者)の資本金   下請事業者(受託者)の資本金
5千万円以上                        →  5千万円以下
1~5千万円                         →  1千万円以下
プログラム作成委託の場合
3憶円以上                           →  3億円以下
1千万円~3億円                    →  1千万円以下

孫請けの場合、これではじかれてしまうじゃないか><
と思って調べてみたところ、
元請事業者と孫請け事業者との間であっても資本金額の要件を満たせば,親事業者と下請事業者の関係となります(孫請けとひ孫受け,その先も適用はあり得ます)。
とのことなので、大企業→中小企業→中小企業のような場合においても、孫請け会社から元請け会社に対しても適用されるのですね。

コンテンツ・プログラム作成委託の際には発注書面の交付が必須
口頭発注のトラブル防止のために、発注書面の交付が必須なのです。
これは、作成委託時に直ちに必要となります。
そんなこと言っても、
要件定義が済むまではきっちり金額・内容が決められないことがあるじゃないか><
と思って調べてみたところ、
最終ユーザーの事情により,発注段階では委託内容を十分に特定できないことです。委託内容が定められないことに,こうした正当な理由がある場合は,内容が 定められない理由および内容が確定する予定期日を記載した書面を,別途交付する。その後,内容が確定した段階で,確定内容を記載した書面を直ちに交付する ことが認められています。
とのことなので、ちゃんと決まってなくても、必ず書面は必要なようです。

発注時に支払期日を定めなければならない
これはもちろん、そうしてもらわないと困ることですが、
支払期日は「納品後60日以内」でかつ、できる限り短い期間
になるように定めなければいけないそうです。
それから、取引記録に関しては、作成が義務付けられていて、2年間の保存しなくてはなりません。

親事業者がしてはいけないこと

  • 受領拒否
    下請け業者に責任がないのに、作成物の受領を拒否してはいけません。
  • 下請け代金の支払い遅延
    受領後60日以内の定められた期日までに支払わなければいけません。
    もし支払いが遅れた場合、60日経過後に未払い金額に年率14.6%を乗じた金額を遅延利息として支払う義務があります。
  • 下請け代金の減額
    下請け業者に責任がない場合減額してはだめです。
  • 不当返品
    下請け業者に責任がない場合返品はだめです。
  • 買いたたき
    一般的な対価に比べて著しく低い金額を強制してはだめです。
  • 物の購入強制・役務の利用強制
    正当な理由なしに、物品を購入させたりさせてはだめです。
  • 不当な経済上の利益の提供要請
    金銭・役務などの経済上の利益を不当に提供させてはだめです。
  • 不当な給付内容の変更、やり直し
    下請け業者に責任がない場合、発注の取り消しやないよう変更、受領後のやり直しをさせてはだめです。
発注時に契約した内容を一方的に変えたり、無理を押し付けるようなことは基本的に禁止ということですね。納品後の無償メンテナンスの強要なんかもこれに禁止されてそうです。

ちなみに、親事業者が下請法に違反した場合の罰則としては以下のようになります。
  • 改善勧告・公表される
  • 最高50万円の罰金が科せられる
大企業に50万円とか屁でもないけど、公表は痛いですよね!

規制対象にならなくても独占禁止法上問題となる場合がある
そもそも、資本金の額が規制対象外だよ><
と泣き寝入りするべからず。
取引上優越した地位にある委託者に対しては、独占禁止法上問題となる可能性が大です。
  • 代金の支払い遅延
  • 代金の減額
  • 著しく低い対価の設定
  • 不当なやり直し
  • 協賛金等の負担の強制
  • 商品等の購入強制
  • 成果物に係る権利等の一方的取り扱い
これらは独占禁止法上問題となる場合があります。
下請法の対象外だから仕方ない・・・と諦めず、不当な取引を強いられている方は調べてみるとよいと思います。


ここまで調べてみたんだけど、孫請けの場合、元請けと下請けがしっかりできてるけど下請けから孫請けに書面がちゃんと出てない場合や、不当な要求が来た場合が対象内になるのかがまだわからなかったです。詳しい人教えてください><

不況下で仕事を取ってくるのも大変な昨今で、下請法なんて振りかざしたら潰れちゃうよ!という会社も多いかと思いますが、こんなことも知らないより知っておいたほうがいいと思います!
元請け会社も下請け会社も気持ちのよい仕事ができるように最低限のルールが守れるように頑張りましょう!

参考資料:下請け代金支払遅延等防止ガイドブック コンテンツ取引と下請法
参考サイト:ITサービスと下請法:ITpro

前回インストールしたさくらインターネットのレンタルサーバのRailsで、サンプルアプリのTODOアプリを作ります。

参考:
さくらのレンタルサーバでRuby on Railsをうごかしてみた...らかなり遅いかも...
Ruby on Rails入門2 サンプルアプリを作る

参考サイトはデータベースにmysqlを使っているんだけど、このとおりにやると、Routing Errorが出るみたいです。ほかの人も結構はまってるぽい。
というわけなので、sqliteを使ってしまいます。そしたら簡単。scaffoldで一発だよ。


[Todoプロジェクトの作成]
Railsディレクトリに移動して、railsコマンドでプロジェクトを作成します。

%cd ~/Rails
%rails Todo
create
create app/controllers
...
create log/development.log
create log/test.log

そうすると、Todoディレクトリが作成されプロジェクトができます。
ディレクトリに移動する。
%cd Todo


[rakeコマンドでデータベースの構築]
config/database.ymlを設定して、rakeコマンドを使うと、DBを自動で構築してくれます。
今回は、sqliteを使うので、database.ymlはそのままでOK。
ちなみにdatabase.yamlはこんな感じ。デフォルトのままでいきます。

%less Rails/Todo/config/database.yml
# SQLite version 3.x
# gem install sqlite3-ruby (not necessary on OS X Leopard)
development:
adapter: sqlite3
database: db/development.sqlite3
pool: 5
timeout: 5000

# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
adapter: sqlite3
database: db/test.sqlite3
pool: 5
timeout: 5000

production:
adapter: sqlite3
database: db/production.sqlite3
pool: 5
timeout: 5000


rakeコマンドを以下のように打つだけ。
%rake db:create:all
(in /home/XXX/Rails/Todo)

これでTodo用のsqliteのDBがdbディレクトリ内にできます。


[scaffoldでTODOアプリを構築]
scaffoldというのがCRUD(Create - 生成、Read - 表示、Update - 更新、Destroy - 削除)を自動生成してくれます。今回はTodoというモデルを自動で構築してくれました。ここでマイグレーションファイル(db/migrate /001_create_todos.rb)も生成されるので、こいつをDBにmigrateすると、テーブルとレコードができあがります。という説明はこのブログで2回目です。

%ruby script/generate scaffold Todo title:string body:text done:boolean due:datetime
exists app/models/
exists app/controllers/
exists app/helpers/
create app/views/todos
exists app/views/layouts/
exists test/functional/
exists test/unit/
exists public/stylesheets/
create app/views/todos/index.html.erb
create app/views/todos/show.html.erb
create app/views/todos/new.html.erb
create app/views/todos/edit.html.erb
create app/views/layouts/todos.html.erb
create public/stylesheets/scaffold.css
create app/controllers/todos_controller.rb
create test/functional/todos_controller_test.rb
create app/helpers/todos_helper.rb
route map.resources :todos
dependency model
exists app/models/
exists test/unit/
exists test/fixtures/
create app/models/todo.rb
create test/unit/todo_test.rb
create test/fixtures/todos.yml
create db/migrate
create db/migrate/20090207005150_create_todos.rb

次にマイグレートする。
%rake db:migrate
(in /home/XXX/Rails/Todo)
== CreateTodos: migrating ====================================================
-- create_table(:todos)
-> 0.0074s
== CreateTodos: migrated (0.0077s) ===========================================

[環境ファイルの設定]
前回同様、environment.rbに以下のパスを追加します。XXXはユーザアカウントね。
RAILS_RELATIVE_URL_ROOTは/todoにしとく。これなくても動くかも。

%vi config/environment.rb
# Be sure to restart your server when you modify this file
$LOAD_PATH.push("/home/XXX/lib/")
$LOAD_PATH.push("/home/XXX/lib/ruby")
ENV['GEM_HOME'] ||= '/home/XXX/lib/ruby/gem'
ENV['RAILS_RELATIVE_URL_ROOT']="/todo"

次に.htaccessも前回同様に。前回のとおりやってる人は、コピーでいい。

%cp ~/Rails/test/public/.htaccess ~/Rails/Todo/public/

一応載せとくと、中身はこんな感じ。
%vi public/.htaccess
# General Apache options
#AddHandler fastcgi-script .fcgi
#AddHandler cgi-script .cgi
#Options +FollowSymLinks +ExecCGI
#AddHandler cgi-script-debug .cgi

# If you don't want Rails to look in certain directories,

# RewriteRule ^(.*)$ dispatch.fcgi [QSA,L]
RewriteEngine On

# If your Rails application is accessed via an Alias directive,
...
# RewriteBase /myrailsapp

RewriteRule ^$ index.html [QSA]
RewriteRule ^([^.]+)$ $1.html [QSA]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ dispatch.cgi [QSA,L]

# In case Rails experiences terminal errors
...
# ErrorDocument 500 /500.html

ErrorDocument 500 "

Application error

Rails application failed to start p
roperly"

[Webに公開]
最後に、webからみられる場所からTodo/publicに向けてシンボリックリンクを
張ります。
~/wwwの直下に「todo」という名前でシンボリックリンクを作ります。

%ln -s $HOME/Rails/Todo/public/ $HOME/www/todo


完了!
以下にアクセスすると、Todoアプリが動いているはずです。
http://XXX.sakura.ne.jp/todo/todos

こんな感じです。レコードの生成、表示、更新、削除ができるよ。
RoR超簡単にアプリできすぎです。

todo.png

やっぱりさくらだとちょっと遅いけど、勉強用には十分ですな。

Ruby on Railsをさくらインターネットにインストールして実行するまで。
せっかくなので最新版を入れるよ。すごい勢いでつまづきまくったよ。

Ruby on Railsのインストール
参考:
さくらのレンタルサーバーに Ruby on Rails をインストールする手順
さくらのレンタルサーバーにRuby on Rails 2.0.2をインストールする方法

参考サイトどおりにやれば問題ないよ。

%ruby -version ruby 1.8.6 (2008-08-11 patchlevel 287) [i386-freebsd6]
現在のさくらのrubyのバージョンは1.8.6です。


[rubygemsのインストール]
rubygemsの最新版、1.3.1を取得し、インストールします。
インストール先はさくらなので$HOME内です。--prefix=$HOMEを忘れずに。

%mkdir $HOME/src
%cd $HOME/src
%ftp http://rubyforge.org/frs/download.php/45905/rubygems-1.3.1.tgz
%tar zxf rubygems-1.3.1.tgz
%cd rubygems-1.3.1
%ruby setup.rb --prefix=$HOME
インストール完了

[環境変数の設定]
次に環境変数の設定。

%cd
%vi .cshrc
set path = (~/pear/bin /sbin /bin /usr/sbin /usr/bin /usr/games /usr/local/sbin /usr/local/bin /usr/
X11R6/bin $HOME/bin $HOME/lib/ruby/gem/bin)
setenv RUBYLIB $HOME/lib
setenv GEM_HOME $HOME/lib/ruby/gem
.cshrcのset pathに $HOME/lib/ruby/gem/bin と、RUBYLIBとGEM_HOMEを追加します。
%source $HOME/.cshrc
%rehash
%gem18 --version
1.3.1
sourceで記載したパスを今すぐ通す。通したパス内の実行可能ファイルをすぐ反映させるためrehash。


Railsのインストール

%gem18 install rails
これで5分くらい待つとインストール完了。すごい簡単。
%rehash
%rails --version
Rails 2.2.2
rehashしてバージョンを調べたら、ちゃんと2.2.2が入っていた。完璧。


Railsを動かす
参考:
さくらのレンタルサーバにRuby on Railsをインストールする方法 その2


ここからが地獄の始まりでしたよ。超参考になるかもしれない。
基本、上記参考サイトの通りに進めます。

Railsのアプリケーションのディレクトリを作成。
そして、testというアプリケーションを作成。

%cd
%mkdir Rails
%cd Rails
%rails test

次にパーミッションを変更します。
logとtmpディレクトリに書き込み権限を付加。

%cd test
% chmod -R o+w log tmp
% ls -l

次に環境ファイルの設定です。
test/config/environment.rbが環境ファイル。
この設定、RUBYLIBの場所が変わってるから、
$LOAD_PATH.push("/home/XXX/lib/")としないといけません。注意。
これちゃんとしないと「Rails application failed to start properly」の
エラーが出ます。

%vi config/environment.rb
# Be sure to restart your server when you modify this file
# 以下を追加(XXXはユーザ名に置き換えてね)
$LOAD_PATH.push("/home/XXX/lib/")
$LOAD_PATH.push("/home/XXX/lib/ruby")
ENV['GEM_HOME'] ||= '/home/XXX/lib/ruby/gem'
ENV['RAILS_RELATIVE_URL_ROOT']="/test"

それから、ENV['RAILS_RELATIVE_URL_ROOT']="/test"は、
routing error が出る場合の対策。
これがないと「routing error No route matches "/test/rails/info/properties"」とか出る。調べてみると

http://groups.google.co.jp/group/rubyonrails-core/browse_thread/thread/da88f067f38e76ca?pli=1
The change in relative_url_root behavior was necessary for thread-safety. Passenger needs to be updated.
In the mean time, you can do it yourself by manually setting relative_url_root in your environment.rb.
どうも、Rails2.2になって、挙動が変わったために手動で設定が必要らしい。
ここ、かなり悩んだ。気をつけて!><


次に、public/.htaccessの設定。
しかし、.htaccessは作成されてなかった。バージョンの違い?
手動で作ります。サンプルがREADMEの中にあるので、それをコピペして、
AddHandlerとOptionsをコメントアウトします。

%vi public/.htaccess
# General Apache options
#AddHandler fastcgi-script .fcgi
#AddHandler cgi-script .cgi
#Options +FollowSymLinks +ExecCGI

# If you don't want Rails to look in certain directories,
# use the following rewrite rules so that Apache won't rewrite certain requests
#
# Example:
# RewriteCond %{REQUEST_URI} ^/notrails.*
# RewriteRule .* - [L]

# Redirect all requests not available on the filesystem to Rails
# By default the cgi dispatcher is used which is very slow
#
# For better performance replace the dispatcher with the fastcgi one
#
# Example:
# RewriteRule ^(.*)$ dispatch.fcgi [QSA,L]
RewriteEngine On

# If your Rails application is accessed via an Alias directive,
# then you MUST also set the RewriteBase in this htaccess file.
#
# Example:
# Alias /myrailsapp /path/to/myrailsapp/public
# RewriteBase /myrailsapp

RewriteRule ^$ index.html [QSA]
RewriteRule ^([^.]+)$ $1.html [QSA]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ dispatch.cgi [QSA,L]

# In case Rails experiences terminal errors
# Instead of displaying this message you can supply a file here which will be re
ndered instead
#
# Example:
# ErrorDocument 500 /500.html

ErrorDocument 500 "<h2>Application error</h2>Rails application failed to start properly"

長いけどこんな感じ。
これもファイルがなくて悩んだので全部載せときます。


次。webからみられる場所からtest/publicに向けてシンボリックリンクを
張ります。
~/wwwの直下に「test」という名前でシンボリックリンクを作ります。

% ln -s $HOME/Rails/test/public $HOME/www/test

これで、http://XXX.sakura.ne.jp/test/にアクセスすると、
「Welcome aboard」のページが表示されます。
ここの「About your application's environment」をクリックしてみてください。

  • Application error "Rails application failed to start properly"が出る ⇒config/environment.rbの設定が間違ってる可能性があります。
     パスを再確認してください。
  • Routing error "No route matches "/test/rails/info/properties" with {:method=>:get}"が出る
    ⇒config/environment.rbに
     ENV\['RAILS_RELATIVE_URL_ROOT'\]="/test"を追加してください。
     もしくは、public/.htaccessのRewriteの設定が間違ってる可能性アリ
  • For security purposes, this information is only available to local requests.と出る
    ⇒おめでとうございます。成功しました。これで終わりです。
  • no such file to load -- sqlite3というエラーが出る
    ⇒以下に進んでください

僕はここで、no such file to load -- sqlite3というエラーが出ました。
これは、sqlite3-rubyが入ってないせいです。入れます。

%setenv RB_USER_INSTALL true
%gem18 install sqlite3-ruby
setenvでRB_USER_INSTALLをtrueにしてるのはどういうことかというと、
普通にgemでインストールしようとすると、エラーが出ます。
こんなの。
chown/chgrp: Operation not permitted
探したら、こんなのを見つけた。
http://blog.proj.jp/ituki/20090107.html
/usr/local/lib/ruby/1.8/i386-freebsd6/rbconfig.rb を見ると
> CONFIG["INSTALL"] = ENV['RB_USER_INSTALL'] ? '/usr/bin/install -c' : '/usr/bin/install -c -o root -g wheel'
とかいう記述がある
よって
setenv RB_USER_INSTALL true
とかコマンドラインで入力してから rubugemsをインストールすればいい
というわけです。

ちなみに、手動でsqlite3-ruby入れようと試すとこんな感じ。失敗します。

%wget http://rubyforge.org/frs/download.php/42056/sqlite3-ruby-1.2.4.tar.gz
%tar zxf sqlite3-ruby-1.2.4.tar.gz
%cd sqlite3-ruby-1.2.4
%ruby setup.rb config --prefix=$HOME -- --with-sqlite3-dir=$HOME
%ruby setup.rb setup
%ruby setup.rb install
しかし、ここではこんなエラーが出たので、オススメできない。
don't know how to make ruby.h. Stop

以上、奮闘しましたが、無事「For security purposes, this information is only available to local requests.」が見えるのではないでしょうか。
実は僕は、なぜかばっちりRuby versionとかが出ちゃってますが。
まあ動いているのでよしとする。次回はサンプルアプリに挑戦します。


Tracをさくらインターネットのスタンダードプランに入れたので、SVNに接続する方法も書きます。ずいぶん遅くなっちゃったけど。

■PuTTYgenを使い鍵を作成する

  1. PuTTYgenはPuTTYごった煮版が入っていればOKなので、ごった煮版をダウンロード。
    http://yebisuya.dip.jp/Software/PuTTY/

  2. puttygen.exeを起動して、生成ボタンをクリック。空白のエリア内でマウスを動かす。(乱数生成のためだね)

  3. 表示されるテキスト(ssh-rsa AAAAB3NzaC1yc2・・・・みたいなの)をコピーし、テキストファイルで保存。ファイル名をauthorized_keysというファイル名(拡張子なし)に変更。

  4. PuTTYgenのほうでは、秘密鍵の保存ボタンをクリック。パスフレーズなしで保存。
    C:\Program Files\TortoiseSVN\bin\id_rsa.ppkとして保存。

  5. authorized_keysをFTPで$HOME/.ssh/にアップロード。

  6. Telnetで接続して、必要なら適宜$HOME/.ssh/のパーミッションを変更。

■ToritoiseSVNの設定

  1. ToritoiseSVNの設定画面を開く。エクスプローラで適当なフォルダを選び右クリック→ToriseSVN→設定。

  2. 画面左のツリーからネットワークを選び、SSHクライアント欄にTortoiseSVNのインストールディレクトリ\binにあるTortoisePlink.exeのフルパスを指定。引数は 「-l アカウント名」と「-i 作成した秘密鍵のパス」を指定。

    以下のようになります。XXXはさくらインターネットのユーザID。

    "C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe" -l XXX -i "C:\Program Files\TortoiseSVN\bin\id_rsa.ppk"

■つないでみる

  1. 適当なフォルダで右クリック→TortoiseSVN→RepositoryBrowser(またはリポジトリブラウザ)

  2. URLを入力("svn+ssh" + "://さくらサーバのアドレス" + レポジトリの絶対パス)。

    $HOME/var/svn/repoにレポジトリを作った場合。XXXはさくらインターネットのユーザID

    svn+ssh://XXX.sakura.ne.jp/home/XXX/var/svn/repo

  3. リポジトリが見えて、ツリーが開ければ完了。

■もっと使いやすく
複数のSVNにつなげる場合などは以下を参照。
僕はとりあえずまだやってません。
http://sfi.hamazo.tv/e1317475.html


■Tracの静的リソースアクセスを軽くする(おまけ)
さくらのTracを早くする方法を見つけたのでやってみた。
参考:http://weekbuild.sakura.ne.jp/trac/ticket/158

% ln -s ~/local/share/trac/htdocs ~/www/trachtdocs

Trac.iniを以下のように編集
[trac]
htdocs_location = /trachtdocs/

こんな感じで、とりあえずさくらでのTrac+SVNな生活は幸せに過ぎていくと思います。

2008年を月別に総括してみたよ。もう2009年入ってずいぶん経ったけど><
出来事を仕事とプライベートでまとめた。あと読んだ本も書いた。
去年と同じフォーマットです。長いよ。

-------------------------------------------------------------------
1月 仕事もプライベートもばたばた
-------------------------------------------------------------------
新年。
新しいプロジェクトが本格的に始まった。
こいつを1年間がっつりやったのが今年ですね。

もう一個プロジェクトが始まったんだけど、そっちは
部下にがっつり任せた。こっちの方が大きかった。

ついでにもう一個ちっちゃいプロジェクトを兼任してた。

プライベートは結婚式準備でばったばったしてたなー。
毎週横浜に通ってた。
衣装選びとか、結婚式の招待状作りとか、席次表作りとか。
結婚は大変なんですよ。

あとは、2007年末の1981sオフからの影響で
色々勉強してた。この頃はやる気が満々だった。
ばたばたしてたなー。

持たない暮らし
金子由紀子
ユダヤ人大富豪の教え
本田健
効率が10倍アップする 新・知的生産術
勝間和代
ビジネスマンのための発見力養成講座
小宮一慶
ロジカル・シンキング―論理的な思考と構成のスキル
照屋華子・岡田恵子
基礎Ruby on Rails
黒田努・佐藤和人
-------------------------------------------------------------------
2月 結婚式準備で大変!
-------------------------------------------------------------------
仕事で伊丹に行ったりした。
でも2日間、8時から22時まで会議とか><
プロジェクトの方は大幅に人を増員するので、人の調整が大変だった。
フィリピン人の大リクルート作業を開始。

あと、会社に営業の人が入ってきたりした。
自分は、新しく始まった仕事の設計とかもちょくちょくやってた。
でもマネジメント業務が主です。

プライベートは結婚式準備。音楽決めたりとか、色々色々。
2次会の場所決めでばたばたした。
1次会はプランナーがやってくれるけど、2次会は自分たちだから
お金かけない分時間かかって大変。
優秀な幹事さんがいれば別。うちの幹事は優秀だった!

あとブログを改装したりしたなー。

ヤクザと日本 近代の無頼
宮崎学
ザ・プロフェッショナル
大前研一
食い逃げされてもバイトは雇うな
山田真哉
「食い逃げされてもバイトは雇うな」なんて大間違い
山田真哉
ランチェスター戦略 弱者逆転の法則
福永雅文
考える技術・書く技術―問題解決力を伸ばすピラミッド原則
バーバラ・ミント
近代ヤクザ肯定論―山口組の90年
宮崎学
-------------------------------------------------------------------
3月 結婚式!
-------------------------------------------------------------------
仕事は設計フェーズ。尚且つ人員調整などの管理作業も大変だった。
結局うちのチームが、6人⇒13人とかの大幅増員。

それ以上に結婚式。

手帳を見ると
「乾杯のキーを二つ下げる」
「SHAZNAの曲変更」とか書いてある。

結婚式は3/29でした。さあ肉を食おうの日と覚えてます。
横浜のロイヤルウィングという船の上で結婚式。
ビールサーバ担いでみんなにビール配った。
生バンドが演奏してくれた。
友人Y君が乾杯歌ってくれて、最後は男友達みんな揃って大合唱。感動。
締めの僕のスピーチはとてもすばらしかったはず。
2次会でウルトラマンの衣装を着ておっくせんまんをバンドで歌った。
2次会からの帰りに外人さんに絡まれた。
素敵な結婚式でした。

3語で9割通じる英会話
デイビッド・セイン
特許明細書のクレーム作成マニュアル?発明の権利はクレーム作成にかかっている
葛西泰二
特許・実用新案出願のしかた
塩野谷英城
ビジネスマンのための「数字力」養成講座
小宮一慶
お金は銀行に預けるな 金融リテラシーの基本と実践
勝間和代
-------------------------------------------------------------------
4月 新婚旅行いってきた
-------------------------------------------------------------------
新婚旅行はフィリピン!
パスポートが微妙に期限が少なくて、危うく行けなくなりそうだけど
なんとかなった。
ついて早々、奥さんがデジカメをタクシーに置いてきて亡くしてしまうというすでに2ハプニング。

1日目は、マニラで向こうの子会社の面々とお食事。仕事も少ししたけど。
市場で海産物を選んで、料理してもらうお店。
奥さんがトイレの仕方が分からなくて教えてもらってた。

2日目からは、クラブパラダイスという島へ。
飛行機ちっちゃくて超怖かった。
海はきれいすぎた。プライベートビーチだった。
ダイビングのライセンス取れるよ、と日本人のインストラクターに言われて
2日間ほど勉強してしっかりライセンス取った。
ウミガメがかわいかった。
そのインストラクターとがっつり飲んで一人二日酔いなハプニングあり。

会社のフィリピンスタッフが、内緒でスパをプレゼントしてくれてた。
マッサージ超気持ちよかった。感動した。
動物がいっぱい放し飼いにされてるサファリ島とか行った。
ベアキャットがかわいかった。
そんなとこ行かなくても、クラブパラダイスにはオオトカゲがいっぱいいた。

マニラに帰ってきて、帰国と思ったら飛行機が飛ばなくて
1日滞在延長のハプニング。
毎日毎日の豪華なフィリピン料理に飽きてしまった。
カホンを買った。そんな新婚旅行。

帰ってきて仕事はもう5月病だった。

ドラムスのフレーズと世界のリズムをたたこう カホン&ジャンベ
大久保宙
明日から「仕事ができる」と言われる新・目標達成法
小宮一慶
最少の時間と労力で最大の成果を出す「仕組み」仕事術
泉正人
最強の集中力
ルーシー・ジョー・パラディーノ
ひとりでも部下のいる人のための世界一シンプルなマネジメント術 3分間コーチ
伊藤守
アルジャーノンに花束を
ダニエル・キイス
きみはなぜ働くか。―渡邉美樹が贈る88の言葉
渡邉美樹
-------------------------------------------------------------------
5月 X JAPANと5月病
-------------------------------------------------------------------
仕事はまさに5月病。
1週間仕事休んで海外なんて行ってると、ペースをつかむのに2ヶ月かかる。
これ教訓な。

Hide memorial summitに行った。初の生X JAPANに感動した。
ついでにDir en greyにはまった。

チームで伊豆の会長別荘に旅行(Outing)に行った。
風邪引いててえらいきつかった。アーチェリー楽しかった。
フィリピン人のダンスのノリは半端なかった。

180sxを車検に出した。なんと普通に通った。10万円くらいで済んだなり。

ラクをしないと成果は出ない
日垣隆
Harry Potter and the Prisoner of Azkaban
J.K. Rowling
50イングリッシュ
サム・パク
デッドライン仕事術
吉越浩一郎
これだけは知っておきたい「マーケティング」の基本と常識
大山秀一
世界一わかりやすいWebマーケティングの本
羽切徳行
「残業ゼロ」の仕事力
吉越浩一郎
-------------------------------------------------------------------
6月 初漫才
-------------------------------------------------------------------
仕事は実装フェーズ。
僕は未決定な仕様や不明確部分をひたすらお客さんと協議してた。
その上で全体の進捗をマネジメントしている感じで結構な架橋。
五月病の影響か、開発内テストの仕方について、お客さんにめっさ怒られた。
しかし、とても勉強になった。今年一番きっつい反省点な部分だ。

会社の同僚2人の結婚式の2次会。
幹事で準備がえらい大変だった。
クイズの司会と漫才をした。ラーメンズのぱくりみたいな。
見事に滑った。後で内容の解説を求める人とかいた。もうやりたくない。

あとは、家探しをしてた。
多摩市周りで結構探して見つからなくて、町田の近くで探したらあっさり見つかった。
場所でぜんぜんある物件が違うね。

実家の犬が増えた。またシェルティ。こいつ。名前はラルク。
raruku.jpg

これ携帯の待ち受けの写真。

2日で人生が変わる「箱」の法則
アービンジャー・インスティチュート
自分の小さな「箱」から脱出する方法
アービンジャー・インスティチュート
不機嫌な職場~なぜ社員同士で協力できないのか
河合太介, 高橋克徳, 永田稔
頭がいい人が使う話し方のコツ―好かれる人、仕事ができる人はここが違う!
神岡真司
頭がいい人の敬語の使い方―仕事がデキる人間が使う究極の話術
本郷陽二
ビジネスマンのための「解決力」養成講座
小宮一慶
-------------------------------------------------------------------
7月 引越しと組織変更
-------------------------------------------------------------------
先月の失敗を教訓にプロジェクトはお客さんと足並みを揃えて
進められるようになった。

会社の組織変更とAnnual Meetingを行った。
組織変更は、年始くらいから僕が考えてたもので、全体をグループ制にして
各グループで採算管理とグループ内メンバーの管理をリーダーが行うという
仕組み。
若い人ばっかの企業なので、今までは誰が上司で誰が部下かがはっきり
してなかったのをなんとかしたかった。今のところうまく回ってる。
Annual Meetingは全社員でお店貸しきって開催。
6月決算なので、年度方針発表とか。全部で50人くらいいる。人増えたなあ。
ほとんどフィリピン人だけどな。

引越しした。相模大野と町田の間。テラスハウスで3LDKです。
敷金とか礼金とか訳わからない保証費とかで60万以上かかった。高い。
しかも、その保証費というのが、保証人代行サービスで、1ヵ月後に破産した。
ありえなかった。ぶー。ここね。

引越し後は家具買ったりして楽しかった。7月末が夏休みだったし。

女子大生会計士の事件簿 1
山田真哉
女子大生会計士の事件簿 2
山田真哉
女子大生会計士の事件簿 3
山田真哉
女子大生会計士の事件簿 4
山田真哉
女子大生会計士の事件簿 5
山田真哉
女子大生会計士の事件簿 6
山田真哉
-------------------------------------------------------------------
8月 夏は別れの季節ですか><
-------------------------------------------------------------------
夏休みが明けると、チームメンバーが1人病気になってしまいまして
会社を辞めると言い出した。
説得に回ったり調整したりいろいろ大変だったんですが、
結局辞めてしまいました。よくある話だけど、本人も会社も大変だった><

もう1人、チームのサブリーダーだったフィリピン人が、
カナダへ行くため辞めてしまった。こっちも調整は超大変だったけど
円満退社。その後、カナダでの就職の際の手伝いとかいろいろした。
現地の人と英語で喋るのは超緊張した。
超優秀なメンバーだったので、向こうでもきっと頑張れるはず。

その分、新しいメンバーが続々と入ってきて、8月で13人体制になった。
ほとんど、もう1人のサブリーダーがマネジメントしてくれた。
1年間本当に助かった。お疲れ様です。

ゴルフを始めた。と言っても、打ちっぱなしに数回行っただけだけど。
まったく持ってへたくそなので、誰かに教えてもらわないとなー、
という感じ。

ゲリラ豪雨がすごかったけど、僕の家の給湯器が落雷で壊れました。
さすがに水シャワーとかきつかった。

英語嫌いの東大卒が教える私の英語学習法
小川慶一
これから始める人のゴルフ入門
水谷翔
[24時間365日] サーバ/インフラを支える技術 ~スケーラビリティ、ハイパフォーマンス、省力運用
安井真伸, 横川和哉, ひろせ まさあき, 伊藤直也, 田中慎司, 勝見祐己
「残業ゼロ」の人生力
吉越浩一郎
佐藤可士和の超整理術
佐藤可士和
-------------------------------------------------------------------
9月 取締役になった/子供できた
-------------------------------------------------------------------
9月に取締役会と株主総会が開かれて、正式に取締役になりました。
すごくがんばります。
プロジェクトは製品搭載フェーズで、お客さんとのやり取りをして
仕様変更⇒実装変更⇒テストという感じ。忙しかったり暇だったり。
もう一個のサブリーダーが頑張ってる方はみんな7月くらいからは
深夜まで残業してた。

英語の勉強を頑張ってた。TOEIC受けるぞー、とか言って受けてないや。
あとマキシマムザホルモンにはまった。

9月4日に子供が出来たことが発覚した。おいおいおいびっくりだった。
9月12日から禁煙始めた。

日本人の英語
マーク・ピーターセン
TOEIC TEST文法完全攻略―必須単語も同時に身につく
石井辰哉
NHKラジオ ビジネス英会話 高橋修三 ヘッドハントされる
杉田敏
ホームレス中学生
田村裕
-------------------------------------------------------------------
10月 お尻がエクスプロージョンした
-------------------------------------------------------------------
プロジェクトは9月から変わりなし。
あと別で、製品のOEM対応を僕1人で担当した。
いろいろ勉強になった。うまくこなしてたんだけど、
最後にミスもしてしまった。
現場仕事をがつがつやるのも、久しぶりだとダメだなー。

Tracを使い始めた。さくらインターネットのサーバにインストールして
自分のタスク管理用に使ってる。
長い目で見てやらなきゃいけないことのタスクブレイクダウンがうまく
できて使い勝手いい。Tracに思いついたこと書いてくだけで仕事が進む。

ノリで人生初のエロゲを買った。これはエロゲと言うより人生だ。
AIR ~Standard Edition~

禁煙⇒酒が増える⇒お尻が大変なことになる
初の肛門科受診。酒を控えろとのお言葉。
この後、2ヵ月ほど、作戦は「お尻を大事に」。
酒を飲んでは病院に通う日々が続いた。
同僚にはディズニーのお土産で円座布団をもらった。今も使っている。

奥さんはつわりで大変そうだった。

こうすれば必ず人は動く
デール・カーネギー
なぜ、オンリーワンを目指してはいけないのか?
小宮一慶
ビジネスマンのための「読書力」養成講座
小宮一慶
-------------------------------------------------------------------
11月 不況が来たよ
-------------------------------------------------------------------
仕事は10月のを引き続き。
そして来年度のプロジェクトのスケジュール提案とか。
しかし不況がやってきたため、いろいろと厳しい状況。
チームの人数も来年から削減。不況を目の当たりにする。

そういえば、引っ越してガーデニングをやりはじめた。
うちの庭には素敵な鉢植えが植わってます。

この冬は流星の絆をずっと見てた。とても面白かった。
3年前から言ってるが、戸田恵梨香は俺の嫁。

論語の活学―人間学講話 (人間学講話)
安岡正篤
Trac入門
菅野裕, 今田忠博, 近藤正裕, 杉本琢磨
稲盛和夫の実学―経営と会計
稲盛和夫
-------------------------------------------------------------------
12月 クリパ・1981s忘年会・師走
-------------------------------------------------------------------
師走は大変だった。
・不況で人員調整がたくさん
・半期計画見直し作成
・自社の音楽ソフトプロジェクトのマネジメント
・クリスマスパーティー
・納会

毎年恒例のクリパではギターを弾いた。
井上陽水・奥田民生のありがとう
Back Street BoysのI want it that way
割と上手に弾けた、わけではなく酔っ払ってぐだぐだだった。
1年ブランクがあると練習しないとセーハで音がちゃんと鳴らないとか><
まあ楽しかった。

1981s忘年会、去年に引き続き行ってきた。
去年知り合った人がいっぱい来てて、また会えて楽しかった。
なぜかリアルな知り合いが来ててびっくりした。えがちゃんに絡まれてた。
3次会でUstreamしてたら、nipotanさんとYappoさんがずっと悪ふざけしてた。
僕はエロトーク8割とまじめな話2割くらいだった。
nipotanさんにmalaさんが京都旅行から戻った経緯とlivedoorの開発体制についての話をいっぱい聞けたのが収穫。
詳細はほかの人のレポート参照でお願いします。
http://b.hatena.ne.jp/nyon2/1981s

5月に生まれる赤ちゃんは男の子でした。蹴るのがわかるようになった。
父親感が出てきた。
しかし、不況のためのストレスにより禁煙に失敗したのであった。

稲盛和夫の経営塾―Q&A高収益企業のつくり方
稲盛和夫
グラスホッパー
伊坂幸太郎
-------------------------------------------------------------------
年末に大急ぎで書いたまとめより、思ったよりいろいろやってるな。
2008年、仕事とプライベートは意外と頑張ったんじゃないか。
今年もがんばります!

あとちょっとで今年が終わっちゃう!
ということで、今年を総括してみます。去年と同じ流れですよ!
酔ってるし!

--------------------
■仕事
今年本当に心に思ってやったことはこれ。
「やるべきことをきちんとすること」
経営とか営業とかなんたらかんたらありますが、とにかく、目の前にいるお客さんが求めていることをまず達成すること。約束を守ること。これですね。
ほんとにこれが一番。今年振り返って、これしか思いつかない。

あとは、以下。
・組み込みの仕事が板についてきた。
・部下がすごく育った。
・人に任せることってのは難しい。
・取締役になった。
・本気出さないと来年やばい。
・ヒト/モノ/カネを本気で動かすのは超むずい。
・胃が痛い。

■個人(出来事)
・結婚
3月に結婚した。素敵過ぎる結婚式だったと思う。みんなもっと褒めていいと思う。
・新婚旅行
新婚旅行にフィリピンに行った。
パスポートの期限切れで危うく行けないところだったが何とか行けた。(フィリピンは半年分ないとまずいらしい)
マニラの空気はやっぱり汚い。けほけほ。
奥さんがタクシーでデジカメなくした。
クラブパラダイスは超きれいだった。ダイビングのライセンス取った。
でかい亀がかわいかった。
・引越し
相模原市に引っ越しました。テラスハウスで無駄に部屋がたくさん。
泊まりに来るにはもってこいです。フェレット臭いです。
・奥さん妊娠
子供ができた。9月に発覚。安定期までみんなに内緒、とか思ってたら、周り(主に会社)で続々子供出来ちゃった宣言があり、超後出しで困った。
5月に赤ちゃんが生まれます。多分男の子。蹴るよ。
・禁煙
子供ができたと君がいうから僕はタバコをやめたんだよ。(卒煙)
・病気
タバコをやめたら酒が増えたら、僕のお尻がエクスプロージョン!
病院とか行くと、指とか侵入してきて、「セックスしてるみたいですよね!」
内部に注入するタイプです。
同僚からもらった、ディズニーの穴あき座布団を会社で常用してます。本当に助かっている。
・太った
タバコやめたら太った。
・喫煙
Economic Crisisでストレスがハンパなくてタバコが助けてくれたんだよ。(入煙10日目くらい)

■個人(能力)
今年頑張ったのは、惰性で頑張った。頑張れてない。
あとでちゃんと振り返るが、もっと頑張れたはずなので、来年がんがる。
今年はダメだった、と自分に言っておく。

■個人(趣味)
ゴルフとかちょっとやってみた。人に習わないとダメだな。
んー、ほかに特に思いつかないぞ。

--------------------

実感的にはこんな感じ。いろいろイベントが多すぎて、てんやわんやでコントロールできてないなーというのが今年。
以下、今年の目標に対して。

--------------------

自分に厳しく「人にやさしく」
はい、だめー。やさしくない。

WEBに名を残す
はい、だめー。
観測範囲は広がった。
しかしながら、nipotan曰く「アンテナが高くても、実際に手を動かして試したりしなければ、それはただのニュースジャンキー。エンジニアは脊髄反射的に」
まだダメ。

「行動力」を最優先する
はい、だめー。

習慣をつくる
はい、だめー。
一時期すげー英語の勉強してたけど、「フィリピン人はもっと日本語使わないと生き残れない」という企業戦略みたいなのが自分に芽生えてから、英語使わなくなっちゃった。

初心に戻って基礎固め
はい、だめー。
コードほっとんど書いてない。

自律、酒に負けない、運動しよう
はい、だめー。ぶよぶよ。

--------------------
目標に沿って、何かを成し遂げるというのは難しいものですね><

今年は、ほんと自分の想像してたより、いろんなことがあって、それに対処するのが精一杯だった感じだな。
子供ができたとか、超嬉しかったんだよ。それ以上に大変だったりするし、勢いも空回りしたり。
臨機応変に進むべき道を変えていく強さみたいなのは大事ですよね。あと体は大事だよね。
でもやっぱり、やるべきことをちゃんとやるのが一番大事だな。友達見ててもそう思うねー。
後で月ごとのまとめもしよう。

ということで、今年は僕はダメでした!あえてそういう結論にする!来年がんがる!お父さんだしな!


前回に引き続きます。プラグインをインストールします。
Web上で管理するためには、0.10.x系では、WebAdminというプラグインが必要です。
あとは、ユーザ管理にAccountManagerというプラグインも入れたほうがいいらしい。

[WebAdmin]
■TortoiseSVNのインストール
WebAdminはSVNで取得の必要ありとのことで、TortoiseSVNをインストールします。
ここ見た。
 http://www.gside.org/Gentoo/subversion/subversion_client.html

■WebAdminの取得
・SVNでチェックアウト
Windowsの適当なエクスプローラ上で、
[右クリック] ⇒ [SVNチェックアウト] ⇒ [リポジトリのURL:http://svn.edgewall.com/repos/trac/sandbox/webadmin/]
でチェックアウトディレクトリを適当に入れる。
ダウンロードしたものをZIP化し、FTPでアップロード。
$HOME/local/srcに置きます。

■WebAdminのインストール
%cd $HOME/local/src
%unzip webadmin.zip
%cd webadmin
%python setup.py build
%python setup.py install --prefix=$HOME/local
%vi $HOME/var/trac/repo/conf/trac.ini
[components]
webadmin.* = enabled
これで、tracのメニューに"Admin"が追加される。

[AccountManager]
■AccountManagerの取得
いろいろ調べた結果、これもソースを取ってきて
自分でセットアップするのが早そうなので、WebAdminと同様に。

バージョンは、Tracのバージョンにあわせて、0.10です。
Windowsの適当なエクスプローラ上で、
[右クリック] ⇒ [SVNチェックアウト] ⇒ [リポジトリのURL:http://trac-hacks.org/svn/accountmanagerplugin/0.10]
でチェックアウトディレクトリを適当に入れる。
ダウンロードしたものをZIP化し、FTPでアップロード。
$HOME/local/srcに置きます。

■AccountManagerのインストール
%cd $HOME/local/src
%unzip accountmanager.zip
%cd accountmanager
%python setup.py install --prefix=$HOME/local
これで、インストールは完了。
あとは、設定は、Webでやる。

WebAdminを見ます。Webの右上のAdminをクリック。
Pluginsで、TracAccountManager 0.1.3dev-r3857クリック。
使いたいものをチェック。ComponentのEnabledね。

Adminの左のメニューにAccountsと出ているから、インストール成功。
使い方は後で調べる。下の参考ページ見たり、ぐぐったりしてくだしあ><

参考ページ:http://trac-hacks.org/wiki/AccountManagerPlugin
僕の仕事は主に開発のマネジメントなのですが、こんなことがよく起きる。

  • 客「ここの仕様こうなりました。」
    僕「分かりました。」
    ↓ 3ヵ月後
    客「あれってどうなったんでしたっけ。」
    僕「あれ、実装はこうなってるけど・・・なんでこうなったんだろう?」

  • 客「ここの仕様こうなりました。」
    僕「分かりました。Aさん実装しといて」
    A「OK。sige sige(フィリピン人)」
     ↓ 1ヵ月後
    僕「あれ、Aさん実装した・・・のかな?」 A「Yes」
    僕「あれ、こういう仕様だっけ?」 A「Yes」
    僕「お客さんに一応確認してみよう」
要するに、仕様の変更管理がしっかりできてない。プロダクトの開発だから、拙速に仕様が変更になったり決まってても適当に電話で済まされちゃうことが多かったりするし、それを開発担当者に伝えるのも口頭で済ませちゃったりするわけです。
そんな感じだから、確認のための無駄な工数がかかったり、正しい仕様が誰にも分からなかったりする事態が生まれている。そんなので悩んでいたときに、Tracで変更管理をして、効率化に成功しているプロジェクトがあった。

うちのチームでも見習おう、ということでTracを試してみる。

Tracについては、この辺を読んでみると、もっと使いたくなる。

 Web2.0ナビ: 意外と使われていない「個人用trac」活用のすすめ
 Trac Lightningで始めるチケット式開発「電撃」入門 (1/4) - @IT
 [Think IT] 第2回:なぜTracの導入に失敗するのか? (1/3)
  
ということで、さくらインターネットにTracをインストールしてみたよ。

参考サイト:
  さくらサーバにtracをインストール - プログラミングノート
  さくらレンタルサーバにTracをインストール - FREE STYLE WEBLOG
  さくらインターネットにTracを構築する - WeekbuildのHack倉庫 - Trac

さくらインターネットのスタンダードプランです。SSHで接続。
■[ 環境設定 ]
%mkdir -p $HOME/local/src
%cd $HOME/local/src
%mkdir -p $HOME/local/lib/python2.4/site-packages
%ln -s ~/local/lib/python2.4 ~/local/lib/python
%setenv PYTHONPATH $HOME/local/lib/python:$HOME/local/lib/python/site-packages
%setenv PATH $HOME/local/bin:$PATH
%setenv LD_LIBRARY_PATH $HOME/local/lib
setenvのところは、シェルに登録しといたほうがいい
%vi .cshrc
setenv  PYTHONPATH $HOME/local/lib/python:$HOME/local/lib/python/site-packages
setenv  PATH $HOME/local/bin:$PATH
setenv  LD_LIBRARY_PATH $HOME/local/lib
■[ swig ]
swigの最新版:1.3.36
%cd $HOME/local/src
%wget http://downloads.sourceforge.net/swig/swig-1.3.36.tar.gz
%tar zxvf swig-1.3.36.tar.gz
%cd swig-1.3.36
%./configure -prefix=$HOME/local
%make
%make install
■[ subversion ]
Subversion最新版:1.5.3
APRは0.9.17でやってみる。
%cd $HOME/local/src
%mkdir subversion-1.5.3

%wget http://www.meisei-u.ac.jp/mirror/apache/dist/apr/apr-0.9.17.tar.gz
%tar zxvf apr-0.9.17.tar.gz
%mv apr-0.9.17 subversion-1.5.2/apr

%wget http://www.meisei-u.ac.jp/mirror/apache/dist/apr/apr-util-0.9.15.tar.gz
%tar zxvf apr-util-0.9.15.tar.gz
%mv apr-util-0.9.15 subversion-1.5.2/apr-util

%wget http://subversion.tigris.org/downloads/subversion-1.5.3.tar.gz
%tar zxvf subversion-1.5.3.tar.gz
%cd subversion-1.5.3

%./configure --prefix=$HOME/local --with-neon=$HOME/local --without-berkeley-db --enable-swig-bindings=python --with-swig=$HOME/local/bin/swig --disable-static

%make
%make install
%make swig-py
%make install-swig-py
%ln -s $HOME/local/lib/svn-python $HOME/local/lib/python/site-packages/svn-python
%ln -s $HOME/local/lib/svn-python/svn $HOME/local/lib/python/site-packages/svn
%ln -s $HOME/local/lib/svn-python/libsvn $HOME/local/lib/python/site-packages/libsvn
■[ pysqlite ]
pythonでsqliteを使うためのライブラリ。
pysqliteは最新だと動かないそうなので、1.1.7をインスコ。
%cd $HOME/local/src
%wget http://initd.org/pub/software/pysqlite/releases/1.1/1.1.7/pysqlite-1.1.7.tar.gz
%tar zxvf pysqlite-1.1.7.tar
%cd pysqlite
%setenv LOCALBASE $HOME/local
%python setup.py build
%python setup.py install --prefix=$HOME/local
■[ clearsilver ]
C言語によるテンプレートエンジン。非常にシンプルで、かつ高速に動作する。C言語、Python、Perl、Java、Ruby等の言語から利用できる。プロジェクト管理ツールであるTracがPythonバインディングを使用していることで有名。また、Bloglines、Google Groups等の著名サイトでも使用されている。
最新版:0.10.5
でも、0.9.14でいい。
%cd $HOME/local/src
%wget http://www.clearsilver.net/downloads/clearsilver-0.9.14.tar.gz
%tar zxvf clearsilver-0.9.14.tar
%cd clearsilver-0.9.14
%./configure --prefix=$HOME/local --oldincludedir=$HOME/local/include --disable-ruby --disable-java --disable-perl --disable-csharp --disable-python --disable-static
%gmake
%gmake install
%cd python
%python setup.py build
%python setup.py install --prefix=$HOME/local
■[ docutils ]
Pythonで書かれたテキスト処理ツール群です。
reStructuredTextという簡単な構文で構造化されたテキストファイルを、
HTML,XMLやLaTeXなどのフォーマットに変換することができます。
最新版:0.5
%cd $HOME/local/src
%wget http://downloads.sourceforge.net/docutils/docutils-0.5.tar.gz
%tar zxvf docutils-0.5.tar.gz
%cd docutils-0.5
%python setup.py install --home=$HOME/local
■[ trac ]
Trac最新バージョン:0.11.1
Trac日本語版:
  インタアクト株式会社--業務内容--公開資料
  Trac-0.11.1.ja1.zip (インストール失敗)
  trac-0.10.5-ja-1.zip (こっちをインストールした)
インタアクト株式会社が日本語化して配布。ありがたい。
Tracは、日本語版を使います。最新版を試したところ、失敗。
==ここからは失敗なので真似しないで><===
%wget http://www.i-act.co.jp/project/products/downloads/Trac-0.11.1.ja1.zip
%unzip Trac-0.11.1.ja1.zip
%cd Trac-0.11.1.ja1
%python setup.py install --prefix=$HOME/local

---
ここで問題が発生。
---

%python setup.py install --prefix=$HOME/local
Traceback (most recent call last):
  File "setup.py", line 15, in ?
    from setuptools import setup, find_packages
ImportError: No module named setuptools

---
で、ここから、setuptools入れたりなんだりして進めたら、
インストールはできるんだが、Trac環境設定で、こんなことになる。

%trac-admin $HOME/var/trac/repo initenv
No module named scripts.adminなんたらかんたら
---
ここではまり、1日くらいうなったが、諦めた。
Tracを消す。どうやったら消せるんだ。
悩んだ挙句、findして、Tracと名のつくファイルをすべて消した。

%find . -name "*trac*"
これで出てきたファイルを消す。Tracに関係なさそうなファイル以外を消す。
---
==ここまでは失敗なので真似しないで><===
気をとりなおして、0.10.5をインストール。
%wget http://www.i-act.co.jp/project/products/downloads/trac-0.10.5-ja-1.zip
%unzip trac-0.10.5-ja-1.zip
%cd trac-0.10.5-ja-1
%python setup.py install --prefix=$HOME/local

---
上の失敗の名残でsetuptoolsを入れてます。ここ参照。
http://d.hatena.ne.jp/yamanetoshi/20080712/p1
---

%wget http://peak.telecommunity.com/dist/ez_setup.py
%python ez_setup.py --prefix=$HOME/local

%cp $HOME/local/share/trac/cgi-bin/trac.cgi $HOME/www
もうこの辺から、参考サイトと同じ。参考サイトがなくなったりしたときのために書く。

■subversion のリポジトリを作成
%mkdir -p $HOME/var/svn
%svnadmin create  --fs-type=fsfs $HOME/var/svn/repo

%mkdir $HOME/tmp
%cd $HOME/tmp
%mkdir proj
%cd proj
%mkdir trunk branches tags
%cd ..
%svn import proj file:///$HOME/var/svn/repo -m "Import First"
%rm -r proj
■trac の環境を設定
%mkdir -p $HOME/var/trac
%trac-admin $HOME/var/trac/repo initenv
上のコマンドを実行すると対話形式に。
以下を聞かれたらちゃんと入力。後はEnterでおkとのこと。
Project Name [My Project]>プロジェクト名を入力
Path to repository [/var/svn/test]> /home/○○○(アカウント名)/var/svn/repo
■trac.cgiとか、Web周りの設定
%mv $HOME/www/trac.cgi $HOME/www/trac_.cgi
%vi trac.cgi
#!/bin/sh
LD_LIBRARY_PATH=/home/○○○(アカウント名)/local/lib;export LD_LIBRARY_PATH
TRAC_ENV=/home/○○○(アカウント名)/var/trac/repo;export TRAC_ENV
PYTHONPATH=/home/○○○(アカウント名)/local/lib/python:/home/○○○(アカウント名)/local/lib/python/site-packages;export PYTHONPATH
/usr/local/bin/python /home/○○○(アカウント名)/www/svn/trac_.cgi

%cd $HOME/www
%mkdir svn
%mv trac_.cgi svn/trac_.cgi
%mv trac.cgi svn/trac.cgi
%cd svn
%chmod 755 trac.cgi

フォルダ区切りでアクセスできるように.htaccessいじる。
%vi $HOME/www/svn/.htaccess
RewriteEngine On
RewriteBase /
RewriteRule ^$ /svn/trac/ [R=301,L]
RewriteRule ^/svn/trac/(.*)$ /svn/trac.cgi/$1 [L]

ベーシック認証とTracのログインをうまいことやる。
%htpasswd -c $HOME/var/trac/repo/conf/.tracpasswd admin
New password: ******
Re-type new password: ******

%cd $HOME/www
%vi .htaccess
AuthUserFile /home/○○○(アカウント名)/var/trac/repo/conf/.tracpasswd
AuthGroupFile /dev/null
AuthName “Type your password prease.”
AuthType Basic
require valid-user

%trac-admin $HOME/var/trac/repo/ permission add admin TRAC_ADMIN

あとは、trac.iniをいじる。↓はロゴのリンク先変更。
%cd var/trac/repo/conf/
%vi trac.ini
[header_logo]
alt =
height = -1
link = http://○○○(アカウント名).sakura.ne.jp/svn/trac/
src = common/trac_banner.png
width = -1
以上。
あとは0.10系では管理画面ないので、
WebAdminとかプラグインのインストールが必要ですね。
あとで書く。とりあえずこれでTracが動く。
個人用のチケット登録したりして遊んでます。
そろそろ下火になってきたMyMiniCityだけど、僕はもう飽きちゃった><
理由は、簡単に発展させる技を見つけちゃったからです。
ということで、MyMiniCityで比較的簡単に、一人で発展させられる技を紹介しちゃうよ!

MyMiniCityは、1日のユニークアクセス数によって、人口が増えたり、さまざまな環境が変わったりして町が発展していくサービスです。
この、ユニークアクセスってやつがキモで、要は「違うIPアドレスでアクセスすること」=「ユニークアクセス」になるわけです。
みんなは頑張ってブログで宣伝したり、twitterで釣り発言をしてtinyURLにした自分のMyMiniCityにアクセスしたりと必死に努力をここ1~2ヶ月前くらいまで続けてたと思うけど、僕は宣伝がめんどくさくて一人で増やしてました。家のPC、職場のPC、そしてeMobileでのアクセスでそれぞれ1日1回ずつね。

で、あるとき気づいたのが、eMobileでのアクセスって、1日1回だけじゃなくて、接続⇒切断⇒接続することでIP変わるじゃん!ということ。
というわけで、まずは手動で試してみた。

  1. eMobile接続
  2. MyMiniCityにアクセス
  3. eMobile切断
  4. 1に戻る

これで人口1人増える!
調子に乗って、自動化。このマウスとキーボードの自動化でいいやと思って、このソフト使った。
HiMacroEX
http://www.vector.co.jp/soft/winnt/util/se427963.html

自動化手順は以下。

eMobile接続ボタン押した状態、ブラウザ開いた状態で開始
  1. ブラウザのURL欄クリック
  2. http://mmc.nipotan.org/町の名前/をURL欄に貼り付け(nipotanの自動で適切なMyMiniCityURLへ飛ばしてくれるサービスです)
  3. Enter
  4. しばらく待つ
  5. eMobile切断ボタンクリック
  6. しばらく待つ
  7. eMobile接続ボタンクリック
  8. しばらく待つ
  9. 1に戻る
これで一晩ほっといたら、400人ほど人口が増えてました。
http://nyontan.myminicity.com/

この時点で、飽きた(´・ω・`)
もし頑張って町の発展を目指している人は、是非試してみるといいよ!すぐに飽きちゃうと思うけど><
※もしかしたら利用規約違反かもしれん。規約は見当たらなかったけど。

そして、飽きちゃった僕は、違う遊び方を考えた。
MyMiniCityは、町を作るだけ作って、後はログインも何もないので、所有者が誰なんてことは気にしないシステム。
突き詰めて言うと、町の名前にどれだけ自分のアイデンティティを盛り込ませて、それを誇示したいか、というだけの自己顕示欲を満たせるだけのためのサービスとか言っちゃうと身も蓋もないけど言っちゃう><

ということで、自分の町は飽きたので友達に町をプレゼントすることにした。
たとえば、目が離れていることがアイデンティティのさわだ君に、彼の両目の距離を含んだ町をプレゼント!
http://sawada4.8.myminicity.com/
調子に乗って、職場の女の子の名前にブラのサイズを入れて町をプレゼントした!
http://名前-bcup.myminicity.com/

見事に恩は仇になって返されたよ!セクハラとか!訴えるとか訴えないとか!
人生オワタ\(^o^)/

後悔先に立たず、MyMiniCityでは作ったURLは消せないよ。だってログインできないから、消せるなら誰でも消せちゃう。
さあみんなも、この楽しい遊び方を試してみよう!

以下贖罪。
http://nyontan-iboji.myminicity.com/
12月25日、アメリカの有名ロックバンド、マリリン・マンソンからボーカルのマリリン・マンソンが脱退するという意向を表明した。
マリリン・マンソンは89年にマリリン・マンソンとしてデビューし、「メカニカル・アニマルズ」などのヒット作を生んだロックシンガー。
またマリリン・マンソンはマリリン・マンソンの奇抜さと挑発的なパフォーマンスでも有名なバンドで、特にマリリン・マンソンの宗教批判は団体からの数々のバッシングを受けるほどである。
マリリン・マンソンのギタリスト、ティム・スコールドは
「マリリン・マンソンからマリリン・マンソンが抜けると現時点での断言はできないが、マリリン・マンソン自身がマリリン・マンソンを抜けるというなら、俺達マリリン・マンソンはそれを受け入れるしかないよ」と語った。
マリリン・マンソンのマリリン・マンソン脱退後、マリリン・マンソンはマリリン・マンソンという名をマリリン・マンソンに譲るのかどうかは未だ不明である。

http://alfalfa.livedoor.biz/archives/51237899.html
大学時代に「マソソソ」というマリリン・マンソンのコピーバンド(その後なぜかOblivion Dustのコピーバンドになった)をやっていた僕からすると目が飛び出るほどびっくりする記事だったのですが。

この記事、釣りでした><

プロフィール

nyontan/nyon2
経営とかプログラミングとかフィリピンとか。基本的にふざけてるけど、たまに超まじめ。
うんこうんこー。

最近読んだ本

早起き生活