┏━━━━━━━━━━━━━━━━━━━━━━━━━━■
┃ ■┃
●┃● ● オ ブ ジ ェ ク ト 倶 楽 部 ■ ┃
┃ ■ ┃
┗━━━━━━━━━━━━━━━━━━━━━━■━━━┛
No.213 2007/12/05
■ I N D E X
┃
┣【Topics】クリスマスイベント2007 いよいよ申し込み開始!と冬の宴開催!
┣【Topics】ライトニングトークス たくさんのお申し込みありがとうございました
┣【Topics】名古屋アジャイル勉強会立ち上げイベントのお知らせ(12月12日)
┣【Topics】組込みZine レゴマインドストームNXTでロボットプログラミング
┣【プログラミング】ゆるーいHaskell [15]
┣【PF】たまには仕事に役立つコミュニケーションのヒント [14]
┗【アンケート】気になるシステム業界 ホントのところ
〇━━━━━━━━━━━━━━━━━━━━━━━━━━━T o p i c s━
〇 クリスマスイベント2007 いよいよ申し込み開始!と冬の宴開催!
〇 〇━━━━━━━━━━━━━ ━━・
オブジェクト倶楽部クリスマスイベント2007!申し込みが開始となりましたの
で、ご案内いたします。多くの皆さんにお目にかかれますように!スタッフ一
同楽しみにしています!
【申込みご案内】
定 員:先着 160名
サイト:http://www.ObjectClub.jp/event/2007christmas/
※団体受付はございません。ご了承ください。
【講演概要】
日 時:2007年12月21日(金) 10:00〜19:00
場 所:国立オリンピック記念青少年総合センター http://nyc.niye.go.jp/
テーマ:オブジェクト指向
内 容:講演、ワークショップ
参加費:無料
サイト:http://www.ObjectClub.jp/event/2007christmas/
【PFP冬の宴2007】
懇親会にかわる共催イベント「PFP冬の宴2007」が開催されます。
詳細およびお申込みは、以下のURLにてお知らせいたします。
日 時:2007年12月21日(金) 19:30〜
場 所:国立オリンピック記念青少年総合センター レストランとき
案 内:http://projectfacilitationproject.go2.jp/wiki/
主 催:PFP関東
※クリスマスイベントの申込ページでは「参加人数把握」をしています。
〇━━━━━━━━━━━━━━━━━━━━━━━━━━━T o p i c s━
〇 ライトニングトークス たくさんのお申し込みありがとうございました
〇 〇━━━━━━━━━━━━━ ━━・
このたびは多数の応募を頂きまして、ありがとうございます。
20名を超える応募がありまして、全部聴きたいところですが、泣きながら厳
正に審査を行っております。
応募者の方々には、12/6(木)に審査結果をお伝えできるのではないかという
状況です。どうぞお楽しみに!(LT担当:千葉)
〇━━━━━━━━━━━━━━━━━━━━━━━━━━━T o p i c s━
〇 名古屋アジャイル勉強会立ち上げイベントのお知らせ(12月12日)
〇 〇━━━━━━━━━━━━━ ━━・
名古屋アジャイル勉強会 立ち上げイベント
「プロジェクトファシリテーション入門」
■開催概要
日時:2007年12月12日(水) 18:30〜20:30
場所:富士通株式会社 名古屋葵事業所(葵ガーデンビル内)
http://projectfacilitationproject.go2.jp/wiki/?Nagoya-Agile-071212
〇━━━━━━━━━━━━━━━━━━━━━━━━━━━T o p i c s━
〇 組込みZine レゴマインドストームNXTでロボットプログラミング
〇 〇━━━━━━━━━━━━━ ━━・
記事「組込みlinuxを使ったはじめての組込み開発」でもおなじみの藤井が、
組込みZineにも記事を寄せています。
組込みZine レゴマインドストームNXTでロボットプログラミング
http://kumikomizine.jp/article/detail/7/
動画なども使って、より楽しさが伝わる記事となりました。どうぞご覧くださ
い。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━1 s t ■━
■
┗【プログラミング】ゆるーいHaskell [15]
こんにちは。西川です。今回はIdentityモナドとMaybeモナドについてお話しま
す。
■Identityモナド
まずはIdentityモナドの紹介です。Identityモナドは非常に簡単なモナドです。
簡単すぎてかえって使ったり目にしたりすることもほとんどないのですが、
Identityモナドは以下のように定義されています。
----- ここから -----
newtype Identity a = Identity {runIdentity :: a}
instance Monad Identity where
return a = Identity a
m >>= k = k (runIdentity m)
----- ここまで -----
何も難しいことをやっていないことが分かるでしょうか。折角なんでちょっと
使ってみます。ghciを起動しましょう。
> :m + Control.Monad.Identity
> runIdentity $ Identity "hoge1" >>= return . flip (++) "hoge2"
hoge1hoge2
Identityモナドのメリットは、強いて言うならば、(>>=)関数や(>>)関数が使え
るようになるので、関数型言語らしく関数を定義することができる点でしょうか。
■Maybeモナド
Maybeモナドはこれまでにも度々登場していたと思いますが、改めて紹介します。
----- ここから -----
data Maybe a = Nothing | Just a
deriving (Eq, Ord)
instance Monad Maybe where
(Just x) >>= k = k x
Nothing >>= _ = Nothing
(Just _) >> k = k
Nothing >> _ = Nothing
return = Just
fail _ = Nothing
----- ここまで -----
Maybeは存在するかもしれない(存在しないかもしれない)という状態をあらわす
データ型です。マップにキーで問いあわせてバリューを取り出すという処理は、
誰しも書いたことがあると思います。このときキーに対応するバリューがマッ
プに存在するかしないか、HaskellではこういうときにMaybe型のデータが返っ
てきます。ちょっと試してみましょう。
> let assoc = [("apple",100),("orange",120),("banana",80),("peach",150)]
> :i lookup
lookup :: (Eq a) => a -> [(a, b)] -> Maybe b
-- Defined in GHC.List
> lookup "apple" assoc
Just 100
> lookup "meat" assoc
Nothing
Haskellではタプルでキーとバリューの組み合わせを表わします。このようなタ
プルのリストをアソシエーションリスト(Association List)といいます。
もちろんData.Mapのようなそのまんまマップを表わすデータ型も存在しますが、
今回は手取り早くアソシエーションリストでMaybeの動作を確認しています。
キーに対応するバリューが存在する場合に「Just 100」が、バリューが存在し
ない場合に「Nothing」がかえってきます。
さて、これまではデータ型のMaybeについてお話したのですが、これからはモナ
ドとしてのMaybeについて御説明します。undefined関数という関数が定義され
ていない(undefined)であることをあらわす関数があります。
> :i undefined
undefined :: a -- Defined in GHC.Err
> Just 10 >>= undefined
*** Exception: Prelude.undefined
> Nothing >>= undefined
Nothing
Nothingの場合はエラーがおきていませんね。さきほどのMaybeのMonadクラスの
instance宣言を見ると、"Nothing >>= _ = Nothing"のように(>>=)関数の左側
がNothingならば必ずいつもNothingが返ってくるので、右側の関数は評価され
ません。先程のアソシエーションリストから商品の値段をとりだして、消費税
を計算する処理を書いてみましょう。
> let calcTax = Just . (*) 1.05 . fromInteger
> lookup "orange" assoc >>= calcTax
Just 126.0
> lookup "poke" assoc >>= calcTax
Nothing
もちろん条件分岐で、Nothingだったらxxxするのような関数を定義することも
できますが、C言語などで言うところのNullチェックというやつですね、
(>>=)関数をつかって次の関数にデータを渡して処理していく方がより関数型言
語らしくてカッコいいです。
今回はIdentityモナドとMaybeモナドについてお話しました。(西川)
_______________________________________________________________________
この記事への評価にご協力をお願いします。
URLをクリックして、「ご協力ありがとうございました」のメッセージがご使用
のブラウザに表示されれば投票完了です。
良かった:
http://www.ObjectClub.jp/community/object_ml/estimate?vol=E008-14&choice=0
普通:
http://www.ObjectClub.jp/community/object_ml/estimate?vol=E008-14&choice=1
イマイチ:
http://www.ObjectClub.jp/community/object_ml/estimate?vol=E008-14&choice=2
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━2 n d ■━
■
┗【PF】たまには仕事に役立つコミュニケーションのヒント [14]
一年中同じように呑んでいるわけですが、最近は忘年会という名前で呑む機会
が増えました。大人になったので静かに飲んでます。上田雅美です。
●「最後まで責任を持ってやります」の体現
先日、かつての上司であるAさんの話をする機会がありました。
Aさんは社内外からとても支持されている素晴らしい上司です。現在後輩が同じ
プロジェクトで仕事をしているそうで、思わず思い出話に花が咲きました。
「相変わらず変わってないんだね。」と盛り上がったあと、帰り道にある出来事
を思い出したのでご紹介します。
ある日、Aさんが若いリーダーをかなり真剣に叱っていました。
何があったのかわからなかったので、しばしそのやり取りを耳をダンボにして
聞いていたところ、どうやらクライアントが祭日に本番を実行する際に、自社
で待機をしていて、クライアント先にはSEが不在ということでした。
単純に「本番で何かあったらどうするんだ!」ということで注意されていると
思ったのですが、数日後に実は叱った観点がちょっと違っっていたことを叱ら
れていたリーダーから聞きました。
上司のAさんが叱っているポイントは、顧客先での本番を心配したばかりではな
く、リーダー本人が「最後まで責任を持ってやります」と言ったことを実行し
ていないと感じたことでした。つまり、リーダーが自分の言葉を体現していな
いということです。
それをきっかけにAさんのことを観察すると、「体現する」ということをまるで
当たり前のようにしていることを発見することができました。あらためて信頼
されているのは、こうしたことの み重ねなのだと、自らを省みて思いました。
●言動の一致
当たり前のことかもしれませんが、言動の不一致は著しく信頼関係に影響を及
ぼします。何気なく仕事の中で使っているかもしれない「担当します」「サポー
トします」というような言葉。なのに、担当がコロコロ変わってしまったり、
サポートがたらいまわしだったりすると、「本当にこの人(会社)は」と疑いの
気持ちを持ってしまいますよね。
同じように仕事をしていても「何かちょっと違う」と思えるような素敵な人には、
共通した軸というか想いの一致があることも特徴です。
それを具体的に感じさせるのが、きっと「言動の一致」なのだと考えます。
●おわりに
本番の待機はチームや顧客によって随分と方法があるようですから、ご紹介し
たエピソードがそのままお役に立つかどうかはわかりません。
ただ、今回皆さんにお伝えしたいのは、コミュニケーションは実際の会話や関
係性だけではなく、行動も大きく影響しているということです。
ちなみに、勉強会や飲み会で「また会いましょう」と言ったことを必ず実行する
という人の話を聞いたことがあります。なかなか形式的な挨拶となりがちな中、
実行する人が少ないためより相手の印象に残り、いい人脈づくりになるという
内容だったと思います。(相変わらずうろ覚え・・・)
言葉遣いや外見、いろいろなところに人柄を感じますが、一番印象に残るのが
もしかしたら「行動」なのかもしれませんね。(上田雅美)
_______________________________________________________________________
この記事への評価にご協力をお願いします。
URLをクリックして、「ご協力ありがとうございました」のメッセージがご使用
のブラウザに表示されれば投票完了です。
良かった:
http://www.ObjectClub.jp/community/object_ml/estimate?vol=M003-13&choice=0
普通:
http://www.ObjectClub.jp/community/object_ml/estimate?vol=M003-13&choice=1
イマイチ:
http://www.ObjectClub.jp/community/object_ml/estimate?vol=M003-13&choice=2
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━3 r d ■━
■
┗【アンケート】気になるシステム業界 ホントのところ
今週は「どんな記事が楽しみですか?」のホントのところ。オブラブメルマガ
にはいくつかのカテゴリーがありますが、今日は読者のみなさんが楽しみにし
てくださっているカテゴリーをあえてひとつ教えてください。
うーん!悩むというかたは、直感で「えいっ!」
書評。
http://www.ObjectClub.jp/special/kininaru/vote?vol=179&choice=0
ツール。
http://www.ObjectClub.jp/special/kininaru/vote?vol=179&choice=1
UML入門。
http://www.ObjectClub.jp/special/kininaru/vote?vol=179&choice=2
キーワード。
http://www.ObjectClub.jp/special/kininaru/vote?vol=179&choice=3
プログラミング。
http://www.ObjectClub.jp/special/kininaru/vote?vol=179&choice=4
PM。
http://www.ObjectClub.jp/special/kininaru/vote?vol=179&choice=5
コラムやイベントレポート。
http://www.ObjectClub.jp/special/kininaru/vote?vol=179&choice=6
設計。
http://www.ObjectClub.jp/special/kininaru/vote?vol=179&choice=7
PF。
http://www.ObjectClub.jp/special/kininaru/vote?vol=179&choice=8
それは秘密です。
http://www.ObjectClub.jp/special/kininaru/vote?vol=179&choice=9
ちょっと語らせて!
詳細をこのメールに返信ください!!
アンケート結果はオブジェクト倶楽部サイト上にて公開します。お楽しみに。
なお、前号「ズバリ!クリスマスはどんな予定?」の結果は公開中。ぜひご覧
下さい。
⇒http://www.ObjectClub.jp/special/kininaru/vol178/PlonePopoll_results2
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━--■--●--■
■
┗編集後記
こんにちは、編集人です。いよいよクリスマスイベントの申し込み開始です。
本当に、お待たせいたしました!!前回の夏のイベントで知ったのですが、オ
ブラブのイベントは、6割ぐらいが初心者のみなさん。ありがたいです!そして
イベント終了の頃には、何だかお友達ができてしまうという不思議な一日なの
だそうです。いったいどんなことが起きているのか!?この目で確かめなくて
は!と密かに思っている今日この頃です。目撃、体験済みのかたは、ぜひ情報
を事務局までお寄せください。待ってます。
今週の強引な一言
*** 我が身のことは人に問え(ことわざ)***
自分のことはかえって判断に迷うので、人に聞くと良い。また、自分の行為に
間違いや手落ちがないか自分では気がつかないので、人に尋ねて直すといいと
言う意味。リーダーに物を申すのは、なかなか大変なものです。まずはリーダー
から気軽に「どう?」ってメンバーに声をかけたいものですね。
出典参考:故事ことわざ辞典 東京堂出版
(上田雅美)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━--■--●--■
● ご意見、ご感想は ⇒このメールに返信ください
〇 配信中止、アドレス変更は ⇒http://www.ObjectClub.jp/community/object_ml/help/
〇 免責事項、過去の記事は ⇒http://www.ObjectClub.jp/community/object_ml/
■ 発行:オブジェクト倶楽部 ⇒http://www.ObjectClub.jp/
■ 編集代表:平鍋 健児
Copyright (c)2003-2007 オブジェクト倶楽部. All Rights Reserved.
powered by Eiwa System Management, Inc.