gk9187 blog

システム開発をしています。

仕事にスピード感が必要な理由

仕事はなるべく早く

仕事は、なるべく早く終わらせたほうがいい。

よく言われることはであるが、何故か考えてみた。

そもそも仕事って?

最近よく面白い仕事が、とかやりがいを全面に押し出していることを見かけるが何だかなぁとそれを見るたびに思う。

なぜなら、会社っていうのは基本的に利益がでなければ存続できない。 利益を無視して何か仕事をするっていうのは、宇宙に行きたい!宇宙服なしでとりあえずロケットに乗ってみて行ってみる!みたいなノリに似ている。

それでは死んでしまうように、会社も利益をまず考えなければできない。

利益を出すには

利益を出すっていうことはそれだけ社会に求められているプロダクトを出してつかってもらうこと。

しかし、世の中が求めているものは常に変化する。 つまり、その時その時に最適なサービスを出さないといけない。

どれくらい変わるかって言うと、WEBのデザインを見るだけでもわかる。数年前からフラットデザインがはやって、今ももう既にそれが変わりつつあるように感じる。

というわけで仕事が遅くなると

なので、作っているものが遅くなると、世の中のニーズに合わなくなって作ったものがムダになる。

頑張ってリサーチしてその時必要なアプリを考えても、 それからデザインして数ヶ月、頑張って社内稟議を通して、 、、、とやってやっと1年後にリリースといっても、 当然また作り直しということになる。(だろう)

つまり、仕事が遅くなると利益のでないプロダクトが出来てしまうことになる。

他の会社が似たようなアプリを出すみたいなことも考えられるね。まぁ理由の1つとして。

自分の実感としてこういった感じで流れたアプリはたくさんあるんじゃないかなぁと思った。

じゃあ雑でいいの?

というわけじゃなくて、QCD(品質、コスト、納期)の兼ね合いも考えなければいけないけど、のろのろしてたらだめだよって話し。

slony 2.1.3

レプリケーションをとる同士は時間を合わせる必要がある

 

clusterはpostgresqlのデータベースインスタンスのことを指す

Nodeはレプリケーションに参加しているデータベースのこと

ReplicationSetはレプリケーション対象のテーブル、シーケンス

origin node、マスターノードのこと、ここだけ書き込みが許可される、それ以外はデータを受信するばっかり、しかしproviderにもなれる、ほかのノードにデータを流す??

核nodeにはslon daemonがいる

 

slon 象、sloniy象たち、slonik,小さな像

 

どうやってほかのノードへアクセスするか、どういう経由で、デーモンもどういう経由で

1.3まで

http://slony.info/documentation/2.1/limitations.html

Perl 写経メモ

Carp...

warn,dieの代わりに使う

warn ->carp

die->croak

呼び出し元の情報もでる

 

http://blog.livedoor.jp/dankogai/archives/51073468.html

 

use packagename LIST

パッケージでインポートしたいものをリストで渡す

 

http://itpro.nikkeibp.co.jp/article/Reference/20080930/315792/

ちなみにその

LISTはexport_ok変数に格納されているもの照合。

export変数はデフォルトでロードされるやつ。

 

http://www.ksknet.net/perl/exportexport_ok.html

perldoc入れる

 

sudo apt-get install perl-doc

perldoc Exporter

ただの昨日の集まりだったらこうやってexport_okかexportにいれてやるといいみたい。

オブジェクト指向だったらしないほうがよい。

 

呼び出しには正規表現も使える。

exporter書いとかないと不要なものが呼び出されちゃう結果になったり

それを裂けるためかな

不要なものコンパイルしないとかそんなんとおもったけどそうじゃなさそうだ

 

http://www.geocities.co.jp/SiliconValley-Sunnyvale/6128/perl/evalue.html

perlの特殊変数一覧

 

undef 変数名

変数をundefにする

 

caller

0を指定すると自分自身の関数名

1を指定すると呼び出し元の関数名を取得することができる。

 

@ISAはuse baseと似た感じ。

どこを継承するか?is a的な

 

 

グローバル変数はmyなしで。

でも use strict使うとmyは必須・・・

そのときはourをつける。

 

http://d.hatena.ne.jp/chaichanPaPa/20070814/1187053637

 

結合性がある、どちらを評価するか

||や&&は左、=は右とか

 

変数名に{}中括弧をつけることで、どこまでが変数名なのかをはっきりとさせる。

http://www.perlplus.jp/perl/var/index9.html

 

$1とかはマッチしたやつ

 

wantarray

http://www2u.biglobe.ne.jp/MAS/perl/ref/wantarray.html

配列を求めているなら真、そうでなければ偽

 

evalを使ってブロックを形成し、その中で例外がおきると、

補足され、$@に値が入る

ほかにも、evalは引数で与えた文字列をperlでコンパイルして実行させることもできる。

http://www.geocities.jp/ky_webid/perl5/040.html

 

UNIVERSALはすべてのblessされたクラスの基底クラス

isaとcanがある

isaは特定のクラスかどうかを判定、canはオブジェクトに対してメソッドを呼び出せるかどうか

http://fireball.loafer.jp/kes/perl/article_137.html

 

AUTOLOADを定義しておくと、

関数がなかったときに呼び出される。

http://d.hatena.ne.jp/perlcodesample/20080709/1215622869

apache+perl+mysql

apache

 

sudo apt-get install apache2

 

perlをうごかすためのやつ

 

sudo apt-get install perl libapache2-mod-perl2

 

DBIだとかsessionのプラグインとかcgi::applicationのやつとかは

あとで必要なときに追加する。

 

mysql

 

sudo apt-get install mysql-server

 

途中でrootのパスワードの設定がでてきたので、

設定。

アクセスできたー。

 

perlを動かしてアクセスしてみる。

 

・・・

vimをいれてなかった。

 

sudo apt-get install vim

最低限必要だと思う機能を設定

set autoindent 
set expandtab 
set number 
set showmatch 
set tabstop=4 
syntax on

 

 

 今VM上でサーバーを動かしているけど、

簡単にアクセスするようにホスト名の編集

 

C:\Windows\System32\drivers\etc

のhostsファイルにifconfigで出てきたIPアドレスと名前を設定。

変更しようとしたら権限関連で怒られたので、プロパティからhostsにusersに変更権限をあたえて、変更して、権限をなしに戻す。

アクセスできた。

 

 

 

 

 

debian squeezeインストール

VMでインストール。

もうかなり適当に基本デフォルトで。パーティションも何も区切らずに。

+日本語にした。

 

debian-6.0.5-amd64-netinstをインストール。

amd64ってデスクトップ版なのかな。

 

とりあえずユーザーをsudoグループに追加。

 

 

gpasswd -a ore sudo

 

なぜかできないので再起動。有効になった。