┏━━━━━━━━━━━━━━━━━━━━━━━━━━■
┃ ■┃
●┃● ● オ ブ ジ ェ ク ト 倶 楽 部 ■ ┃
┃ ■ ┃
┗━━━━━━━━━━━━━━━━━━━━━━■━━━┛
No.229 2008/04/02
■ I N D E X
┃
┣【Topics】「受託開発とエンジニアの幸せ」刊行記念トークセッションのお知らせ(5/1)
┣【PF】現場リーダーの心得 [9]
┗【プログラミング】ゆるーいHaskell [18]
〇━━━━━━━━━━━━━━━━━━━━━━━━━━━T o p i c s━
〇 「受託開発とエンジニアの幸せ」刊行記念トークセッションのお知らせ
〇 〇━━━━━━━━━━━━━ ━━・
オブジェクト倶楽部より岡島幸男が『受託開発の極意』(技術評論社)を刊行す
る運びとなりました。そこで、刊行を記念いたしましてイベント開催のご案内
です。連休中の開催となってしまいましたが、皆さんにお目にかかれますこと
を楽しみにしています。ぜひお越しください!!
タイトル : 「受託開発とエンジニアの幸せ」刊行記念トークセッション
日 時 : 5月1日(木) 19:00〜
会 場 : ジュンク堂書店 池袋本店 4F喫茶スペースにて
お申込み : ジュンク堂書店池袋本店にて
1階 案内カウンターにて。電話予約可。
定 員 : 40名
講演予定 : 岡島幸男、天野勝、角谷信太郎
詳 細 : ジュンク堂書店
http://www.junkudo.co.jp/newevent/talk-ikebukuro.html
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ■━
■
┗【PF】現場リーダーの心得 [9]
オブジェクト倶楽部メルマガ読者のみなさん、こんにちは。
岡島です。
今日は私の新著を紹介させてください。
4月8日、技術評論社より「受託開発の極意〜変化はあなたから始まる。現場か
ら学ぶ実践手法」が出版されます。
この本は受託開発の実用書であり、見積りから開発、保守・運用といった開発
者の仕事と、お客さまとの接し方やチーム内でのコミュニケーションについて
の手ほどきです。
そして一方、自分と組織に「変化」をもたらすための啓蒙書でもあります。
「3K職場」を愚痴る前に、まずあなたから始められることがあるはずです。
今回の記事では、「はじめに」の全文を掲載させていただきます。
☆ ☆ ☆
「生業(なりわい)」という言葉があります。「生活のための仕事」という
意味なのですが、語源は「五穀が実るように務めるわざ」だそうで、なかなか
味わい深い言葉です。
一朝一夕に「五穀が実るように務める」ことはできません。地を耕し、種を
蒔き、雑草を刈り、収穫のためにじっくり働く覚悟が必要です。より実り多く
するために日々努力して技術を高め、時には天候のようにコントロールできな
い問題とも付き合わなくてはいけません。
私は「生業」という言葉を重く受け止めます。生業とは、簡単にやめること
のできない、まさに一生物の仕事のことだと思います。
あなたはソフトウェア開発という仕事を生業だと思えますか?
この質問に自信を持って「はい」と答えられる人は少ないと思います。
「プログラミングは大好きだけど……」「業界の構造に不満があって……」
「どうせ自分の会社は…」などといった躊躇を感じているのでしょう。
その一方で、開発者の中には苦労しながらも、仕事を生き生きと楽しんでい
る人がいるのも事実です。私の周りにもそんな人たちがたくさんいて、彼らは
まさにソフトウェア開発という仕事を生業に感じているかのようです。
私は、仕事を生業に感じられる人たちには共通する特徴があると思います。
まず、技術を持っています。ここでの技術とは、プログラミング言語や開発
プロセスに関する知識だけではなく、コミュニケーションやビジネスに関する
ノウハウも含んだ幅広いものです。
そして主体的です。業界の構造や会社の問題をあれこれ悩んで止まってしま
うより、自分の行動や考え方を変えて先に進むことを重視します。
さらに、仕事と生活の両方を大切する価値観を持っています。
仕事は人生における目的でも手段でもなく、仕事での経験と生活での経験が相
互にプラス作用し、人生を豊かにすることに気がついています。
私は、このような人たちが増えることで、業界全体が変わると信じています。
今の受託開発、というよりはソフトウェア業界は行き当たりばったり過ぎます。
今年さえ乗り越えられればいいという考えではダメで、年々着実に成長できる
ような業界にしなくてはいけません。
一つのプロジェクトの成功や満足な仕事ができた喜びだけにとどまらず、そ
こで得られたことを次の世代の種として蒔くことができる。プロジェクトがう
まくいかなかったのであれば、技術を改良し次のチャレンジでは成功させたい
と努力できる。ソフトウェア開発の現場にもそんな開発者をもっと増やしたい。
それが私の目標であり、この本がその一端を担えれば幸いです。
☆ ☆ ☆
■いますぐ予約したい方はこちら
「受託開発の極意〜変化はあなたから始まる。現場から学ぶ実践手法」
http://www.amazon.co.jp/exec/obidos/ASIN/4774134538/xpjp-22
■技術評論社による「WEB+DB PRESS plusシリーズ」特設サイトはこちら
http://gihyo.jp/magazine/wdpress/plus/
■私のブログです。リーダーネタと少々の技術ネタを扱ってます。
http://d.hatena.ne.jp/HappymanOkajima/
■「プロジェクトを成功させる現場リーダーの技術」私の著作です。
現場リーダーの仕事術をやさしく説明しています。
http://www.amazon.co.jp/exec/obidos/ASIN/4797333502/xpjp-22
_______________________________________________________________________
この記事への評価にご協力をお願いします。
URLをクリックして、「ご協力ありがとうございました」のメッセージがご使用
のブラウザに表示されれば投票完了です。
良かった:
http://www.ObjectClub.jp/community/object_ml/estimate?vol=M004-8&choice=0
普通:
http://www.ObjectClub.jp/community/object_ml/estimate?vol=M004-8&choice=1
イマイチ:
http://www.ObjectClub.jp/community/object_ml/estimate?vol=M004-8&choice=2
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ■━
■
┗【プログラミング】ゆるーいHaskell [18]
西川です。今回はReaderモナドについてお話しします。ReaderモナドはStateモ
ナドと同じく大域変数の参照、更新のために使用するモナドです。
Stateモナドに比べて参照、更新の機能をシンプルに提供しているというところ
がウリです。ちなみにHaskellではこのような大域変数を「環境(Environment)」
と呼ぶことが多いようなので、本連載でもそのように呼んでみます。
さて、まずはいつものようにghciを起動してReaderモナドについて調べてみま
しょう。
$ ghci
> > :m + Control.Monad.Reader
> > :i Reader
newtype Reader r a = Reader {runReader :: r -> a}
-- Defined in Control.Monad.Reader
(中略)
instance MonadReader r (Reader r)
-- Defined in Control.Monad.Reader
> > :i MonadReader
class (Monad m) => MonadReader r m | m -> r where
ask :: m r
local :: (r -> r) -> m a -> m a
-- Defined in Control.Monad.Reader.Class
(中略)
instance MonadReader r (Reader r)
-- Defined in Control.Monad.Reader
これぐらいだと、慣れてくると見ただけでなんとなく使い方が分かるようにな
ります。もっと複雑なモナドだとキツイですが。ghciからちょっと使ってみま
しょう。
> > let reader = Reader (+1)
> > runReader reader 0
1
> > runReader (local (*2) reader) 2
5
local関数は環境を更新するための関数です。2つ目の例が"6"ではなくて"5"に
なっているところにちょっと注意が必要です。local関数の定義にカラクリがあ
るのですが、それほど複雑でもないので余裕があったら確認してみましょう。
StateモナドではrunStateした結果がタプルになっていて、変更した状態と更新
された環境の2つをとりだすことが出来ました。Readerモナドでは最終的に取得
できる値は環境だけです。ちょっと分かりづらいかもしれませんが、比較して
みれば分かると思います。
----- SampleState.hs ここから -----
import Control.Monad.State
state :: State [Int] Int
state = do
xs <- get
let t = (last xs) * 2
put $ xs ++ [t]
return t
state' :: State [Int] Int
state' = do
xs <- get
let t = (last xs) + 1
put $ xs ++ [t]
return t
sample = runState (state >> state') [2]
----- SampleState.hs ここまで -----
> > :l SampleState.hs
> > sample
(5,[2,4,5])
Stateでは更新した環境("5")に加えて状態("[2,4,5]")もとりだすことができま
す。ReaderモナドがStateモナドと比べて環境の参照と更新に特化しているとい
う意味が分かっていただけたのではないでしょうか。(西川)
_______________________________________________________________________
この記事への評価にご協力をお願いします。
URLをクリックして、「ご協力ありがとうございました」のメッセージがご使用
のブラウザに表示されれば投票完了です。
良かった:
http://www.ObjectClub.jp/community/object_ml/estimate?vol=E008-17&choice=0
普通:
http://www.ObjectClub.jp/community/object_ml/estimate?vol=E008-17&choice=1
イマイチ:
http://www.ObjectClub.jp/community/object_ml/estimate?vol=E008-17&choice=2
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━--■--●--■
■
┗【アンケート】気になるシステム業界 ホントのところ
今週は「新入社員は来ましたか?」のホントのところ。4月になりましたね。
電車のホームで、新入社員らしき人を見かけました。自分が社会人になりたて
のころを思い出し、ちょっと懐かしい気分です。さて、皆さんの会社に新入社
員は入りますか?教えてください。
入社します。配属はこれから決まるので、ドキドキ。
http://www.ObjectClub.jp/special/kininaru/vote?vol=194&choice=0
入社し、これから一緒に仕事を始めることになりました。
http://www.ObjectClub.jp/special/kininaru/vote?vol=194&choice=1
会社には入社しますが、自分のプロジェクトには来ません。
http://www.ObjectClub.jp/special/kininaru/vote?vol=194&choice=2
入社します。それで、結構困ってます!(なぜだ?)
http://www.ObjectClub.jp/special/kininaru/vote?vol=194&choice=3
あっ!未だチェックしてなかった。
http://www.ObjectClub.jp/special/kininaru/vote?vol=194&choice=4
新入社員は入りません。
http://www.ObjectClub.jp/special/kininaru/vote?vol=194&choice=5
新卒じゃないけど、中途の人だったら4月から入ります。
http://www.ObjectClub.jp/special/kininaru/vote?vol=194&choice=6
自分が入社組です。よろしくどうぞ。
http://www.ObjectClub.jp/special/kininaru/vote?vol=194&choice=7
それは秘密です。
http://www.ObjectClub.jp/special/kininaru/vote?vol=194&choice=8
ちょっと語らせて!
詳細をこのメールに返信ください!!
アンケート結果はオブジェクト倶楽部サイト上にて公開します。お楽しみに。
なお、前号「これが見える化できたらいいのにな」の結果は公開中。ぜひご覧
下さい。
⇒http://www.ObjectClub.jp/special/kininaru/vol193/PlonePopoll_results2
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━--■--●--■
■
┗編集後記
こんにちは、編集人です。東京の桜は丁度ピーク。場所によってはピークを少
し過ぎたところもあるという感じでしょうか。お花見はしましたか?
財団法人社会経済生産性本部の発表によると、今年の新入社員は「カーリング型」
なのだそうです。あの冬季オリンピックで有名になった、カーリングです。
さて、皆さんとこれから一緒に働く皆さんはいかがでしょうか?そして、読者
の皆さんの時代は「何型」でしたか?結構面白い結果が出ていますよ。
(上田雅美)
【今年の新入社員はカーリング型】
http://activity.jpc-sed.or.jp/detail/lrw/activity000857/attached.pdf
◆財団法人社会経済生産性本部ホームページ
http://www.jpc-sed.or.jp/index.html
今週の強引な一言
*** 「ようく見ておくのだな。
実戦というのはドラマのように格好の良いものではない」
シャア・アズナブル ***
設計をしたり、コードを書いているときに、いいアイデアが思いつくと、例え時
間がかかったりオーバスペックであっても、ベストなやり方でやってしまいたく
なるのがプログラマの性。ただ、実戦(仕事)の場合は納期であったりインフラで
あったり、なんらかの形で制限があることも多いものです。不本意でもきっちり
とQCDを守ってリリースまでこぎつける力はプロとして必要ですね。(dot.)
出典 : 機動戦士ガンダム 第34話
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━--■--●--■
● ご意見、ご感想は ⇒このメールに返信ください
〇 配信中止、アドレス変更は ⇒http://www.ObjectClub.jp/community/object_ml/help/
〇 免責事項、過去の記事は ⇒http://www.ObjectClub.jp/community/object_ml/
■ 発行:オブジェクト倶楽部 ⇒http://www.ObjectClub.jp/
Copyright (c)2003-2008 オブジェクト倶楽部. All Rights Reserved.
powered by Eiwa System Management, Inc.