実装パターン本やXP本に登場する「価値」とはなんだろう?

ギルドワークスさんとパートナーとして一緒にお仕事させていただいています、木目沢(@pilgrim_reds)と申します。

どちらもKent Beckの著書である、XP本実装パターン本に登場する価値と原則。

その内容については触れられる機会が多いと思いますが、
価値・原則とはそもそも何なのか?という点を考えたいと思います。

特に今回は「価値」に絞って考えてみます。

実装パターン本による「価値」の解説

当初、この記事を書くにあたって、「実装パターン」の価値についてのみ考えるつもりでした。
しかし、「実装パターン」で語られている価値についての説明は、

  • 普遍的で包括的な主題。
  • プログラミング時におけるあらゆる決定を左右する。
  • 価値は(パターンという行動を起こす際の)動機を提供する

ぐらいにしか、解説されておらず、なんとなくわかるのですが、なんとなく曖昧な説明に思えました。

そこで、同じく価値・原則・プラクティス(実装パターン本もパターンのことをプラクティスと言っている箇所があります。)形式で書かれているXP本の方も調べてみました。

XP本における「価値」の解説

XP本にて、価値について説明している箇所を抜き出してみます。

  • (園芸の例えより、剪定のプラクティスを理解するだけでなく、木全体・庭全体を捉える方法を指して)このレベルの知識と理解を価値と呼ぼう。
  • 価値とは、ある状況における好き嫌いの根源にあるものだ。
  • 価値とは、目にするものや考えていることなどを判断するための大きな基準である。
  • 価値は、プラクティスに目的をもたらしてくれる。

実装パターン本よりわかりやすい説明です。さらに、

価値がなければ、プラクティスはすぐに機械的な作業になってしまう

この箇所で理解できました。

実装パターンもXPも多くのプラクティス(パターン)が載っていますが、それらをただ実施するだけでは意味がありません。

例えば、ペアプログラミングを上司を満足させるためだったり、やってみたいからという理由で行っても意味がないということです。

また、コミニュケーションに不満があったり、チームのメンバー間がお互いに無関心といった問題を抱えていたらペアプログラミングというプラクティスが有効かもしれません。(「コミュニケーション」と「リスペクト」はそれぞれXPの価値の一つ)

最後に、実装パターンの価値やXPの価値は「実装パターン」を、または「XP」を方向付けるための価値であって、自分自身や、チーム、会社、またはビジネスのための価値とは必ずしもイコールではないという点に触れておきたいと思います。

これらはXPの原動力となる価値である。組織、チーム、あなた自身が、その他の価値を選択しても構わない。・・・チームがそれらの価値を共有すれば、XPの価値がプラクティスを作り出すのとは違ったやり方で、自分たちのプラクティスを作り出すことができるだろう。

とXP本の価値の章の最後にありました。

逆に言えば、XPや実装パターンの価値とチームの持つ価値が一致していれば、XP本や実装パターンの各プラクティスはチームに大きな力をもたらしてくれるということではないかと思います。

この記事を読んでギルドワークスに興味を持たれた方はお気軽に【ギルドワークスに依頼する】をご覧の上、お問合せください

エクストリームプログラミング 第二版 でXPに再入門しています。 #xpe2nd

どうも、ギルドワークス 前川です。

さて、皆さんはもうお読みになりましたよね!新訳版エクストリームプログラミング!非常の楽しい本なので、是非皆さんもチェックしていただければと思っています。

XPへの誤解

さて、このようにテンション高く始めてしまいましたが、私は実はXPの旧訳は読んだことがありませんでした。のみならず、XPをテーマにした本自体を、あまり読んでいませんでした。

実は私と同世代くらいの(昭和ギリギリ50年代くらい生まれくらいの)エンジニアには、結構同じ境遇の人、あんまりXPに関する書籍を読んでいない、という方が多いのではないかな?と思ったりしています。

なぜでしょう?それは、私がソフトウェアを本格的に勉強し始めたのと時を同じくして、XPの熱狂は去り、Scrumの波がやってきた、ように見えたのです。

その時、ソフトウェアの入門者を取り囲む空気には、少なからず偏見のようなものがあったと思っています。「XPは技術寄り」「Scrumの方がフレームワークとして定まっているので組織に入れやすい」「XPはスーパーエンジニア向けのもの」など、XPは効果的なんだろうけれど、とても導入が難しいエクストリームなものという言説は、同時いわれていたのではないでしょうか?

ギルドワークスにおけるXP

実はギルドワークスに入ってからも、少なからずこういったイメージを持ってしまっていたのですが、増田さんや市谷さんなど、ギルドワークスのメンバーから、XPの価値原則について、何度も熱く語ってもらいました。

XPといえばどうしても、全員同席テストファーストなどのプラクティスが強調され印象に残ってしまっていたので、XPの価値と原則について、改めて考えなければ、と思っていたのでした。

そんな時にちょうど出版されたのが、新訳版エクストリームプログラミングです。迷わず手を取り、読み始めました。

XPの価値と原則

まず、びっくりしたのは、最初の一文です。

エクストリームプログラミング(XP)とはソーシャルチェンジである。

帯にも書いてあるこの言葉は、本文の最初に出てくる言葉です。

ソーシャルチェンジってなによ?となりますが、あとがきで簡単に触れられています。

XPは必ずしも「社会」を変えるための活動ではない。隣の席にいるプログラマとうまくコミュニケーションしたり、顧客と密接にやりとりしたり、ユーザーが安心して使えるソフトウェアを届けたりする。そうした「人間関係」を扱う活動こそが、エクストリームプログラミングである。

そう、XPのというとバリバリの技術に尖った手法、というイメージを持ってしまっていたのですが、違います。人間関係を、仕事をしやすいよう変えていくのが、XPなのです。

なので、XPの価値には“コミュニケーション”“勇気”といった、人間関係を透明でわかりやすく、話しやすくする仕組みが埋め込まれていますし、原則にも”人間性“や”多様性”など、人間関係を豊かにする活動が詰め込まれています。

プラクティス以前に語られる、こういった価値と原則は、実はギルドワークスの「正しいものを正しくつくる」「越境」といった言葉に非常に密接にリンクしている、ということに遅まきながら気づいたのでした。

私も、皆さんと一緒に、自分の周りを Social Change していきたいと思います!

※アイキャッチの写真 https://flic.kr/p/3p69ZX

リモート開発のコミュニケーションで意識しておきたいこと

上野です。
今回はリモート開発におけるコミュニケーションの意識の仕方について書いてみます。

ギルドワークスでは開発を様々な地域の方々と組んで行っております。
基本的にオフィスに集まることがないので、東京の人でも実質はリモートワークになります。

そんなギルドワークスのリモートワークでの主なコミュニケーションはSlackです。また会話が必要な定例MTGなどはSkypeで行っています。

「コミュニケーションを取る」という意味では、この2つのツールでほぼカバーできます。しかし、ツールだけでコミュニケーションが成り立つわけではありません。

ネットワーク越しゆえ、意識してコミュニケーションを取らないとほとんど会話がないこともあります。
こういう状況が続くと「正しいものが正しくつくれていない」ことになります。

  • 誰が何をやっているのかわからない。
  • どうあるべきかわからない。

思い込みで作ってしまってプルリクで指摘されて違っていることに気がつけないということも起こりえてしまいます。

このような状況にならないために意識していることを上げてみます。

雑談できる場をつくる

仕様や機能のことだけを話しましょうとしても限界があります。
なので雑談したり、画像貼ったりという「席の隣同士でちょっと雑談する」ような場につくるようにしています。
常に雑談をし続ける場であるのではなく、他愛もない会話ができる場であることで、ここどういう機能でしたっけ?であったり、どうあるといいんだろうという議論をしやすくする狙いがあります。

定期的に顔を見て話す

直接会えるなら直接会える場を作りましょう。
遠距離であればSkypeでも構いません。
音声で話せばいいというわけではなく、カメラでお互いの顔を見て話すようにするのがポイントです。
文字だけでは相手の表情が分からず、実は困っていることがわからないこともあります。顔を見て話すことで意外と分かり合えることもあります。

最初に会いに行く

リモート開発だから会う必要がないことはありません。
一度対面で会って話をすることがプロジェクト開始後もコミュニケーションを取りやすいと感じています。
相手の顔を知る、相手の環境を知るというのは思いの外重要なことです。

こちらの記事も参考にしてください。
リモートワーク隆盛のいまこそ、パートナーに会いに行く

簡単なことが、意外とできなかったり
気が付くとコミュニケーションが止まっていたりというのがリモート開発では起こりやすいことだったりします。

ギルドワークスではリモート開発を行うにあたり上記のようなことを意識して開発を行っております。

私達と組んで熱く語り合い、「正しいものを正しく作る」仲間も募集しています。是非お声かけ下さいませ。

※アイキャッチの写真:https://www.flickr.com/photos/86979666@N00/8117046049/

越境から越共へ!開発者カンファレンス2015

こんにちは、ギルドワークスの藤田です。夏真っ盛りですね! この時期は自宅から駅に向かうだけで顔に塗ったファンデーションが全部落ちてしまう新陳代謝の良さに大変困っています。さて、

2015年7月23日、開発者ギルドカンファレンスを開催しました!

このカンファレンスは、”越境”をテーマに、「正しいものを正しくつくる」ことを目指したギルドワークスのこの一年強の取り組みを共有することで、”越境”に興味を持ったり、”越境”しようとする開発者の皆さんとの意見交換の場とすることを目指して企画しました。

開発者ギルドカンファレンス2015
https://guildworks.doorkeeper.jp/events/26156
guildconf_01
23日当日は、朝から都内は雨…絶望していたら開場間近の12時ごろから快晴に!
実はわたくし、小学生の頃からイベントごとでは常に雨になるという雨女だったのですが、このところ、大切なアポのある日は台風も回避していくし、雨女を返上していきたいと思います。

guildconf_02開発者ギルドカンファレンスは、13時にスタートしました。平日の昼間にもかかわらず、70名ほどの方々がご参加くださいました。
まずは、ギルドワークスの佐々木から、本カンファレンスのテーマである、”越境”とはどういうことか、このカンファレンスの目指すところをお伝えしました。

★ リモートワークという働き方 powered by ドメイン駆動設計

guildconf_03トップバッターはギルドワークスの増田です。
ギルドワークス設立のビジョンのひとつが、「技術者の働き方を変える」ですが、この実践として、ドメイン駆動設計でつながった、日本各地の12人によるチーム開発のエピソードをお話ししました。
場所にとらわれず、全国各地の強者エンジニア・デベロッパーによるリモートワークの実践は、参加されていた方々にも強く響いたようでした。

★ 老舗大企業からスタートアップへの挑戦

guildconf_04つづいては、ギルドワークスの前川です。大企業とスタートアップのギャップ、共通項、エンジニアとしてどう自分の価値をつくっていくか、をお話ししました。
前川の前職は誰もが知っている日本トップクラスのメーカーで、「どうしてそんな大企業のエンジニアが社員数7人のスタートアップに転職したのだろう」という疑問を抱くかたも多かったでしょう。転職を考えているエンジニアやデベロッパーを勇気づけるセッションになったのではないでしょうか。

★ 開発パートナーから見たギルドワークスと組んだメリット

guildconf_05ここで、”ギルド”メンバーである水谷さんからお話しいただきました。
エンジニアのライフスタイルとして、リモートワークを主とするギルドワークスとパートナーシップを組むことで、仕事がモテ、時間がモテ、彼女にモテる(…?)という実感を持たれたとのことです。
フリーランスとして活躍しているエンジニアのかたがたも多く会場にいらっしゃいましたが、水谷さんの”モテ”テクニックが、参考になったと思います。

★ 『企業とカイワする』というエンジニアの選択肢 〜自社サービス「カイワジョブ」立ち上げ舞台裏〜

guildconf_06ギルドワークスの佐々木からは、「カイワ」をキーワードに、リモートワーク、自社サービス構築、自社サービスコンセプトの3本立てでお話しをしました。
いずれも会社と、スタッフ同士と、ユーザーとの「コミュニケーションの課題」を紐解くものでした。

←直前までスライドを作っていた佐々木

カイワジョブのデモ

guildconf_09
本カンファレンスでは、佐々木のセッションで触れられていた、ギルドワークス初のiOSアプリ「カイワジョブ」のデモを行いました。
「カイワジョブ」は、エンジニアが自分の本当の知りたいことを企業との会話によって知ることができるというコンセプトのもとに開発されました。ユーザーはメールアドレス登録だけで、気になる企業に直接質問ができます。回答する企業は、エンジニアに詳しい(むしろ、エンジニア集団の)ギルドワークスが支援していますので、的確な回答が期待できます。
参加者の皆さんには実機にて「カイワジョブ」を操作してもらい、感想やコメントを付箋でポスターへ貼り付けていただきました。「面白そう!」などの嬉しいコメントをいただき、また、カンファレンス後のアンケートでも「カイワジョブ」が気になる、とのポジティブな反応が大変嬉しかったです。正式ローンチまで、今しばらくお待ちください。

★ 現場コーチから見えてきた越境する現場の3つの特徴

guildconf_08「カイワジョブ」のデモのあと、セッションが再開されました。ギルドワークスの中村は、現場コーチの経験を元にしたセッションを行いました。
「現場コーチを知ってる人?」という質問に挙手されたのは10人ほど。予想より少ない数でした。ですが、このセッションで、現場コーチがどういう存在なのか、どういう道具立てやファシリテーションを行っていて(インセプションデッキ、ドラッカー風エクササイズなど)、どういう存在であることを目指しているのかお伝えできたかと思います。

★ ギルドワークスの向かう先 -越境から越共へ-

guildconf_07最後は、ギルドワークス代表の市谷から、本日の締めくくりとなる”越境”についてのセッションです。
開発者、クライアント、ユーザー、それぞれがそれぞれの領域を踏み越えていき、また、そうすることで、さらに協調し、協業する、という、”境目を越える”ことからも踏み出た、”ともに越えていく”ビジョンをお話しし、散会となりました。

ご来場ありがとうございました!

guildconf_10
13時に開始し、終了は17時をまわりましたが、最後までご参加いただき、ありがとうございました。
ギルドワークスの目指し、実践してきた”越境”と、その意義を、少しでもお伝えできていれば嬉しいです。

また、ギルドワークスの取り組みを、このようにまとめて紹介させていただいたのも初めてです。本カンファレンスや、このエントリーを読まれて興味を持たれたかた、ギルドワークスと組みたいと思われたかたは、こちらのフォームからお気軽にご連絡ください。

★Twitterでのハッシュタグ(#guildconf)のつぶやきをまとめました。こちらも合わせてご覧ください。
http://togetter.com/li/851275

現場コーチから見えてきた越境する現場の3つの特徴

こんにちは、ギルドワークスの中村 洋です。

2015年7月23日(木)に開催する「開発者ギルドカンファレンス」で「現場コーチから見えてきた越境する現場の3つの特徴」というセッションをします。

これまで様々な現場で、現場の方々と一緒になってチーム、時には組織そのものの改善に取り組んできました。
その中で、チームの枠を超えた越境することができる現場にはいくつかの特徴があることに気づきました。
このセッションではその特徴から「越境することができる現場作り」のコツのようなものをお話します。

このエントリでは抜粋したスライドと共に、当日のお話の一部を書いてみます。
興味がある方はまだお申込みできますので、ぜひお越しください!

続きを読む