「集まってから何かやろう」じゃなくて「コレやろう!から集まる」という考え方

Think No Comments »

はてなの近藤社長はシリコンバレーでどんな問題に直面したのか? - 分裂勘違い君劇場

を読んで思ったこと。

はてなの話ではなくて今在籍する自分の会社についての話になってしまいますが。の前に自分の立ち位置を話しておくと後の話も分かりやすくなるかと思うので少し生い立ちを話します。長くなるのでパスして頂いても結構ですが。。。

自分は高校を卒業してから4年間、200人そこそこのソフト会社に勤めていました。ソフト会社といえども大半の社員を SE 派遣という形で大手企業/中小企業に派遣する、まぁよくある(派遣)会社です。その後、個人的に仕事をもらえるということで、当時の会社に勿論4年も外に放り出されてた訳で帰属意識なんて感じてなかったのもあって、フリーランスへ。

いや、ちょっと嘘つきました。 帰属意識を感じてないのではなく純粋に寂しかったのです。それと「会社を良くしたい」なんてことも思ってたし。結果として、誰にも頼まれてもないのに OFF の時間を使って、社内 SNS を構築したり(後半忙しくなり先輩達にかなりやってもらったっけな・・・)して。それを促進したり、もっと良い文化/空気を作ったりしたかったけど、独立の話も進んでいたので中途半端に。その節は本当に申し訳なかったです。

フリーになってから約半年のある日、仕事をくれていた方が社員化を考えていると方向転換。当時自分のようにその方から仕事をもらっていた方々も同様に声を掛けられていたんですが、社員になったのは自分ひとり。ずっと社員にならなかった方々の考え、気持ちを考えていたんですが、分裂勘違い君の、このくだりでスッキリしました。

具体的な企画もなしに、なんだか雲をつかむような話をされただけでほいほいプロジェクトに参加してくれたりはしない。

優秀な人材というのは、「や ら な い か」と言われただけで「ウホッ、いい男」と顔を赤らめながら入社したりはしないのだ。

当時、社員を集めていた方(現社長)には、「雲をつかむような話」しかなくて、「具体的な企画・プロジェクト」はありませんでした。それでも僕は入社しました。そして、反対に社員にならなかった方々は大人で優秀で冷静で当たり前の結論だったのでしょう。スッキリしました。

つまり、「集まってから何かやろう」という考え方だったのですね。

けれど、それでは人は集まらない。なんたって自分の人生(家族)を掛けて、先も見えない「雲をつかむような」会社には誰も入らないですよね。

それも、単なる企画ではだめだ。「こいつはすげえ!これは世界を変えるぅ!」と思わせるような、人を魅了する企画じゃないと、 なかなか優秀な人材は採用できない。

企画だけでは人は集まらないというのは勿論分かった上で、将来性・安定性・財務健全性・福利厚生・職場環境・既に中にいる人材etc が重要なのは承知の上で、それでもまずは、企画。ベンチャーなんだし。企画。

「コレやろう!から集まる」という考え方で行動しないと人は集まらないですね。

Ubuntu のデフォルトエディタを nano から vim に変更する方法

Slicehost, Ubuntu 2 Comments »

nano なんて全然知らないので visudo でファイルが保存できなかったヘタレな僕は、そもそもデフォルトエディタを vim にすることにしました。 vim マンセー。

# update-alternatives --config editor

There are 3 alternatives which provide `editor’.

Selection Alternative
———————————————–
1 /usr/bin/vim.tiny
*+ 2 /bin/nano
3 /usr/bin/vim.basic

Press enter to keep the default[*], or type selection number: 3

こんなコマンド知らなかったなー。

VPS Slicehost を借りてみた。

Slicehost No Comments »

iBook G4 Blog » Slicehostに決定
iBook G4 Blog » Slicehostに申し込み

を参考に Slicehost を借りてみました。

3ヶ月契約コースだと4週間待ち。6ヶ月契約だと、2週間待ち。12ヶ月と24ヶ月契約は、ともに1週間待ち 。

と、書いてあったので待たされるなら早めに申込みだけしておこうと、256slice (メモリ256MB、ディスク10GB、$20/月)というプランを3ヶ月契約で申込み。が!人気が落ち着いたのか、人気のおかげでサーバが増設できたのか、今日時点で待ちなしで契約完了、利用開始できました。ちなみに、初期費用は無料です。

申込みページで選べる OS イメージは以下の通り。(2008/02/24 時点)

  • Arch 2007.08
  • CentOS 5.1
  • Debian 4.0 (etch)
  • Fedora 8
  • Gentoo 2007.0
  • Ubuntu 6.06 LTS (dapper)
  • Ubuntu 7.10 (gutsy)

申込みページに必要事項を入力して、「Build my Slice!」のボタンを押すと、確認画面も出ずに完了。これから借りる方は確認画面が出ないので気をつけてください!その後、「SliceManager」 という管理画面が表示され、既に環境構築完了のようです。2分でOKなんて書いてあったんですが、2分もかかっていません!どうなってるんでしょうか。Xen 恐るべし。

その後、登録したメールアドレスにメールが届き、IPアドレスと root のパスワードが記載されているので ssh で何の問題もなくログインできました。以下、Ubuntu 7.10 (gutsy) の初期状態の各種情報。

uname -a (X は伏字)

Linux XXXX 2.6.18-xen #1 SMP Tue Feb 12 06:40:50 UTC 2008 x86_64 GNU/Linux

64ビットなんですなぁ。

cat /proc/cpuinfo

processor : 0
vendor_id : AuthenticAMD
cpu family : 15
model : 65
model name : Dual-Core AMD Opteron(tm) Processor 2212
stepping : 2
cpu MHz : 2010.302
cache size : 1024 KB
physical id : 0
siblings : 1
core id : 0
cpu cores : 1
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu tsc msr pae mce cx8 apic mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt lm 3dnowext 3dnow pni cx16 lahf_lm cmp_legacy svm cr8_legacy
bogomips : 4029.45
TLB size : 1024 4K pages
clflush size : 64
cache_alignment : 64
address sizes : 40 bits physical, 48 bits virtual
power management: ts fid vid ttp tm stc

processor : 0 から 3 まで表示されました。CPU4枚ですかー。1台のサーバで Xen がいくつ動いてるんでしょうか。それにしても贅沢だ。

free

total used free shared buffers cached
Mem: 262316 196048 66268 0 120372 31292
-/+ buffers/cache: 44384 217932
Swap: 524280 0 524280

うん。契約通り。

他に何を晒せば参考になるかな。コメント、トラバで依頼していただければ晒します。以上、人柱からのレポートでした。

========

2008/02/25 追記 : 自宅 (愛知県/回線 : eAccess ADSL 40M/ プロバイダ : dion) からサーバまでの ping 結果

ping : time=228ms TTL=41

Ubuntu 7.10 VMware用仮想マシンで、デフォルトの VMWare Tools が上手く動かない人へ

Ubuntu No Comments »

タイトルが長くなってしまいましたが、日本のどこかにいるかもしれない自分と同じ境遇の人へ

注意:以下の方法で VMWare Tools を再インストールした後、将来のUbuntu のアップデート以後も正常に動作するとは限りません。正しく動作している場合は、デフォルトを使い続ける方がいいと思います。

環境

  • ホストOS : WindowsXP
  • ゲストOS : ココから落とした Ubuntu 7.10 (ファイル名 : ubuntu-ja-7.10-vmware-i386.zip)
  • VMware Player 2.0.2

落とした zip を解凍して 中にある .vmx ファイルを VMware Player で起動するだけで Ubuntu が動いてしまうという甘い誘惑にかられ(いや普通に動く人はいいんですよ。)、落として起動したんだけど、マウスが自動的に外に抜けませんが・・・。クリップボード共有できてませんが・・・。

うまくいってる人は以下は見てもしかたないです。

解決方法(VMWare Tools を再インストール)

VMWare Tools のインストール時に必要(らしい)ライブラリをインストールしておく

sudo apt-get install libqt3-headers libqt3-mt-dev
sudo apt-get install build-essential bin86 kernel-package

デフォルトの VMWare Tools をアンインストール

sudo vmware-uninstall-tools.pl

いったんシャットダウンして .vmx ファイルを編集。 VMware Player に付いてくる linux.iso をマウントさせる。

これを

ide1:0.fileName = “auto detect”
ide1:0.deviceType = “cdrom-raw”
: ちょっと飛んで
ide1:0.autodetect = “TRUE”

こうする

#ide1:0.fileName = “auto detect”
#ide1:0.deviceType = “cdrom-raw”
ide1:0.deviceType = “cdrom-image”
ide1:0.fileName = “C:\Program Files\VMware\VMware Player\linux.iso”
: ちょっと飛んで
#ide1:0.autodetect = “TRUE”

起動してデスクトップに Vmware Tools という CD アイコンが表示されていれば次へ。表示されていなければ空白のないパスに linux.iso を移動してそこを読むように .vmx を編集して、再度起動してみてください。

CD アイコンを開いて、.tar.gz の方のファイルを右クリック、展開、/home/XXX の下に解凍(自由)

端末を起動して以下のコマンド

cd /home/XXX/vmware-tools-distrib
sudo ./vmware-install.pl

自分は全てデフォルトでOKでした。

念のため再起動。

マウスが自動的に外に抜けたり、クリップボード共有が出来てればOK。画面解像度の自動化とかも。

蛇足

最近、環境構築ネタが多いな・・・。 MacBook が買えない貧乏人(俺)は Ubuntu 上で Rails 開発だー!

さくらのレンタルサーバに Redmine をインストール

Redmine, さくらレンタルサーバ, Ruby 7 Comments »

さくらのレンタルサーバに Redmine をインストールしたメモ

Rails 2.0 + SQLite3 で動きました。リポジトリブラウザも少しハマったけど解決して動いてます。動作は・・・さくらの共用サーバでは FastCGI や Mongrel が使えないのでさくさくではないですが我慢できる範囲だと思います。

初期設定編を書きました。(2008/03/21 追記) : Redmine の初期設定(インストール後にすること)

redMine って先頭小文字で m 大文字の人が非常に多いんだけど、Redmine でいいんですよね?

本家サイト : http://www.redmine.org/

環境

  • さくらのレンタルサーバ スタンダード
  • Ruby 1.8.6
  • RubyGem 1.0.1 (あんま関係ないかもしんないけど)
  • Rails 2.0.2
  • Subversion 1.4.3
  • SQLite3 3.3.17 (MySQL は WordPressで使っているため)

$HOME/rails に入れて 最後に $HOME/www にシンボリックリンクを作ります。vim がない場合は、vi でどうぞ。

チェックアウト

cd $HOME/rails
mkdir redmine
cd redmine
svn checkout svn://rubyforge.org/var/svn/redmine/trunk .

パーミッション設定

cd $HOME/rails/redmine/
chmod o+w tmp log

Apache 実行ユーザから書き込めるように

DB 設定 config/database.yml 作成

cd $HOME/rails/redmine/config/
cp database.yml.example database.yml
vim database.yml

これを

production:
adapter: mysql
database: redmine
host: localhost
username: root
password:

こうする

production:
adapter: sqlite3
dbfile: db/redmine.db

DB 作成と初期データのロード

rake db:migrate RAILS_ENV=”production”
rake load_default_data RAILS_ENV=”production”

言語を聞かれるので ja を入力

環境設定 config/environment.rb 編集

cd $HOME/rails/redmine/config/
vim environment.rb

これを

# SMTP server configuration
config.action_mailer.smtp_settings = {
:address => “127.0.0.1″,
:port => 25,
:domain => “somenet.foo”,
:authentication => :login,
:user_name => “redmine”,
:password => “redmine”,
}

こうする

# SMTP server configuration
config.action_mailer.smtp_settings = {
:address => “さくらアカウント.sakura.ne.jp”,
:port => 587,
:domain => “
さくらアカウント.sakura.ne.jp”,
:authentication => :login,
:user_name => “hogehoge@
さくらアカウント.sakura.ne.jp”,
:password => “上記メールアドレスのパスワード”,

}

一番上に以下も追記(もちろん先頭の数字はいらないよ!)

1. $LOAD_PATH.push(”rubyのインストールディレクトリ/lib/ruby/site_ruby/1.8″)
2. $LOAD_PATH.push(”rubyのインストールディレクトリ/lib/ruby”)
3. ENV[’GEM_HOME’] ||= ‘rubyのインストールディレクトリ/lib/ruby/gems/1.8′
4. ENV[’PATH’] += ‘:/home/さくらアカウント/local/bin’

がんちゃんのブログ: さくらのレンタルサーバーにRuby on Railsをインストールする方法 その2

を参考に1.~3.を追記。あなたの環境に合わせて設定してください。Apacheユーザからの CGI 経由で動くので環境変数「RUBYLIB」と「GEM_HOME」をここで教えてあげる。

もちろん 「GEM_HOME」もあなたの環境に合わせてください。

4. の環境変数「PATH」には svn コマンドへのパスを追加します。これをしないと Redmine でリポジトリブラウザを見ようとした時に「リポジトリに、エントリ/リビジョンが存在しません。」というエラーメッセージが出ます。半日悩みました。。。

CGI 設定 public/dispatch.cgi の作成

cd $HOME/rails/redmine/public/
cp dispatch.cgi.example dispatch.cgi
vim dispatch.cgi

これを

#!/usr/bin/ruby

require File.dirname(__FILE__) + “/../config/environment” unless defined?(RAILS_ROOT)

こうする

#!rubyのインストールディレクトリ/bin/ruby
ENV[’RAILS_ENV’] ||= ‘production’

require File.dirname(__FILE__) + “/../config/environment” unless defined?(RAILS_ROOT)

「#!/usr/bin/ruby」 のままだと「Application error ails application failed to start properly”」 という以下の画面が出てしまいます。

Application error ails application failed to start properly

数分悩んだあげく、自分でインストールしたrubyを見させるようにすると上手くいったので今の所これで動かしています。

public/.htaccess の編集

vim $HOME/rails/redmine/public/.htaccess
11行目をコメントアウト
Options +FollowSymLinks +ExecCGI

#Options +FollowSymLinks +ExecCGI

シンボリックリンクの作成

ln -s $HOME/rails/redmine/public $HOME/www/redmine

ブラウザからチェック
http://さくらアカウント.sakura.ne.jp/redmine/

トップページが無事表示されましたか?お疲れ様でした。
インストールが完了したら初期設定に移りたい所ですが、ちょっと長くなったので一旦ここまでにしてコーヒーでも飲みましょう。

先に知りたいという人は以下が詳しいです。

Ruby on Railsで作られたプロジェクト管理ツールredMineを使ってみよう!:第2回 環境構築/redMineのインストール・初期設定|gihyo.jp … 技術評論社

ふりかえり

CGIで動作しているので、Apache実行ユーザが Redmine を動かしているというイメージを持っていないと自分みたいに問題発生時に時間がかかってしまいます。特に、「リポジトリに、エントリ/リビジョンが存在しません。」エラーには悩まされました。

結果的に「environment.rb で ENV[’PATH’] += ‘:/home/さくらアカウント/local/bin’」で解決したんだけど、他に影響がないかは今後使い続けて何かあれば報告します。

初期設定編を書きました。(2008/03/21 追記) : Redmine の初期設定(インストール後にすること)

Basecamp のテストコードはソースコードの 1.2 倍

Ruby No Comments »

Ask 37signals: How do you document code? - (37signals)

Basecamp has a 1:1.2 ratio of test code (thanks to the persistence of Jamis!), Highrise has a ratio of 1:0.8 (bad me!).

Basecamp は 1 : 1.2 ぐらいの割合でテストコードを書いているよ。 Highrise(これまた 37signals のプロダクト)は 1 : 0.8 (僕はだめだ!)

だめじゃないよ David ! あなたは素敵だよ!

Our biggest product, Basecamp, is about 10,000 lines of code.

Basecamp はだいたい 1万ラインぐらいのソースコードで出来ている。

ジェネレート分を省いて計測するのは難しいだろうから、だいたいなんだろうけど。ちなみに先週ぐらいから Free 版で遊んでます。 Writeboard って文章が書ける機能は2つまでしかドキュメントを保存できないので悲しいです。

ちなみに、37signals は質問募集中らしいです。件名に “Ask 37signals” と書いて、(もちろん本文も英語でね!)メールを送ると、ブログで返事を書いてくれるかも。英語わかんねぇぇぇ

ちなみに2、リンク先のエントリーの主題はドキュメントコード(多分コメント文とか)の話なんですが、ところどころしか意味が拾えなくて紹介できずにごめんなさい。誰かざっくり教えてー。

Rails より早い(?)らしい Ruby フレームワーク「Merb」

Ruby No Comments »

Rails 勉強会に行った直後に、なんなんですが「Merb」という Ruby フレームワークがあるのを今日知りました。

本家 : Merb | Looking for a better framework?
詳しい 日本語エントリー : floatingdays: Railsよりお薦め!Rubyのフレームワーク Merb (Mongrel + Erb) をインストール

他にも Ruby フレームワークないかなーと調べると 、10個の Ruby フレームワークをまとめてるエントリー発見(英語だよぉぉぉ。)

10 Alternative Ruby Web Frameworks « Accidental Technologist

時間が出来たらまずは Merb から試していきたいなー。

さくらのレンタルサーバに vim をインストール

さくらレンタルサーバ No Comments »

さくらのレンタルサーバは、vim が入っておらず。しかも、入っている vi は日本語に対応していないので全然使えません・・・。

なので自分も vim のインストールをすることに。去年から先輩の影響で vim っ子なので、vim がないと生きていけません。既にたくさんの方がさくらのレンタルサーバに vim をインストールされているので何も困りませんでした。特に以下のページを参考にさせていただきました。

さくらインターネットの共用サーバに vim をインストールする (talk to oneself 2)

追記にある以下のページを参考に、~/.vimrc を作成

ずんWiki - vim 文字コードの自動認識

完了。vim が使えるようになったよー。日本語(2バイト文字)も使えるよー。きもちいいいい。

WordPress テーマ wp.Vicuna が美しすぎる

WordPress 3 Comments »

WordPress のテーマは今まで Theme Browser で探してたんですが、初心に帰って「wordpress テーマ」で Google 検索してみると、一番上にあるじゃないですか!昔っから一番上に出てたなら見つけてたはずなんだけどなぁ。出会うのが遅くなったのが悲しい。

Vicuna - WordPress テーマ

もう一目惚れして速攻入れました。本当に作者様、運営・協力の方々 ありがとうございます。美しすぎます。「カスタマイズしたら報告してー」とあるんですが自分にはこの美しさを保つ自信がないので、もっともっと勉強してから是非カスタマイズしたいなぁと思います。HTML/CSS の中身も見たんですが、これを読むだけでもかなり勉強になりそうなので時間を見つけて読もうと思います。

Vicuna の中の人のプロフィールに、拙著「実践 Web Standards Design」と書いてあるので、きっとこの方の書かれた本だと思うのですが前々から目にはしていたんですが買おうかなぁ。きっと買うべきなんだろうなぁ。欲しいー。

第1回イケテルRails勉強会@名古屋に行ってきました。

Ruby, 雑記 7 Comments »

2月2日(土)のRBC/JavaEdgeコラボ企画「イケテルRails勉強会@名古屋」に行ってきました。

勉強会

前日にわくわくし過ぎて眠れなくて(子供か!)、案の定当日に寝坊してしまいました!もう泣きそうになりながら大急ぎで家を出て、勉強会開始から約1時間半遅れで到着した自分に同じチームに組まれていた方が、「大丈夫です!お昼までに追いつきましょう!」と言って下さって、本当に優しくて涙でそうでした。

内容としては、 NetBeans6.0/JRuby1.0.3/Ruby on Rails 2.0/MySQLの環境構築から始まって、有名Railsのscaffoldを試して、Calendar Helper Plugin のインストールから簡単な使い方、そして scaffoldで作ったModelのデータを Calendar Helper Plugin と連携(検索したデータをカレンダーに表示)と盛りだくさん。

途中に Rails プラグインの作り方(”Hello Nagoya”を返すヘルパーメソッドだけ実装)などを勉強させてもらいました!

勉強会の内容も素晴らしいですが運営の方々、参加している方々の雰囲気が良かったです。内容が濃ーーくて後半みなさん疲れてましたが人間なので許してくださいw

懇親会

最首さんの熱ーーい話も聞けたし、参加者の方々とたくさんお話ができました。特に近くに座っていた id:yuko1658 さんや、ずっとフリーのWeb屋さん、そしてFirefox の エバンジェリスト (evangelist) さん、などなどと濃いー話をありがとうございました。尊敬するS氏にも「コミュニティを経験したほうが良いよ。」と言われていましたが、こういったコミュニティはぜひ参加すべし!そして、懇親会はぜひ参加するべし!今後は参加するだけでなく、何かアップできるように頑張りたいです。

最後に

RBC最高!イケテルRails勉強会@名古屋最高!以上。

WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS ログイン