質とスピード(2020秋100分拡大版) 2020/11/20 @ JaSST'20 Kyushu
「異能」ともいえる際立った能力や実績を持ち、まわりから一目置かれるエンジニアを1カ月に一人ずつ取り上げ、インタビューを掲載する。今月取り上げるのは、テスト駆動開発(TDD)の日本での第一人者として知られる和田卓人氏。JavaScriptのテストフレームワーク「power-assert」の作者でもある。最終回である今回は、power-assertの開発やテストに対する考え方などを聞いた。 (前回から続く) 自社製品を開発しようとワークフローエディターを自作して得たJavaScriptのスキルセットは、ぼくの大きな財産になりました。ワークフローエディターはかなり複雑なソフトウエアなので、テストコードなしでは開発は困難です。そこでJavaScriptのテストについてもいろいろ調べてみました。しかし、JavaScriptのテストの仕組みは当時はまだ全然発達しておらず、ほぼ手探り状態でした。 201
「異能」ともいえる際立った能力や実績を持ち、まわりから一目置かれるエンジニアを1カ月に一人ずつ取り上げ、インタビューを掲載する。今月取り上げるのは、テスト駆動開発(TDD)の日本での第一人者として知られる和田卓人氏。JavaScriptのテストフレームワーク「power-assert」の作者でもある。今回は、転機になった「チーム角谷」への参加からJavaScriptに関わるようになった経緯などを聞いた。 (前回から続く) 永和システムマネジメントに誘われる形で、2004年7月から同社の受託案件の開発チームに参加することになりました。当時は永和の社員で積極的にコミュニティ活動をしていた角谷信太郎さんのチーム、いわば「チーム角谷」です。それまで在籍していた数千人規模の電子政府のプロジェクトから、4人だけのチームに移ることになりました。 初日にチームの顔合わせをすることになって現れたのが、角谷さ
コンピュータに最初に触れたのは、中学1年のときに家にパソコンが来たことでした。父親がコンピュータソフトウエア開発の会社を立ち上げて、家に開発用のDOS/Vパソコンがやって来たのです。 悔しいことに、その時点ではプログラミングにはあまり興味を持ちませんでした。単なるゲーム機の一種としてDOS/VやWindows 3.1のパソコンに触れていたというのが実情です。高校まではプログラミングは全くやっていませんでした。 世の有名なプログラマーは、たいてい小さい頃から街頭でパソコンを触っていたりマイコン雑誌を読んだりしています。それに比べると、コンピュータにあまり興味を持たなかったことにコンプレックスや一種の後ろめたさを感じています。 留学でコンピュータの重要性に気づく 1996年に国際基督教大学(ICU)に入りました。ICUには教養学部(リベラルアーツ)という一つの学部しかありません。「最初の2年間
「三年予測」は、さまざまな分野で活躍する「トップリーダー」へのインタビューを紹介します。「トップリーダー」の考える未来や、エンジニアへのメッセージを発信します。
日本におけるテスト駆動開発(TDD)のスペシャリストとして知られる和田卓人氏。講演活動やハンズオンイベントを通してテストの重要性を語り続けている。その深奥にあるプログラムの哲学とは── 父親がデータベース設計を得意にするソフトウェア・エンジニアで、受託開発の会社を経営していました。私は大学在学中からその仕事を手伝っていて、その延長で大学を出るとその会社の一員になりました。 そのころのことで一番印象に残っているのは、電子政府関連の公共システム開発に関わる大規模プロジェクトへの参加です。複数のSIerやソフトハウスが関わり、要件定義に時間をかけ、膨大な設計文書をつくっては、何千人というエンジニアを投入する、典型的な大規模システム開発です。私はそこにSEの一員として参加することになりました。 ただ、私は初日から生意気にも「Excelで設計書を書き続けるために来たのではありません」と嘆願して、基盤
テストを行っている品質保証チームや、実際にシステムを使っているお客様から不具合が報告されたとき、あなたはどう思いますか? 悲しんだり、恥ずかしいと思い、不具合修正にすぐに着手したいと気がはやるのが人情というものです。しかし、焦っているときに行う作業はしばしば視野が狭く、一つの不具合修正が三つの新たな不具合を生んでしまうようなことになりがちです。 テスト駆動開発(TDD : Test Driven Development)は、プログラマが自分の不安を克服し、自分が書くコードに自信を持ちながら一歩一歩進んでいくための手法です。不具合の発生は、端的に言えばこれまでの「自信」を揺らがせる事態です。テスト駆動開発者は不具合にどう立ち向かうのでしょうか? やはりテストを書いて立ち向かってゆくのです。私はテスト駆動開発を数年間実践してきた中で、心がけているひとつの「掟」があります。それは「不具合の修正時
平素よりQA@ITをご利用いただき、誠にありがとうございます。 QA@ITは「質問や回答を『共有』し『編集』していくことでベストなQAを蓄積できる、ITエンジニアのための問題解決コミュニティー」として約7年間運営をしてきました。これまでサービスを続けることができたのは、QA@ITのコンセプトに共感をいただき、適切な質問や回答をお寄せいただいた皆さまのご支援があったからこそと考えております。重ねて御礼申し上げます。 しかしながら、エンジニアの情報入手方法の多様化やQAサービス市場の状況、@ITの今後のメディア運営方針などを検討した結果、2020年2月28日(金)15:00をもちましてQA@ITのサービスを終了することにしました。 これまでご利用をいただきました皆さまには残念なお知らせとなり、誠に心苦しく思っております。何とぞ、ご理解をいただけますと幸いです。 QA@ITの7年間で皆さまの知識
このエントリは、 TDD Advent Calendar 2011 の 7 日目の参加エントリです。前日は @sue445 さんの実録!TDD風景でした。 しかし TDD Advent Calendar 2011 は、名エントリが多いですね……ハードルが上がり続けていて胃に穴があきそうです。私の言いたいことの多くは、既に @bleis さんのTDD の基礎体力と、TDD に対する想いや、 @shuji_w6e さんのTDDを学ぶべき10の理由で語られています。二つとも素晴らしいエントリなので、ぜひ読んでみてください。 そろそろカバレッジについて一言いっておくか さて、今日書くのは、カバレッジについてです。 @bleis さんのエントリに以下のような記述があります。 もう一度言いますが、TDD のテストは Developer Testing であって、品質保証を目的としたテストではありません
7/9 に開催された TDDBC TOKYO 1.5 に参加してきました。 ちゃんとしたレポートは色んな人が書いてるので、ちゃんとしてない感想を書きます。 坂道だったので、会場つくまでに汗だくになりました。 会場の Zynga Japan の会議室(?)は、素晴らしかったです。壁はボルダリングで、棚には技術書と一緒にマンガが置いてありました。 長野土産で、わさび柿の種とみすず飴を持っていきました。 自分は Perl のTシャツ着てましたけど、Perl は使えません。 id:t-wada は相変わらずカッコ良かったです。 お弁当が用意されてたのは良かったです。暑い中、慣れない土地で店を探さなくてすみました。 id:ToMmY とペアプロしました。 Ubuntu & Emacs & Ruby & RSpec & Git 使いで、名前が私と5文字同じだったので、一瞬親近感を覚えたのですが、SKK
サッカー日本代表がベスト8をかけて熱い戦いを繰り広げる4時間前、弊社事務所でもid:t-wadaさんを迎えてテストについて語るという熱い熱い戦いが繰り広げられました!t-wadaさん、そもそもが無茶振りにも関わらず快く引き受けていただいて、本当にありがとうございます!! 関連リンク Twitterのハッシュタグ:#t_wada。 Yunのもり 06月30日(水) - diary そういえば、前座を終えて日本代表戦のために家に帰る途中のマックに、有名人がいました。この人ともぜひ熱い戦いを繰り広げたかったところです。 http://twitpic.com/20yxq6 メモは取っていたのですが、ざっとでしかないしお酒も入っていたので内容怪しいところあるかも。何か不備があったら、ご指摘願います。 達人プログラマー(白い方) バージョン管理・テスティング・自動化の三本立て 他の2つはちょっと賞味期
和田 卓人(@t_wada) 作『RSpec の入門とその一歩先へ』はクリエイティブ・コモンズ 表示 - 継承 4.0 国際 ライセンスで提供されています。 東京 Ruby 会議 03 の RSpec ワークショップの資料です。このワークショップでは参加者の方に「写経」(コードを書き写すこと)をして貰い、TDD/BDD と RSpec を同時に学べるように都度説明を入れるかたちで行いました。 第2イテレーションも書きました。続きに興味ある方はご覧下さい (更新) 第3イテレーションも書きました。続きに興味ある方はご覧下さい 1st iteration favotter の みたいな NG ワードのフィルタリング機能を RSpec で作りましょう。まずは NG ワードの検出機能を作成します。 このイテレーションでは最初ベタな形のテストコードと実装を書き、だんだんとそのコードを洗練させてゆきま
今年のデブサミも無事終わりました。参加くださった皆様、ありがとうございました。デブサミをお楽しみいただけたのなら幸いです。 私はというと、今年もコンテンツ委員をさせていただきました。今年は PM カンファレンス併催によりテストトラックがなくなりました。そのかわりにかくたにさんから「開発プロセストラック」セッションを引き継ぎ、加えて DB トラックも担当しましたので、去年よりさらに多くのセッションを担当させていただきました。参与の度合いの多寡はありますが、企画や出演等で担当したのは以下のセッションでした。 開発プロセストラック 【18-E-1】SIerのこれからのソフトウェアを創る 【18-C-3】アジャイルテスト -高品質を追求するアジャイルチームにおけるテストの視点- 【19-B-1】ここまで来た!製造、金融でのアジャイル基幹システム開発〜ユーザー主導が成功の鍵!〜 【19-B-3】三周
OOエンジニアの輪! 第 43 回 和田卓人 さんの巻 今回のゲストは、和田卓人 さんです。テスト駆動開発の紹介など様々な活動で知られています。 ■ はじめに --- まこたんさんとのつながりは たぶん arton さんがまこたんを紹介した絡みに似てるかもしれないんですけど、以前「Seasar のからさわぎ」とか、 Seasar*1 のコミュニティが、よく飲み会やってたんですね。初めて会ったのもたぶんこの辺りだったと思う。 --- 2005 年ぐらいですか… ヨーロッパ選手権が 2004 年だから…… 2004 年、 2005 年ぐらいですね。 僕はサッカーが好きなんですが、サッカーファンというものは 2 年単位で年を覚えていられるんです。 4 年単位でワールドカップがあって、さらにそこから 2 年ずれて 4 年単位でヨーロッパ選手権があるので、大体あの時に何やってたってのは 2 年刻みで
ニコニコ動画:https://www.nicovideo.jp/watch/sm2316518 テスト駆動開発には「リズム」と「サイクル」があります。 リズムについては前回説明しましたので、今回と次回でサイクルの話をします。 テスト駆動開発のサイクル テスト駆動開発のサイクルとは、1つの機能を実装するにあたって、どんな手順を踏んで、どういう回し方をしていくかということです。たとえば、ある1つの機能を実装したい、提供したいということになったときに、まずどういうテストを書いて、それからどういうコードを書いていくのか。 今回は、テスト駆動開発のサイクルとしてまず最初に受け入れテストを土台として作るという話をします。 そして次回、その受け入れテストを通すために、どのようにレッド、グリーン、リファクタリングというサイクルを回していくのかというお話をします。 なお、ここで説明する回し方の対象は、スタッ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く