タグ

ブックマーク / xtech.nikkei.com (18)

  • テスト駆動開発とマイクロサービスのせいで短命に終わったスマホゲームの話

    「悪い方が良い」原則をご存じだろうか? プログラミング言語「Common Lisp」の開発に携わったことでも知られるソフトウエア技術者リチャード・ガブリエル(Richard Gabriel)氏が1990年に発表した有名なエッセイ「The Rise of ``Worse is Better''」で主張したソフトウエア開発の考え方だ。 このエッセイでガブリエル氏は、美しく完全に設計・実装されるより、単純で雑に設計・実装されたソフトウエアの方が良いと説く。彼は前者を「正しいやり方」「MIT/スタンフォード式」、後者を「悪い方がよい原則」「ニュージャージー式」と呼び、ニュージャージー式がいかに優れているか様々な事例を挙げて説明する。 これは一見とても奇妙に聞こえる。 ソフトウエア開発では通常「美しい設計」や「美しいコード」が尊まれる。「車輪の再発明はするな」とか、「階層構造に分けて、要素をいつでも

    テスト駆動開発とマイクロサービスのせいで短命に終わったスマホゲームの話
  • 「サル軍団」にシステム障害を起こさせる、Netflixの驚異的なトラブル撲滅法

    Netflixは、わざと番障害を起こしてすぐ復旧させることを繰り返し、当の障害発生に備える、という驚くべき手法「カオスエンジニアリング」を実践している。 その効果は実証されている。Netflixが全面的に採用しているAmazon Web Services(AWS)で、2017年2月に中核施設の一つ、米バージニア北部リージョン(広域データセンター群)にて大規模障害が起きたとき、別のリージョンに速やかに切り替えたという。 Netflixの先進的な取り組みを紹介するこの特集の最後に、カオスエンジニアリングを取り上げる。

    「サル軍団」にシステム障害を起こさせる、Netflixの驚異的なトラブル撲滅法
  • 三菱東京UFJ銀行でシステムトラブル、約30億円が定期振込できず

    三菱東京UFJ銀行は2014年4月30日、定期自動送金サービスを担うシステムにトラブルが生じ、当日中に振り込みができない事象が発生したと発表した。約2万3000件の契約について、合計約30億円が振込先に入金できなかったという。 トラブルが起きたのは、決まった振込先に対して定期的に定額を振り込む「定期自動送金サービス」。4月30日付けの振り込みの一部が送金できなかった。システムに「想定外の処理が発生した」(広報)ためだ。 定期自動送金サービスのシステムは、振込日の前日に、1000件単位で契約内容をチェックし、送金処理を実施している。前月分の振り込みで同サービスを解約した契約については、当月分からは送金の必要はないものして扱われる。 具体的には、契約内容のチェックにおいて、契約の継続が確認できたものは、翌日朝に送金処理が実行されるが、確認できないものについては、解約したものとして「データなし」

    三菱東京UFJ銀行でシステムトラブル、約30億円が定期振込できず
  • 第35回 FlashムービーとJavaScriptを連携させてみよう:ITpro

    最近ではAjaxの流行もあり,JavaScriptのライブラリがかなり充実していますね。これらのライブラリの関数を始めとしたJavaScriptの関数を,Flashムービーから呼ぶことができれば,Flashムービーだけでは実現が難しい処理も意外に簡単にできてしまうこともあります。 ムービーを表示しているHTMLドキュメントのURIを取得する あけましておめでとうございます。年もよろしくお願いいたします。 さてさて,図1のムービーでは,ムービーを表示しているHTMLファイルのURI(URL)を表示しています。 図1:ムービーを表示しているHTMLファイルのURIを取得するムービー(クリックするとムービーを表示します) Flashムービーでは,ムービー自身のURIは「_urlプロパティ」を使って取得できますが,ムービーを表示しているHTMLファイルのURIまでは取得できません。では,図1のム

    第35回 FlashムービーとJavaScriptを連携させてみよう:ITpro
  • 実開発で分かったGoogle App Engine for Javaの“すごさ”

    ゴールデンウィークに特に予定のなかった筆者は,「ちまたで噂のGoogle App Engine for Java(GAE/J)とFlexでスケジュール共有ツールでも作ってみよう」と思い立ちました。およそ5日間かけて開発を進めたのち,2009年5月6日に「ご都合.com(画面1)」を公開しました。その後,はてなブックマークやニュースサイトなどでご紹介いただいたおかげで,公開後6日で約2000人の方にご利用いただいています。 そこで稿では,この「ご都合.com」の開発で実際に筆者が得た経験を通じて,GAE/JによるWebアプリケーション開発の実際とそのポテンシャルについて紹介します。 米Googleが2008年4月に発表したGoogle App Engine(画面2)は,「自分が開発したWebアプリケーションをGoogleのデータセンターで運用できるクラウドコンピューティング・サービス」です

    実開発で分かったGoogle App Engine for Javaの“すごさ”
  • Java開発を変える最新の設計思想「Dependency Injection(DI)」とは:ITpro

    「DIする」,「インジェクション(注入)する」──新しい技術に敏感なソフトウエア開発者たちの間で使われている言葉である。DIとは,「軽量コンテナ」を実現する新しい設計思想Dependency Injection(依存性注入)の略称である。同じ概念をIoC(Inversion of Control,制御の反転)と呼ぶ場合もある(詳細は後述)。「DIする」と言えば開発者の間では通用するぐらいに,この設計思想は注目されているのだ。 DIが注目される理由は簡単だ。ソフトウエア開発者の開発サイクルを大幅に改善するからだ。筆者が司会を担当した「軽量コンテナ」に関するパネル・ディスカッション(注1)では,DIを適用した軽量コンテナ「Spring Framework」のおかげで「睡眠時間が確保できるようになりました」と複数のパネリストが真顔でコメントしたほどである。DIは,それだけ有効な技術なのだ。 注1

    Java開発を変える最新の設計思想「Dependency Injection(DI)」とは:ITpro
    tasogare30
    tasogare30 2010/06/08
    「具体的には,Bを生成するコード(=依存性)をA本体に含めず,その実行時に動的に「注入」できないか? この考え方が,依存性注入(Dependency Injection),すなわちDIなのである。 」
  • ITエンジニアのメンタルヘルス

    長引く不況の影響で、ITエンジニアの「こころの病」の問題は、ますます深刻化している。そこで重要になるのが、「自分の健康は自分で守る」という「セルフケア」の考え方である。 特集では、メンタルヘルスのセルフケアのポイントや、4000人から回答を得た「ITエンジニアのメンタルヘルスに関するアンケート」の調査結果、認知療法・認知行動療法の考え方に基づくこころの病の実践的な予防法などを解説する。ぜひ、自分自身のセルフケアに役立てて欲しい。

    ITエンジニアのメンタルヘルス
  • Google 日本語入力がオープンソース化、“クラウド辞書”は対象外に

    Googleは2010年5月10日、同社が開発中のかな漢字変換ソフト(IME)「Google 日本語入力」のソースコードを公開した。オープンソース・プロジェクト名はMozc(もずく)。ライセンスはBSD。ただし公開したのはIME体と辞書データの一部で、Google 日本語入力の強みであるWeb上のデータから自動生成した辞書データは含まれない。 Google 日本語入力のベータ版および開発版と、オープンソース版の違いは、対応OSと辞書データである。 対応OSについては当面、GoogleLinuxベースで開発中の「Chrome OS」のオープンソース版である「Chromium OS」での実装を主な目的とする。Windows版、Mac OS X版、Linux版は、Chromium OSに次ぐ優先度となる。Linuxディストリビューションでの動作については、Chromium OSのベースとな

    Google 日本語入力がオープンソース化、“クラウド辞書”は対象外に
  • VS 2008で学ぶ「LINQ to XML」の基礎---目次

    2007年12月,Visual Studio 2008日語版(以下,VS 2008)がリリースされた。開発者の注目の的は,「LINQ」(Language-Integrated Query,統合言語クエリー)である。LINQと,任意の開発言語(Visual BasicやC#)を使いこなせば,データ処理が劇的に変わるのは明らかだ。 連載では,「LINQ to XML」の基を5回にわたって紹介する。これは,Microsoft .NET Framework 3.5上で利用可能な,XMLデータ処理のためのクエリー言語である。XMLデータの抽出/検索,XMLツリーの生成/変更/削除/更新,シリアライズといった処理を実装するために使うことができる。 ここでは,「LINQ to XML」の技術仕様の側からではなく,XMLデータ処理の側から「LINQ to XML」を見ていく。具体的には,ASP.NE

    VS 2008で学ぶ「LINQ to XML」の基礎---目次
  • Androidで広がる、携帯アプリ開発の世界---目次

    新法で「アプリストアを競争状態に」の現実味、公取委はAppleGoogleと長期戦も 2024.05.16

    Androidで広がる、携帯アプリ開発の世界---目次
    tasogare30
    tasogare30 2010/04/07
    RSSリーダーのサンプルを写経した。
  • 「IPAexフォント」が無償公開、IPAフォントの等幅とプロポーショナルを統合

    独立行政法人 情報処理推進機構(IPA)は2010年2月26日、「IPAexフォント」を無償公開した。公開中の「IPAフォント」の「等幅(固定幅)」と「プロポーショナル(変動幅)」を一つに統合した。IPAフォントも新版Ver.003.02を公開した。 「従来のIPAフォントは、過去のシステムとの互換性の観点から、固定幅と変動幅のフォントを分離していた。しかし、一般的な日語の慣例に従った文書を作成する場合、欧文文字の部分には変動幅の『IPA P明朝』、和文文字の部分には固定幅の『IPA明朝』、といった使い分けを、一つの文書の中で行う必要があった。IPAexフォントは、固定幅と変動幅を一つのフォントに統合することで、このようなわずらわしさの解消を狙った」(IPA)。 IPAフォントの新版Ver.003.02では、利用者から指摘があった不具合の修正をするとともに、欧文と数字の判別が容易となるよ

    「IPAexフォント」が無償公開、IPAフォントの等幅とプロポーショナルを統合
  • 玄柴

    「KURO-SHEEVA」(通称:玄柴)は、電源プラグ型のLinuxマシンです。そのまま体を電源コンセントにさせ、サーバーとして利用できます。米Marvell Technology Group社の「SheevaPlug」をベースとしています。 メルコホールディングの販売子会社であるシー・エフ・デー販売が、2009年12月に「玄人志向」ブランドとして販売を開始しました。直販サイト「バッファローダイレクト」で限定販売しています。価格は1万6800円(2010年2月19日時点)です。 玄柴は,ハード・ディスクを内蔵できませんが、SheevaPlugと異なり、eSATAインタフェースを備えており、高速なストレージを接続できます。小規模なサーバーとして運用するには十分な性能を備えています。 Marvell Technology Group社が開発したCPUと周辺回路を一体化したSoC(System

    玄柴
    tasogare30
    tasogare30 2010/02/23
    女装に空目した。玄女 柴装 疲れている……
  • Visual Studio 2008 Service Pack 1 ここがスゴイ20!

    マイクロソフトの開発ツール,Visual Studio 2008のService Pack 1(SP1)が登場しました。今回のインパクトが大きいのは,開発ツールだけでなく,実行環境の.NET Framework 3.5がSP1になり,リレーショナル・データベース管理システムSQL ServerがSQL Server 2008になったから。最新の豪華ツールで,気持ちよくプログラムを書いちゃってください。

    Visual Studio 2008 Service Pack 1 ここがスゴイ20!
  • 「テトリスを1時間強で作ってみた」動画の投稿者にインタビュー──「プログラミングの楽しさ伝えたい」

    1時間強でテトリスを作れるのはすごいですね。プログラミング歴を教えてください。 幼稚園のころからですね。当時,セガが「SC-3000」というパソコンを出していて,これが家にありました。あるとき,親が「ベーマガDX」(注:電波新聞社が発行していたプログラミング雑誌「マイコンBASICマガジン」の別冊。様々なパソコン用のゲーム・プログラムなどを掲載していた)を買ってきたので,そこに載っているプログラムを打ち込んでいました。 当時は「これを打ち込むとゲームができる」という認識しかなかったですが。SC-3000には顔のキャラクタがあってそれをBASICのPRINT文で表示して親に自慢げに見せていたそうです。 幼稚園のころに? はい,あまり信じてもらえないかもしれないのですけど(苦笑)。 小学校に入ってからは,PC-88(NEC製の8ビット・パソコン)もあったのですが,それはほとんど使わずに小学校4

    「テトリスを1時間強で作ってみた」動画の投稿者にインタビュー──「プログラミングの楽しさ伝えたい」
    tasogare30
    tasogare30 2009/11/05
    僕も楽しくプログラミングできますように。
  • 第7回 VBでも正規表現!

    富山県高岡市 株式会社イーザー副社長。当に暑い夏でしたね。私の会社では暑さのピークのときにエアコンが壊れました。ウィーンと唸るサーバーに囲まれ,汗だくで仕事をしました。また,ある休日は36度の熱気のなか,住民運動会で小学校PTAの活動資金稼ぎのために売店をしていました。少し涼しい風が吹き始めるころに夏バテで調子を崩すことがありますので,気を付けたいと思います。皆さんもどうぞご自愛くださいませ。 今回は,正規表現(regular expression)を使った入力チェックについて解説したいと思います。正規表現は,UNIX互換OSを使っている人や,PerlJavaでプログラミング経験がある人には,当たり前の機能だと思いますが,VBプログラマにはあまりなじみのあるものではないかもしれません。正規表現は記号の複雑な組み合わせになることが多いので,とっつきにくい呪文のように感じている人もいるかも

    第7回 VBでも正規表現!
  • データベースを基本から理解する

    スタンドアロン型,クライアント/サーバー型,Webアプリケーションを問わず,もはやちょっとしたアプリケーションなら,データベースを扱うのは当たり前です。フリーのデータベースも普及し,個人で使う機会も増えてきました。特集では,「データベースのことが全部わかる」をキーワードに,様々な角度からデータベースについて解説します。データベースについて知っているのといないのとでは,開発できるアプリケーションの幅に大きな違いがあります。「データベースって難しそう」とこれまで避けていた人も,「基礎知識は勉強したので知っているつもり」という人も,特集を読んで自信を持ってデータベースを扱えるようになってください。 Part1 3柱で完全マスターするデータベースの基 Part2 SQLこれだけ知っていれば大丈夫 Part3 ExcelユーザーのためのAccess超入門 Part4 事例でみるみるわかる初め

    データベースを基本から理解する
  • 再発見! VB 2005快適プログラミング---目次

    この連載では,マイクロソフトのVisual Basic(VB)2005を使って,最新のVBプログラミングの便利さや快適さを紹介したいと思います。最新のVB 2005は,旧VBユーザーに使いやすいように進化しています。VBで培ってきたこれまでのスキルを活かすことができます。これを使わない手はありません。 米MicrosoftがVisual Studioを提供し続ける限り,VBがなくなることはないでしょう。その意味でVBは常に最前線の言語だと言えます。VBに一度は愛想を尽かした方もぜひ読んでみてください。快適かつモダンになったVB 2005が“使える”言語であることに気づくことでしょう。 ・第1回 まずはVB 2005の性格をつかもう ・第2回 豊富な入力コントロールの使い分けを考える ・第3回 「かたち」から入ろう ・第4回 コンテナ・コントロールを使って神経衰弱ゲームを作る ・第5回 クラ

    再発見! VB 2005快適プログラミング---目次
  • 第253話 Visual StudioでDBを学ぶ環境を整える

    こうしろうは大型連休のはざまの平日に突然,大学から帰ってきた。5月1日の朝早くに大阪を出て,普通電車で7時間もかけて帰省した。 帰ってきても,高校時代の友人との情報交換に忙しく,なかなか家にいる時間は少ない。何かをまとめて学べる時間を作ることは難しいが,15.4インチ液晶のテレビを兼ねている重たいノートPCを持って帰ってきていたので,「とりあえず,Visual Studioでデータベース・プログラミングを勉強できる環境を作ろう」と声をかけた。 NECのモバイルPCが不調なので,大きい方を持ってきたというが,荷物の重量のほとんどを占めているようだった。 5月4日,Visual Studio 2005でSQL Server2005を使ったデータベース・プログラミングができる環境を作ることを目標に,こうしろうとノートPCを並べた。15.4インチ液晶のノートPCと12.1インチワイド液晶の私のノー

    第253話 Visual StudioでDBを学ぶ環境を整える
  • 1