タグ

開発とソフトウェアに関するvccのブックマーク (13)

  • 可用性や安全性を高めつつ、ソフトウェアをシンプルにすることは不可能だ。カオスエンジニアリングから継続的検証へ(中編)。JaSST'23 Tokyo基調講演

    可用性や安全性を高めつつ、ソフトウェアをシンプルにすることは不可能だ。カオスエンジニアリングから継続的検証へ(中編)。JaSST'23 Tokyo基調講演 Netflixが始めた「カオスエンジニアリング」は、現在では大規模なシステムにおける可用性向上の手法のひとつとして確立し、広く知られるようになりました。 そのカオスエンジニアリングという手法を定義したのが、元Netflixカオスエンジニアリングチームのエンジニアリングマネージャーを務めていたCasey Rosenthal(ケイシー ローゼンタール)氏です。 そのローゼンタール氏が、ソフトウェアのテストに関わる国内最大のイベント「ソフトウェアテストシンポジウム 2023 東京」(JaSST'23 Tokyo)の基調講演に登壇し、「Chaos Engineering to Continuous Verification」(カオスエンジニア

    可用性や安全性を高めつつ、ソフトウェアをシンプルにすることは不可能だ。カオスエンジニアリングから継続的検証へ(中編)。JaSST'23 Tokyo基調講演
    vcc
    vcc 2023/04/24
    アメリカの病院が医療過誤が多い医師をクビにすると医療過誤の裁判の数が増えてしまいました。医療過誤が多い医師は高いスキルが求められるリスクの高い手術をする医師たちでした。
  • 日本のソフトウェア企業でよく見るエンジニア組織の構造と、近年推奨されるエンジニア組織の構造について

    はじめに 恥ずかしながらスクラム開発の開発チームへの導入を何度も経験しているのだけれど、どうしてもチームの成熟レベルが高い位置までもっていくことができませんでした なぜうまくいかないのか? これを深掘りする過程で教科書どおりに実行するには組織の構造がスクラムガイドで書いてある構造と根的に異なっているのではないか?と考えるようになりました。 よくあるエンジニア組織の構造 大きめのWebソフトウェア企業の内製型エンジニア組織の構造はだいたいどこもこのような感じになっています この組織構造の問題点 スクラムを導入する場合、リーダー自身かあるいはメンバーの一人がスクラムマスターとなります リーダー自身がスクラムマスターになる場合でもアンチパターンと言われる開発者との兼任になります。 スクラムマスターの最も重要な職務である「観察」が行えなくなります。 スクラムマスター自身が観察を行わない場合、各メ

    日本のソフトウェア企業でよく見るエンジニア組織の構造と、近年推奨されるエンジニア組織の構造について
  • 緻密なコードを書きながら、売上をちゃんと上げるのは難しい 山崎大輔氏が好む『革新的ソフトウェア企業の作り方』が提唱する働き方

    山崎氏が好むスモールビジネスの概念 やまげん氏(以下、やまげん):ちなみに、スケールアウトの時はCEO兼CTOとして立ち上げて、次もCEO兼CTOなんですか? 山崎大輔氏(以下、山崎):次も同じやり方です。これもよく聞かれるのですが、「出資しないのか? 出資を受けないのか?」という話があります。否定するわけではないのですが、僕は今の出資のようなスキームがあまり好きじゃないというか。スモールビジネスの概念(の方)がすごく好きなんです。 前の緒方さん(株式会社Voicy代表取締役・緒方 憲太郎氏)の時にも話したのですが、エリック・シンクという人がいて、(その人の)『革新的ソフトウェア企業の作り方』というがあります。このと、あとRuby on Railsの作者のDHH(David Heinemeier Hansson)という凄腕のプログラマーがいて。(僕は)その人の信奉者で、この2人は、すご

    緻密なコードを書きながら、売上をちゃんと上げるのは難しい 山崎大輔氏が好む『革新的ソフトウェア企業の作り方』が提唱する働き方
    vcc
    vcc 2022/08/15
    “特定のニーズを満たすソフトウェアを作って、少ない人数、5人とかで2、3社に売って、小さなビジネスをする。そこで黒字を作って、その売った先の会社の成長とともに、こちらも売上が上がるようなモデルを作る”
  • 世界一わかりやすいClean Architecture - nuits.jp blog

    項は「C# Tokyo オンライン「世界一わかりやすいClean Architecture」他」による発表の登壇原稿となります。過去に発表した.NET版の記事はこちらにアーカイブしています。 稿のサンプルコード・PPTはこちらで公開しています。 「CC BY-SA 4.0」で公開していますので、気に入っていただけたら営利目的含め、ライセンスの範囲で自由に利用していただいて問題ありません。 github.com また動画を以下で配信しています。よろしければご覧ください。 世界一わかりやすいClean Architecture はじめに まず初めに、クリーンアーキテクチャの誤解されがちな二つのことについてお話させていただきます。 その上で、クリーンアーキテクチャの質とは何か?押さえておくべき、当に重要だと考えている三つの事について、お話しします。 注意事項 さて題に入る前に、少し注意

    世界一わかりやすいClean Architecture - nuits.jp blog
  • デベロッパーが最も怖れる最恐のリジェクト「4.2 Minimum Functionality」とは

    アプリをiTunesConnectでAppStoreに申請し審査された時に、以下の様なリジェクションが出て不許可になることがあります。 4.2 minimum functionality We found that the usefulness of your app is limited by the minimal features it includes. iOSアプリ開発申請に慣れたデベロッパーであれば一瞬で凍りつきます。なぜならこのリジェクトは他のリジェクトとは異なる最恐のRejection「4.2 Design: Minimum Functionality」だからです。 ここでは過去に3つのアプリでこのリジェクトを受け最終的に審査をパスした経験からこのリジェクションの恐ろしさと問題点を書こうと思います。 4.2 Design: Minimum Functionalityってなに

    デベロッパーが最も怖れる最恐のリジェクト「4.2 Minimum Functionality」とは
  • インドの3つ星シェフの腕を見抜く2つの質問

    CMMレベル5の認定を受けたインドのソフトウェア開発会社にきちんとしたモノを作ってもらうための2つの質問と4つの具体策を伝授しよう インドが大量に供給する高レベルのハイテク技術者を、日の組み込み系ソフトウェア開発現場で活用する……。両者の思いや利害はきれいに一致しているのですが、うまく融合できている例はほとんどありません。こうなる原因や、悲劇が発生するメカニズムについては、前々回「『懐石料理』でインドの『スパイス』をうまく使う方法」、前回「幻の白いカラスを追い求め、僕らはインドにたどり着く」で説明したとおりです。 今回は、老舗の懐石料亭が、3つ星インド・レストランの花形シェフを招いて成功するにはどうすればよいかを具体的に検討していきたいと思います。 インドのソフトウェア開発会社が日でセールスを展開する場合、殺し文句として使うのが「ウチは、CMMのレベル5の認定を受けています」でしょう(

    インドの3つ星シェフの腕を見抜く2つの質問
    vcc
    vcc 2017/01/26
    単にソフトウェア開発を発注するだけではなく、テスト項目を設計してもらい、さらに、それを自動実行するテスト・スイートも同時に作ってもらう
  • 幻の白いカラスを追い求め、僕らはインドにたどり着く

    CMMレベル5の認定を受けたインドの会社に発注したはずが、品質が悪い。こうした悲劇がなぜ起こるのか? そのメカニズムを考えてみよう 前回のコラムで紹介したように、絶望的に不足している組み込み系ソフトウェア開発技術者を補うものとして期待されているのがインドなどへのソフトウェア開発の海外発注です。インドは、レベルの高いハイテク技術者を安価に大量に提供できる能力を備えており、まさに需要と供給がピタリと一致しているのですが、懐石料理の繊細な風味をカレー粉の鮮烈さで塗りつぶすように、両者がうまく融合した例はほとんど聞きません。今回は、この悲劇が起きるメカニズムについて考えてみます。 インドのソフトウェア開発会社が日でセールスを展開する場合、殺し文句として使うのが「ウチは、CMMのレベル5の認定を受けています」でしょう。“CMM(Capability Maturity Model)”とは、ソフトウェ

    幻の白いカラスを追い求め、僕らはインドにたどり着く
    vcc
    vcc 2017/01/26
    インドは、レベルの高いハイテク技術者を安価に大量に提供できる能力を備えており、需要と供給がピタリと一致しているのですが、懐石料理の繊細な風味をカレー粉の鮮烈さで塗りつぶすように、両者がうまく融合した例
  • セマンティック バージョニング 2.0.0

    セマンティック バージョニング 2.0.0 概要 バージョンナンバーは、メジャー.マイナー.パッチ とし、バージョンを上げるには、 APIの変更に互換性のない場合はメジャーバージョンを、 後方互換性があり機能性を追加した場合はマイナーバージョンを、 後方互換性を伴うバグ修正をした場合はパッチバージョンを上げます。 プレリリースやビルドナンバーなどのラベルに関しては、メジャー.マイナー.パッチ の形式を拡張する形で利用することができます。 導入 ソフトウェア・マネージメントの世界には、「依存性地獄」と呼ばれる恐ろしいものがあります。あなたのシステムが大きく成長すればするほど、さまざまなパッケージを組み込めば組み込むほど、自分が地獄の底にいることにいつか気づくでしょう。 多くの依存性を有しているシステムにとって、新しいバージョンがリリースされることは悪夢でしかありません。厳密に依存関係を指定し

  • 作って理解するWebフレームワーク - きしだのHatena

    前回、簡単なDIコンテナを作ってみたので、次はこれを使ってWebフレームワークを作ってみたいと思います。 Webサーバーをつくる まず、WebフレームワークなのでHTTPサーバーが必要ですね。なので簡単なものを作ります。 とりあえずブラウザからリクエストを受け取ったら200 OKとHTMLを返すだけのサーバーです。 今回は、そこらのブラウザからアクセスできればいいや、ということで、RFCとかの仕様に準拠することは考えません。 public class Server { public static void main(String[] args) throws IOException { ServerSocket serverSoc = new ServerSocket(8989); for (;;) { Socket s = serverSoc.accept(); new Thread((

    作って理解するWebフレームワーク - きしだのHatena
  • Facebookが開発したオープンなスイッチ「Wedge」仕様書が公開、ネットワーク機器もオープン化へ。100ギガイーサ対応スイッチの「Wedge 100」も開発表明

    Facebookが開発したオープンなスイッチ「Wedge」仕様書が公開、ネットワーク機器もオープン化へ。100ギガイーサ対応スイッチの「Wedge 100」も開発表明 Facebookは、同社が発足したデータセンター向けのオープンなハードウェアを推進する「Open Compute Project」に、スイッチのハードウェア仕様となる「Wedge」が正式に採択されたと発表。Wedgeの詳細な仕様書も公開され、誰でも入手可能になりました。 Wedgeは、いわゆるマーチャントシリコンと呼ばれるチップベンダが市販しているネットワーク機器用のチップと、それを制御するx86ベースのサーバで基的には構成されています。 その設計図が公開され、誰でも利用可能になったことで、台湾などのODMベンダにWedgeをベースにカスタマイズしたスイッチを発注することができるようになりますし、また今後はWedgeをベー

    Facebookが開発したオープンなスイッチ「Wedge」仕様書が公開、ネットワーク機器もオープン化へ。100ギガイーサ対応スイッチの「Wedge 100」も開発表明
  • [IPA] 見積の元ネタに「ソフトウェア開発データ白書」がありがたい件 [ハイパー上流] | oshiire*BLOG

    お前は「[IPA] デスマらないために「超上流から攻める IT 化の原理原則17ヶ条」が思った以上に使える件 [要件定義] | oshiire*BLOG」で味をしめたからといって、また「IPA 独立行政法人 情報処理推進機構」ネタなのかと言われそうですけれども、そうじゃない、だってそうじゃない。 基的に、その日にあった、または最近あった出来事を元に blogのネタを日々書いているので、実は、毎日 blog書くのは結構大変です。そんなに、毎日、なにかあるわけじゃなく、ナニゴトも無く穏やかに過ごす日だってあるわけで、なかなか大変なのです、これでも。ただ、落書きしてるわけじゃなくて、これでもすこしは頭を使ってるんです…( ゚д゚ )クワッ!! さて、それはおいといて、「今年は見積もりしないぞ」と固く誓った割には年始からずっと見積の手伝いとかしています。なぜだ。しかも、インフラ屋さんにも関わらず

    [IPA] 見積の元ネタに「ソフトウェア開発データ白書」がありがたい件 [ハイパー上流] | oshiire*BLOG
  • 「Windowsハードウェア認定」があなたの製品の価値を上げる(前編)

    Windowsハードウェア認定」があなたの製品の価値を上げる(前編):Windows 8 デバイスドライバ開発入門(3)(1/3 ページ) Windows 8対応のデバイスドライバを開発する際に、“知っておくと便利なポイント”を実践的な観点から紹介する連載「Windows 8 デバイスドライバ開発入門」。今回は、「Windowsハードウェア認定」について、実践的な観点から説明していきます。 先日、Windows 10のTechnical Preview版がリリースされました(関連記事:「Windows 10 Technical Preview」提供開始)。 ネーミングに注目が集まっているようですが、真相はどうなのでしょうか。筆者も、フライングしてWindows 9になるという前提で資料を作成していたため、当日発表されたネーミングを見て焦りました。 Windows 10では、Windows

    「Windowsハードウェア認定」があなたの製品の価値を上げる(前編)
  • 真の人月商売こそが受託開発産業を救う ― 請負契約ではITプロジェクトは失敗する

    私は自分では受託開発を原則として請けないことにしていますし、受託開発という産業にはあまり興味がありません。しかし現実問題として日のソフトウェアビジネスの大半は受託開発産業です。 また自分では受託開発を請けないけれど、他人や他社にプログラミングを外注することはあります。今日は、受託開発のお話です。 受託開発産業でよく言われることに「人月商売からの脱却」などというフレーズがありますが、そうした発言はまさに愚の骨頂と思います。経済やビジネスの原理原則を知らない愚かきわまりない発言です。 受託開発というのは、プログラマーという専門職の時間を使って作業を提供して、その成果物を納品する仕事なのですから、コストは当然プログラマーの作業時間となります。 商品の値段というのは、通常はコストに利益を乗せて売られますから、プログラマーがどれだけ働いたかで算出されるのは、きわめて自然な値付け方式です。 「そうで

  • 1