開発とリテラシに関するkilreyのブックマーク (22)

  • セブン&アイ、ネットの「誤算」:日経ビジネスオンライン

    2009年12月8日に誕生した「セブンネットショッピング」。オープン直後から価格表示ミスなど、トラブルが相次いだ。消費不振の中、セブン&アイの新たな成長基盤になれるか。 「年内は1日も休めなかった」。幹部からはそんなため息が聞こえる。セブン&アイ・ホールディングスのEC(電子商取引)サイト、セブンネットショッピングに携わる社員は、年末年始も気が休まらなかったに違いない。 「“流通クラウドポータル”を目指す」。セブンネットショッピング社長の鈴木康弘氏がそう豪語する中で誕生した通販サイト。2009年12月7日、東京・四ツ谷のセブン&アイ・ホールディングス社内の会見場は、突然の告知にもかかわらず記者や関係者で埋め尽くされた。 ネットユーザーの指摘は厳しい 書籍から品、日用雑貨に至るまで11のカテゴリー、500万品目の商品を揃え、2011年末までには1000万品目を扱うサイトにする--。総合ネッ

    セブン&アイ、ネットの「誤算」:日経ビジネスオンライン
    kilrey
    kilrey 2010/01/19
    対マスコミ鎮火策としては正しいけど、対ネット鎮火策にはなってないよね。
  • オープンソースはなぜ完全敗北したのか?

    ある時期に「オープンソース」というものがすごいぞと喧伝されていたことがあった。 ソフトウェアを作る際、プロジェクトリーダーがスケジュールや役割分担を決めて作っていくよりも、 ネットを通じて不特定多数が思い思いに自分のアイデアを注ぎ込み、 一つのものを作った方が色んな奴の知識や発想によってすごいものが出来るぞ、という考え方だ。 どっかの外国人が旗振りとなって、色んなプログラマが賛同して、それなりに盛り上がった。 でも、結局、今見てみたらどうだろう?大失敗じゃないか?だって、リナックスはOSの主流になってないじゃん。 梅田望夫はオープンソースの思想をプログラミングの分野だけでなく ネットを使って人文科学などにも応用したらなにやらすごいことが起こるはずだ、と書いていた。 速水健朗はそれを「ニューエイジ」と切って捨てていたけど、でもある程度は成功していると思う。 その一つの集大成がウィキペディアだ

    オープンソースはなぜ完全敗北したのか?
    kilrey
    kilrey 2010/01/17
    "ネットを通じて不特定多数が思い思いに自分のアイデアを注ぎ込み、"<この誤解がどこから来たのかが気になる。
  • 品質は作り込むもの - rabbit2goのブログ

    ソフトウェア開発において、ありがちな品質対策の例。 テスト作業への人員追加 テスト期間の延長 テスト体制の見直し 経験的に言って、こんな素性の悪いソフトウェアに関わるとロクな事が無い。根的な作りが悪いソフトウェアを、いくらテストでフォローしようとしてもそれは無理というものだ。出血が続いているからと言って、傷口に絆創膏を貼り続けても何も解決しない。対処療法が効くのはほんのつかの間に過ぎないし、それでカバーできる範囲は極めて限られている。やるべきなのは出血が続いている根原因を突き止め、その出血を抑えるための施策を取ることだろう。テストによってマイナス10点がマイナス5点に上がったことを指して「品質が改善した」と主張するのは大きな誤解だし、そもそもいくらテストを続けても決してプラスの点にはなり得ない。スティーブ・マコネル氏がCode Completeの中で言っているように、テストは品質を改善

    品質は作り込むもの - rabbit2goのブログ
    kilrey
    kilrey 2009/12/15
    品質保証と品質向上は違うという話か。困ったことに品質が低いほど保証に必要なテスト件数は増える。だから品質保証のための早道も結局は品質向上になる。
  • リビジョン管理システムを使える技術者はイケテいる - 檜山正幸のキマイラ飼育記 (はてなBlog)

    ある程度の経験を積んだ技術者/プログラマであるかどうかを判断したいとき、「リビジョン管理システムを普通に使えるかどうか?」という基準はけっこう有効な気がした。 以下の使い方は、「使ってみれば便利さが分かるから」とか言ってなんら説明をしなかった僕の責任です -- と前置きしますが: proj/2009-10-23/, proj/2009-11-10/ なんてディレクトリが、リビジョン管理下になっている。 同じことだが、foo.c, foo-v2.c, foo-v3.c なんてファイルがある。 リポジトリのワーキングコピーとは別に、“ほんと”のワーキングディレクトリがあり、ほんとのワーキングディレクトリから一端リビジョン管理下ワーキングディレクトリにファイルコピーしてからコミットしている。 複数人参加単一プロジェクトのディレクトリ構成が、proj/tanaka/, proj/suzuki/,

    リビジョン管理システムを使える技術者はイケテいる - 檜山正幸のキマイラ飼育記 (はてなBlog)
    kilrey
    kilrey 2009/12/01
    「日付バックアップと違って差分管理してくれるから容量を食わない!」くらいのノリの人がいる。
  • コンパイラの最適化による弊害 | 株式会社シンメトリック公式ブログ - 携帯開発から生まれる技術情報

    コンパイラの最適化による弊害|株式会社シンメトリック公式ブログ - 携帯開発から生まれる技術情報| 携帯サイト開発から生まれる技術情報ブログ 以前C言語で、業務とはまったく関係のないお遊びプログラムを作っている時に、不可解な現象に悩まされました。 とある関数の内部で、呼び出し元の情報を書き換えて、関数を抜け出す時に来の戻り先とは別の戻り先に制御を移すという、ちょっと変な処理を行うものです。 この時は何か目的があってプログラミングをしていたわけではなく、あまり深く考えもせずに作っていたので、最初はプログラムがバグってるのかな?と思っていました。 しかし、何をやってもコンパイル時に最適化オプションを付けた時だけ発生するので、気になり調査しました。 ソースコード 問題のプログラムの処理フローは次のようになっています。関数は通常、呼び出した場所にreturnで戻るのですが、このプログラ

    kilrey
    kilrey 2009/10/25
    それ、C言語の埒外だから。
  • Subversionの嫌なところ - 日記を書く [・w・] はやみずさん

    前方互換性が悲惨 前方互換:新しいシステム向けのデータなどが、古いシステムでも使えること 最近は個人的にはgit使ってるし、バイトではBazaar使ってるしで、分散VCS以外ほとんど使っていなかったんだけど久々にSubversion使ったら見事にハマった。 なんなんですかね。新しい svn でレポジトリをいじったら古い svn から使えなくなるって。簡単に svn のバージョン上げられる環境じゃないケースとか考えてないんだろうか。パッケージマネージャのあるプラットフォームでいちいち最新版を落としてきて入れるとかナンセンスすぎでしょう。 分散VCSのほうがモデルとして優れている云々以前の問題ですね。

    Subversionの嫌なところ - 日記を書く [・w・] はやみずさん
    kilrey
    kilrey 2009/09/25
    これは前に経験して目が点になった。どういう設計なのか、と。
  • https://anond.hatelabo.jp/20090916213443

    大規模開発において重要なのは、技術よりも政治力かもしれない。‥親会社の連中がバグ作りこんだのをなかなか認めやがらねえ!明らかに連中の作った箇所を通すとデータが狂う。いくらトレース情報を見せても「さあ?」「そっちのバグじゃないの?」の一点張り。自分らのバグをこちらに辻褄合わさせて無かったことにする気だ。明日は更に情報集めて、完璧な証拠を掴んでやる。必ず修正させてやる。

    kilrey
    kilrey 2009/09/16
    何が正しいのかを定義しないと。
  • コードコメントに書くべきは「意図」 - プログラマーの脳みそ

    2.トリッキーな実装 ソースを読んだだけではすぐにわからないようなアルゴリズムを採用している場合や、使用しているライブラリのバグ回避のための特殊な処理を行っている場合、または他の人が見たときや自分が数年後に見た時に「なぜここでこんなことを?」と感じる可能性がある場合にはソースコードにコメントを追加するべきだ。これは言わばトリッキーな実装である。 ソースコードのコメント率は20%を切ることが望ましい : 小野和俊のブログ 私はこの部分にはもうちょっと汎用的に「意図」を書くべき、とすることを提案しよう。*1 トリッキーな実装というのは、「普通」ということが分かっていて初めてトリッキーかが分かる。普通か、トリッキーか、というのは時代背景*2というかハード的な制約も関係するだろう。常識は移ろいゆく。人がトリッキーではないと確信して書かれるコードと、トリッキーなコードとの線引きはどうしたらよいのだ

    コードコメントに書くべきは「意図」 - プログラマーの脳みそ
    kilrey
    kilrey 2009/09/09
    全面同意。→コメントの書き方について書いた。http://d.hatena.ne.jp/kilrey/20090912
  • 2009-08-22

    セキュリティ&プログラミングキャンプ2009のわたしの講義で、「オープンソースにすると企業は損をするんじゃないですか」という質をとらえた質問がでて、講師陣が、いきなりいろいろ議論を始めた。 企業の行動原理は、利益の追求だから、利益を生まないアクティビティは原則として行わない。オープンソースも例外ではない。 利益=売上-経費 なので売上が増えるか、経費が減るかという観点から投資判断をする。当たり前ですな。 例えばマイクロソフトが自社の製品をオープンソースにすると、売上が伸びるか、あるいは経費が減るかというと、どちらもそうとは言えないので、マイクロソフトが自社製品をオープンソース化することは考えられない。先日マイクロソフトがHyper-V向けのLinuxドライバをGPLで公開したことが話題になったが、Linuxドライバを公開する事が自社のHyper-Vの魅力を増し、売上向上を期待して公開した

    2009-08-22
    kilrey
    kilrey 2009/08/22
    OSS化で損もするし得もする。判らないものを評価することはできないが、往々にしてすることを求められる。
  • オブジェクト倶楽部、コーディング規約の会の「C# コーディング標準」の駄目なところ - ぐるぐる~

    C# のコーディング規約としては、オブジェクト倶楽部のもの (PDF) が有名だけど・・・正直、これ使いたくない。 冒頭に「このドキュメントは Java コーディング標準(オブジェクト倶楽部バージョン)、VB.NET コーディング標準を C#用に変更したもの」なんて堂々と書いてる時点で・・・ で、この規約のどこが駄目なのか、なぜ駄目なのか、どうすればいいのかをまとめてみた。 なんだかんだで長文エントリ。 追記: ちなみに、C# の規約としてはクラス ライブラリ開発者向けのデザイン ガイドラインで十分だと思う。 更に追記: ブコメで教えてもらったんだけど、どうやらクラス ライブラリ開発のデザイン ガイドラインの方が新しいらしい。 2. ファイル構成 (1) ファイル名 public クラスはそのクラス名の 1 ファイルにする。 例:public class Customer は、Custom

    オブジェクト倶楽部、コーディング規約の会の「C# コーディング標準」の駄目なところ - ぐるぐる~
    kilrey
    kilrey 2009/08/05
    規約や設計の良し悪しに関する情報が世の中に足りていないと思った。(ので書いたhttp://d.hatena.ne.jp/kilrey/20090804#p1)
  • 高木浩光@自宅の日記 - やはり退化していた日本のWeb開発者「ニコニコ動画×iPhone OS」の場合

    ■ やはり退化していた日のWeb開発者「ニコニコ動画×iPhone OS」の場合 一年前、「退化してゆく日のWeb開発者」という題で、ケータイWebの技術面での蛸壺化について次のように書いた。 iPhoneに契約者固有ID送信機能が搭載される日 (略)こうして退化してゆくケータイWebが、日のスタンダードとなってしまい、いつの日か、PC向けの普通のインターネットまで、単一IDの全サイト送信が必須になってしまうのではないかと危惧した。 (略)iPod touchでNAVITIMEを動かしてみたところ、下の図のようになった。 (略)契約者固有IDがないとどうやって会員登録システムを作ったらいいのかわからないんじゃないのか……というのはさすがに穿ち過ぎだと思いたい。NAVITIMEからソフトバンクモバイルに対して、契約者固有ID送信用プロキシサーバの用意を要請している……なんてことがなけれ

    kilrey
    kilrey 2009/08/03
    規格は守ろうよ。
  • 「書かれたルール」と「本当のルール」 - レジデント初期研修用資料

    ルールブックに書かれたやりかたと、そのゲームに勝つためのやりかたとはしばしば異なって、 ゲームはだから、「ルールを守る」のが好きな人と、「ゲームに勝つ」のが好きな人と、 たいていは2つの文化が衝突する。 「イヤーノート」という教科書 「がルールを書き換えた」先例がうちの業界にはあって、医学生ならたいてい誰もが持っていて、 医師ならたぶん10人が10人、そのを「クソだ」と断じる、「イヤーノート」という教科書がある。 医学部というのは医学を学ぶ場所だから、医学生の教科書というのは、 もちろん「医学」が体系的に、権威ある先生がたによって記述される。 教科書には、医師として知っていなくてはならないこと、診療に大切なことが中心に記載されて、 みんなそれを読んで勉強する。 ところが自分たちには「国家試験」というものがあって、これに合格しないことには、仕事が始まらない。 国家試験も試験である以上、「

    kilrey
    kilrey 2009/08/02
    "「情報の共有」と「ルールの書き換え」"<むしろ過剰適応による失敗例のような。
  • 続・バグを生まないコーディング法 | EE Times Japan

    フォーラムでの議論は次のような発言から始まった。 「中括弧を使って複合文を記述し、文の切れ目にセミコロン「;」を使う言語では、オールマン・スタイルを使うべきではない」 私はどちらのスタイルでもよいと思っているが、「1TBSでは図2のような間違いを人間のコード・レビュワーが発見しにくい」という1TBSに対する批判は受け入れがたい。 人間のコード・レビュワーが、このような間違いを見落とす可能性があることは認める。しかし、まさにこの例は、ここで紹介するようなコーディング規則の重要性を物語っている。つまり、「バグを効果的に排除するためには、コーディング規則に強制力がなければならない。2個以上の競合する規則がそれぞれバグを防げても、それらの中の1つの規則だけが自動的に強制できる場合は、より強制力がある規則の適用が推奨される」ということだ。 われわれのコーディング規則では、上記のような例はまさに自動

    kilrey
    kilrey 2009/08/01
    いや、間違った方針ではないと思うけど、素で議論するようなことでもないよね。
  • デバッグという基礎素養 - みねこあ

    経験の浅いプログラマーがデバッグにてこずってるのって、 これと似ていて、 むやみやたらにクリックするのだけど、 自分の知ってるパターンに収束させることができない、みたいな。 これについては、経験を積めば、 自分の知ってるパターンが増えてきて、 バグだ、と思ったときには既に自分の知ってるパターンだから直せる、とか、 ちょっと試行錯誤すればパターンに落とし込めるとか、 そうなるんじゃないかな、と。 経験の浅いプログラマーがデバッグできない理由 については、コンパイラの吐くエラーが実は直接的が原因を示していない、とか、そういうレベルの話では実感だな、って思います。 「そうそう、コンパイラがこんなこと言うときは実際にはあんな事が起きてるんですよ」みたいな知識データベース。そしてコンパイラが検出出来ないタイプのバグについても、現象に「あれ?、どこかでみたぞ、これ」となる。そういう「良くあるパターン」

    デバッグという基礎素養 - みねこあ
    kilrey
    kilrey 2009/07/26
    そうそう。デバッグに時間がかかるのは(大抵)設計が腐っているせい。
  • LISP ベースの「世界最速」 (と作者が信じる) ウェブサーバ | スラド IT

    John Fremlin 氏は小規模ダイナミックコンテンツ用に設計された自称「世界最速」なウェブサーバ teepeedee2をリリースした (家 /. の記事、John Fremlin's blog の記事より) 。 このサーバは全て LISP で書かれている。Fremlin 氏は昨年 11 月の Tokyo Linux Users Groupでこのプロジェクトを発表しており (pdf)、/.Jer の中には既にご存知の方もいるかもしれない。そこで彼はベンチマーク結果から「関数型プログラミング言語が C に勝ることができる」ことを示したという。 Github の teepeedee2 プロジェクトサイトはこちら。

    kilrey
    kilrey 2009/05/28
    Lisp=インタプリタで話しちゃダメ。
  • 商用APサーバーなんかだいっきらい

    犯人が分かったよママ。開発効率が悪いのは商用のAPサーバーのせいですよ。EJBの仕様のせいですよ。あ、もちろん、仕様がおかしいとか、コーダーの質が低いというのは抜いて考えてね。 これを読んでる人たちはわかると思うけど、Tomcatとかで開発してればちょっとソースコードかえたらすぐ動かせるじゃん?メソッド追加したりしたら、再起動かけなきゃいけないけどさ、すぐに再起動出来るじゃん?待っても10秒かかるかかかんないかでしょ?声を大にしていいたいけど、商用のAPサーバー共は再起動に数十秒から数分かかるんですよ?そりゃね、再起動の必要がないような修正だったらさ、10秒ちょいで使えるようになるけどね、正直そんなに待ってらんないんですよ。そりゃEJBの仕様をうまく使えばそれなりの部分を補えるかもしれないけどさ、開発中にどれだけの回数再起動すると思ってんの?開発効率もそうだけど再起動効率をもっと考えた方が

    商用APサーバーなんかだいっきらい
    kilrey
    kilrey 2009/05/21
    "なんでその設定が間違ってるかどうかを検証しないでいいんですか"はありがち。何故テストをするのか判っていないとしか思えない。
  • 1時間でわからせたコンシステントハッシュで仮想ノードが必要な理由 - 西尾泰和のはてなダイアリー

    ConsistentHashing - コンシステント・ハッシュ法 とあるチャットで聞かれて図まで書いて解説したのでもったいないからエントリー化。ちなみにチャットが1時間弱だったのでこういうタイトルにした。 で、Bが消えるとBの責任範囲が全部Dに押し付けられてDがかわいそうでしょ。 Dの仕事が増えるでしょ。Cとか暇そうじゃん!サーバを複数用意しているメリットが薄れてる。みんなが同じくらい働くのが望ましい。 で、Bが1個の点で表現されているから「Bの手前」もDの1個だけで、そのせいで全部Dが引き受けるはめになった。つまり、仕事が細かく分割されてなくて1個の塊だから引き継ぐ人も1人だけで引き継いだ人涙目。あらかじめ仕事を100分割しとけばみんなで分担して肩代わりできて幸せだよね。 だからサーバが5個だけど点は5個じゃなくて500個打とう。それが仮想ノード。 実装はどうするの?という質問に対して

    1時間でわからせたコンシステントハッシュで仮想ノードが必要な理由 - 西尾泰和のはてなダイアリー
    kilrey
    kilrey 2009/04/30
    Whatを捨ててHowの話をした方が"1時間でわからせ"るには良いのかも。
  • 下限に合わせたプログラム設計はシステム開発を停滞させる - @katzchang.contexts

    FxUG@北陸の懇親会で出た話題。 中規模以上のプロジェクトになれば、悲しいかな、テンプレにそったプログラムしか書けない人や、そもそもプログラムを書いたことすらない人が結構いたりします。10人もかき集めれば2〜3人、いや半分はそういう人だったり。リーダーさんは仕様検討とかで忙しいから、そういう初級者さんにプログラムの作成を頼らざるを得ないってのが現実です。 で、初心者さんにもわかりやすい設計のプログラムを量産していきましょう、となる現場はよくあります。なに、うちのところもそんなもんですよ。 でもそれで良いの?と、個人的には疑問を持っています。 初心者でも書けるように、テンプレートをコピーして使う。 コピペ駆動開発の副作用は周知の通り。 テンプレートが役立つのは限定的な場合。仕様が想定の範囲を超えればテンプレートを捨てなきゃならないけど、その判断を誰が下す? 後々の保守しやすいよう、初心者で

    下限に合わせたプログラム設計はシステム開発を停滞させる - @katzchang.contexts
    kilrey
    kilrey 2009/04/28
    「初心者でも〜」は駄目なベテランを保護する仕組みなのかも。プログラミング以外の仕事は割り振れないのかね。
  • ホワット・ア・ワンダフル・ワールド それはデバッガ関係無いですよね

    ちょっと気になっただけですが. でも、設計もせずに行き当たりばったりに手を動かして、ちゃんとしたものができるとは思わないし、結局デバッグではまる原因になる。yuguiさんが講演で言ってたことも結局そういうことじゃないかと解釈したし、Linusが長い間カーネルデバッガの導入に反対だった(2.6.26でkgdbがマージされた)のも同じ理由からだろう。 (Plan9 日記 2009-04-25 ■[イベント] Debug hacks conference 2009) 別に oraccha さんに何か物申したいわけではないのですが,この手のデバッグの話になると,なぜか 「デバッガを使うよりも ○○ (コードの書き方とか,設計とか,開発プロセスとか,テストとか,何でもいいのだけど) の方が大事だ.」 という論調の人が沸いてくるのはなんでなんだろうな,と思います.単なる論理のすり替えなんじゃないかな…

    kilrey
    kilrey 2009/04/26
    うむ、藁人形論法だ。
  • Latest topics > 顔の見えない「ユーザ」のための不毛な努力はもうしないよ - outsider reflex

    Latest topics > 顔の見えない「ユーザ」のための不毛な努力はもうしないよ 宣伝。日経LinuxにてLinuxの基礎?を紹介する漫画「シス管系女子」を連載させていただいています。 以下の特設サイトにて、単行まんがでわかるLinux シス管系女子の試し読みが可能! « 「机の上にごちゃごちゃ物を置いているやつは総じて能力のないプログラマーだ」 Main にげてー!! » 顔の見えない「ユーザ」のための不毛な努力はもうしないよ - Apr 24, 2009 統合を批判する拡張開発の人たちは、 「自分のやりたいことに何が必要なのかを考えない人は、 そもそも拡張を使うな」とどうしても厳しい目線に立ってしまう。 これはちょっと違う。使い手は使い手自身のエゴに則って好きにすればいいと思う。 僕がしてるのは、「自分が何をしたいかもちゃんとは認識できてない、『とりあえず何でもいいから便利なプ

    kilrey
    kilrey 2009/04/24
    "自分が何をしたいかもちゃんとは認識できてない"人というのはたくさんいる。あまりに体の大きな雛鳥。