タグ

ブックマーク / www.infoq.com (15)

  • Web APIにバージョンをつけないように

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    Web APIにバージョンをつけないように
    rryu
    rryu 2024/04/26
    後方互換性のあるうちはバージョンの変更だけを強要するのはやめてほしいというのは分かる。
  • WebKitがWebAssemblyを完全にサポートした

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    WebKitがWebAssemblyを完全にサポートした
    rryu
    rryu 2017/06/21
    BBQとOMGは狙って名前を付けてそう。
  • InfoQ: データの削除は非推奨

    垂直スケーラビリティと効果的なテストによる金融取引システムのパフォーマンスと効率の最大化 Peter Lawrey氏はJavaチャンピオンであり、Chronicle SoftwareのCEOとして、開発者を鼓舞してソリューションのクラフトマンシップを高めることに情熱を注いでいる。経験豊富なソフトウェアエンジニアとして、Lawrey氏はソフトウェア開発プロセスにおけるシンプルさ、パフォーマンス、創造性、革新性を奨励することに努めている。

    InfoQ: データの削除は非推奨
    rryu
    rryu 2015/03/02
    「削除」にも色々あって、本当に存在が不要になるタイプの削除は実はあまり無い感じがしている。
  • 技術的負債を管理する

    1992年にWard Cunningham氏が、技術系ではないステークホルダにこの問題を伝えるために、初めて「技術的負債」というメタファを使いました。品質の低いコードと自動テストによるカバレッジがないことは、財務的負債と比較されます。このようなコードは、開発者だけでなく、すべてのステークホルダが負う財政的な重荷になり、将来的に利息が課される負債になります。元額は、コードベースを将来簡単に変更できるようにリファクタリングするコストです。利息は、チームがよいコードではなく、汚いコードに取り組まなければならない場合に、将来支払う余分なコストです。 財務的負債とは違い、技術的負債は返済しなくてもよい負債です。時には、返済するのが無駄なこともあります。ある部分のコードを読んだり、変更したりすることはめったにないか、決して起こらないかもしれません。そのため、技術的負債も、どのくらい起きそうかを考慮す

    技術的負債を管理する
    rryu
    rryu 2013/07/02
    技術的負債の財源はどこに消えたのかをずっと考えていたのだが、きっと納期の短縮という時間を買うのに消えたんだな。改修に時間がかかるのは買った時間を返済しているからなのだろう。
  • JavaScriptのコードフローを視覚化するTraceGL

    Rustが再評価される:エコシステムの現状と落とし穴 In this article, we share findings and insights about the Rust community and ecosystem and elaborate on the peculiarities and pitfalls of starting new projects with Rust or migrating to Rust from othe...

    JavaScriptのコードフローを視覚化するTraceGL
    rryu
    rryu 2013/05/08
    アセットパイプライン的な仕組みでトレースコードを埋め込んでNode.jsのサーバで収集・配信、それをWebGLで描写するらしい。
  • C言語は今でも価値のある言語か?

    Couchbaseの作者Damien Katz氏は,C言語はバックエンドプログラミングにおいて現在でも優れた言語である,という意見を持っている。しかし他の開発者は,C言語はあまりにも欠陥が多いとしてC++Javaを支持するもの,あるいはいずれも好まないというものなどさまざまだ。 CouchDB の開発者であるDamien Katz氏は,The Unreasonable Effectiveness of C と題した先日のブログ記事において,C言語がバックエンドのための優れた言語であると断言した。氏はC++Java,さらにはErlangやRubyのようなより現代的な言語よりも,今後もC言語を支持していくつもりだという。ただし単純に,C言語を他のどれよりも優れた言語だと言っている訳ではない。"言語自体のパフォーマンスと信頼性が重視される場面においては,C言語に比類する言語は皆無である",別

    C言語は今でも価値のある言語か?
    rryu
    rryu 2013/01/29
    機械語と同程度の資源管理が出来る割にデバイス非依存で、しかも未だにその抽象化が通用しているC言語は化け物だな。
  • LinkedIn での Ruby on Rails 対 Node.js

    Rustが再評価される:エコシステムの現状と落とし穴 In this article, we share findings and insights about the Rust community and ecosystem and elaborate on the peculiarities and pitfalls of starting new projects with Rust or migrating to Rust from othe...

    LinkedIn での Ruby on Rails 対 Node.js
    rryu
    rryu 2012/10/12
    モバイル用のAPI中継サーバをRailsからnode.jsにしたら性能が10倍になった話。確かにそういうターンアラウンドタイムの長くなるものをRailsで作ると効率は悪そう。
  • Surface SDK 2.0 - 開発対象に Windows タッチデバイスを追加

    「FinOps、アプリケーション単位の経済性、クラウドコストの最適化について、ロワ・ラヴホン氏語る」 このエピソードでは、Finoutの共同設立者兼CEOであるRoi Ravhon氏が、InfoQポッドキャストの共同ホストであるDaniel Bryant氏と対談し、FinOpsの出現と業界の採用について議論した。この対談では、FinOpsを採用するメリット、クラウド・コストについてもっと知りたいと考えている組織の典型的な道のり、実装を成功させるために必要な様々な文化やツールといったトピックが取り上...

    Surface SDK 2.0 - 開発対象に Windows タッチデバイスを追加
    rryu
    rryu 2012/05/02
    Surface SDK 2.0はWindows7のタッチデバイスにも対応しているのでタンジブル的なUI開発が気軽に楽しめます。
  • 統合JavaコンテンツリポジトリとSpring

    序文 アプリケーションが情報のさまざまな部分を保存することは至って普通のことで、リレーショナルデータベースでは、ほとんどの場合がそうです。いつものデータタイプで作業をしているときはいい仕事をしますが、バイナリデータ、たとえば、画像やドキュメントを扱うときは非常に効率が悪くなります。代わりにファイルシステムを利用することができ、性能も優れているのですが、情報検索のためのクエリー言語や、リレーションシップまたはトランザクションという概念は存在しません。 .第三者が格納データにアクセスできるようにすることは(アプリケーションが成長すると生じる典型的な要件)、多くの場合、一晩で終わってしまうことのない長くて複雑な処理です。記憶機構の内部構造は、情報を横断し検索するAPIアーキテクチャやその方法に影響を及ぼしやすくなります。 JSR-170とは? 非常に都合のいいことに、JSR-170(サイト・英語

    統合JavaコンテンツリポジトリとSpring
    rryu
    rryu 2012/03/14
    JCRは事実上DayというかCQ5の為に作ったに等しい気がする。ストレージの仕様から作るという発想が恐ろしい。
  • 「技術的負債」は今でもメタファとして有効か

    原文(投稿日:2011/07/11)へのリンク 技術的負債(Technical dept) は Ward Cunningham 氏の造語で,次のようなことだ。 もうひとつ,もっと重大な落とし穴があります。整理統合に関する失敗です。未熟なコードでも正しく動作さえするなら,顧客には問題なく受け入れてもらえるかも知れません。しかしそれが大量になるとプログラムが理解不可能になり,対応可能なプログラマが極めて限定されてしまうため,最終的には柔軟性に欠ける製品になってしまいます。コードを初めて出荷したときに負債が始まります。多少の書き直しですぐ返済できる程度の負債なら,開発速度を速めてくれますし,トランザクションのコストも成果としてのプログラムによって相殺されます。危険性が発生するのは,債務が返済不可能な場合です。適切でないコードのために費やされる時間はすべて,その負債に対する利子に数えられます。整合

    「技術的負債」は今でもメタファとして有効か
    rryu
    rryu 2011/07/17
    将来そういう設計・実装にしたツケを払うことになる負債と呼べるようなものは確かに存在するが、それが具体的にどういうものなのかを表す言葉を我々はまだ持っていないので、役には立たないというところかと。
  • クレイジーなWebサービス標準の全てを理解する

    SOAP とWSDL(Web Service Description Language)が、ヘテロジニアスなシステム間の通信とデータ交換を容易にするための標準として紹介されてから、8年が経過しました。それ以来、総称してWS*と呼ばれるプロトコルの混乱によって、特定の通信要求とケースの際に容易になるSOAP(そして、場合によってはWDSL)の拡張としても紹介されることとなりました。SOAP とWSDL(Web Service Description Language)が、ヘテロジニアスなシステム間の通信とデータ交換を容易にするための標準として紹介されてから、8年が経過しました。それ以来、総称してWS*と呼ばれるプロトコルの混乱によって、特定の通信要求とケースの際に容易になるSOAP(そして、場合によってはWDSL)の拡張としても紹介されることとなりました。 稿では、もっともよく耳にするWS

    クレイジーなWebサービス標準の全てを理解する
    rryu
    rryu 2011/03/08
    ウェブアプリ間の通信仕様であるWS-*のまとめ。
  • JSF,Ruby on Rails,ASP.NET に影響する「パディングオラクル」

    Rustが再評価される:エコシステムの現状と落とし穴 In this article, we share findings and insights about the Rust community and ecosystem and elaborate on the peculiarities and pitfalls of starting new projects with Rust or migrating to Rust from othe...

    JSF,Ruby on Rails,ASP.NET に影響する「パディングオラクル」
    rryu
    rryu 2010/10/08
    クッキーをストレージとしたセッション情報やビューステートの暗号化が破られる脆弱性の話。
  • マルチタスクで仕事は遅くなる

    Rustが再評価される:エコシステムの現状と落とし穴 In this article, we share findings and insights about the Rust community and ecosystem and elaborate on the peculiarities and pitfalls of starting new projects with Rust or migrating to Rust from othe...

    マルチタスクで仕事は遅くなる
    rryu
    rryu 2010/08/09
    マルチタスクは待ち時間を有効に活用する技術であって、最大性能を上げる技術ではないというのは、人間のスケジューリングの世界でも一般的ではないのか……
  • JavaScriptによるマルチスレッドの実現‐Concurrent.Threadの裏側

    function f ( ) { do_something(); do_another(); do_one_more(); } このプログラムでは順番に3つの関数を呼び出していますが、各関数呼び出しの間でいったんスレッドの実行権を他のJavaScriptコードに渡したいとします。これは次のように、各関数呼び出しをそれぞれ別の関数に分けて、間にsetTimeoutを挿むようにプログラムを書き換えることで実現できます。 function f ( ) { do_something(); setTimeout(f1, 1);  // 1ミリ秒後にf1を呼び出す } function f1 ( ) { do_another(); setTimeout(f2, 1); } function f2 ( ) { do_one_more(); } こうして書き換えた関数fを、 f(); f(); のようにし

    JavaScriptによるマルチスレッドの実現‐Concurrent.Threadの裏側
    rryu
    rryu 2010/04/11
    JSのソースコードをJSで独自にパースし直して、スレッド切り替え可能な単位でクロージャに分割し、setTimeout()を利用したスケジューラの呼び出しを挟むことで並列実行を実現している。なんというかすごい。
  • 言語ワークベンチは究極的には完全にプログラミング方法を変えるかもしれない

    垂直スケーラビリティと効果的なテストによる金融取引システムのパフォーマンスと効率の最大化 Peter Lawrey氏はJavaチャンピオンであり、Chronicle SoftwareのCEOとして、開発者を鼓舞してソリューションのクラフトマンシップを高めることに情熱を注いでいる。経験豊富なソフトウェアエンジニアとして、Lawrey氏はソフトウェア開発プロセスにおけるシンプルさ、パフォーマンス、創造性、革新性を奨励することに努めている。

    言語ワークベンチは究極的には完全にプログラミング方法を変えるかもしれない
  • 1