タグ

ブックマーク / www.publickey1.jp (129)

  • SQLiteのテストコードは4567万8000行! 本体のコードは6万7000行

    軽量なリレーショナルデータベースとして人気のSQLite。そのWebサイトに掲載されている「How SQLite Is Tested」の内容が、海外のプログラマなどのあいだで話題になっています。 3月に公開された最新バージョンのSQLite 3.6.23。体のソースコードは約6万7200行(67.2KSLOC、Kilo Source Lines of Code:空行やコメントを除いた行数)なのに対し、テストコードはなんと4567万8300行(45678.3KSLOC)だと紹介されているのです! これはテストコードが体の約679倍もの大きさだということになります。 100%のブランチカバレッジ SQLiteコアのライブラリをテストするテストコードとして、以下の3つが紹介されています。 TCL Tests TCL Testsはもっとも古いテストコードで、TCL scripting lang

    SQLiteのテストコードは4567万8000行! 本体のコードは6万7000行
  • 「アジャイルの現状と未来、次に来るもの。~リーン開発への展望~」Agile Japan 2010基調講演から

    アジャイルの現状と未来、次に来るもの。~リーン開発への展望~」Agile Japan 2010基調講演から アジャイル開発手法として知られるXPやスクラムは、国内で徐々に浸透し始めています。しかしアジャイルをさらに推し進めて企業レベルでアジャイルを活用したり、あるいは企業自身がビジネスをアジャイルに回すためにはどうすればよいのでしょうか。 4月9日と10日の2日間開催されたイベント「Agile Japan 2010」。2日目の基調講演に登壇したAlan Shalloway氏は「アジャイルの現状と未来、次に来るもの。〜リーン開発への展望〜」(What Is Next In the Agile World)と題し、企業をマネジメントする視点からのアジャイルについて講演を行いました。 Shalloway氏の講演は、アジャイルについてよく言われる「プロジェクトではうまくいくが、会社レベルで展開し

    「アジャイルの現状と未来、次に来るもの。~リーン開発への展望~」Agile Japan 2010基調講演から
  • HTML5、WebGL、WebSockets、JavaScriptを駆使して、ゲーム「QuakeII」をブラウザに移植中

    HTML5、WebGL、WebSockets、JavaScriptを駆使して、ゲーム「QuakeII」をブラウザに移植中 Windows 95の時代に、自分視点での3D表示による画期的なシューティングゲームとして登場した「QuakeII」。現在、HTML5の音声再生機能、ローカルストレージ機能、現在策定中のWebブラウザ用3Dグラフィックス表示規格のWebGL、サーバと任意の通信を可能にするWebSocketsなどの機能とJavaScriptによるプログラミングを駆使することで、QuakeIIをWebブラウザ上に移植しようというプロジェクトが、グーグルエンジニアによってオープンソースとして進められています。 すでにプロジェクト内部ではプロトタイプが稼働しており、実際に動作している様子がYouTubeで公開されています。ほとんど実用的な動作速度を実現しているようです。 実はこのことが明らか

    HTML5、WebGL、WebSockets、JavaScriptを駆使して、ゲーム「QuakeII」をブラウザに移植中
    yamkazu
    yamkazu 2010/04/05
    google map上にhtml5でセカンドライフとか創りだしそうな勢いだな
  • Subversionの今後は? 分散型バージョン管理にはならないと提案

    Apache Subversionは、ソースコードなどのバージョン管理システムとして普及しているソフトウェアです。今年10周年を迎え、2月にはApache Software Foundationの正式なプロジェクトにもなりました。 Subversionは1つのリポジトリを共有する中央集中型のバージョン管理システムですが、バージョン管理システムではここ数年、gitやMercurialといった分散型への注目が高まり、広まってきました。 こうした状況の中でSubversionの主要な開発者が集まり、今後の方針とロードマップついての話し合いが行われました。そして今後のSubversionの方針(Vision)とロードマップ(Roadmap)についての提案が、メーリングリストにポストされています。 集中型バージョン管理を堅持するという提案 方針を説明する最初の一文でもっとも気になること、すなわちSu

    Subversionの今後は? 分散型バージョン管理にはならないと提案
    yamkazu
    yamkazu 2010/04/05
    個人的にはgit、hgを一般の人が誰でも使いこなせるかというと、そんな簡単なツールじゃない気がしてる。でもそれは今後のサードパティとかツールとしての拡張とかで変わるのかもしれんが。
  • 日本のアジャイルは海外と比べると周回遅れか、アジャイル開発が国内で普及するには? IPAの報告書から

    海外ではアジャイル型開発の採用は開発企業のステータスとしての側面があり、現在のアジャイルの次にくるものの議論が始まっている。我が国の状況は周回遅れとも表現されることが少なからずあった。 日エンジニアが生き生きと働くためにどうすればよいのか? その一環として独立行政法人情報処理推進機構(IPA)が発表した「非ウォーターフォール型開発に関する調査」では、まとめとしてこのような説明が掲載されています。 アジャイル開発普及のための3つのポイント こうした状況を脱し、国内でアジャイル開発を普及するためにどうすればいいのでしょうか? 発表されたIPAの報告書では次の3つの指摘がありました。 (1) ビジネス等のコンテキストに応じた開発方法の選択 開発するソフトウェアの特性やプロジェクトに与えられる制約などを踏まえ、妥当な開発手法を定めた結果として、ウォーターフォール型開発色が強い場合もあれば、その

    日本のアジャイルは海外と比べると周回遅れか、アジャイル開発が国内で普及するには? IPAの報告書から
  • Google App Engineのロードマップ。半年以内に30秒制限もスピンアップ待ちも撤廃?

    Google App EngineのWebサイトに「App Engine Product Roadmap」と名付けられた、文字通り今後のApp Engineのロードマップを説明したページがあります。 このページに書かれている説明によると、ロードマップとして挙げられている項目はApp Engineチームによって開発が進められており、多くは6カ月以内に実現することを意図しているとのこと。また、項目はつねに更新されているとのことです。 ただし、このページに書かれているロードマップの項目はすべてが具体的に書かれているわけではないため、実際にどのような実装として登場するのか分からないものもあります。 Javaのプログラミングなどに詳しいスティルハウスの佐藤一憲氏は、このロードマップを独自に解釈したエントリ「 #appengine の未来はこうなる!」を2日前にブログにアップしています。今後Googl

    Google App Engineのロードマップ。半年以内に30秒制限もスピンアップ待ちも撤廃?
  • Google App Engineのデータストアに一貫性と可用性のオプションが追加

    グーグルは「Google App Engine Blog」にて、データストアに2つの新機能、Eventual Consistency(結果整合性)とDatastore Deadline(データストアデッドライン)を追加したことを明らかにしました。これにより開発者は、データの一貫性と可用性のどちらを重視するのか、選べるようになりました。 プライマリが落ちていたらコピーを他のデータストアから取得 Google App Engine Blog: Read Consistency & Deadlines: More control of your Datastore Eventual Consistency(結果整合性)オプションは、プライマリのデータストア以外のデータストアにコピーされたデータを読み込むことを許すオプションです。 グーグルの解説によると、これまでのGoogle App Engin

    Google App Engineのデータストアに一貫性と可用性のオプションが追加
  • モジュラー化Javaが本格化、OSGi Enteprise Specificationが承認

    OSGiアライアンスは3月23日、サンタクララで開催されたEclipseCon 2010で、OSGiのエンタープライズ仕様である「OSGi Service Platform Enterprise Specification Release 4, Version 4.2」が承認されたと発表しました。 OSGiとは、Javaで作られたモジュールの動的な追加や削除を可能にするための仕様です。また、モジュールの依存関係などについても解決する手段を提供し、モジュールの独立性を高めています。 OSGi実装のよく知られた例として、統合開発環境であるEclipseのプラグインがあります。一般に、あるアプリケーションに対してプラグインを追加したり削除したりする場合、それを有効化するためにアプリケーションを再起動する必要がありますが、EclipseではOSGiにより動的なプラグインの追加削除を実現しているため

    モジュラー化Javaが本格化、OSGi Enteprise Specificationが承認
    yamkazu
    yamkazu 2010/03/31
  • JavaScriptが遅い4つの原因とは?

    1つ前の記事「JavaScriptをいかに高速化するか、IE9、Firefoxの取り組み」では、IE9とFirefoxにおけるJavaScriptの高速化について紹介しましたが、そもそもJavaScriptの実行速度はなぜ遅いのでしょう? その理由について、Mozilla Japanテクニカルマーケティング担当の浅井智也氏が、スライド「Trace Monkey」でポイントをまとめています(このスライドはタイトルから分かるとおり、Firefoxの当時の新しいJavaScriptエンジン「Trace Monkey」を紹介するために1年以上前に作成されたスライドですが、1つ前の記事を見ると、ここで示された課題はいまも変わっていないようです)。 全67枚のスライドの20枚目から24枚目の5枚を以下に紹介します。 JavaScriptが遅い原因は、以下の4点にまとめられています。 インタープリタ型言

    JavaScriptが遅い4つの原因とは?
  • テスト駆動開発の効果はどのくらいある?

    ソフトウェアの開発を行うときに、まずテストケースを先に作ってから機能を作り込む「テスト駆動開発」(Test-Driven Development:TDD)。これにより、ソフトウェアの開発工数や品質にはどの程度の変化があるのでしょうか。 TDD(テスト駆動開発)の適用評価を紹介した研究論文 - エリクソンはじめ3社:森崎修司の「どうやってはかるの?」:ITmedia オルタナティブ・ブログ この疑問について調査した論文を、奈良先端科学技術大学院大学 助教の森崎修司氏が3月10日のブログ「国立大学法人奈良先端科学技術大学院大学 助教」のエントリ「TDD(テスト駆動開発)の適用評価を紹介した研究論文 - エリクソンはじめ3社」で紹介しています。 開発時間はやや増えたがコードの品質は上がった 論文全文は有料なので読めないものの、森崎氏のブログによると次の知見が得られたとのことです。まず、ソフトウェ

    テスト駆動開発の効果はどのくらいある?
    yamkazu
    yamkazu 2010/03/21
  • NoSQL登場の背景、CAP定理、データモデルの分類

    その例としてBeck氏自身が過去に取り組んできた生命保険会社のアプリケーションを例に挙げます。そのアプリケーションでは毎日のようにスキーマが変化するため、SQLORM(Object-Relational Mapping)では対応できず、オブジェクトデータベースのGemstoneを利用することで対応できたと述べています。 こうしたSQLだけでは満たせないさまざまな要件、上記の図にあるようにスキーマの可塑性、スケーラブルなデータ読み込み、書き込み、処理の柔軟性などを満たすために、リレーショナルデータベース以外のNoSQLな製品が開発された。これがNoSQLの登場の背景にあるとBeck氏は解説します。一方で、こうしたさまざまなNoSQLを、NoSQLという言葉で表すのは適当ではないという憂慮も示しています。 Here is where the futility of defining NoSQ

    NoSQL登場の背景、CAP定理、データモデルの分類
  • [速報]IE9プレビュー版が公開! HTML5準拠を約束、マルチコア、GPU対応で高速動作へ - Publickey

    マイクロソフトがラスベガスで開催中のイベント「MIX10」。2日目のキーノートスピーチでは、Internet Explorer 9について語られました。 IE9のポイントはHTML5、CSS3、SVGなどの標準への準拠と、マルチコアCPUGPUなどハードウェアを活用した高速な動作。壇上でIE9を紹介したDean Hachamovitch氏はこれを「HTML5, Hardware Accelerated」という言葉で表現。そして、IE9 Platform Previewのダウンロードが開始されたことも発表されました。 ここではMIX10、2日目のキーノートスピーチの内容を、IE9にフォーカスして紹介します。 HTML5, Hardware Accelerated HTML5アプリケーションはグラフィックが豊富に使われるアプリケーションであり、より高速な動作が必要となる。われわれのHTML5

    [速報]IE9プレビュー版が公開! HTML5準拠を約束、マルチコア、GPU対応で高速動作へ - Publickey
  • マイクロソフトはIE9のHTML5対応に本気で取り組んでいる模様

    3月9日付けのマイクロソフトのIEBlogにポストされたエントリ「Working with the HTML5 Community」では、マイクロソフトがいかにHTML5の標準化に真剣に取り組んでいるかをアピールしています。 このエントリでは、HTML5関連のワーキンググループやタスクフォースにInternet Explorer開発チームからさまざまなメンバが参加していることが紹介されています。 競合他社やコミュニティとも協力している その内容は、Internet ExplorerプログラムマネージャのTony Ross氏がHTMLワーキンググループに対して意見のフィードバックを行っていること、HTML5 Testing Task Forceでは、Internet Explorer Test LeadのKris Krueger氏がファシリテーターとして参加、また、canvas要素やvide

    マイクロソフトはIE9のHTML5対応に本気で取り組んでいる模様
    yamkazu
    yamkazu 2010/03/16
    期待していいんだよね。。。
  • グーグルに続き、セールスフォースもIE6サポート終了をほのめかす

    グーグルGoogle DocsとGoogle Siteについて、Internet Explorer 6のサポートを3月に終了すると発表し、GMailに関しても年内でIE6のサポートを終了すると報道されています。 そのグーグルに続いて、Salesoforce.comもInternet Explorer 6のサポート終了をほのめかすエントリ「 Salesforce and Internet Explorer 6, Part II」を1月末にブログにポストしています。 Internet Explorer 6は企業内で使われている率が高いため、業務アプリケーションであるSalesforce.comがサポートを終了するのは1つの転機となるかもしれません。 ただしSalesforce.comではまだ終了時期については明確にしていません。しかしInternet Explorer 6はサポート対象のWe

    グーグルに続き、セールスフォースもIE6サポート終了をほのめかす
    yamkazu
    yamkazu 2010/02/15
    今年中に一気に加速しそうだな
  • アジャイルは開発手法の主流へ、人気の手法はスクラム。フォレスターの調査報告

    米調査会社のフォレスターリサーチが、アジャイルソフトウェア開発手法は急速にメインストリーム化しているとの調査報告を発表しています。 先週、VersionOneによる調査報告を紹介した記事「アジャイル開発手法、大きな組織の導入率が高く、半数はスクラムを採用との調査結果」で、500人以上の大きな組織では25%程度がアジャイル開発手法を採用しているという結果を紹介したばかりでした。今回紹介する調査では、それ以上にアジャイル開発手法が普及していることを示しています。 フォレスターリサーチが1月20日に発表した調査報告「Agile Development: Mainstream Adoption Has Changed Agility」では、表題に記されているとおりアジャイル開発手法は急速に主流となっていることを、次のように書いています。 In the past few years, Agile p

    アジャイルは開発手法の主流へ、人気の手法はスクラム。フォレスターの調査報告
    yamkazu
    yamkazu 2010/01/27
    この流れを盛り上げていきたいな
  • アジャイル開発手法、大きな組織の導入率が高く、半数はスクラムを採用との調査結果

    アジャイルソフトウェア開発向けのツールなどを提供しているベンダ「VersionOne」が、アジャイルソフトウェア開発の現状についてのアンケート調査を発表しました。アンケートには2570人、88カ国から回答が集まったとされており、ワールドワイドでのアジャイルソフトウェア開発の現状が把握できる資料となっています。 4th Annual State of Agile Development Survey Results(PDFアジャイルソフトウェア開発手法は、この1年で日でもあらためて注目が集まっている開発手法です。日ではまだそれほど普及率が高くはないといわれていますが、ワールドワイドではどうなのでしょうか? 調査結果からポイントになりそうないくつかのグラフを紹介します。 大きな組織の導入率が高い どのような規模の組織がアジャイルソフトウェア開発手法を導入しているのでしょうか。調査結果で

    アジャイル開発手法、大きな組織の導入率が高く、半数はスクラムを採用との調査結果
  • 「有能な人がコードを書くべき」「意志決定はできるだけ先延ばし」「契約を変えるのは難しい」アジャイルの専門家の答え - Publickey

    での開発プロジェクトのほとんどではウォーターフォール型の開発手法が採用されており、アジャイルソフトウェア開発手法の採用はまだ数%程度といわれています。12月8日に都内で開催されたイベント「Agile Conference tokyo 2009」では、米国でアジャイルソフトウェア開発のコンサルタントなどを行っているThoughtWorksのマネージングディレクター、Xiao Guo氏が会場からの質問に答えるトークセッションが行われました。 このセッションでは、多くのエンジニアが現場でアジャイル開発ソフトウェア手法の導入や運用で悩んでいること、疑問に思うことを率直にGuo氏に投げかけています。セッションでやり取りされた質問と回答の一部を紹介しましょう。 意志決定を先延ばしすること 質問 日SIerに務めています。日では、設計書をエクセルを使って画面や処理などの書類を作成しています。海

    「有能な人がコードを書くべき」「意志決定はできるだけ先延ばし」「契約を変えるのは難しい」アジャイルの専門家の答え - Publickey
    yamkazu
    yamkazu 2009/12/11
    賢い人がマネージャでそうではない人がコードを書く。これどうにかしいなー。まぁアジャイルは向き不向きがあるとは思うけど、向いているプロジェクトでは積極的にやりたい。
  • アジャイル開発手法ではオフショア開発でも有効ではないか、という調査結果

    アジャイル開発手法はオフショアを用いた開発でも使えるのか? この問いはアジャイル開発手法を議論する場で何度となく発せられている質問です。小規模なチームが発注者を巻き込んでコミュニケーションを密にとり、短期間の開発を反復して行うアジャイル開発手法は、地理的に離れた場所にあったり、文化的に異なるバックグラウンドを持つ人たちで構成されたチームでも有効なのでしょうか? アジャイル開発手法のコンサルティング業務などで知られるテクノロジックアートと、アジャイル開発手法の論客マーチン・ファウラー氏が所属するThoughtWorksが主催して12月8日に都内で行われた「Agile Conference tokyo 2009」では、日立製作所の山中敦氏が、オフショアと協力して行ったアジャイル開発の例を紹介しました。 果たしてアジャイル開発はオフショア開発の現場でも機能したのか。この記事では山中氏が行ったプレ

    アジャイル開発手法ではオフショア開発でも有効ではないか、という調査結果
    yamkazu
    yamkazu 2009/12/10
    これやりたいなぁ。
  • Yahoo! JAPANがクラウド構想を発表。オープンなプラットフォームとして開放へ

    Yahoo! JAPANが国内でのクラウド戦略を初めて明らかにしました。同社が持つサービスやインフラのオープン化を推し進めることが戦略の骨子。IDや課金プラットフォーム、Amazonクラウドに対抗できるHaaSなどを提供したいと、8日に都内で開催されたイベント「SaaS World / Tokyo 2009」の基調講演で、ヤフーのR&D統括部 大矢俊樹氏が説明しました。 クラウドを利用する顧客サイトへの誘導も ヤフーのクラウドサービスは、ネットビジネスを行う企業に対して提供することを想定しており、利用する企業にとって「売り上げを上げられるか、コストを下げるか、どちらかに貢献するサービス」にしたいと大矢氏は説明します。 「今後さまざまなサービスやネットビジネスが生み出される土壌を整備、支援していくことで、ヤフーにも長期的なメリットにつながると思っている」(大矢氏) 主な顧客としては100名

    Yahoo! JAPANがクラウド構想を発表。オープンなプラットフォームとして開放へ
    yamkazu
    yamkazu 2009/12/09
    HaaSなんていうのか。。。
  • HTML5のMicrodataとは何か?

    HTML5では、HTML文書の中にメタデータを埋め込むための「Microdata」という仕様が含まれています。 最初に簡単なMicrodataの具体例を紹介します。HTML文書の中で明示的に人名であることを示したい内容があるとき、Microdataでは次のように書くことができます。 <div itemscope> <p>僕の名前は<span itemprop="name">山田太郎</span>です。</p> </div> この文書をWebブラウザで表示しても、 僕の名前は山田太郎です。 と表示されるだけで、特に何か変わったことが起きるわけではありません。しかし、このHTML文書を検索エンジンが読み込むと「山田太郎という文字列はnameである」と理解してインデックスしてくれる、といったことができるようになります(というのはあくまで例です)。 Microdataとは、文書の内容に対して機械に

    HTML5のMicrodataとは何か?