タグ

opinionとhistoricalに関するt-wadaのブックマーク (11)

  • 実践テスト駆動開発(GOOS)読んだ - Qiita

    実践テスト駆動開発を読んだ(和智さんいい仕事、ありがとう!)。 タイトル(GOOS = "Growing Object-Oriented Software, Guided By Tests")に、「テスト(TDD)」と「オブジェクト指向(Object-Oriented)」と「育てる(Growing)」が入っていて、ずっと読まなきゃと思っていた。出たときに角谷さんに「これは!」、と薦められたのに、機会を失っていたけど、最近、astahの開発でテストに悩みがあって読んでみた。 外から攻めるか、内からか テストを書いてプロダクトコードを育てていくという話なのだが、内側のテスト(ユニットテスト)と外側のシステムテスト(受け入れテスト、システムテスト、エンド・トゥ・エンド(E2E)テスト)をどっちを先に書くべきかいつも悩む。外側のテストを書いて、内側に進んでいくのか、内側から組み上げるか。設計の方向

    実践テスト駆動開発(GOOS)読んだ - Qiita
    t-wada
    t-wada 2014/08/11
    平鍋さんによる『実践テスト駆動開発』書評。ヘキサゴナルアーキテクチャ、テストの意味と範囲などについて。過去から現代へのTDDの意味づけのところでインタビューが引用されていて嬉しい。
  • Worse is worse

    Worse is worse(悪いものは悪い) Jim Waldo 2003年12月9日 (Original article: Jim Waldo, Worse is worse. Japanese translation by Hisashi Morita.) 概要 "worse is better"に関する有名なエッセイは、誤解されているか、あるいは間違っているか、そのどちらかだ。我々が設計に関する主張でそれを引用するとき、我々は我々の顧客と我々の作品の両方をごまかしていることになる。私はこのエッセイを改めて取り上げ、考えてみたい。 最近、東海岸の技術者と西海岸の技術者の違いに関する記事を担当しているリポーターからインタビューを受けたことがある(そのとおり、この手垢のついた話がまた取り上げられているというわけだ)。そのせいでDick Gabrielの有名な"Worse is Bette

    t-wada
    t-wada 2014/04/04
    おおお Worse is Worse の翻訳もあったのか “worse is betterに関する有名なエッセイは、誤解されているか、あるいは間違っているか、そのどちらかだ”
  • 本の虫: Clang VS 自由ソフトウェア

    オープンソースで有名なEric S. Raymondが、自由ソフトウェアで有名なRichard Stallmanに、GCCのアンチプラグインポリシーについて突っ込んでいる。 GCCは、長年、コンパイラーのモジュール化を政治的な理由で行っていなかった。もし、例えばパーサーや意味解析だけを分離して使えるようにしたり、内部表現を規格化したりしてしまうと、GCCの一部が、不自由なソフトウェアに取り込まれたり、あるいは不自由なソフトウェアがGCCのプラグインという形で入り込むことになってしまう。これは、利用者の自由を第一とする自由ソフトウェアにとって、悪夢のような未来である。そのような未来を未然に防ぐために、政治的な理由で、GCCのはプラグインに反対するポリシーを採用している。もし、GCCを改良したければ、自由なソフトウェアとなるべきなのだ。そして、GCCのプロジェクトに参加するべきなのだ。 とはい

    t-wada
    t-wada 2014/01/27
    ESR vs. RMS "自由ソフトウェア財団の目的は、GCCを技術的に制限することにより達せられるものだろうか" "GCCの制限を取っ払って、Clangと同じように、開発者の興味をひくようにするのが自然ではないのか"
  • Clean Coder Blog

    In my hand I am holding a little white book that, fourteen years ago, changed the software world forever. The title of that book is: Extreme Programming Explained; and the subtitle is: Embrace Change. The author is Kent Beck, and the copyright date is 1999. The book is small, less than 200 pages. The print is large and widely spaced. The writing style is casual and accessible. The chapters are sho

    t-wada
    t-wada 2013/12/11
    XPがアンチテーゼとして世に出て14年。XPの名前があまり出なくなっても、革新的だった価値やプラクティスは名前を変えてエンジニアの日常に根付いている。変革は成就したと言えるのでは by unclebob
  • Beyond MVC

    PHP Advent Calendar 2013 - 6日目 昨日は@fivestrさんのComposerを使った簡単Travis CI設定でした。 TL;DR オブジェクト指向/MVCでうまく捉えきれていなかったものは何なのか?MVCから続くソフトウェアアーキテクチャーの「その先」は何なのか?Reenskaug博士を知っていますか? WikipediaによればReenskaug博士は1930年生まれ。MVCという概念が世の中に送り出された論文『MODELS - VIEWS - CONTROLLERS (pdf)』は1979年ですから、49歳の時ということになります。1960年からソフトウェアを書き始め、1973年からオブジェクト指向でソフトウェアを開発しており、現在でも現役でソフトウェアの世界にいらっしゃいます(ex 2009年の講演)。「プログラマ歴42年 (* Clean Coder

    Beyond MVC
    t-wada
    t-wada 2013/12/06
    “実装の問題としてクラスの関係がどうだとか、どことどこに関連があるのが正しい/間違いだとかいうレベルのことではない” "MVCがそれだけではうまく整理しきれなかったものは、実は手続き・振る舞い"
  • 「技術的負債」とは何か。原典とその対応策を探る

    負債とは要するに借金のことですが、システム開発においても技術的な借金、つまり「技術的負債」(Technical debt)がある、という表現がしばしば使われます。お金の借金をすると利子を払い続けなければならないのと同じように、技術的負債を抱えると、そのツケを払い続けなければならなくなる、という比喩です。 「技術的負債」という表現は、WikiWikiの発明者で著名なプログラマとして知られるウォード・カニンガム氏が1992年に使ったのが原典とされています。しばしば目にするこの「技術的負債」というのはどういうものなのでしょうか? 調べてみました。 カニンガム氏とファウラー氏による「技術的負債」 カニンガム氏が「技術的負債」という表現をはじめて使ったのは、1992年に行われたACM主催のイベント「OOPSLA '92 」(Object-Oriented Programming, Systems,

    「技術的負債」とは何か。原典とその対応策を探る
    t-wada
    t-wada 2013/07/29
    改めて、技術的負債のまとめ。技術的負債の四象限もあわせて読みたい http://htn.to/uHGVDC
  • Shibu's Diary: Pythonはなぜ?str.join(seq)なのか?

    渋日記@shibu.jp 渋川よしきの日記です。ソフトウェア開発とか、ライフハックを中心に記事を書いていきます。 PythonAPI設計の中で、たまに思い出したように話題が出てくるのが、配列に入った文字列を結合するメソッド。Pythonではstr.join(iterable)です。他の言語(僕がよく知っているRubyJavaScript)はArray.join(String)となっています。どちらでもありえる話ですが、個人的にはPythonの方が自然だな、と感じていました。ですが、他の言語の方がいいという人も多く、Pythonプログラマーの中でも好き嫌いが出たりもします。せっかく、弾さんがPerlの国からやってきて適度にガソリンをまいて炎上したところなので、Python歴史を紐解いてみました。 軽くjoin歴史について語っているサイトはないか探してみる 軽くぐぐってみると、何箇所か

    t-wada
    t-wada 2012/10/02
    渋川さんによる入念な調査。興味深い。
  • The Art of Unix Programming

    This book and its on-line version are distributed under the terms of the Creative Commons Attribution-NoDerivs 1.0 license, with the additional proviso that the right to publish it on paper for sale or other for-profit use is reserved to Pearson Education, Inc. A reference copy of this license may be found at http://creativecommons.org/licenses/by-nd/1.0/legalcode. AIX, AS/400, DB/2, OS/2, System/

    t-wada
    t-wada 2012/01/18
    Eric Raymond (ESR) の『 The Art of Unix Programming 』原文が CC BY-ND で公開されている
  • Why the Future Doesn't Need Us

    Our most powerful 21st-century technologies—robotics, genetic engineering, and nanotech—are threatening to make humans an endangered species. PHOTOGRAPHS: LEFT: PETER MENZEL; CENTER, TOP TO BOTTOM: GALLERIA DELLʼACADEMIA, FLORENCE/CANALI PHOTOBANK , MILAN/SUPERSTOCK ; TED SPIEGEL/CORBIS; ROGER RESSMEYER/CORBIS; ROGER RESSMEYER/CORBIS; S. MILLER/CUSTOM MEDICAL STOCK ; RIGHT: EVERETT COLLECTION From

    Why the Future Doesn't Need Us
    t-wada
    t-wada 2011/01/18
    Bill Joy の論文
  • 利用者が自分たちの環境構築に参加するという思想の源流 - アンカテ

    自分の経験の枠組みは自分で変えられるか?というのは言いかえれば、「ユーザが自分の環境の構築に主体的に参加する」ということになると思うけど、この考え方の源流の一つとして次の話がある。 江渡浩一郎「WikiとXPをつなぐ時を超えたプログラミングの道」 (スライド、言及記事) これは、今、流行ってるソフトウエア開発の方法論の源流にクリストファー・アレグザンダーという建築家の「パターンランゲージ」という概念がどのように影響を与えたかについて解説している講演だ。 何で建築家がソフトに関係してくるかと言うと、このアレグザンダーという人は、人が集まり都市が自然に生まれてくるようなプロセスでビルを建てることができないかということについて考えた人で、そのテーマがソフトウエアと質的に関わってくるからだ。 つまり、設計者(開発者)がユーザの上に立って、上から目線で「おまえたちの欲しいものはこれだろう」と考えて

    利用者が自分たちの環境構築に参加するという思想の源流 - アンカテ
    t-wada
    t-wada 2008/02/02
    Alexandrianたちの系譜とソフトウェア開発の意識変革の歴史。関係を変えること。Social Change。
  • Otaku, Cedric's weblog: The myth of the Killer App

  • 1