Monthly Archives: 7月 2014

副業という言葉に抵抗があります

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので十分ご注意ください。

副業が嫌い、副業する人が嫌いということではなく、副業という概念にどうしても馴染めません。副業という言葉から伝わってくるのは、何か後ろめたい、あまり公にしたくない行為です。多くの企業では就業規則に副業禁止が謳われていることも少なくありませんので、そのようなとらえ方をしてしまうのも無理ありません。

このまま副業禁止が続いていくのは本当に良いことなのでしょうか。

残念ながらこの日本では普通に会社員をやりながら所得を上げていくのは難しい時代に入ったと思います。終身雇用も崩壊しつつあります。副業を禁止するのであれば、終身雇用とは言わないまでも、雇用する企業が従業員およびその家族の生活の保障を担うべきではないでしょうか。それが難しいなら、このような旧態依然の考え方は廃止するべきでしょう。実際に大手企業でもそのような動きも出てきています。小さな企業が多く、若い世代が多いIT系(正しくはSI系以外のIT系?)ならなおさらで、経営者自身、副業禁止規程はもう恥ずかしいことだと感じるくらいでないとだめです。

生きて行くためにお金を得続けるという観点から私が思う最大のリスクは「収入源が一つ」ということです。

とはいえ、安易に起業を勧めるつもりもありませんし、昼間の就労を疎かにしつつもう一つの仕事に勤しむことも避けて欲しいです。昼間サラリーマンをやりながら平日深夜休日にあくせく働くのは、間違いなく本業に支障が出ます。そういう人を何人か知っていますが、どちらも中途半端になっています。

別にそれが悪いことでは決してありませんが、いわゆる主婦のお小遣い稼ぎ、残業代カットの埋め合わせ的に副業をするのではなく、本業と副業の区別をなくし、誰もが収入源を複数持てるように世の中の仕組みを変えていく必要があると感じます。

昭和の時代は終焉しました。

社会的なインフラがまだ追いついていませんが、気が付いている人は行動し始めています。企業側からも推進していければと考えていて、勝手ながらプライムセオリーはその一翼を担いたいという思いがあります。

プライムセオリーが推す、雇用ではなくプロジェクトベースのチーム構成、クラウドサービスを多用したリモート開発は、その取っ掛かりの部分に過ぎません。既成概念にとらわれず、時代の変遷に合わせ、俊敏に変化してく組織や人であり続けることが、この時代に生き残る術だと感じております。


プライムセオリーのブログではなく、makotton.comにしている理由

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので十分ご注意ください。

副題で「プライムセオリーのなかの人」と謳ってはいますが、このブログはプライムセオリーのブログという位置付けではなく、makotton(まこっとん)個人のブログとしています。makottonは以前から使い続けているネット上における私のハンドルネームです。私のtwitterや4sq(swarm)など様々なWebサービスを見ればプライムセオリーの人だとすぐに判明すると思いますが、一部のサービスを除いてmakottonと所属を明示的に紐付けてプロモーションすることはあまりしていません。個人事業時代にプライムセオリーとしてブログを立ち上げていましたが、オフィシャルな内容と個人的な内容をうまく切り分けることができなくなり、結局ブログを閉じた経緯があります。今思えばその原因は後述する理由そのものでした。

縁起でもないですが会社というものはいつなくなるかわかりません。この先、私が別の組織を立ち上げたり参画したりする可能性もあるわけです。そうしたときに「(元)◯◯の△△さん」というフィルターやバイアスが付き纏います。◯◯がそれなりのブランドだったら有益になりますが、私個人としてはそういうものに興味がないですし、場合によっては邪魔になります。プライムセオリーのファウンダーでありオーナーでもありますので当然ながらこのブログでプライムセオリーについての内容も書いていくと思いますが、私自身はあくまでもプライムセオリーにジョインしているという感覚でいます。別の所属、立場になれば、このブログの副題を変えることになるのでしょう。

これは音楽業界における個人名義での活動とバンドやユニットでの活動の考えに近いです。アーティスト◯◯でもあるし、ユニット□□□のメンバーでもあるということです。バンドやユニットなどはずっと続くこともあれば、一定期間のみの活動もあるわけです。また、掛け持ちもあります。ですが、アーティスト個人としては自らの活動をやめない限り存在し続けます。このような流動的かつフレキシブルな働き方が今後の日本で生きていく術なのではないかと考えています。少なくともネット界隈ではそうなってほしいです。

終身雇用が崩壊している今、一つの組織に所属している期間はどれほどあるでしょうか。会社や肩書きというものは有限ですのでどこかで終焉を迎えますが、個人は死ぬまで付き纏うブランドです。もちろん、まだまだプライムセオリーはアプリ業界に認知されている企業とは言い難いですし、私個人だとさらにプレゼンスが薄いでしょう。

セルフブランディングという意識高い系の言葉はあまり使いたくありませんが、先の見えないこの時代だからこそ、一つの枠にとらわれること無く個人を推し出す必要があると思っています。

これらが、個人のハンドル名でブログを立ち上げた理由です。


wheelグループに属しているユーザでsudoを実行してもpasswordが認識されない

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので十分ご注意ください。

wheelグループに属しているユーザのパスワードを正しく入力しても認識されず、処理を実行できない場合があります。

$ sudo rm -fr foo/
[sudo] password for ****:
Sorry, try again.

OSあるいはsudoコマンドのインストール後は、デフォルトでroot以外sudoを使うことができない状態になっているのが原因です。

wheelグループに属しているユーザへのsudo利用権限を与えるためにsudoersファイルを編集します。

# visudo
## Allows people in group wheel to run all commands
#%wheel  ALL=(ALL)       ALL

コメントになっているので外します。

%wheel  ALL=(ALL)       ALL

これでOKです。


CentOS6.2にPassengerをインストールする

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので十分ご注意ください。

CentOS6.2にPassengerをインストールしてApacheと紐付けます。

■前提条件

・CentOS release 6.2 (Final)
・Ruby 2.1.2
・Rails 4.1.2
・複数のRailsアプリケーションを一台のサーバーで稼動させることは想定していない
・Railsアプリケーション以外を稼働させることは想定していない
 

■事前準備

足りないパッケージをインストールします(すでにインストール済なら飛ばします)。

# yum -y install curl-devel httpd-devel

 

■インストール

(1)Passengerをインストールします。

# gem install --no-ri --no-rdoc passenger
Fetching: daemon_controller-1.2.0.gem (100%)
Successfully installed daemon_controller-1.2.0
Fetching: passenger-4.0.45.gem (100%)
Building native extensions.  This could take a while...
Successfully installed passenger-4.0.45
2 gems installed

(2)Apacheモジュールをインストールします。

# passenger-install-apache2-module
Welcome to the Phusion Passenger Apache 2 module installer, v4.0.45.

This installer will guide you through the entire installation process. It
shouldn't take more than 3 minutes in total.

Here's what you can expect from the installation process:

 1. The Apache 2 module will be installed for you.
 2. You'll learn how to configure Apache.
 3. You'll learn how to deploy a Ruby on Rails application.

Don't worry if anything goes wrong. This installer will advise you on how to
solve any problems.

Press Enter to continue, or Ctrl-C to abort.

ここで止まるのでEnterキーを押下します。

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

Which languages are you interested in?

Use <space> to select.
If the menu doesn't display correctly, press '!'

 ‣ ⬢  Ruby
   ⬡  Python
   ⬡  Node.js
   ⬡  Meteor

言語を訊いてくるので、ここではRubyのみ選択(上下カーソルキーで移動、Spaceキー押下で選択/解除)してEnterキーを押下します。

linking shared-object passenger_native_support.so

--------------------------------------------
Almost there!

Please edit your Apache configuration file, and add these lines:

   LoadModule passenger_module /usr/local/rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/passenger-4.0.45/buildout/apache2/mod_passenger.so
   <IfModule mod_passenger.c>
     PassengerRoot /usr/local/rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/passenger-4.0.45
     PassengerDefaultRuby /usr/local/rbenv/versions/2.1.2/bin/ruby
   </IfModule>

After you restart Apache, you are ready to deploy any number of web
applications on Apache, with a minimum amount of configuration!

Press ENTER to continue.

少し時間がかかりますが、ここで止まるので、

   <IfModule mod_passenger.c>
     PassengerRoot /usr/local/rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/passenger-4.0.45
     PassengerDefaultRuby /usr/local/rbenv/versions/2.1.2/bin/ruby
   </IfModule>

をコピーしてどこかに保持し、Enterキーを押下します。

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

Deploying a web application: an example

Suppose you have a web application in /somewhere. Add a virtual host to your
Apache configuration file and set its DocumentRoot to /somewhere/public:

   <VirtualHost *:80>
      ServerName www.yourhost.com
      # !!! Be sure to point DocumentRoot to 'public'!
      DocumentRoot /somewhere/public
      <Directory /somewhere/public>
         # This relaxes Apache security settings.
         AllowOverride all
         # MultiViews must be turned off.
         Options -MultiViews
         # Uncomment this if you're on Apache >= 2.4:
         #Require all granted
      </Directory>
   </VirtualHost>

And that's it! You may also want to check the Users Guide for security and
optimization tips, troubleshooting and other useful information:

  /usr/local/rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/passenger-4.0.45/doc/Users guide Apache.html
  https://www.phusionpassenger.com/documentation/Users%20guide%20Apache.html

Enjoy Phusion Passenger, a product of Phusion (www.phusion.nl) 🙂
https://www.phusionpassenger.com

Phusion Passenger is a trademark of Hongli Lai & Ninh Bui.

ここでインストールが終わります。

   <VirtualHost *:80>
      ServerName www.yourhost.com
      # !!! Be sure to point DocumentRoot to 'public'!
      DocumentRoot /somewhere/public
      <Directory /somewhere/public>
         # This relaxes Apache security settings.
         AllowOverride all
         # MultiViews must be turned off.
         Options -MultiViews
         # Uncomment this if you're on Apache >= 2.4:
         #Require all granted
      </Directory>
   </VirtualHost>

をコピーしてどこかに保持し、Enterキーを押下します。

(3)passengerが組み込まれたかどうか確認します。

# apachectl -M | grep passenger
 passenger_module (shared)
Syntax OK

大丈夫そうです。

(4)httpd.confを編集します。

# vi /etc/httpd/conf/httpd.conf

NameVirtualHost *:80の行のコメントを外します。

NameVirtualHost *:80

最終行に先程コピーした以下の内容を貼り付けます。

   <IfModule mod_passenger.c>
     PassengerRoot /usr/local/rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/passenger-4.0.45
     PassengerDefaultRuby /usr/local/rbenv/versions/2.1.2/bin/ruby
   </IfModule>

(5)vhost.confを生成します。

# vi /etc/httpd/conf.d/vhost.conf

最終行に先程コピーした以下の内容を貼り付けます。

   <VirtualHost *:80>
      ServerName www.yourhost.com
      # !!! Be sure to point DocumentRoot to 'public'!
      DocumentRoot /somewhere/public
      <Directory /somewhere/public>
         # This relaxes Apache security settings.
         AllowOverride all
         # MultiViews must be turned off.
         Options -MultiViews
         # Uncomment this if you're on Apache >= 2.4:
         #Require all granted
      </Directory>
   </VirtualHost>

www.yourhost.com や /somewhere/public はあくまでも例ですので、環境に応じて実在する値に書き換えてください。なお、Passengerはデフォルトだとproductionモードで動作しますので、Rails側がdevelopmentのモードの場合はvhost.confに下記を追記します。

RailsEnv development

(6)apacheを起動します。

#  service httpd start

(7)http://サーバーのアドレス/ で正しく参照できたら終了です。