タグ

ブックマーク / atmarkit.itmedia.co.jp (13)

  • 「コーディングがはかどる」BGMがあるそうです

    「コーディングがはかどる」かもしれないプログラマーの皆さん向けの音楽サイトがあるそうです。ちょっと試してみました。 今、BGMは流れていますか? 家で、電車で、会社で──。「NO MUSIC, NO LIFE」までではないにしても、“ながら音楽”の習慣がある人は多いでしょう。特に論理的な思考を必要とするプログラマーの皆さんは、良いコードを効率よく書くためにどんな環境が必要か、どんな音楽だとはかどるか、それぞれ自身の方法論を持っていると思います。 例えば、アマゾンの定額制音楽配信サービス「Prime Music」には、「~~のための音楽」といった、あるテーマに沿った楽曲を集めたプレイリストがたくさん登録されています。「ドライブに最適なJ-POP」「お休み前に聴くピアノソロ」「恋がしたくなるJ-POP」などの他に、「仕事がはかどるジャズ」「残業を乗り越えるサントラ」「満員電車でイライラしないポ

    「コーディングがはかどる」BGMがあるそうです
    Koonies
    Koonies 2016/02/26
  • Cでポピュラーな脆弱性とバッファオーバーフロー(前編)

    Insecure Interaction Between Components(6 errors) ソフトウェアコンポーネント間のセキュアでないやりとり SQLインジェクションやクロスサイトスクリプティング(XSS)のような類の脆弱性 Porous Defenses(11 errors) 不完全な防御策 認証関連の不備や暗号化機能の不適切な使い方など Risky Resource Management(8 errors) リソース管理の問題 バッファオーバーフローや整数オーバーフロー、書式指定文字列の脆弱性など 1つ目に分類されているSQLインジェクションやXSS(クロスサイトスクリプティング)などは、やりとりされる情報の意味がコンポーネント間で変わることから問題が発生するパターンです。 例えば、入力データからSQL文を組み立てるコンポーネント、そのSQL文を受け取ってデータベースから必要

    Cでポピュラーな脆弱性とバッファオーバーフロー(前編)
  • ドキュメントは最強のコミュニケーションツールである――Joelの機能仕様書入門

    ドキュメントは最強のコミュニケーションツールである――Joelの機能仕様書入門:プロジェクト成功確率向上の近道とは?(1)(1/2 ページ) ITシステム開発の問題点の一つであるコミュニケーションの失敗。連載では、これを防ぐ方法としてお勧めしたい3つのドキュメントを紹介していく。今回は「Joelの機能仕様書」のポイントを解説する。 連載目次 はじめに 連載では、ITシステム開発がビジネスに貢献していくために必要な、最も基的な条件である“システム開発の成功”につながるいくつかのポイントを紹介します。 筆者は、さまざまなコンピューターシステム開発に長年携わってきたソフトウェア技術者ですが、この連載では、あえて技術的ではない話題を中心に述べます。というのも、技術論だけではシステム開発が成功する条件としては不十分ですし、すでにたくさんの優れた技術論が各方面で展開されています。あらためてそこ

    ドキュメントは最強のコミュニケーションツールである――Joelの機能仕様書入門
    Koonies
    Koonies 2014/12/15
  • @IT:特集 「テスト駆動開発」はプログラマのストレスを軽減するか?

    新しいソフトウェア開発技法へチャレンジできるか? ソフトウェア開発の世界にも日々の進歩がある。そしてその中には、使えばさまざまな恩恵を受けられる技法もある。しかし、それらを現場ですぐに活用できるとは限らない。例えば、1990年代末に生まれ、1つのブームを形成したエクストリーム・プログラミング(XP)という開発技法がある。これは、とても優れた開発技法だと思うのだが、開発プロジェクト単位で、顧客まで巻き込んだ形で使われることが前提となっている。しかし、顧客ぐるみでまったく新しい方法にチャレンジできるかといえば、できないことの方が圧倒的に多いだろう。では、エクストリーム・プログラミングの技法を全部使おうとせず、使うことができる部分だけを取り出して試みることができるかというと、そういうわけにもいかない。エクストリーム・プログラミングは、いくつかのプラクティスと呼ばれる項目から成り立っているのだが、

    Koonies
    Koonies 2014/01/23
  • 第4回 JavaScriptでオブジェクト指向プログラミング ― @IT

    JavaScriptが、いま注目を浴びている。 JavaScriptがこれだけの注目を浴びた理由の1つとして、Ajax技術の登場とも相まって、JavaScriptに対する確かな理解の必要性が高まったという事情は否定できない。しかし、それだけでは説明できない急速な注目の理由として、もう1つ、JavaScriptという言語そのものが持つユニークさが開発者の目を引いたという点は看過できないだろう。 もっとも、このユニークさは同時に、多くの開発者が感じているJavaScriptに対する苦手意識と同義でもある。これまでVisual BasicやC#、Javaといった言語でオブジェクト指向構文になじんできた開発者にとって、JavaScriptのオブジェクト指向構文はいかにも奇異なものに映るのだ。ようやくクラスという概念を理解した開発者が、JavaScriptという言語の背後にたびたび見え隠れする「プロ

    第4回 JavaScriptでオブジェクト指向プログラミング ― @IT
    Koonies
    Koonies 2013/06/15
  • Word 2002/2003で「音声認識データを保存する十分な空き領域がない」というエラーが発生する場合の対処方法 - @IT

    Word 2002/2003で文書を.docファイルに保存すると、音声入力で入力したり、手書きで入力したりした際の音声認識データや手書き認識データが「言語データ」として同時に保存される。保存された音声認識データや手書き認識データは、あとから文字列の修正候補を表示する際などに利用できる。この機能は、デフォルトで有効になっており、言語データは文書中に保存されるようになっている。 ところが、音声入力を使っていなくても、マイクが有効になっていると、音声認識データが記録され、作業状況によってはファイル・サイズが大きくなり、保存時に以下のようなエラー・ダイアログが表示されることがある。

    Koonies
    Koonies 2012/02/29
  • DOM操作の主流になるか!? セレクタAPIを使いこなそう

    連載目次 従来、JavaScriptでは、以下のようなメソッドを利用して、操作対象の要素を特定していた。 getElementByIdメソッド:IDの値をキーにノードを取得する。 getElementsByTagNameメソッド:要素名をキーにノードを取得する。 getElementsByClassNameメソッド:class属性の値をキーにノードを取得する。 しかし、この方法で複雑な構造のHTML文書から要素を取り出す場合、コードが複雑になりやすいという課題もあった。例えば、以下は従来のgetElementXxxxxメソッドを利用した要素の取得例だ。 上記のJavaScriptコードでは、奇数番目の要素を特定するために全てのインデックス番号をif文で判定させている。ほかにも属性値やclass属性によって要素を絞り込むならば、同じような判定式を書いた経験が読者諸氏にもあるだろう。「もっと簡

    DOM操作の主流になるか!? セレクタAPIを使いこなそう
  • もう1つの、DBのかたち、分散Key-Valueストアとは

    もう1つの、DBのかたち、分散Key-Valueストアとは:分散Key-Valueストアの命「Bigtable」(1)(1/3 ページ) RDBとは別の、クラウド時代のデータベースとして注目を浴びている「分散Key-Valueストア」。その命ともいえる、Googleの数々のサービスの基盤技術「Bigtable」について徹底解説 クラウド時代のデータベース「分散Key-Valueストア」 グーグルがインターネットの世界をここまで席けんできた最大の理由は何でしょうか。実は、それは同社の優れた検索技術ではありません。グーグルが成し遂げた最も大きなブレークスルーの1つは、同社が生み出した巨大な分散データストア、「Bigtable」にあります。 Bigtableは、Google検索をはじめ、YouTubeやGoogle MapGoogle Earth、Google Analytics、Goog

    もう1つの、DBのかたち、分散Key-Valueストアとは
  • 素朴なBigtable、できること できないこと

    素朴なBigtable、できること できないこと:分散Key-Valueストアの命「Bigtable」(2)(1/2 ページ) RDBとは別の、クラウド時代のデータベースとして注目を浴びている「分散Key-Valueストア」。その命ともいえる、Googleの数々のサービスの基盤技術「Bigtable」について徹底解説 あまりにもRDBとは異質な「Bigtable」 前回の「もう1つの、DBのかたち、分散Key-Valueストアとは」では、連載第1回目として、クラウドコンピューティングにおける新しい潮流である「リレーショナルデータベース(RDB)から分散Key-Valueストア(分散KVS)への移行」が、どのようなパラダイムシフトをもたらすのかを解説しました。今回からは、グーグルが運用する代表的な分散KVS「Bigtable」の内部構造を紹介し、クラウドの質をより深く掘り下げます。 前

    素朴なBigtable、できること できないこと
  • ここが大変だよBigtableとGoogle App Engine

    ここが大変だよBigtableとGoogle App Engine:分散Key-Valueストアの命「Bigtable」(3)(1/2 ページ) RDBとは別の、クラウド時代のデータベースとして注目を浴びている「分散Key-Valueストア」。その命ともいえる、Googleの数々のサービスの基盤技術「Bigtable」について徹底解説 月間3000万PVの大規模サイトの運用費が月額4万円!? 月間3000万PV相当の膨大なトラフィックを楽々とさばく大規模サイトが、月額4万円弱で運用されている。 Google App Engine(以下、App Engine)が普及するにつれて、そんな驚愕の国内事例も登場しつつあります。GClueがApp Engine上で実装したmixiアプリモバイルモバイルには、1日100万PV以上のアクセスが集中している状態でもサービスのレスポンス低下やダウンは皆無

    ここが大変だよBigtableとGoogle App Engine
  • HTML+JavaScriptでiPhone/Androidアプリを作れるTitanium Mobileとは

    HTMLJavaScriptiPhone/Androidアプリを作れるTitanium Mobileとは:Web技術でネイティブアプリを作れるTitanium(1)(1/3 ページ) iPad/iPhone VS Androidに戸惑っているWebデザイナ/開発者のために、Web技術でネイティブアプリを作れるオープンソースの開発ツールを紹介し、その利点や使い方を連載で解説します iPad/iPhone VS Androidに戸惑っていませんか? 2010年1月5日、グーグルAndroid 2.1を搭載した「Nexus One」を発表しました(参考:GoogleAndroid 2.1搭載の“スーパーフォン”「Nexus One」を発表)。高精細なディスプレイや高速なプロセッサによる快適な動作など、iPhoneのライバルとしての存在感が話題になりました。また1月21日には、NTTドコモ

    HTML+JavaScriptでiPhone/Androidアプリを作れるTitanium Mobileとは
  • Windows XPが立ち上がらない! そのときの対処法

    Windows XPが立ち上がらない! そのときの対処法:あきらめる前に試すべき5つの対処法(1/6 ページ) Windows XPが起動不能に! ああOSの再インストールかとあきらめる前に、試してほしい5つの対処法。大事なデータと時間を無駄にしない復旧テクを解説する。 連載目次 頻繁に起きることではないとはいえ、さまざまな理由から突然、Windows OSが起動しなくなることがある。故障や破損といったハードウェア障害の場合は体や部品の買い替えが必要だが、ソフトウェア的な障害が原因なら、最悪の場合でもハードディスクをフォーマットしてWindows OSを再インストールすれば解決できる。しかしこの場合、ハードディスクに保存したデータやさまざまな設定情報は失われてしまうし、Windows OSだけでなくアプリケーション・ソフトウェアのセットアップと再設定も必要である。いうまでもなく、できるだ

    Windows XPが立ち上がらない! そのときの対処法
  • Androidアプリで高速描画チューニングをするコツ

    さまざまなGoogleのサービスを使いこなすコツをグーグルの担当者に聞くインタビュー特集。第1回は、日Androidの会のメンバー(嶋 是一氏と中村 秀樹氏と安生 真氏(株式会社ケイブ))3人が、Androidアプリケーション開発のコツを聞くため、グーグル法人のオフィスを訪ね、ゲームアプリケーションを通して効率よく描画するためのノウハウについて聞いた。 その結果、T-Mobile G1(以下、G1)を用いた場合、2D描画であってもOpenGL ES(※1)を用いたAPIを利用するのが良いことが判明した。これは、驚くべき事実だ。このことは、機種に特化したチューニングを行うことで、よりデバイスの性能をフル活用したアプリケーション開発ができる可能性を示したといえる。 「Eat your own dog food」というGoogler文化 Androidについて話したのは、グーグル デベロッ

    Androidアプリで高速描画チューニングをするコツ
  • 1