Date:  Wed, 30 Jul 2008 15:49:41 +0900
Subject:  【オブジェクト倶楽部: 2008-28号】
X-Mail-Count: 00253

       ┏━━━━━━━━━━━━━━━━━━━━━━━━━━■
       ┃                         ■┃
      ●┃● ● オ ブ ジ ェ ク ト 倶 楽 部   ■ ┃
       ┃                       ■  ┃
       ┗━━━━━━━━━━━━━━━━━━━━━━■━━━┛
                          No.242 2008/07/30

■ I N D E X
┃
┣【Topics】「アジャイル開発実践の極意」ITアーキテクトvol.18に記事掲載!
┣【Topics】Agile2008いよいよ開催!日本からエンジニアが続々参戦します
┣【PF】現場リーダーの心得 [11] 
┗【プログラミング】ゆるーいHaskell[22] 

〇━━━━━━━━━━━━━━━━━━━━━━━━━━━T o p i c s━
 〇 「アジャイル開発実践の極意」ITアーキテクトvol.18に記事掲載!
  〇 〇━━━━━━━━━━━━━ ━━・ 
アジャイル開発が再度注目を浴びてきました。ITアーキテクトvol.18に、オブ
ラブスタッフで記事を書いています。「アジャイル会開発実践の極意」と題し、
平鍋による「アジャイル開発の本質をつかむ」という歴史や概要をわかりやすく
解説した記事と、「アーキテクトが具備すべき7つの極意」という記事の2本立て。
後半は天野、木下、近藤、平田、安井で書いています。
こちらは、実際にアジャイル開発をした経験者による智慧の集大成となってい
ます。ぜひお手元にどうぞ。

▼概要
  ITアーキテクトHP
  http://www.itarchitect.jp/information/-/116529.html

▼お買い求めはこちらから
  ITアーキテクトvol.18 出版:アイ・ディ・ジー・ジャパン
  価格: ¥ 1,680 (税込) 
  http://www.amazon.co.jp/exec/obidos/ASIN/4872802888/xpjp-22

〇━━━━━━━━━━━━━━━━━━━━━━━━━━━T o p i c s━
 〇 Agile2008いよいよ開催!日本からエンジニアが続々参戦します
  〇 〇━━━━━━━━━━━━━ ━━・ 
8月4日から8日にかけて、カナダのトロントでAgile Conference 2008が開催さ
れます。今回は日本からの情報発信を目的に、多くのエンジニアが参戦します。

▼概要記事 
  InfoQ : http://www.infoq.com/jp/news/2008/07/agile2008_japan

記事をご覧のとおり、オブラブスタッフからも多数参加予定です。
このAgile2008への参加については、9月6日(土)に開催のXP祭りにて報告予定と
なっています。(噂)
▼XPJUGサイト
 http://xpjug.s270.xrea.com/

こちらもどうぞお楽しみに!

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ■━
■
┗【PF】現場リーダーの心得 [11] 

オブジェクト倶楽部メルマガ読者のみなさん、こんにちは。
岡島です。ご無沙汰しております。

先日、生まれて初めて「お礼状」を書きました。

上司から「○○社の○○取締役が『受託開発の極意』を社内教育用に50冊買っ
てくださったらしいよ」との話を聞いたからです。(偶然書店で手にとられ、気
に入っていただけたようです)。
○○社は永和システムマネジメントと同様、受託開発が事業の柱であり、それ
で本の内容に共感いただけたのでしょう。

面識のない方相手だったこともあり、Eメールではなく手紙でお礼状を書くこ
とにしました。本来は自筆が筋なのですが、私は字があまりに下手なため、署
名だけ手書きとさせてもらいました。
内容はワープロ(Wordの「時候の挨拶補助機能?」を初めて活用!)で、感謝の
気持ちが素直に伝わるよう、シンプルに書き、何度もチェックした上で投函し
ました。

そして、大きな満足感が残りました。
単にワープロ1枚の手紙を出しただけなのに。
なぜなら、私なりにベストを尽くしたからです。
本を通じ名前も顔も知らない○○社の社員の方々と通じ合えた嬉しさと、その
縁つなぎをしていただいた○○取締役に対する感謝の気持ちに対し、真剣に向
き合えました。

心をこめたお礼は「義理」に陥いることはないんだな、と実感しました。今回
の私のようなケースは日常あまりないかもしれませんが、皆さんも感謝の気持
ちをベストを尽くして表現してみてはいかがでしょう。ほんの少し、今までの
自分から変われる気がしますよ。

■「受託開発の極意〜変化はあなたから始まる。現場から学ぶ実践手法」
  受託開発の手ほどきと現場をよりよく変えていくための実践手法です。
   http://www.amazon.co.jp/o/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-10&choice=0
普通:
http://www.ObjectClub.jp/community/object_ml/estimate?vol=M004-10&choice=1
イマイチ:
http://www.ObjectClub.jp/community/object_ml/estimate?vol=M004-10&choice=2

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ■━
■
┗【プログラミング】ゆるーいHaskell[22] 

こんにちは。西川です。
前回はIOモナドのreturn関数や(>>=)関数がどうなっているかを確認してみまし
た。前回までの復習としてもう1度IO(モナド)の定義を確認してみましょう。
ghciを起動します。

$ ghci
> :i IO
newtype IO a
  = GHC.IOBase.IO (GHC.Prim.State# GHC.Prim.RealWorld
                   -> (# GHC.Prim.State# GHC.Prim.RealWorld, a #))
        -- Defined in GHC.IOBase
(以下、省略)

IOはIOというコンストラクタを持ち、
"State# RealWorld -> (# State# RealWorld, a#)"(分かりやすさのためモジュー
ル名を省略しました)という型を持つ関数を持っています。
今回はこの"State#RealWorld"が結局何なのかというお話をします。
と言っても先に結論から言ってしまうとこれは正に「リアルワールド」そのも
のを意味します。ここまでで"State#RealWorld"に一体どんな黒魔術が使われて
いるんだろうと思うかもしれませんが、実は特別なカラクリは何もありません。
State#もRealWorldもGHC.Primモジュールで定義されています。コメントは省略
しています。

----- Prim.hsここから -----
data State# s

data RealWorld
----- Prim.hsここまで -----

"State# s"も"RealWorld"も右側の構築子がありません。ghcに"-fglasgow-exts"
フラグを指定することで構築子なしのデータ型を定義することができます。
ともあれ"State#RealWorld"はこれだけでは何も表わしていないことが分かりま
す。
結局GHCというシステムが"State# RealWorld"を「リアルワールド」として扱う
から"State#RealWorld"は「リアルワールド」である、というのが今回のお話の
オチなのです。
"State#RealWorld"を「リアルワールド」と(便宜的にせよ)見なすとすると、上
記のIOのコンストラクタ部は「リアルワールドを受け取って、新しいリアルワー
ルドとその実行結果のタプルを返す関数」と読み下すことができます。これが
副作用をともなう処理(アクションと呼ぶことが多いです)を意味する気がしま
せんか?
例えばボールを投げるという行為をボールを投げる前の世界をうけとってボー
ルを投げた後の世界と投げた後のボール(の位置)のタプルを返す関数と見なす
ような感じでしょうか。ちょっとツッコミすぎたようなのでこの話はこの辺に
しておきます。
最後にIOモナドは一方向モナドと呼ばれるモナドの1つです。これはモナドの中
の値をモナドから取り出すことができないことを意味します。例えばMaybeモナ
ドではMaybeモナドの中の値をMaybeモナドの外に持っていくことができました。

> let n = case (return 1 :: Maybe Int) of Just x -> x
> print n
1
IOモナドでは基本的にはこれができません。
> :m + GHC.IOBase
> let n = case (return 1 :: IO Int) of GHC.IOBase.IO x -> x
> :t n
n :: GHC.Prim.State# GHC.Prim.RealWorld
     -> (# GHC.Prim.State# GHC.Prim.RealWorld, Int #)
> :m + GHC.Prim
> snd $ n (State# RealWorld)
(エラーが表示されます)

IOモナドは一方向モナドなので、IOモナドに一旦束縛されると結局、処理全体
がIOモナドに束縛されることになります。IOモナドに慣れない内はこれをつい
忘れがちなので、コンパイルがうまくいかずとまどう事が多いと思うので気を
つけてください。
さて3回にわたってIOモナドについてお話させていただきました。IOモナドは頻
繁にお目にかかります。入出力が発生するプログラムをたくさん作って、まず
は慣れることをお薦めします。(nishikawa)
_______________________________________________________________________
この記事への評価にご協力をお願いします。
URLをクリックして、「ご協力ありがとうございました」のメッセージがご使用
のブラウザに表示されれば投票完了です。
良かった:
http://www.ObjectClub.jp/community/object_ml/estimate?vol=E008-21&choice=0
普通:
http://www.ObjectClub.jp/community/object_ml/estimate?vol=E008-21&choice=1
イマイチ:
http://www.ObjectClub.jp/community/object_ml/estimate?vol=E008-21&choice=2

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━--■--●--■ 
■
┗【アンケート】気になるシステム業界 ホントのところ

今週は「朝会で良く話すことは?」のホントのところ。今やすっかりおなじみ
となった朝会。朝会とはチームの状況をチーム内部で素早く共有することを目
的とした、非常に短時間の会議です。この時間にいろいろと情報交換をするこ
とによって、チームの雰囲気も良くなり仕事の生産性も上がりますね。
ところでみなさん、朝会でよく話すことはどんなことですか?

  仕事のことで気になること(遅れやトラブル)。
     http://www.ObjectClub.jp/special/kininaru/vote?vol=210&choice=0
  会社の予定などの連絡事項。
     http://www.ObjectClub.jp/special/kininaru/vote?vol=210&choice=1
  仕事の中で学んだことや良かったと自分が感じたこと。
     http://www.ObjectClub.jp/special/kininaru/vote?vol=210&choice=2
  時事ネタ。
     http://www.ObjectClub.jp/special/kininaru/vote?vol=210&choice=3
  セミナーのシェアなどのおすすめ情報。
     http://www.ObjectClub.jp/special/kininaru/vote?vol=210&choice=4
  自分やチームのメンバーネタ。
     http://www.ObjectClub.jp/special/kininaru/vote?vol=210&choice=5
  偉人や有名人の言葉に学ぶこと。
     http://www.ObjectClub.jp/special/kininaru/vote?vol=210&choice=6
  朝会やってません。
     http://www.ObjectClub.jp/special/kininaru/vote?vol=210&choice=7
  それは秘密です。
     http://www.ObjectClub.jp/special/kininaru/vote?vol=210&choice=8
  ちょっと語らせて!
     詳細をこのメールに返信ください!!

アンケート結果はオブジェクト倶楽部サイト上にて公開します。お楽しみに。
なお、前号「夏休みはどう過ごしますか?」の結果は公開中。ぜひご覧下さい。
⇒http://www.ObjectClub.jp/special/kininaru/vol209/PlonePopoll_results2
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━--■--●--■
■
┗編集後記

こんにちは、編集人です。イチロー選手が300本安打を達成し、今年の夏はオリ
ンピックに甲子園などといった、スポーツのイベントが目白押しですね。ちな
みにオリンピック開催地の北京は、日本との時差が−1時間。自宅観戦派の皆さ
んは寝不足の心配も要らないようですね。
一日中室内で過ごす機会の多いエンジニアの皆さんですが、通勤や就寝時など
には実はたくさん汗をかいています。こまめな水分補給をして健康に夏を乗り
きってくださいね。
あ!ビールは水分補給にはなりませんよ〜!(上田雅美)

さて、オブジェクト倶楽部カレンダーの8月分の電子データを公開します。
8月は「Test Driven Development」です。先日のオブラブの夏イベントで、ア
ジャイル開発体験にご参加いただいた皆さんにも体験していただけたと思いま
す。もしも機会があれば、実際の職場でもやってみてくださいね。

カレンダーのダウンロードはこちらから。
http://www.ObjectClub.jp/special/#calendar

今週の強引な一言
*** 卒啄同時(ことわざ)***
鳥の雛が卵からかえる瞬間に内側からヒナが殻をつつくことを「卒」といい、
外から親鳥がそれを助けるように殻をつつくのを「啄」といいます。このタイ
ミングを外してしまうとヒナは死んでしまうそうで、子も親も自然にその絶妙
なタイミングを知っている生命の不思議さと素晴らしさをを卒啄同時(そったく
どうじ)というそうです。
顧客の欲しいものを、欲しいときにピタッと提供するのが、ビジネスでも生き
残りの鍵です。これを実現するための開発スタイルがアジャイル開発かもしれ
ませんね。
(上田雅美)

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━--■--●--■
● ご意見、ご感想は         ⇒このメールに返信ください
〇 配信中止、アドレス変更は ⇒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.